GhostManSD
Posts: 1054
|
Для скриптов ERM типа "script90.erm" можно создать файл типа "script90.ert". Возможно ли сделать такое для одной карты? Ведь ert-файлы удобны тем, что все текстовые переменные находятся в одном месте.
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
|
|
11.09.2010 20:03 |
|
GhostManSD
Posts: 1054
|
Знатоки математики, подскажите, пожалуйста, как это можно компактнее записать:
Code:
если x2=0, то функция 80002 выполняется для значений 5-7;
если x2=1, то функция 80002 выполняется для значений 6-7;
если x2=2, то функция 80002 выполняется для значения 7;
если x2=3, то функция 80002 не выполняется.
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
|
|
11.09.2010 22:55 |
|
Berserker
Posts: 16657
|
|
11.09.2010 23:04 |
|
Sav
Posts: 2180
|
!!VRx3:Sx2+5;Устанавливаем начальное значение в цикле.
!!VRx4:Sx2+7;Устанавливаем конечное значение в цикле.
!!VRx4&x4>7:S7;Если конечное значение слишком велико, урезаем его.
!!DO80002/x3/x4/1&x3<=7:P;Если начальное значение не слишком велико, запускаем цикл. Добавлено:
То, что надо?
(This post was last modified: 11.09.2010 23:05 by Sav.)
|
|
11.09.2010 23:05 |
|
GhostManSD
Posts: 1054
|
Так, я снова коряво выразился. Попробую с другого боку.
Допустим, я поставил !!DO1/5/7/1. Какое значение x16 мне вернётся при первом прогоне?
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
|
|
11.09.2010 23:24 |
|
Sav
Posts: 2180
|
В первом прогоне оно будет равно 5, а во втором 6.
|
|
11.09.2010 23:28 |
|
Berserker
Posts: 16657
|
|
11.09.2010 23:28 |
|
GhostManSD
Posts: 1054
|
Смотрите, что мне нужно. Мне нужно, чтобы функция пробежалась по трем последним слотам и поставила там существо, допустим, 0. Но всё это с оговоркой:
- если v800=0, то пробежаться по трем последним слотам;
- если v800=1, то пробежаться по двум последним слотам;
- если v800=2, то пробежаться по последнему слоту;
- если v800=3, то ни шиша не делать.
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
|
|
12.09.2010 00:01 |
|
Berserker
Posts: 16657
|
|
12.09.2010 00:29 |
|
Sav
Posts: 2180
|
Кто-нибудь может проверить, триггер !?MF1; срабатывает при уроне от кислоты Ржавого дракона или Кошмарной гидры?
А то там вызывается та же функция (по-видимому, функция расчёта урона), что и при атаке.
(This post was last modified: 12.09.2010 23:36 by Sav.)
|
|
12.09.2010 23:14 |
|
M.A.K.C.
Posts: 472
|
Нужен скрипт.
Суть, за победу над отрядом мостров, герой получает золото, количество золота зависит от количества монстров и их уровня
1-й ур 10 золотых с существа, 2-й ур 25 3-й 50 4-й 100 5-й 250 6-й 500 7-й 1000 8-й 2500 или иные суммы, можно процент от их стоимости.
Все свежие обновления я выкладываю на своем сайте здесь.
(This post was last modified: 16.09.2010 20:59 by M.A.K.C..)
|
|
16.09.2010 20:59 |
|
GhostManSD
Posts: 1054
|
Если брать проценты, то будет более справедливо. Золото за победу = 25% *[стоимость существа] *[количество]. Справки под рукой нет, пишу в общем виде:
Code:
!?OB54/-1; Триггер при посещении монстра
!!HE-1:O?v9000; Запомнить владельца героя в v9000
!!OBv998/v999/v1000:U?y1; Запомнить номер существа
!!MA:Cy1/6/?y2; Запомнить стоимость монстра
!!MOv998/v999/v1000:G?y3; Запомнить кол-во
!!FU9000:Py2/y3; Запустить функцию вычисления получаемого золота
!?FU9000; Функция вычисления получаемого золота
; x1 - стоимость монстра, x2 - количество
!!VRv9000:S0; Обнулить переменную v9000
!!VRx1:*25 :100; Вычислить 25% от стоимости
!!VRv9001:Sx1 *x2; Вычислить количество золота
!$OB54/-1; Пост-триггер при посещении монстра
!!HE-1:O?v9002; Запомнить владельца героя
!!FU&v9000<>v9002:E; Выйти, если игрок проиграл
!!OW:Rv9002/6/?y1; Запомнить количество золота у игрока
!!VRy2:Sy1 +v9001;
!!OW:Rv9002/6/y2; Установить новое количество золота
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
(This post was last modified: 16.09.2010 21:26 by GhostManSD.)
|
|
16.09.2010 21:26 |
|
Sav
Posts: 2180
|
Что-то типа того:
!?BA0&1000;Перед не ИИ битвой... !!BA:H1/?y-1;Проверяем, есть ли герой у защищающегося игрока. !!FU&y-1>-2:E;Если у защищающегося игрока есть герой, выходим из триггера. !!VRv9400:S0;Обнуляем переменную стоимости армии. !!DO15000/0/6/1:P;Запускаем цикл, считающий стоимость армии защищающегося игрока.
!?BA1&1000;После не ИИ битвы... !!BA:H1/?y-1;Проверяем, есть ли герой у защищающегося игрока. !!FU&y-1>-2:E;Если у защищающегося игрока есть герой, выходим из триггера. !!BA:H0/?y-1;Считываем, номер героя атакующего игрока. !!HEy-1:O?y-2;Проверяем, победил ли атакующий игрок. !!OW&y-2>-1:R-1/6/dv9400;Если атакующий игрок победил даём ему золото. !!UN:R2;Обновляем панель ресурсов.
;Функции счёта стоимости армии.
!?FU15000;Функция счёта стоимости слота армии. !!BA:M1/x16/?y1/?y2;Считываем тип и количество существ в слоте. !!FU&y1=-1:E;Если слот пустой, завершаем функцию. !!MA:Cy1/6/?y3;Считываем цену каждого существа в слоте. !!VRy4:Sy3*y2:5;Вычисляем 20% от суммарной цены существ в слоте. !!VRv9400:+y4;Добавляем стоимость существ в слоте к переменной стоимости армии.
Не успел.
(This post was last modified: 16.09.2010 21:57 by Sav.)
|
|
16.09.2010 21:40 |
|
GhostManSD
Posts: 1054
|
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
(This post was last modified: 16.09.2010 21:42 by GhostManSD.)
|
|
16.09.2010 21:41 |
|