It is a good tutorial in some ways...
More or less it looks like hes basically trying to explain what BJ's are to Jass noobs or people who just don't understand what they are...
But I believe the reason he has to explain this is cause everyone freaks the fuck out when they see a BJ call or...
No you didn't fix it, your missing the most obvious... Unit Groups cause Leaks, you need a Unit Group Variable~
call DestroyGroup(udg_YourUnitGroup) = Remove Unit Groups
call DestroyForce(udg_team) = Removing your Player Group
Your initial Unit Group trigger is not a variable...
Set...
As it may confuse you if you don't know how to use JASS. Basically it enables you to place the text wherever you want giving you the option to place your text where the error messages would appear...
Though you will have to be able to create the conditions under which it will display the error...
Read my post.
You won't have to make another Trigger for each item. You just add the item to the Condition. Nothing more.
You need to have more control of your system, by using more variables.
As it stands now... For each item you add your gonna have to adjust a lot of code to add stats...
I posted a good way of doing inventories here... http://www.thehelper.net/forums/showthread.php?t=127415
But besides that... Why would you need to set Hp to the Item Level? Why not just use Item Level as the Item Level.
Equip One Handed Slashing
Events
Unit - A unit Uses an item
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Or - Any (Conditions) are true
Conditions...
Your not really adding abilities when they get to a certain level... Your Enabling them...
The spellbook should have all of the abilities with the correct max/min spell amount in the object data.
Then you disable the ones that the hero should not have at level 1.
Then when they reach...
You don't need a Unit Variable for Heroes, this is one of the very rare occasions where you do not need to write it in JASS or MUI or anything...
Can be done in simple GUI, even with a Wait trigger it will not get backed up.
ludnica's trigger will do exactly what you want while cleaning the...
RemoveLocation is to prevent a location leak, its removing the point you created earlier...
If your point variable is named YourPointVariable
it would be
call RemoveLocation(udg_YourPointVariable)
(the name has to match exact)
Looks ugly going through so many different temp unit groups variables...
If your clean you would keep a reference sheet of where you use each different array that way you can just use one variable for every unit group function you need...
Unless of course if you wanna keep making variables...
Sheesh I didn't have my editor open, of course you wouldn't have to.
Events
Time - Elapsed game time is 23.00 seconds
Conditions
Actions
Set TUGS[1] = (Units in (Playable map area) matching (((Matching unit) is A Hero) Equal to True))
Unit Group - Pick every...
Event
Time Elasped - 23.00 Seconds
Action
Set Unit Group - Units in Playable Map Area matching Matching Unit is a Hero equal to True
Pick Every Unit in Unit Group
Set Hero Level to (Level of Picked Unit + 1)
something like that~