Опции OW:   A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Ресивер OW (параметры игрока)


!!OW:XXXX; - этот ресивер может применять действия к конкретному игроку.
Используйте эту команду для применения действий к игроку, например, установки ресурсов, команд, кол-ва героев, контролируемых игроком, и время, которое может прожить игрок без города.
Если вы хотите дать или забрать деньги у игрока, можно использовать упрощенный синтаксис:


A#/$
Установить/проверить/получить активного героя
        # – игрок (-1 = текущий)
        $ – номер героя (-1 = не выбран)


C?$
Проверить/получить цвет текущего игрока
        $ = 0..7
Можно только проверить или получить, но не установить.
Комментарий (показать)

При мультиплеерной игре использование команды даст значение того игрока, кто сейчас ходит, и не важно, кто именно из игроков инициировал ERM-код.


D#1/#2
Установить кол-во дней, сколько может держаться игрок после потери последнего замка.
        #1 – номер игрока (-1 = текущий)
        #2 – дней до проигрыша (0..127) или вечная жизнь (128..254)
Если вы установили 128..254, игрок не будет получать сообщения с предупреждением о потери последнего города. 255 устанавливает стандарт в 7 дней.
        #1 = -2 – установить стандартное время до проигрыша (обычно = 7).
        #2 = дни (0..127; 128..255)
Если вы установили 128..254, игроки будут получать сообщения о необходимости захвата замка лишь одну неделю.
Если вы установите 255, игроки будут получать сообщение каждый день.
Если вы захватили замок и потеряли его, устанавливается обычное кол-во, настроенное этой командой при # = -2.


G$1/$2
Проверить, перед данным ли ПК сидит игрок. Мультиплеерная команда.
        $1 – игрок
        $2 – проверить на игрока (1 = да, это я; 0 = нет, это другой игрок-человек)
Имеет смысл только для мультиплеерной игры. Конечно, главный синтаксис – это получение значения, но вы можете также и установить его (но мы бы не рекомендовали пытаться это сделать :-)
Комментарий: эта команда схожа с действием флага 999, но они неравнозначны.
Пример (показать)

Допустим, вы играете по сети и вам надо запрещать пользоваться мышью в битве противнику, который ждёт своей очереди ходить.. Итак, если в битве ходит левый герой, то, при попытке нажать мышью куда-либо игроком правой стороны, ему высветится «Извините, но сейчас не ваш ход! Ждите..»


H#1/$2
Подсчитать и получить кол-во (номера) героев игрока.
        #1 – игрок (-1 = текущий)
        #2 – номер первой v-переменной для записи информации
