Редактор - Примеры скриптов - Дополнительные - Пример покупки предметов
Относится к каталогам: Редактор - Примеры скриптов - Дополнительные
Сначала читай: ПРЕДИСЛОВИЕ К ПРИМЕРАМ СКРИПТОВ.
В данном примере, за 5 немецких касок определённого типа, пехотинец сможет условно
покупать связку динамита в определённой "торговой" зоне.
Кнопка покупки будет активироваться тоже только в "торговой" зоне.
Для это понадобится пехотинец, немецкие каски (как валюта) и зона активации торговли.

После этого нужно создать событие:
Далее надо создать подкрепление:
В графе State - Нужно выбрать hidden;
В графах Text и Hint - В текстовом браузере можно создать и выбрать подписи;
В графе Count - Для примера можно прописать -1 вызов (бесконечно);
В графе Score - Для примера можно прописать бесплатный 0;
В графе Delay - Нужно прописать 1 секунду;
В графе EventStart - Нужно выбрать созданное тестовое событие;
После этого нужно создать несколько триггеров.
Триггер: show - Будет отображать кнопку покупки при захождении покупателя в зону торговли;
Триггер: hide - Будет скрывать кнопку покупки при выхождении покупателя из зоны торговли;
Триггер: pokypka - Будет обрабатывать нажатие кнопки покупки.
Триггер hide имеет условие Entities:
Его нужно отредактировать так:
Графу типа селектора можно оставить стандартной;
В графе зоны нужно выбрать зону проверки;
В графе типа юнита нужно выбрать Human;
В графе состояния юнита нужно выбрать Not dead;
В графе типа операции сравнения нужно выбрать "<";
В графе Value нужно прописать 1.
Примените настройки условия.
(Это условие проверяет отсутствие пехотинцев в зоне).
В теле триггера нужно прописать следующую последовательность команд:
Команда 1 - Reinforcement:
В графе Operation нужно выбрать Hide;
В появившейся графе Name нужно выбрать pokypka.
Примените настройки команды.
(Эта команда скроет кнопку покупки).
Команда 2 - Trigger:
В графе триггера нужно указать сам наш триггер.
Примените настройки команды.
(Эта команда нужна для возможности повторного выполнения триггера).
Триггер hide имеет условие Event:
Его нужно отредактировать так:
В графе Id нужно выбрать созданное событие.
Примените настройки условия.
(Условие будет реагировать на нажатие кнопки).
В теле триггера нужно прописать следующую последовательность команд:
Команда 1 - If:
В графе Type нужно выбрать Inventory;
Селектор нужно отредактировать так:
Графу типа селектора можно оставить стандартной;
В графе зоны нужно выбрать торговую зону;
В графе типа юнита нужно выбрать Human;
В графе состояния юнита нужно выбрать Not dead.
Примените настройку селектора и вернитесь в само условие.
В графе Where нужно выбрать Box;
В графе Item нужно прописать Stuff предмета валюты (каски);
В графе Compare нужно оставить Greater;
В графе Amount нужно прописать 4;
Примените настройки условия.
(Это условие проверяет, есть ли больше четырёх нужных касок в инвентаре бойца, пришедшего в торговую зону).
В команду 1 нужно добавить команду 2 - Inventory:
Селектор нужно отредактировать так:
Графу типа селектора можно оставить стандартной;
В графе зоны нужно выбрать торговую зону;
В графе типа юнита нужно выбрать Human;
В графе состояния юнита нужно выбрать Not dead.
Примените настройку селектора и вернитесь в саму команду.
В графе Action нужно выбрать Remove;
В графе Item нужно выбрать Stuff предмета валюты (каски);
В графе Amount нужно прописать 5;
Примените настройки команды.
(Эта команда удаляет 5 выбранных касок).
В команду 1 нужно добавить команду 3 - Delay:
В графе Time нужно указать небольшую временную задержку. (Допустим, 0.1 секунды).
Примените настройки команды.
(Эта команда ждёт время, достаточное для удаления касок у бойца).
В команду 1 нужно добавить команду 4 - Inventory:
Селектор нужно отредактировать так:
Графу типа селектора можно оставить стандартной;
В графе зоны нужно выбрать торговую зону;
В графе типа юнита нужно выбрать Human;
В графе состояния юнита нужно выбрать Not dead.
Примените настройку селектора и вернитесь в саму команду.
В графе Action нужно выбрать Add;
В графе Item нужно выбрать Stuff предмета покупки (вязанка динамита);
В графе Amount нужно прописать 1;
Примените настройки команды.
(Эта команда добавляет вязаночку динамита в инвентарь бойца).
Команда 5 - Event:
В графе Event нужно выбрать созданное событие;
В графе Mode нужно выбрать Reset.
Примените настройки команды.
(Эта команда нужна для возможности повторной активации события).
Команда 6 - Delay:
В графе Time нужно указать небольшую временную задержку. (Допустим, 0.1 секунды).
Примените настройки команды.
(Эта команда ждёт время, достаточное для добавления вязанки динамита в инвентарь бойца).
Команда 7 - Trigger:
В графе триггера нужно указать сам наш триггер.
Примените настройки команды.
(Эта команда нужна для возможности повторного выполнения триггера).
Триггер show имеет условие Entities:
Его нужно отредактировать так:
Графу типа селектора можно оставить стандартной;
В графе зоны нужно выбрать зону проверки;
В графе типа юнита нужно выбрать Human;
В графе состояния юнита нужно выбрать Not dead;
В графе типа операции сравнения нужно выбрать ">";
В графе Value нужно прописать 0.
Примените настройки условия.
(Это условие проверяет, есть ли пехотинец в зоне).
В теле триггера нужно прописать следующую последовательность команд:
Команда 1 - Reinforcement:
В графе Operation нужно выбрать Show;
В появившейся графе Name нужно выбрать pokypka.
Примените настройки команды.
(Эта команда отобразит кнопку покупки).
Команда 2 - Trigger:
В графе триггера нужно указать сам наш триггер.
Примените настройки команды.
(Эта команда нужна для возможности повторного выполнения триггера).
Таким образом получается конструкция из триггеров: Отображающая кнопку покупки при нахождении пехотинца в зоне;
Позволяющая ему покупать предмет при наличии условных денег; И скрывающая кнопку покупки после покидания пехотинцем торговой зоны.



Примечание:
Торговлю можно организовать и через обычные очки подкреплений.
Видео-демонстрация:
Скачать:
0
пример 221
Смотрите также:
