Индекс материала |
---|
Создание скрипта. От и До. |
Страница 2 |
Страница 3 |
Страница 4 |
Страница 5 |
Страница 6 |
Все страницы |
Часть первая. Разработка скрипта.
Каждый скрипт, монитор (часть скрипта, где прописываются условия, команды и т.д.), имеет начало и конец.
Начало и конец скрипта уже по условию прописаны в файле «campaign_script» (data/worald/maps/campaing/кампания), вначале стоит script в конце файла end_script. Мониторы прописываются между этими строчками.
Начало монитора прописывается кодом monitor_код в конце монитора прописывается end_monitor. Закрывает монитор в некоторых скриптах terminate_monitor:
terminate_monitor — это команда, при наличии которой монитор выполняется один раз и далее считается выполненным. при отсутствии этой команды монитор будет выполняться бесконечное число раз.
«end_monitor» ставится всегда.
Начало бывает разное, к примеру, можно привести самые распространенные: monitor_event, monitor_conditions...
Сам монитор состоит из четырех частей: главной, определяющей строчки, блока условий, блока действий и конца скрипта.
Первой строкой задается то, при каких событиях или условиях игра будет рассматривать возможность выполнения условий и действий монитора
Разберем на примере первой строчки:
“monitor_event FactionTurnStart FactionType hre”
monitor_event — начало скрипта
FactionTurnStart — вид скрипта, события. В данном примере скрипт сработает на начале нового хода
FactionType — код, который указывает на фракцию
hre — фракция (hre – СРИ «Священная Римская Империя»)
Блок условий представляет из себя ряд строчек, команд, которые задают скрипту условия, действует по такому принципу: если условие совершиться, то совершиться действие.
Строчка, а значит и условие начинается с «and»; «if» или «while».
And – стандартное условие.
If – Оператор условия если. По формату: «если условие a, то происходят действия b».
While — хотя, пока. «Пока условие a актуально, то происходит действие b»
Вся строчка условия выглядит так: and / if / while КомандаУсловия.
Разберем на примере небольшого блока условий, состоящего из 5-и условий:
and FactionIsLocal hre — фракция СРИ должна быть под управлением игрока
and not FactionIsLocal papal_states — фракция Папы должна быть под управлением ИИ
and I_TurnNumber = 2 — номер хода должен быть второй
and I_NumberOfSettlements hre < 50 — кол-во поселений у СРИ должно быть 50 или больше
and Treasury hre < 20000 — золота в казне у СРИ должно быть 20000 или больше
Через пробел прописывается блок действий — ряд строчек, команд которые отвечают за выполнение действий в скрипте. К примеру, начисление фракции определенной суммы денег, если условие будет выполнено. (КомандаДействия фракция).
add_money papal_states, 50000 — начисление Папе золота в казну в размере 50000
console_command diplomatic_stance hre papal_states war — дипломатические отношения между Папой и СРИ переходят в состояние войны
Команды бывают разные, в скрипте приведены: обычная команда и консольная команда (консольная_команда КомандаДействия фракция). В качестве примера можно также привести спаун армии: spawn_army.
И конец скрипта. В данном случае только end_monitor:
“monitor_event FactionTurnStart FactionType hre
and FactionIsLocal hre
and not FactionIsLocal papal_states
and I_TurnNumber = 2
and I_NumberOfSettlements hre < 50
and Treasury hre < 20000
add_money papal_states, 50000
console_command diplomatic_stance hre papal_states war
end_monitor”
Функционал:
Фракция СРИ при наличии 20000 золотых и имея в распоряжении 50 провинций автоматически начитает войну с Папой Римским, при этом Папе начисляется 50000 золотых, СРИ должен управлять игрок, а Папой ИИ.
< Предыдущая | Следующая > |
---|