Сейчас 18:48:53 Пятница, 19 апреля, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Запрет действия на траве (GetTerrainType(GetOrderPointX(),GetOrderPointY()) == 'Agrs')
[Вопрос] Запрет действия на траве
[HoBu4oK]Дата: Суббота, 13 Октября 2012, 15:59:16 | Сообщение # 1
4 уровень
Группа: Проверенные
Сообщений: 92
Награды: 0
Репутация: 9
Блокировки:
Если юнит хочет пойти\юзнуть скил в эту теранку, то его стопит , но что-то не работает!
Code
function Trig_NoExitArena_Conditions takes nothing returns boolean
return GetTerrainType(GetOrderPointX(),GetOrderPointY()) == 'Agrs'  
endfunction

function Trig_NoExitArena_Actions takes nothing returns nothing
IssueImmediateOrder(GetTriggerUnit(),"stop")
endfunction

//===========================================================================
function InitTrig_NoExitArena takes nothing returns nothing
     set gg_trg_NoExitArena = CreateTrigger(  )
     call TriggerRegisterAnyUnitEventBJ( gg_trg_NoExitArena, EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER )
     call TriggerAddCondition( gg_trg_NoExitArena, Condition( function Trig_NoExitArena_Conditions ) )
     call TriggerAddAction( gg_trg_NoExitArena, function Trig_NoExitArena_Actions )
endfunction

 

kapa6acvlkДата: Суббота, 13 Октября 2012, 16:03:43 | Сообщение # 2
Группа: Проверенные
Сообщений: 612
Награды: 0
Репутация: 361
Блокировки:
А если так:
Code
function Trig_NoExitArena_Conditions takes nothing returns boolean
     return GetTerrainType(GetOrderPointX(),GetOrderPointY()) == 'Agrs'
endfunction

function Trig_NoExitArena_Actions takes nothing returns nothing
     call IssueImmediateOrder(GetOrderedUnit(),"stop")
endfunction

//===========================================================================
function InitTrig_NoExitArena takes nothing returns nothing
     set gg_trg_NoExitArena = CreateTrigger(  )
     call TriggerRegisterAnyUnitEventBJ( gg_trg_NoExitArena, EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER )
     call TriggerAddCondition( gg_trg_NoExitArena, Condition( function Trig_NoExitArena_Conditions ) )
     call TriggerAddAction( gg_trg_NoExitArena, function Trig_NoExitArena_Actions )
endfunction



Как говориться, не обязательно есть всю кучу говна, чтобы понять, что она однородна.
© Александр Зорич
 

[HoBu4oK]Дата: Суббота, 13 Октября 2012, 16:05:23 | Сообщение # 3
4 уровень
Группа: Проверенные
Сообщений: 92
Награды: 0
Репутация: 9
Блокировки:
kapa6acvlk, а разница?) Если табля расставить и call написать?
 

kapa6acvlkДата: Суббота, 13 Октября 2012, 16:13:48 | Сообщение # 4
Группа: Проверенные
Сообщений: 612
Награды: 0
Репутация: 361
Блокировки:
Quote (|HoBu4oK|)
а разница?) Если табля расставить и call написать?

GetOrderedUnit()



Как говориться, не обязательно есть всю кучу говна, чтобы понять, что она однородна.
© Александр Зорич
 

[HoBu4oK]Дата: Суббота, 13 Октября 2012, 16:20:04 | Сообщение # 5
4 уровень
Группа: Проверенные
Сообщений: 92
Награды: 0
Репутация: 9
Блокировки:
kapa6acvlk, пфф... Одно и тоже в данном случае!

Добавлено (13 Октября 2012, 16:20:04)
---------------------------------------------
Всё добавил таймер который через .01 сек. звонит, всё работает.

 

Ty3uKДата: Суббота, 13 Октября 2012, 16:39:06 | Сообщение # 6
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
[HoBu4oK], можно и через 0.

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек


Сообщение отредактировал Ty3uK - Суббота, 13 Октября 2012, 16:39:28
 

kapa6acvlkДата: Суббота, 13 Октября 2012, 16:58:47 | Сообщение # 7
Группа: Проверенные
Сообщений: 612
Награды: 0
Репутация: 361
Блокировки:
вот так, без вайтов м таймеров будет лучше:
Code
function Trig_NoExitArena_Conditions takes nothing returns boolean
     return GetTerrainType(GetOrderPointX(),GetOrderPointY()) == 'Agrs'
endfunction

function Trig_NoExitArena_Actions takes nothing returns nothing
     local unit u = GetOrderedUnit()
     local integer OrderID = GetIssuedOrderId()
     if(OrderID == 851971 or OrderID == 851986 or OrderID == 851983)then  //порверка на приказ smart или move или attack
         call PauseUnit(u, true)
         call IssueImmediateOrderById(u, 851972)  //стоп
         call PauseUnit(u, false)
     endif
     set u = null
endfunction

//===========================================================================
function InitTrig_NoExitArena takes nothing returns nothing
     set gg_trg_NoExitArena = CreateTrigger(  )
     call TriggerRegisterAnyUnitEventBJ( gg_trg_NoExitArena, EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER )
     call TriggerAddCondition( gg_trg_NoExitArena, Condition( function Trig_NoExitArena_Conditions ) )
     call TriggerAddAction( gg_trg_NoExitArena, function Trig_NoExitArena_Actions )
endfunction



Как говориться, не обязательно есть всю кучу говна, чтобы понять, что она однородна.
© Александр Зорич


Сообщение отредактировал kapa6acvlk - Суббота, 13 Октября 2012, 16:59:33
 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Запрет действия на траве (GetTerrainType(GetOrderPointX(),GetOrderPointY()) == 'Agrs')
  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz