#pun-title h1 span {display: none;}

Союз | Union

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Союз | Union » Картостроение и скриптовка » "Школа картоделов"


"Школа картоделов"

Сообщений 751 страница 761 из 761

751

Алекс написал(а):

Что было в том архиве уже не не вспомнить, но если нужны "учебники" по картам и скриптованию то вот: https://yadi.sk/d/nraaa7CTzXad3
Тут всё основное, что выкладывалось на форуме.

Спасибо огромное!

0

752

Barmaley185 написал(а):

Спасибо огромное!

Дерзайте!
Непонятки будут, не стесняйтесь спросить. Для того и тема.

0

753

А есть ли команда чтобы задействовать все юниты, находящиеся в скриптовой зоне? Именно тех кто находится в данный момент в этой зоне.

0

754

Barmaley185 написал(а):

Именно тех кто находится в данный момент в этой зоне.

Если только у этих юнитов один скриптовый №. Иначе только каждой группе отдельную команду, к примеру
if (GetNUnitsInArea(0,"Tochka1")>0)then - условие, если (0-юниты игрока) находятся в зоне Tochka1, то будут выполнять следующие команды:
GiveCommand(0,1017,GetScriptAreaParams("Tochka2")); - юниты со скриптовым №1017 идут в зону Tochka2.
GiveCommand(0,1018,GetScriptAreaParams("Tochka2"));
Вот только так (это более простой способ), можно через переменную, которая будет высчитывать скриптовые №.

0

755

VDVшник написал(а):

Если только у этих юнитов один скриптовый №. Иначе только каждой группе отдельную команду, к примеру
if (GetNUnitsInArea(0,"Tochka1")>0)then - условие, если (0-юниты игрока) находятся в зоне Tochka1, то будут выполнять следующие команды:
GiveCommand(0,1017,GetScriptAreaParams("Tochka2")); - юниты со скриптовым №1017 идут в зону Tochka2.
GiveCommand(0,1018,GetScriptAreaParams("Tochka2"));
Вот только так (это более простой способ), можно через переменную, которая будет высчитывать скриптовые №.

Спасибо! Будем эксперементировать.

0

756

if (GetNScriptUnitsInArea(0,"Tochka1")>0)then - условие, если (юниты со скриптовым номером находятся в зоне Tochka1, то будут выполнять следующие команды

А можно ли в одной функции ( если можно, то как это оформить?) записать перечесление зон? Ну типа:  если (юниты со скриптовым номером таким-то) находятся в зоне Tochka1 или в Tochka2 или Tochka3 то...  А так же юниты со скриптовым номером 0 или 1 или 2. Или надо для каждой ситуации новую функцию писать?

0

757

Barmaley185 написал(а):

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

0

758

VautourII написал(а):

Можно и в одной функции. Условие ее выполнения будет выглядеть так:
if (GetNScriptUnitsInArea(0,"Tochka1")>0)or
(GetNScriptUnitsInArea(0,"Tochka2")>0)or
(GetNScriptUnitsInArea(0,"Tochka3")>0)then


Вот спасибо! Что бы я без вас делал?

0

759

VautourII
Вы, похоже, в скриптах разбираетесь, может подскажете как работает - Set / GetIGlobalVar  :question:
Я по Б2 специализируюсь, но похоже кое-что в скриптах игр-братьев есть общего.
Насколько я понимаю, можно выполнив задание в одной миссии, получить за него бонус в другой, просто задав глобальную переменную SetIGlobalVar, а потом, соответственно извлекая её GetIGlobalVar в нужной миссии. А "действие" этой переменной (с заданным именем и целочисленным значением) распространяется на всю игру (в любой миссии её потом можно извлечь)  :question:

0

760

Brummbar написал(а):

VautourII
Вы, похоже, в скриптах разбираетесь, может подскажете как работает - Set / GetIGlobalVar  :question:
Я по Б2 специализируюсь, но похоже кое-что в скриптах игр-братьев есть общего.
Насколько я понимаю, можно выполнив задание в одной миссии, получить за него бонус в другой, просто задав глобальную переменную SetIGlobalVar, а потом, соответственно извлекая её GetIGlobalVar в нужной миссии. А "действие" этой переменной (с заданным именем и целочисленным значением) распространяется на всю игру (в любой миссии её потом можно извлечь)  :question:

Подпись автора

    Von Finnland bis zum Schwarzen Meer

Насколько я знаю (а признаться честно, мой опыт пока ограничен созданием отдельных миссий) в Б1 глобальные переменные на уровне глав на практике применяются только для выдачи бонусных юнитов и определения следующей миссии/главы. Например, именно так осуществляется выбор между кампаниями стран Оси в "девятке". С тем, чтобы глобальная переменная, заданная в одной миссии, влекла за собой какие-либо события в следующей, лично я не сталкивался. Но, согласно руководству, это возможно.

Отредактировано VautourII (2018-04-21 20:40:29)

0

761

Хотел получить готовый ответ - лень человеческая  :rolleyes:
Надо будет экспериментировать. В теории использование глобальных переменных открывает широкие возможности!

Отредактировано Brummbar (2018-04-22 22:58:44)

0


Вы здесь » Союз | Union » Картостроение и скриптовка » "Школа картоделов"