' expected ... why??

exge

New Member
Reaction score
15
i get only 1 error ' expected .. what does that mean
PHP:
function Trig_irradiate_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'A04Q'
endfunction

function checktargets takes unit caster returns boolean
    return ( IsUnitEnemy(GetEnumUnit(), GetOwningPlayer(caster)) == true )
endfunction

function damage takes unit caster returns nothing
    call UnitDamageTargetBJ( caster, GetEnumUnit(), 500, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL )
endfunction

function Trig_irradiate_Actions takes nothing returns nothing
local unit caster = GetSpellAbilityUnit()
local location targetloc = GetSpellTargetLoc()
local location casterloc = GetUnitLoc(caster)
local location tryloc = casterloc
local real angle = AngleBetweenPoints(casterloc,targetloc)
local integer base = 0
local integer range = 100

loop
set tryloc = PolarProjectionBJ(tryloc, 20, angle)
call AddSpecialEffectLocWithTimer(tryloc, "Abilities\\Spells\\NightElf\\CorrosiveBreath\\CorrosiveBreathMissile.mdl", 1.0 )
exitwhen DistanceBetweenPoints(tryloc,targetloc) <= 10
endloop

call PolledWait(1)

call DummyCastAOE(caster,'A04M',"thunderclap")

call ForGroupBJ( GetUnitsInRangeOfLocMatching(512, targetloc, Condition(function checktargets(caster))), function damage(caster))

loop
call Explosion(targetloc,"Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl",250,base,range)
exitwhen base == 600
set base = base+100
set range = range+100
call PolledWait(0.1)
endloop

endfunction

//===========================================================================
function InitTrig_irradiate takes nothing returns nothing
    set gg_trg_irradiate = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_irradiate, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_irradiate, Condition( function Trig_irradiate_Conditions ) )
    call TriggerAddAction( gg_trg_irradiate, function Trig_irradiate_Actions )
endfunction

DummyCastAOE and Explosion are custom functions .. so dont bother explaining to me about them .. thx
 

SFilip

Gone but not forgotten
Reaction score
634
in which line do you encounter that error?
 

SFilip

Gone but not forgotten
Reaction score
634
you have 2 options:
-global variables...not recommended if you want it to be mui
-game cache
the game cache is what most spellmakers use and is done thanks to a bug. there are two possibilities here: KaTTaNa's Local Handle Variables and CSCache (a part of the caster system, read its readme)
presonally i recommend vexorian's system because it has some more options (tables for instance...again read its readme :p), but you can use w/e you want.
how does this work?
in KaTTaNa's system for example
call SetHandleHandle(GetTriggeringTrigger(), "caster", caster)
in the actions and
local unit c = GetHandleUnit(GetTriggeringTrigger(), "caster")

there is also another solution...manually picking all units in a group.
Code:
local group g = something ...
local unit u
loop
    set u = FirstOfGroup(g)
    exitwhen u == null
    your actions here
    call GroupRemoveUnit(g, u)
endloop
 

exge

New Member
Reaction score
15
thx .. i'll use kattana's ... although i thought it was just meant for attaching timers ... xD

EDIT:still getting errors
PHP:
function Trig_irradiate_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'A04Q'
endfunction

function checktargets takes nothing returns boolean
local unit caster = GetHandleUnit(GetTriggeringTrigger(), "caster")
    return ( IsUnitEnemy(GetEnumUnit(), GetOwningPlayer(caster)) == true )
endfunction

function damage takes unit nothing returns nothing
local unit caster = GetHandleUnit(GetTriggeringTrigger(), "caster")
    call UnitDamageTargetBJ( caster, GetEnumUnit(), 500, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL )
endfunction

function Trig_irradiate_Actions takes nothing returns nothing
local unit caster = GetSpellAbilityUnit()
local location targetloc = GetSpellTargetLoc()
local location casterloc = GetUnitLoc(caster)
local location tryloc = casterloc
local real angle = AngleBetweenPoints(casterloc,targetloc)
local integer base = 0
local integer range = 100
call SetHandleHandle(GetTriggeringTrigger(), "caster", caster)
loop
set tryloc = PolarProjectionBJ(tryloc, 20, angle)
call AddSpecialEffectLocWithTimer(tryloc, "Abilities\\Spells\\NightElf\\CorrosiveBreath\\CorrosiveBreathMissile.mdl", 1.0 )
exitwhen DistanceBetweenPoints(tryloc,targetloc) <= 10
endloop

call PolledWait(1)

call DummyCastAOE(caster,'A04Q',"thunderclap")

call ForGroupBJ( GetUnitsInRangeOfLocMatching(512, targetloc, Condition(function checktargets)), function damage)

loop
call Explosion(targetloc,"Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl",250,base,range)
exitwhen base == 600
set base = base+100
set range = range+100
call PolledWait(0.1)
endloop

call FlushHandleLocals(caster)

endfunction

//===========================================================================
function InitTrig_irradiate takes nothing returns nothing
    set gg_trg_irradiate = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_irradiate, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_irradiate, Condition( function Trig_irradiate_Conditions ) )
    call TriggerAddAction( gg_trg_irradiate, function Trig_irradiate_Actions )
endfunction
 

SFilip

Gone but not forgotten
Reaction score
634
Code:
function damage takes [B]unit[/B] nothing returns nothing
:rolleyes:
and for god sake say which line causes the first error on the list.
 

exge

New Member
Reaction score
15
its more than 5 lines .... 45 compile errors i dunno how to say all lol

thanks alot .. and btw .. how do i make a parabola function ... i know how to make a dash finally..i need a sine curve?
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top