Что было в том архиве уже не не вспомнить, но если нужны "учебники" по картам и скриптованию то вот: https://yadi.sk/d/nraaa7CTzXad3
Тут всё основное, что выкладывалось на форуме.
Спасибо огромное!
Союз | Union |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » Союз | Union » Картостроение и скриптовка » "Школа картоделов"
Что было в том архиве уже не не вспомнить, но если нужны "учебники" по картам и скриптованию то вот: https://yadi.sk/d/nraaa7CTzXad3
Тут всё основное, что выкладывалось на форуме.
Спасибо огромное!
Спасибо огромное!
Дерзайте!
Непонятки будут, не стесняйтесь спросить. Для того и тема.
А есть ли команда чтобы задействовать все юниты, находящиеся в скриптовой зоне? Именно тех кто находится в данный момент в этой зоне.
Именно тех кто находится в данный момент в этой зоне.
Если только у этих юнитов один скриптовый №. Иначе только каждой группе отдельную команду, к примеру
if (GetNUnitsInArea(0,"Tochka1")>0)then - условие, если (0-юниты игрока) находятся в зоне Tochka1, то будут выполнять следующие команды:
GiveCommand(0,1017,GetScriptAreaParams("Tochka2")); - юниты со скриптовым №1017 идут в зону Tochka2.
GiveCommand(0,1018,GetScriptAreaParams("Tochka2"));
Вот только так (это более простой способ), можно через переменную, которая будет высчитывать скриптовые №.
Если только у этих юнитов один скриптовый №. Иначе только каждой группе отдельную команду, к примеру
if (GetNUnitsInArea(0,"Tochka1")>0)then - условие, если (0-юниты игрока) находятся в зоне Tochka1, то будут выполнять следующие команды:
GiveCommand(0,1017,GetScriptAreaParams("Tochka2")); - юниты со скриптовым №1017 идут в зону Tochka2.
GiveCommand(0,1018,GetScriptAreaParams("Tochka2"));
Вот только так (это более простой способ), можно через переменную, которая будет высчитывать скриптовые №.
Спасибо! Будем эксперементировать.
if (GetNScriptUnitsInArea(0,"Tochka1")>0)then - условие, если (юниты со скриптовым номером находятся в зоне Tochka1, то будут выполнять следующие команды
А можно ли в одной функции ( если можно, то как это оформить?) записать перечесление зон? Ну типа: если (юниты со скриптовым номером таким-то) находятся в зоне Tochka1 или в Tochka2 или Tochka3 то... А так же юниты со скриптовым номером 0 или 1 или 2. Или надо для каждой ситуации новую функцию писать?
if (GetNScriptUnitsInArea(0,"Tochka1")>0)then - условие, если (юниты со скриптовым номером находятся в зоне Tochka1, то будут выполнять следующие команды
А можно ли в одной функции ( если можно, то как это оформить?) записать перечесление зон? Ну типа: если (юниты со скриптовым номером таким-то) находятся в зоне Tochka1 или в Tochka2 или Tochka3 то... А так же юниты со скриптовым номером 0 или 1 или 2. Или надо для каждой ситуации новую функцию писать?
Можно и в одной функции. Условие ее выполнения будет выглядеть так:
if (GetNScriptUnitsInArea(0,"Tochka1")>0)or
(GetNScriptUnitsInArea(0,"Tochka2")>0)or
(GetNScriptUnitsInArea(0,"Tochka3")>0)then
Можно и в одной функции. Условие ее выполнения будет выглядеть так:
if (GetNScriptUnitsInArea(0,"Tochka1")>0)or
(GetNScriptUnitsInArea(0,"Tochka2")>0)or
(GetNScriptUnitsInArea(0,"Tochka3")>0)then
Вот спасибо! Что бы я без вас делал?
VautourII
Вы, похоже, в скриптах разбираетесь, может подскажете как работает - Set / GetIGlobalVar
Я по Б2 специализируюсь, но похоже кое-что в скриптах игр-братьев есть общего.
Насколько я понимаю, можно выполнив задание в одной миссии, получить за него бонус в другой, просто задав глобальную переменную SetIGlobalVar, а потом, соответственно извлекая её GetIGlobalVar в нужной миссии. А "действие" этой переменной (с заданным именем и целочисленным значением) распространяется на всю игру (в любой миссии её потом можно извлечь)
VautourII
Вы, похоже, в скриптах разбираетесь, может подскажете как работает - Set / GetIGlobalVar
Я по Б2 специализируюсь, но похоже кое-что в скриптах игр-братьев есть общего.
Насколько я понимаю, можно выполнив задание в одной миссии, получить за него бонус в другой, просто задав глобальную переменную SetIGlobalVar, а потом, соответственно извлекая её GetIGlobalVar в нужной миссии. А "действие" этой переменной (с заданным именем и целочисленным значением) распространяется на всю игру (в любой миссии её потом можно извлечь)Подпись автора
Von Finnland bis zum Schwarzen Meer
Насколько я знаю (а признаться честно, мой опыт пока ограничен созданием отдельных миссий) в Б1 глобальные переменные на уровне глав на практике применяются только для выдачи бонусных юнитов и определения следующей миссии/главы. Например, именно так осуществляется выбор между кампаниями стран Оси в "девятке". С тем, чтобы глобальная переменная, заданная в одной миссии, влекла за собой какие-либо события в следующей, лично я не сталкивался. Но, согласно руководству, это возможно.
Отредактировано VautourII (2018-04-21 20:40:29)
Хотел получить готовый ответ - лень человеческая
Надо будет экспериментировать. В теории использование глобальных переменных открывает широкие возможности!
Отредактировано Brummbar (2018-04-22 22:58:44)
Вы здесь » Союз | Union » Картостроение и скриптовка » "Школа картоделов"