Сейчас 22:08:03 Вторник, 26 ноября, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
[Вопрос] Undeclared varable
wetalqДата: Вторник, 16 Августа 2011, 12:25:47 | Сообщение # 1
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 117
Блокировки:
Code

function Trig_Asuma_Conditions takes nothing returns boolean
     return  GetSpellAbilityId() == 'A000'
endfunction

function CastLoop takes nothing returns nothing
     local timer t               = GetExpiredTimer()
     local unit Caster           = LoadUnitHandle(udg_Asuma,GetHandleId(t),1)            //7
     local real Time             = LoadReal(udg_Asuma,GetHandleId(t),2)
     local real EffectTime       = LoadReal(udg_Asuma,GetHandleId(t),3)
     local real WaitTime         = LoadReal(udg_Asuma,GetHandleId(t),4)
     local real Intervival       = LoadReal(udg_Asuma,GetHandleId(t),5)
     if WaitTime >= 0 then
         call SaveReal(udg_Asuma,GetHandleId(t),4,WaitTime - Intervival)
         else
         call SetUnitTimeScalePercent(Caster, 0)
         if Time == 0 then
             call SetUnitTimeScalePercent(Caster, 100)
             call PauseUnit(Caster, false)
             call FlushChildHashtable(udg_Asuma,GetHandleId(t))
             call DestroyTimer(t)
         set t = null
             set Caster = null
         else
             call SaveReal(udg_Asuma,GetHandleId(t),2,Time - 0.10)
         endif
     endif
endfunction

function Trig_Asuma_Actions takes nothing returns nothing
     local timer t               = CreateTimer ()
     local unit Caster           = GetSpellAbilityUnit()
     local player Player         = GetOwningPlayer(Caster)                //32
     local integer Distance      = 0
     local real DamagePerLvl     = 75.00
     local real MaxDistance      = 750.00
     local real Intervival       = 0.03
     local integer SpellID       = 'A000'
     local integer Speed         = 15
     local string Animation      = "Spell Two"
     local attacktype AttackType = ATTACK_TYPE_MAGIC
     local damagetype DamageType = DAMAGE_TYPE_NORMAL
     local real damage           = DamagePerLvl *  I2R(GetUnitAbilityLevel(Caster,SpellID))
     local real x1               = GetUnitX(Caster)
     local real y1               = GetUnitY(Caster)
     local real x2               = GetLocationX(GetSpellTargetLoc())
     local real y2               = GetLocationY(GetSpellTargetLoc())
     local real Angle            = Atan2(y2 - y1, x2 - x1)
     local real r1               = (x1 + 50. * Cos(Angle))
     local real r2               = (x2 + 50. * Sin(Angle))
      
     call SetUnitAnimation(Caster, Animation)
      
     call SaveUnitHandle(udg_Asuma,GetHandleId(t),1,Caster)                    //53
     call SaveReal(udg_Asuma,GetHandleId(t),2,x1)
     call SaveReal(udg_Asuma,GetHandleId(t),3,y1)
     call SaveInteger(udg_Asuma,GetHandleId(t),4,Distance)
     call SaveReal(udg_Asuma,GetHandleId(t),5,MaxDistance)
     call SaveInteger(udg_Asuma,GetHandleId(t),6,Speed)
     call SaveReal(udg_Asuma,GetHandleId(t),7,Angle)
endfunction

//===========================================================================
function InitTrig_Asuma takes nothing returns nothing
     local trigger t = CreateTrigger ()
     call TriggerAddCondition( t, Condition( function Trig_Asuma_Conditions ) )
     call TriggerAddAction( t, function Trig_Asuma_Actions )
endfunction


вот собственно код, пропускаю его на наличие ошибок пишет ошибки в строчках 7, 32, 53.
Undeclared varable udg_Asuma (Hesh таблица)


Code
local player Player         = GetOwningPlayer(Caster)

а в чем ошибка тут ?
 

lawsonДата: Вторник, 16 Августа 2011, 12:36:20 | Сообщение # 2
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
udg_Asuma -это хеш таблица?
Тогда так и пиши в инициализации
set udg_Asuma = InitHashtable()

Добавлено (16-08-2011, 12:36)
---------------------------------------------
Можно вопрос? а что это вообще за код ты сохраняешь перменные в хеш для таймера но при этом его не стартуешь.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Вторник, 16 Августа 2011, 12:31:58
 

wetalqДата: Воскресенье, 28 Августа 2011, 14:53:50 | Сообщение # 3
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 117
Блокировки:
Quote (lawson)
Можно вопрос? а что это вообще за код ты сохраняешь перменные в хеш для таймера но при этом его не стартуешь.


я брал способности и розбирал их за что отвечает какя функция и т.д.

но по прежнему сталкиваюсь с проблемой с хешем(

Undeclared varable udg_Hash
 

FaionДата: Воскресенье, 28 Августа 2011, 16:21:53 | Сообщение # 4
10 уровень
Группа: Проверенные
Сообщений: 1894
Награды: 0
Репутация: 430
Блокировки:
wetalq, попробуй перед созданием таблицы поставить вейт короткий.

О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас.
My Project: Nindogatari
MAL


Сообщение отредактировал Faion - Воскресенье, 28 Августа 2011, 16:22:29
 

[DS]Дата: Воскресенье, 28 Августа 2011, 16:42:35 | Сообщение # 5
9 уровень
Группа: Проверенные
Сообщений: 1116
Награды: 0
Репутация: 527
Блокировки:
udg_Hash
у тебя же udg_Asuma


 

FaionДата: Воскресенье, 28 Августа 2011, 19:10:15 | Сообщение # 6
10 уровень
Группа: Проверенные
Сообщений: 1894
Награды: 0
Репутация: 430
Блокировки:
Кстати да.

О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас.
My Project: Nindogatari
MAL
 

wetalqДата: Воскресенье, 28 Августа 2011, 19:36:29 | Сообщение # 7
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 117
Блокировки:
[DS], с етим все нормально после того как я изменил с udg_Asuma на udg_Hash мапа стала запускаться в варкрафте но сама способность по прежнему не роботает

на щет вейта ща попробую
 

SirNikolasДата: Пятница, 02 Сентября 2011, 15:42:40 | Сообщение # 8
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (wetalq)
Code
//===========================================================================
function InitTrig_Asuma takes nothing returns nothing
     local trigger t = CreateTrigger ()
     call TriggerAddCondition( t, Condition( function Trig_Asuma_Conditions ) )
     call TriggerAddAction( t, function Trig_Asuma_Actions )
endfunction
А где добавление событий?


 

wetalqДата: Пятница, 02 Сентября 2011, 15:49:15 | Сообщение # 9
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 117
Блокировки:
SirNikolas, сделал уже)
все таки только начал учить
 

  • Страница 1 из 1
  • 1
Поиск:

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