[Вопрос] 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, сделал уже) все таки только начал учить
|
|
|
|