В v[#2] запишется кол-во героев у игрока. А в массив v-переменных, начиная с v[#2+1], запишутся все номера героев, которые есть у игрока.
Расширение синтаксиса:
H#1/$2/#3
        #1 – игрок (-1 = текущий)
        #2 – номер v-переменной для записи информации
        #3 – тип
            = 0 - записать кол-во героев игрока в v[#2]
            > 0 - номер героя у игрока для записи его собственного номера в v[#2], если у игрока нет героя с таким номером, v[#2] не изменится.
Пример (показать)


I#1/$2
Установить/проверить/получить ИИ
        #1 – цвет
        $2 – контроллер
         = 1 – ИИ
         = 0 – человек
Расширение синтаксиса:
I#1/$1/$2
        #1 – цвет
        $1 – ИИ/человек
         = 1 – ИИ
         = 0 – человек
        $2 – игрок жив (0) или мёртв (1)


K#1/#2/$
Установить/проверить/получить статус палатки ключника
        #1 – игрок (0..7, -1 = текущий)
        #2 – номер палатки (0..7)
        $ – посещена (1) или нет (0)
Пример:


N#1/$2
Установить/проверить/получить активный город
        #1 – хозяин (0..7, -1 = текущий)
        $2 – номер города (0..47, -1 – не выбран)


N#1/#2/$
Получить номер замка, находящегося в слоте #2 таблицы замков
        #1 – игрок (-1 = текущий)
        #2 – номер слота (0..4)
        $ – номер города (-1 = нет, 0..N – номер города)
Можно только проверить или получить номер города, показываемого в одном из пяти слотов справа. Нельзя установить данное значение.
Пример:


N#1/#2/#3/#4
Двигать город в таблице замков
        #1 – игрок
        #2 – тип действия:
            1 – двигать в самый верх     
            2 – сдвинуть вверх на одну позицию
            3 – сдвинуть вниз на одну позицию
        #3 – слот города в таблице городов (0..4)
        #4 – фантомный параметр (0)


O#/$1/$2/$3/$4/$5/$6/$7/$8/$9
Проверить кол-во всех активных героев
        # – игрок (-1 = текущий)
        $1 – кол-во героев
        $2…$9 – номер героя, принадлежащего этому игроку (-1 = нет героя)
Позволяет вам проверить номера всех активных (максимум 8) героев игрока, показанных в таблице героев (справа от главного окна приключений). Они также могут быть установлены, если вы хотите изменить порядок героев в таблице. Если у игрока менее 8 героев, их значения будут равны -1.


O#1/#2/$
Установить/проверить номер активного героя в таблице героев. Вы можете получить номер героя, показанного в одном из 5 слотов.
        #1 – игрок (-1 = текущий)
        #2 – номер слота (0..4)
        $ – номер героя (-1 = нет героя)
Этим синтаксисом можно только проверить или получить, но не установить.


O#1/#2/#3/#4
Сдвинуть героя в таблице
        #1 – игрок
        #2 – тип действия:
            1 = сдвинуть героя на самый верх
            2 = сдвинуть героя на одну позицию вверх
            3 = сдвинуть героя на одну позицию вних
        #3 – слот героя (0..4)
        #4 – фантомный параметр (0)


R#1/#2/$3
Установить/проверить/получить ресурсы
        #1 – игрок (-1 = текущий)
        #2 – тип ресурса
        $3 – кол-во ресурса
Замечание: не пытайтесь установить ресурсы во время загрузки карты (т.е. инструкциями или пост-инструкциями), иначе игра вылетит.


S#1/#2
Колдовать заклинание на карте приключений
        #1 – вариант (сейчас 1 или 2)
Вариант 1:
        #2 – номер заклинания (0..9). Будет наколдовано текущим героем.
Вариант 2:
        #2 – фантомный параметр (скажем, 0). Открывается Книга Заклинаний этого героя. Это путь для симулирования наложения заклинания на карте (что-то типа «руны обелисков»).
Комментарий (показать)

1. Книга заклинаний не необходима, и герою необязательно знать заклинание
2. Уровень навыка всегда основывается на соответствующем элементальном навыке героя.
3. Баллы заклинаний забираются у героя при окончании колдования, но если у героя недостаточно маны, заклинание всё равно будет выполнено (и не приведет в отрицательному кол-ву маны)
4. Герой всё же должен иметь немного очков хода для кастования "Дверь Измерений" или "Городской портал" для их срабатывания.


T#1/$2
Установить/проверить/получить команды
         #1 – игрок
         $2 – команда (0..6, -1)
Комментарий: заметьте, что если хозяин - нейтрал (значение хозяина объекта равно -1), не нужно проверять команду. Если вы всё же проделаете это, то получите 0 (который в большинстве случаев означает команду с красным игроком).
Если игрок не в команде, значение равно -1.
Замечание: Команды, настроенные в процессе игры, сбрасываются после каждой загрузки сохранения. Поэтому любые изменения команд игроков следует делать в теле триггера !?GM0.


V#1/$1/$2
Установить/проверить/получить героев, доступных в таверне.
         #1 – игрок (-1 = текущий)
         $1 – левый герой в таверне (-1 = нет)
         $2 – правый герой в таверне (-1 = нет)
Мы не можем гарантировать, что всё будет работать корректно, если вы установите одного героя нескольким игрокам.


W#1/$1
Установить/проверить/получить кол-во городов под контролем игрока
         #1 – игрок
         $1 – кол-во городов у игрока (0..48)
Пример (показать)

Если вам надо быстро просмотреть все города красного игрока, то..
Кстати, в стандартных скриптах WoG, для этого обычно использовали команду UN:U с перебором всех городов на карте и последующей проверкой их на принадлежность игроку, что гораздо дольше по времени выполнения.


W#1/#2/$1
Установить/проверить/получить номер города из таблицы городов игрока #1
         #1 – игрок
         #2 – номер города в таблице городов игрока (0..47)
         $1 – номер города на карте (0..47)