Сейчас 17:54:25 Вторник, 7 февраля, 2023 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Проблемы со спеллом (Движения юнита)
Проблемы со спеллом
[DS]Дата: Понедельник, 11 Июля 2011, 19:20:57 | Сообщение # 1
9 уровень
Группа: Проверенные
Сообщений: 1116
Награды: 0
Репутация: 527
Блокировки:
У меня спелл гонит, не пойму в чем проблема, мне нужно чтоб d.c летел пока d.v<maxdis, а он доходит ток до того места куда я тыкаю:
Code
private function WaterStrike_Move takes nothing returns boolean
      local integer i = GetHandleId(t)
      local data    d = LoadInteger(h,i,0)
      local real    x = GetUnitX(d.c)
      local real    y = GetUnitY(d.c)
      local real    xt
      local real    yt
      local unit    b
      local unit    z
      local group   g
      set d.ang = Angl(x,y,d.x,d.y)
      set xt    = x+speed*Cos(d.ang)
      set yt    = y+speed*Sin(d.ang)
      if d.v >= maxdis then
         call KillUnit(d.c)
         call FlushChildHashtable(h,i)
         call DestroyTrigger(t)
         call GroupClear(d.g)
         call DestroyGroup(g)
         call RemoveLocation(l)
         call d.destroy()
      else
         call SetUnitX(d.c,xt)
         call SetUnitY(d.c,yt)
         set b = CreateUnit(p,effect_id,x,y,d.ang)
         call UnitApplyTimedLife(b,'BTLF',2.)
         set g = CreateGroup()
         call GroupEnumUnitsInRange(g,GetUnitX(d.c),GetUnitY(d.c),250.,null)
         loop
             set z = FirstOfGroup(g)
             exitwhen z == null
             call GroupRemoveUnit(g,z)
             if UnitFilter(d.u,z) then
                if IsUnitInGroup(z,d.g) == false then
                   call GroupAddUnit(d.g,z)
                   call KnockBack_Actions(d.u,z)
                endif
             endif
         endloop
         call DestroyGroup(g)
      endif
      set d.v = d.v+speed
      set g = null
      set b = null
      set z = null
      return false
endfunction


 

DeadJassДата: Понедельник, 11 Июля 2011, 19:25:52 | Сообщение # 2
7 уровень
Группа: Проверенные
Сообщений: 447
Награды: 0
Репутация: 30
Блокировки:
[DS], где ф-ия с установкой расстояния?
тобиш maxdis



^ кликабельно
Archers Of The Island v1.8 - на стадии завершения
 

[DS]Дата: Понедельник, 11 Июля 2011, 23:29:45 | Сообщение # 3
9 уровень
Группа: Проверенные
Сообщений: 1116
Награды: 0
Репутация: 527
Блокировки:
глобалка
равен 1600

Добавлено (11-07-2011, 23:28)
---------------------------------------------
все тему клоз, я разобрался.

Добавлено (11-07-2011, 23:29)
---------------------------------------------
все тему клоз, я разобрался.

Добавлено (11-07-2011, 23:29)
---------------------------------------------
все тему клоз, я разобрался.


 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Проблемы со спеллом (Движения юнита)
  • Страница 1 из 1
  • 1
Поиск:

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