Помогите решить проблему
|
|
AJIuCaRD | Дата: Понедельник, 06 Июня 2011, 14:18:30 | Сообщение # 1 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Помогите создать босса чтобы он выходил после определенной волны обычных мобов =((
|
|
|
|
Archmage | Дата: Понедельник, 06 Июня 2011, 14:27:57 | Сообщение # 2 |
7 уровень
Группа: Проверенные
Сообщений: 265
Награды: 0
Репутация: 7
Блокировки:
| Обычно через функцию Create unit Просто после,например 3х волн крипов Crate unit Босс и все)
|
|
|
|
romaN-1998 | Дата: Понедельник, 06 Июня 2011, 14:27:58 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 1368
Награды: 0
Репутация: 10
Блокировки:
| Смотри, потребление пиши <= 0, проверяешь номер волны, и выпускаешь определённого босса.
|
|
|
|
AJIuCaRD | Дата: Понедельник, 06 Июня 2011, 16:20:18 | Сообщение # 4 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Это в тригерах надо делать да? Через определенную функцию Create Unit Например я создал босса под именем BigBadBoss, как мне сделать чтобы он выходил из нижнего правого угла карты? =( В триггерах я не очень=((Добавлено (06-06-2011, 16:20) --------------------------------------------- Начало процедуры как я понял будет таким: function CreateUnit takes nothing returns nothing call
|
|
|
|
sacar777 | Дата: Понедельник, 06 Июня 2011, 16:24:44 | Сообщение # 5 |
7 уровень
Группа: Проверенные
Сообщений: 416
Награды: 0
Репутация: 35
Блокировки:
| 1)Создаешь область, куда пойдет босс. 2) Проверяешь, что бы босс смог дойти до области, то есть пройти в узких местах, ворота или другое, ну ты понял. 3)Ставишь босса на карту (думаю ты уже поставил). 4)Триггер Событие: Не знаю как ты там делаешь, поэтому с событием подсказать не могу... Условие:тоже хз (что и выше) Действие:Боевая Единица set rally to point for Твой Босс to Центр (Твоя область). Вот картинка
Legion
Герои: 10% Ландшафт: 30% Предметы: 10% Баланс:80% Код:70% Общая готовность: 10% Бета Тест карты выявил 4 довольно простых бага.
Сообщение отредактировал sacar777 - Понедельник, 06 Июня 2011, 16:26:32 |
|
|
|
SirNikolas | Дата: Понедельник, 06 Июня 2011, 16:51:19 | Сообщение # 6 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| sacar777, rally point - это "флажок" у зданий. Нужно делать move, attack или smart.
|
|
|
|
AJIuCaRD | Дата: Понедельник, 06 Июня 2011, 17:14:17 | Сообщение # 7 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Босса поставил на карту где он должен выходить Но он там стоит с самой первой волны и еще и нейтральныйДобавлено (06-06-2011, 17:14) --------------------------------------------- Получился вот такой триггер function Trig_BigBadBoss_Actions takes nothing returns nothing call SetUnitPositionLoc( gg_unit_u00B_0014, GetRectCenter(gg_rct________________004) ) endfunction
//=========================================================================== function InitTrig_BigBadBoss takes nothing returns nothing set gg_trg_BigBadBoss = CreateTrigger( ) call TriggerAddAction( gg_trg_BigBadBoss, function Trig_BigBadBoss_Actions ) endfunction
Пытаюсь сохранить карту выдает много шибок в частности Отсутствует название,оператор кода,название функции Что не так?
|
|
|
|
sacar777 | Дата: Понедельник, 06 Июня 2011, 17:23:06 | Сообщение # 8 |
7 уровень
Группа: Проверенные
Сообщений: 416
Награды: 0
Репутация: 35
Блокировки:
| Quote (SirNikolas) SirNikolas а да, перепутал=)
Добавлено (06-06-2011, 17:23) --------------------------------------------- попробуй не переводить в Джас, гуи сохрани проверь работает или нет..
Какое событие ставишь и условие?
Если не ошибаюсь вот корень зла (gg_rct________________004) ) Джас не воспроизводит русский язык, пиши название областей по английски..
Legion
Герои: 10% Ландшафт: 30% Предметы: 10% Баланс:80% Код:70% Общая готовность: 10% Бета Тест карты выявил 4 довольно простых бага.
Сообщение отредактировал sacar777 - Понедельник, 06 Июня 2011, 17:25:25 |
|
|
|
SirNikolas | Дата: Понедельник, 06 Июня 2011, 17:29:19 | Сообщение # 9 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (sacar777) Если не ошибаюсь, вот корень зла Ничего подобного. Он просто переводит кириллицу в подчеркивания.
|
|
|
|
AJIuCaRD | Дата: Понедельник, 06 Июня 2011, 17:47:23 | Сообщение # 10 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Quote (sacar777) Какое событие ставишь и условие? В Условие поставил Мой босс равно Attaked unit А в событие что можно поставить? Quote (sacar777) попробуй не переводить в Джас, гуи сохрани проверь работает или нет.. Я и не пытался переводить Quote (sacar777) Если не ошибаюсь вот корень зла (gg_rct________________004) Это не корень зла это точка куда пойдем босс когда появится
|
|
|
|
romaN-1998 | Дата: Понедельник, 06 Июня 2011, 17:59:24 | Сообщение # 11 |
10 уровень
Группа: Проверенные
Сообщений: 1368
Награды: 0
Репутация: 10
Блокировки:
| AJIuCaRD, не то делаешь. Делай на GUI тогда или вот код: Code function Trig_Boss_Actions takes nothing returns nothing local unit boss if udg_wave = 1 then set boss = CreateUnit(Player(11),'boss',3695,-3325,315) call IssuePointOrder(boss,"attack",0,0) set udg_wave = udg_wave + 1 set boss = null endif if udg_wave = 2 then set boss = CreateUnit(Player(11),'bos2',3695,-3325,315) call IssuePointOrder(boss,"attack",0,0) set boss = null set udg_wave = udg_wave + 1 endif endfunction
function InitTrig_Boss takes nothing returns nothing set gg_trg_Boss = CreateTrigger() call TriggerRegisterPlayerStateEvent( gg_trg_Boss, Player(11), PLAYER_STATE_RESOURCE_FOOD_USED, LESS_THAN_OR_EQUAL, 0.00 ) call TriggerAddAction( gg_trg_Boss, function Trig_Boss_Actions ) endfunction
короче: Quote call TriggerRegisterPlayerStateEvent( gg_trg_Boss, Player(11), PLAYER_STATE_RESOURCE_FOOD_USED, LESS_THAN_OR_EQUAL, 0.00 ) Где Player(11) = должен быть игрок-владелец мобов. Player(11) - коричневый игрок В Jass отсчёт игроков идёт с 0.
Quote set boss = CreateUnit(Player(11),'bos2',3695,-3325,315) где 'bos2' = рав-код твоего босса Где 3695, -3325 = координаты, где он создатся где 315 = угол поворота
Quote if udg_wave = 1 then ты должен иметь переменную wave = типа Целочисленная.
Разжевал, всё что смог. Будут вопросы - задавай. А да:Quote call TriggerAddAction( gg_trg_Boss, function Trig_Boss_Actions ) gg_trg_Boss = имя триггера (Boss)
И ещё, тебе надо сделать столько if'ов, сколько у тебя волн. Или тогда пробуй как-нибудь циклом тогда.
Сообщение отредактировал romaN-1998 - Понедельник, 06 Июня 2011, 18:00:41 |
|
|
|
DeadJass | Дата: Понедельник, 06 Июня 2011, 18:43:41 | Сообщение # 12 |
7 уровень
Группа: Проверенные
Сообщений: 447
Награды: 0
Репутация: 30
Блокировки:
| romaN-1998, много if'оф. лучше сделать так integer wave integer array UnitType забить в юнит тайп мобоф вот так set UnitType[1]='u001' set UnitType[2]='u002' set UnitType[3]='u003' set UnitType[4]='boss'
Ну и потом просто когда пища становиться 0 создавать юнитов так: set wave=wave+1 call CreateUnit(Player(11),UnitType[wavw],x,y,face)
^ кликабельно Archers Of The Island v1.8 - на стадии завершения
|
|
|
|
SirNikolas | Дата: Понедельник, 06 Июня 2011, 18:54:08 | Сообщение # 13 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| DeadJass, только их надо сделать глобальными. А то при каждом запуске триггера будет забивать массив.
|
|
|
|
AJIuCaRD | Дата: Понедельник, 06 Июня 2011, 20:06:44 | Сообщение # 14 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Quote (romaN-1998) Где Player(11) = должен быть игрок-владелец мобов. А можно в место player-а поставить нейтральные войска? и как это написать вместо playera Quote (romaN-1998) где 'bos2' = рав-код твоего босса Это этот код - 0014? Или где его правильно посмотреть?
потом смотри в код у тебя идет 1-я волна - создание босса его имя место где он появляется и тэдэ после как я понял когда он умирает то идет 2-я волна в которой опять он создается?Добавлено (06-06-2011, 19:59) --------------------------------------------- И вместо boss писать BigBadBoss или можно так оставить? Добавлено (06-06-2011, 20:06) --------------------------------------------- еще вопрос: на этой строке if udg_wave = 1 then выдает ошибку "Отсутствует название" какое название? оО
|
|
|
|
sacar777 | Дата: Понедельник, 06 Июня 2011, 20:10:50 | Сообщение # 15 |
7 уровень
Группа: Проверенные
Сообщений: 416
Награды: 0
Репутация: 35
Блокировки:
| ты бы сначала триггеры выучил, потом за Джас брался.. Quote (SirNikolas) SirNikolas учту, не знал, что он просто кириллицу подчеркивает.. Думал, что он из за кириллицы её не берет.
Legion
Герои: 10% Ландшафт: 30% Предметы: 10% Баланс:80% Код:70% Общая готовность: 10% Бета Тест карты выявил 4 довольно простых бага.
|
|
|
|
AJIuCaRD | Дата: Понедельник, 06 Июня 2011, 20:19:34 | Сообщение # 16 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Исправил ошибку отсутствует название(не было переменной wave) Теперь на месте старой ошибки про название пишет Expected '==' Что с ней делать?
|
|
|
|
SirNikolas | Дата: Вторник, 07 Июня 2011, 07:51:43 | Сообщение # 17 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (AJIuCaRD) Expected '==' Пропущен знак "==" (сравнение в условии).
|
|
|
|
AJIuCaRD | Дата: Вторник, 07 Июня 2011, 15:05:51 | Сообщение # 18 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| агась исправил
теперь пишет пропущено выражение в этой строке
set BigBadBoss = CreateUnit(Player(0),'BigBadBoss',3695,-3325,315)Добавлено (07-06-2011, 15:05) ---------------------------------------------
Quote (AJIuCaRD) пропущено выражение То есть отсутствует выражение =)
|
|
|
|
Mep3aB4uK | Дата: Вторник, 07 Июня 2011, 15:39:58 | Сообщение # 19 |
9 уровень
Группа: Проверенные
Сообщений: 1019
Награды: 0
Репутация: 135
Блокировки:
| AJIuCaRD, 'BigBadBoss' - должен быть id юнита к приперу 'n001'. Кажеться ctr+D открывает id
|
|
|
|
AJIuCaRD | Дата: Вторник, 07 Июня 2011, 16:00:58 | Сообщение # 20 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Quote (Mep3aB4uK) 'BigBadBoss' - должен быть id юнита к приперу 'n001'. Кажеться ctr+D открывает id Спасибо,исправил Еще 3 ошибки Отсутствует название переменной set BigBadBoss = CreateTrigger() Отсутствует название call TriggerRegisterPlayerStateEvent( BigBadBoss, Player(0), PLAYER_STATE_RESOURCE_FOOD_USED, LESS_THAN_OR_EQUAL, 0.00 ) call TriggerAddAction( BigBadBoss, function Trig_Boss_Actions )
|
|
|
|
Mep3aB4uK | Дата: Вторник, 07 Июня 2011, 16:49:12 | Сообщение # 21 |
9 уровень
Группа: Проверенные
Сообщений: 1019
Награды: 0
Репутация: 135
Блокировки:
| AJIuCaRD, создай переменную типа-Боевая еденица с названием BigBadBoss, и везде где BigBadBoss, пропиши udg_BigBadBoss
|
|
|
|
AJIuCaRD | Дата: Вторник, 07 Июня 2011, 17:19:24 | Сообщение # 22 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Quote (Mep3aB4uK) создай переменную типа-Боевая еденица с названием BigBadBoss, и везде где BigBadBoss, пропиши udg_BigBadBoss Исправил, спасибо
теперь 2 ошибки но уже другие Несовпадение типов при присвоении set udg_BigBadBoss = CreateTrigger() Неверный тип аргумента(unit) call TriggerAddAction(udg_BigBadBoss, function Trig_Boss_Actions )
|
|
|
|
Mep3aB4uK | Дата: Вторник, 07 Июня 2011, 17:28:20 | Сообщение # 23 |
9 уровень
Группа: Проверенные
Сообщений: 1019
Награды: 0
Репутация: 135
Блокировки:
| AJIuCaRD,замени так: в самом начале и вместо set udg_BigBadBoss=CreateTrigger() local trigger tri=CreateTrigger() замени call TriggerAddAction(udg_BigBadBoss, function Trig_Boss_Actions ) на call TriggerAddAction(tri, function Trig_Boss_Actions ) и в конце set tri=null
Сообщение отредактировал Mep3aB4uK - Вторник, 07 Июня 2011, 17:30:15 |
|
|
|
AJIuCaRD | Дата: Вторник, 07 Июня 2011, 17:38:06 | Сообщение # 24 |
1 уровень
Группа: Пользователи
Сообщений: 18
Награды: 0
Репутация: 0
Блокировки:
| Quote (Mep3aB4uK) local trigger tri=CreateTrigger() а в скобках ничего не надо писать?Добавлено (07-06-2011, 17:38) --------------------------------------------- Неверный тип аргумента(unit) call TriggerAddAction(tri, function Trig_Boss_Actions ) он ругается на tri наверное может ему какой нить аргумент задать?
|
|
|
|
SirNikolas | Дата: Вторник, 07 Июня 2011, 17:46:28 | Сообщение # 25 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| AJIuCaRD, позволь задать один вопрос, это может значительно помочь нам в этом трудном деле - пытаться тебе помочь.
|
|
|
|