Привет. В этом уроке я покажу как создать кастомный магазин
Создание dota_shop объекта
Начнем с создания объекта (Shift + E) и назначим ему "ent_dota_shop", расположите его где угодно.
Свойства dota_shop
Выберите объект и перейдите к его свойствам (Alt + Enter), когда вы зашли в свойства найдите World Model и кликните для просмотра библиотеки (маленькая лупа под полем). Присвойте ему модель по своему вкусу.
Назначение Shop Type объекта
После изменения World Mode, прокрутите вниз свойства объекта, вплоть до "Shop Type" поля, здесь мы можем указать следующие данные:
Home - Предметы автоматически помещаются в тайник (стэш), если вы не в зоне триггера. Иначе он будет помещен в инвентарь, если свободный слот доступен.
Side - Вы должны быть рядом с магазином, чтобы купить предмет в инвентарь, не могут быть помещены в тайник (стэш).
Secret - Вы должны быть рядом с магазином, чтобы купить предмет в инвентарь, не могут быть помещены в тайник (стэш).
*Примечание* Вы можете использовать только эти три типа магазина. У меня не получалось создать свой тип магазина.
Создание области триггера (блок)
После настройки типа магазина, у нас теперь есть возможность создать зону триггера, это можно сделать, нажав Shift + B. Теперь перетащите нужный блок для области покупки (предпочтительно сделать одинаковой высоты с моделью магазина).
Назначение материала для триггера
После того как вы создали свой блок, мы должны присвоить ему материал триггера, это можно сделать, зайдя в библиотеку материалов и вписать в фильтр "trigger", а затем перетащить этот материал на блок, он должен измениться на указанный материал.
Назначение класса trigger_shop к блоку триггера
Теперь мы должны добавить класс к блоку, это может сделать, нажав Ctrl + T, как только это было сделано, присвойте ему класс "trigger_shop" , после этого прокрутите вниз и назначьте ему тип магазина который вы хотите.
*Примечание* Если вы присвоите ему другой тип магазина, то вы будете покупать у другого магазина.
Создание кастомного shop.txt
Теперь мы должны создать текстовый файл магазина, расположите его здесь:
Кастомное имя файла магазина
Кастомное содержание
После этого скомпилируйте свою карту и вы увидите свой магазин! Если вы делали все по уроку, то все должно работать.
Заключительные замечания
Я не смог создать свои вкладки в магазине, надеюсь добавят эту функцию в будущем.
Вы все еще можете искать предметы, которые не в магазине.
Если есть ошибки, не стесняйтесь, скажите мне.
Перевод: http://customgames.ru/
Источник: http://www.reddit.com/r/Dota2Modding/comments/2dpts1/tutorial_creating_a_custom_shop_step_by_step/
Создание dota_shop объекта
Начнем с создания объекта (Shift + E) и назначим ему "ent_dota_shop", расположите его где угодно.
Свойства dota_shop
Выберите объект и перейдите к его свойствам (Alt + Enter), когда вы зашли в свойства найдите World Model и кликните для просмотра библиотеки (маленькая лупа под полем). Присвойте ему модель по своему вкусу.
Назначение Shop Type объекта
После изменения World Mode, прокрутите вниз свойства объекта, вплоть до "Shop Type" поля, здесь мы можем указать следующие данные:
Home - Предметы автоматически помещаются в тайник (стэш), если вы не в зоне триггера. Иначе он будет помещен в инвентарь, если свободный слот доступен.
Side - Вы должны быть рядом с магазином, чтобы купить предмет в инвентарь, не могут быть помещены в тайник (стэш).
Secret - Вы должны быть рядом с магазином, чтобы купить предмет в инвентарь, не могут быть помещены в тайник (стэш).
*Примечание* Вы можете использовать только эти три типа магазина. У меня не получалось создать свой тип магазина.
Создание области триггера (блок)
После настройки типа магазина, у нас теперь есть возможность создать зону триггера, это можно сделать, нажав Shift + B. Теперь перетащите нужный блок для области покупки (предпочтительно сделать одинаковой высоты с моделью магазина).
Назначение материала для триггера
После того как вы создали свой блок, мы должны присвоить ему материал триггера, это можно сделать, зайдя в библиотеку материалов и вписать в фильтр "trigger", а затем перетащить этот материал на блок, он должен измениться на указанный материал.
Назначение класса trigger_shop к блоку триггера
Теперь мы должны добавить класс к блоку, это может сделать, нажав Ctrl + T, как только это было сделано, присвойте ему класс "trigger_shop" , после этого прокрутите вниз и назначьте ему тип магазина который вы хотите.
*Примечание* Если вы присвоите ему другой тип магазина, то вы будете покупать у другого магазина.
Создание кастомного shop.txt
Теперь мы должны создать текстовый файл магазина, расположите его здесь:
Код:
dota_ugc\game\dota_addons\ИМЯ_АДДОНА\scripts\shops
Кастомное имя файла магазина
Код:
<название_карты>_shops.txt
Кастомное содержание
Код:
"dota_shops"
{
//Home Shop Start
//--------------------------
"consumables"
{
"item" "ITEM_NAME"
}
"attributes"
{
"item" "ITEM_NAME"
}
"weapons_armor"
{
"item" "ITEM_NAME"
}
"misc"
{
"item" "ITEM_NAME"
}
// Level 1 - Green Recipes
"basics"
{
"item" "ITEM_NAME"
}
// Level 2 - Blue Recipes
"support"
{
"item" "ITEM_NAME"
}
"magics"
{
"item" "ITEM_NAME"
}
// Level 3 - Purple Recipes
"defense"
{
"item" "ITEM_NAME"
}
"weapons"
{
"item" "ITEM_NAME"
}
// Level 4 - Orange / Orb / Artifacts
"artifacts"
{
"item" "ITEM_NAME"
}
//Sideshop Start - Page 1
//--------------------------
"sideshop1"
{
"item" "ITEM_NAME"
}
//Sideshop Page 2
"sideshop2"
{
"item" "ITEM_NAME"
}
//Secret Shop Start
//--------------------------
"secretshop"
{
"item" "ITEM_NAME"
}
}
После этого скомпилируйте свою карту и вы увидите свой магазин! Если вы делали все по уроку, то все должно работать.
Заключительные замечания
Я не смог создать свои вкладки в магазине, надеюсь добавят эту функцию в будущем.
Вы все еще можете искать предметы, которые не в магазине.
Если есть ошибки, не стесняйтесь, скажите мне.
Перевод: http://customgames.ru/
Источник: http://www.reddit.com/r/Dota2Modding/comments/2dpts1/tutorial_creating_a_custom_shop_step_by_step/
Последнее редактирование: