Воскрешение
|
|
adiga | Дата: Воскресенье, 17 Июля 2011, 12:06:07 | Сообщение # 1 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| Х - целочисленая (0 начальная), У - юнит масив. Игрок выбирает героя, создается герой, х = х + 1, у [х] = последний юнит, когда некоторое событие заканчивается, мне нужно портануть живых, воскресить мертвых, беру for loop intеgеr А от 1 до Х, если мертв воскресить, иначе портануть. Иногда 1-2 юнита не воскрешаются вобще. Как будто глобалка У пропала.
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
Mep3aB4uK | Дата: Воскресенье, 17 Июля 2011, 13:14:44 | Сообщение # 2 |
9 уровень
Группа: Проверенные
Сообщений: 1019
Награды: 0
Репутация: 135
Блокировки:
| Ставь изначально Х=1 или делай цикл от 0 до Х+1.
|
|
|
|
SunCreep | Дата: Воскресенье, 17 Июля 2011, 14:47:31 | Сообщение # 3 |
9 уровень
Группа: Проверенные
Сообщений: 1136
Награды: 0
Репутация: 141
Блокировки:
| adiga, ну надеюсь ты в цикле поставил в ячейку массива букву А. Если да,то попробуй не делать переменную Х. Code С-отряд вошёл в зону Д-Установить У[номер игрока владелец входящий юнит] равно входящий юнит в цикле сделай проверку на играбельность через ифзенку. если/то/иначе если игрок владелец У[A] в игре то если/то/иначе __если У[A] жив __то воскресить У[A] ___иначе двигать У[A] я так понял что ты на jass хотел сделать,то сам переведи эту галиматью,если нет,то зачем писал луп?)
|
|
|
|
adiga | Дата: Воскресенье, 17 Июля 2011, 17:07:41 | Сообщение # 4 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| Мне кажеться что проверка жив мертв иногда лагает, просто юнит мертв а показана анимация Тп! Значит функция посщитала что юнит жив, и проиграла вторую часть иф зен елсе. И ошибка в самой функции маловероятна, в 70% случаех работает
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
SunCreep | Дата: Воскресенье, 17 Июля 2011, 21:24:45 | Сообщение # 5 |
9 уровень
Группа: Проверенные
Сообщений: 1136
Награды: 0
Репутация: 141
Блокировки:
| Баг может происходить в том случае,если юнит только что умер.Юнит при проверке считается мёртвым после проигрывания анимации смерти.
|
|
|
|
adiga | Дата: Воскресенье, 17 Июля 2011, 22:38:53 | Сообщение # 6 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| Сан крип, если это правда то ты решил все мои проблемы =) скажи в РО время смерти 0 например ускорит процес перехода в разряд умерших юнитов?
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
SunCreep | Дата: Воскресенье, 17 Июля 2011, 23:26:08 | Сообщение # 7 |
9 уровень
Группа: Проверенные
Сообщений: 1136
Награды: 0
Репутация: 141
Блокировки:
| Наверное да,но я не уверен.
|
|
|
|
adiga | Дата: Воскресенье, 17 Июля 2011, 23:42:39 | Сообщение # 8 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| Нет,проверил, юнит считается мертвым СРАЗУ как только хп <= 0
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
DeadJass | Дата: Понедельник, 18 Июля 2011, 07:41:21 | Сообщение # 9 |
7 уровень
Группа: Проверенные
Сообщений: 447
Награды: 0
Репутация: 30
Блокировки:
| Code unit array unt
void Trig_Her_Actions() { int i=0 whilenot i>5 { unt[i]=CreateUnit(Player(0),'hfoo',0,0,bj_UNIT_FACING) i++ } }
void Trig_HZ_Actions () { int i=0 whilenot i>5 { if GetWidgetLife(unit[i])>0 then //тп else ReviveHero(unit[i],0,0,true) endif i++ } }
^ кликабельно Archers Of The Island v1.8 - на стадии завершения
|
|
|
|