в Этой теме отвечаю на вопросы по триггерам.
|
|
adiga | Дата: Суббота, 12 Марта 2011, 22:19:29 | Сообщение # 1 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| Желательно говорите что хотите сделать, а я скажу как именно и как проще это реализовать. А то есть такие люди которые втрое дольше и сложнее делают то что можно сделать в 3 строчки треггера )
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
[DUОS] | Дата: Суббота, 12 Марта 2011, 22:27:23 | Сообщение # 2 |
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
| Эта тема нарушает правила данного раздела.
|
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:27:40 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| adiga, Code function Trig_Revive_Hero_Taimer takes nothing returns nothing local timer t=GetExpiredTimer() local integer ID=GetHandleId(t) local unit u=LoadUnitHandle(udg_Hash,ID,0) local player p=GetOwningPlayer(u) local timerdialog w=LoadTimerDialogHandle(udg_Hash,ID,2) //Воскрешает героя в стартовой локации,можно менять call ReviveHero(u,GetStartLocationX(GetPlayerStartLocation(p)),GetStartLocationY(GetPlayerStartLocation(p)),true ) if GetLocalPlayer()==GetOwningPlayer(u)then call PanCameraTo(GetUnitX(u),GetUnitY(u)) endif call PauseTimer(t) call DestroyTimer(t) call DestroyTimerDialog(w) call FlushChildHashtable(udg_Hash,ID) set t=null set u=null set p=null set w=null endfunction function Trig_Revive_Hero_Actions takes nothing returns nothing local timer t local integer ID local timerdialog w local unit u=GetTriggerUnit() if IsUnitType(u,UNIT_TYPE_HERO)==true then set t=CreateTimer() set ID=GetHandleId(t) set w=CreateTimerDialog(t) //Создает окно таймера в котором будет написанно имя игрока владельца умершего героя call TimerDialogSetTitle(w,GetPlayerName(GetOwningPlayer(u))) call TimerDialogDisplay(w,true) call SaveUnitHandle(udg_Hash,ID,0,u) call SaveTimerDialogHandle(udg_Hash,ID,2,w) //Запускает таймер,GetHeroLevel(u)*3. время через которое возродиться наш герой. call TimerStart(t,GetHeroLevel(u)*3.,true,function Trig_Revive_Hero_Taimer) set t=null set w=null endif set u=null endfunction function InitTrig_Revive_Hero takes nothing returns nothing local integer i=0 local trigger trig=CreateTrigger() loop call TriggerRegisterPlayerUnitEvent(trig,Player(i),EVENT_PLAYER_UNIT_DEATH,null) set i=i+1 exitwhen i==11 endloop call TriggerAddAction(trig,function Trig_Revive_Hero_Actions) set trig=null endfunction как можно упростить?((
|
|
|
|
lawson | Дата: Суббота, 12 Марта 2011, 22:34:23 | Сообщение # 4 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Dreii, Кстати в твеой наработке не легче сделать сразу при событии уловие что TriggerUnit() = UNIT_TYPE_HERO чтоб потом в действии это не требовалось.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Суббота, 12 Марта 2011, 22:36:12 |
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:36:22 | Сообщение # 5 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| lawson, хз)))Я потом посмотрю... пооооооооооотом Добавлено (12-03-2011, 22:36) --------------------------------------------- lawson, да сделаю событие отдельной ф-ией
|
|
|
|
lawson | Дата: Суббота, 12 Марта 2011, 22:36:44 | Сообщение # 6 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Dreii) как можно упростить?(( Обнулени выкини твой тригер на пол кило похудеет.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:40:33 | Сообщение # 7 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| lawson, нее))Оптмимизация это все!
|
|
|
|
adiga | Дата: Суббота, 12 Марта 2011, 22:48:33 | Сообщение # 8 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| Dreii, скажи что ты хочешь сделать и я скажу как проще чем всякую хрень в джасе расписывать
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
Zabei | Дата: Суббота, 12 Марта 2011, 22:49:10 | Сообщение # 9 |
7 уровень
Группа: Проверенные
Сообщений: 479
Награды: 0
Репутация: 125
Блокировки:
| adiga, здравствуй! Очень большие минусы 1.Quote (DUOS) Эта тема нарушает правила данного раздела. 2.Все равно обломишься уже завтра с вопросами 3.слишком льстишь себе(в подписи и названии этой темы) 4.Спицаааально не отписываешься чтобы не заработать дофега минусов! Всё[
|
|
|
|
adiga | Дата: Суббота, 12 Марта 2011, 22:49:46 | Сообщение # 10 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| это как я понял что-то типа ревайва по таймеру?
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:50:44 | Сообщение # 11 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| Code function Trig_Revive_Hero_Cond takes nothing returns boolean return IsUnitType(GetDyingUnit(),UNIT_TYPE_HERO) endfunction function Trig_Revive_Hero_Taimer takes nothing returns nothing local timer t=GetExpiredTimer() local integer ID=GetHandleId(t) local unit u=LoadUnitHandle(udg_Hash,ID,0) local player p=GetOwningPlayer(u) local timerdialog w=LoadTimerDialogHandle(udg_Hash,ID,2) call ReviveHero(u,GetStartLocationX(GetPlayerStartLocation(p)),GetStartLocationY(GetPlayerStartLocation(p)),true ) if GetLocalPlayer()==GetOwningPlayer(u)then call PanCameraTo(GetUnitX(u),GetUnitY(u)) endif call PauseTimer(t) call DestroyTimer(t) call DestroyTimerDialog(w) call FlushChildHashtable(udg_Hash,ID) set t=null set u=null set p=null set w=null endfunction function Trig_Revive_Hero_Actions takes nothing returns nothing local timer t=CreateTimer() local integer ID=GetHandleId(t) local timerdialog w=CreateTimerDialog(t) local unit u=GetTriggerUnit() call TimerDialogSetTitle(w,GetPlayerName(GetOwningPlayer(u))) call TimerDialogDisplay(w,true) call SaveUnitHandle(udg_Hash,ID,0,u) call SaveTimerDialogHandle(udg_Hash,ID,2,w) call TimerStart(t,GetHeroLevel(u)*3.,true,function Trig_Revive_Hero_Taimer) set t=null set w=null set u=null endfunction //=========================================================================== function InitTrig_Revive_Hero takes nothing returns nothing local integer i=0 local trigger trig=CreateTrigger() loop call TriggerRegisterPlayerUnitEvent(trig,Player(i),EVENT_PLAYER_UNIT_DEATH,null) exitwhen i==11 set i=i+1 endloop call TriggerAddCondition(trig,Condition(function Trig_Revive_Hero_Cond)) call TriggerAddAction(trig,function Trig_Revive_Hero_Actions) set trig=null endfunction вот упростил немного.Помогите с GetStartLocationX(GetPlayerStartLocation(p)),GetStartLocationY(GetPlayerStartLocation(p)) нужно на что то более утченое заменить
|
|
|
|
adiga | Дата: Суббота, 12 Марта 2011, 22:51:12 | Сообщение # 12 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| да как то мне до минусов как с высокой колокольни, о себе сужу относительно того какие карты видел! а повидал (специально все просматриваю в редакторе для оценки сложности карты) дофига
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:52:14 | Сообщение # 13 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| Quote (adiga) в джасе расписывать Добавлено (12-03-2011, 22:52) ---------------------------------------------
Quote (adiga) чем всякую хрень
|
|
|
|
[DUОS] | Дата: Суббота, 12 Марта 2011, 22:52:34 | Сообщение # 14 |
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
| Quote (adiga) всякую хрень в джасе Чтооооооо?! GUI вообще бж-клаб, что его юзать?
|
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:53:24 | Сообщение # 15 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| [DUОS], Видно что человек не шарит((Печаль
|
|
|
|
[DUОS] | Дата: Суббота, 12 Марта 2011, 22:54:24 | Сообщение # 16 |
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
| Dreii, Давай я сейчас ему сконвертирую один бж-клаб, пусть помучается)
|
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:58:00 | Сообщение # 17 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| [DUОS], зачем)))Даешь стандарт триггер сражения)!!
|
|
|
|
adiga | Дата: Суббота, 12 Марта 2011, 22:58:42 | Сообщение # 18 |
7 уровень
Группа: Проверенные
Сообщений: 489
Награды: 0
Репутация: 14
Блокировки:
| кароче я понял че тут обитает на сайте, задротеры которым в джасе попечатать охота, а я думал люди с идеями которые не могут ее реализовать!
триггеринг 439/450 спеллкрафт 447/450 картокрафт 427/450 ландшафтинг 189/450 фастмэйкинг 225/225 иконкрафтинг 310/450 импортинг 110/450 самооценкинг 450/450
|
|
|
|
Dreii | Дата: Суббота, 12 Марта 2011, 22:59:21 | Сообщение # 19 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| Quote (adiga) люди с идеями которые не могут ее реализовать Есть такие например: adiga
|
|
|
|
oleg_best_oleg | Дата: Суббота, 12 Марта 2011, 23:16:42 | Сообщение # 20 |
Группа: Заблокированные
Сообщений: 1726
Награды: 0
Репутация: 654
Блокировки:
| [DUОS] и Dreii, зачем же позорить GUI из-за adiga ?))
|
|
|
|
[DUОS] | Дата: Суббота, 12 Марта 2011, 23:21:15 | Сообщение # 21 |
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
| oleg_best_oleg, GUI = BJ-рассадник.
|
|
|
|
evgenij95 | Дата: Суббота, 12 Марта 2011, 23:27:11 | Сообщение # 22 |
7 уровень
Группа: Проверенные
Сообщений: 322
Награды: 0
Репутация: 28
Блокировки:
| гуи реально шлак D: у него только один +,он лёгкий а в джазе утечек нет и карту не лагает! я вот карту делаю с нестандартными спелами и думаю как потом это всё будет адекватно работать D:
|
|
|
|
Manko_O | Дата: Суббота, 12 Марта 2011, 23:29:56 | Сообщение # 23 |
7 уровень
Группа: Проверенные
Сообщений: 296
Награды: 0
Репутация: 23
Блокировки:
| Quote (evgenij95) а в джазе утечек нет Не шариш.
|
|
|
|
lawson | Дата: Суббота, 12 Марта 2011, 23:33:07 | Сообщение # 24 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Ну вот началось. Сейчас картоха со стебашкой подойдет расскажет всем что такое гуи. Добавлено (12-03-2011, 23:33) --------------------------------------------- Ну ладно раз тут все собрались может будете полезны! Поскажите как узнать у юнита тип его атаки?
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Суббота, 12 Марта 2011, 23:30:57 |
|
|
|
[DUОS] | Дата: Суббота, 12 Марта 2011, 23:34:51 | Сообщение # 25 |
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
| Quote (lawson) Поскажите как узнать у юнита тип его атаки? Сожалею, но никак.
|
|
|
|