Need help with Jass Spell Code

Lufion

New Member
Code:
scope KatonJutsu initialitzer KatonInit
/////////////////Setup///////////////////////////////////////////
globals
private contstant integer SPELL_ID = 'ANcl'

private function Katon_DMG takes integer Katonlevel returns real
return level *50
endfunction

private function Katon_Range takes integer Katonlevel returns real
return level *150
endfunction

private function unit KatonTargets takes nothing returns boolean
return (GetWidgetLife(KatonTargets) > 0.405) and (IsUnitType(KatonTargets, UNIT_TYPE_STRUCTURE) == false) and (IsUnitType(KatonTargets, UNIT_TYPE_MAGIC_IMMUNE) == false)

/////////////////Globals///////////////////////////////////////////
globals

private group Enemies // if the spell can be used by multiple ppl/characters then I should create a global group, because the spell wouldnt have to create a new group for every Caster then which could create lag)
private boolexpr K    // "This offtipic is for group aswell" also, if CreateGroup is used in automatic functions like the inizializer, it can crash the Game sometimes unless u only set it in the initializer which only works if u created a group beforehand which we did now

/////////////////PickedUnitsInRange///////////////////////////////////////////
private function KatonPick takes nothing returns boolean

return KatonTargets(GetFilterUnit())

/////////////////Conditions///////////////////////////////////////////
private function Katon_Condition takes nothing returns nothing
return GetSpellAbilityId() == SPELL_ID  // The Same as the GUI Condition : " abillity beeing cast equal to ..." 
endfunction
/////////////////Actions///////////////////////////////////////////
private function Katon_Action takes nothing returns nothing
 local location KatonLoc = GetSpellTargetLoc()     // We need to get the Spell Target Location with these 3 Calls ( "","")
        local real KatonX = GetLocationX(KatonLoc) // "
        local real KatonY = GetLocationY(KatonLoc) // "
        local unit KatonCaster = GetTriggerUnit()  // sets the Caster of the Spell
        local integer Katonlevel = GetUnitAbilityLevel(caster, SPELL_ID) //
        local unit CurrentUnit
        
        call GroupEnumUnitsInRange (Enemies, KatonX,KatonY,Katon_Range,K)
        
        loop
        set CurrentUnit = FirstOfGroup(Enemies)
        exitwhen (CurrentUnit == null)
        call GroupRemoveUnit (Enemies, CurrentUnit)
        if IsUnitEnemy (CurrentUnit, GetOwningPlayer(KatonCaster) then
        call UnitDamageTarget(KatonCaster, CurrentUnit, Katon_DMG(Katonlevel), true, false, ATTACK_TYPE_MAGIC, DAMAGE_TYPE_NORMAL, null
        endloop
        
        
        call RemoveLocation(spellLoc)  // This removes the Location and the one below sets the Variable to null (which prevents leak aswell)
        set KatonLoc = null           // caster and Spell Location has to be set 0 to prevent leak
        set KatonCaster = null       // "
endfunction
/////////////////Initializer///////////////////////////////////////////
private function KatonInit takes nothing returns nothing
    local trigger KatonTrigger = CreateTrigger( )
    call TriggerRegisterAnyUnitEventBJ ( KatonTrigger, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition ( KatonTrigger, Condition( function Katon_Condition ))
    call TriggerAddAction( KatonTrigger, function Katon_Action )


//setting globals
set Enemies = CreateGroup ()
set K = Condition(function KatonPick)


//preloading effects
endfunction

endscope
Soo I need help with this Spell I made in vJass. I'm a newbie so go easy on me. I've looked over it for a few times now and re-read severel tutorials, but I can't find my mistakes allthough there are probably quite a few. So I'd be really glad if someone could point out the mistakes I made here so I can improve and do it better next time. PS: Dont mind the // cuz they are meant to remind me of things I thought would be good to know. Anyway thanks in advance
 

Attachments

General chit-chat
Help Users
  • No one is chatting at the moment.
  • The Helper The Helper:
    seeing some weird stuff doing some moves to the new Weird News forum please see the bathroom admins
  • The Helper The Helper:
    :) it is weird
  • The Helper The Helper:
    btw it was just lag the weirdness is gone
  • Wizard Wizard:
    I checked!
    +1
  • Blackveiled Blackveiled:
    How is everyone doing?
  • Wizard Wizard:
    Alright!
  • The Helper The Helper:
    Doing well thanks!
  • The Helper The Helper:
    Tom Mai check out the post I just found you made in 2006, from an apparent banned account, I do not remember that happening, the post is in the General Discussion Hall of Fame about record breakers
  • Blackveiled Blackveiled:
    Lmao thats somethin right there.
  • tom_mai78101 tom_mai78101:
    How far back were you looking at?
  • tom_mai78101 tom_mai78101:
    But yes, that was me.
  • The Helper The Helper:
    Do you think I am looking back in the forums for this stuff? LOL, no, I find these posts in the Members Online section or the stats - all these old posts I am bumping and moving around are what people are actually looking at on the website
  • tom_mai78101 tom_mai78101:
    Interesting.
  • The Helper The Helper:
    hey Tom your Burrito news is going viral by TheHelper.net standards LOL
  • The Helper The Helper:
    looks like The Burrito has been shared to facebook lol I am getting the facebook bots in now
  • The Helper The Helper:
    I am going to do one more News Forum like the Weird News but this one is Science News for all the cool science and technology articles in the Archive
  • tom_mai78101 tom_mai78101:
    Hmm, do I need to start posting some of the Science and Technology news to this new section in the future?
  • tom_mai78101 tom_mai78101:
    Or do we need to move the news to their respective sections once the threads are old enough, read to be put into the News Archive?
  • The Helper The Helper:
    The 2nd thing
  • The Helper The Helper:
    I have been moving stuff from the current Headline news like a year old and stuff over when I see it in the logs or members online but mostly I have been moving stuff from the Archives
  • The Helper The Helper:
    It is possible to automate it so that instead of moving to Archive if it has the Science, technology or sci tech tag that it gets archived there instead. I am considering a new Weird News Tag
  • tom_mai78101 tom_mai78101:
    Please do. I'll try to tag the news appropriately when I get the chance.
  • The Helper The Helper:
    The new Discourse forum software we are moving to next does alot with the tags and also hashtags
  • The Helper The Helper:
    OK I found the source of your burrito post stuff it is from Reddit and possibly a facebook post too but definitely reddit

    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