As a tribute to an old friend - Paladon - I coded a system in his honor which looks a lot like his old systems.
Sooooooooooooo what we have here? A simple stun system which is STANDALONE OMG - aka doesn't require any other systems for it to work (I'll probably make a UnitIndexer version as well )
And I'm sorry, new computer, haven't installed photoshop thus awesome paint picture
and I'm sorry, it doesn't use firebolt as dummy ability but stormbolt works just fine when you made it an ultimate ability (with standard game constants ^^)
Simple Stun System v1.1 (Standalone version)
Hanky for imba indexing template which I could copy variables ^^
baassee for being back from the dead
Paladon, nothing less than a shining knight - system is in paladon style to honor him in his absence
So this is a pretty simple system, it stuns units (WOOOOOW) and it's standalone and fully in GUI. No I did not enhance this with a lot of JASS cause I know some people will just screw up and I'm to rusty to code ^^
By all means "Standalone" means that it works properly without any other custom systems, just copy the trigger folder into your map (with creating variables at paste in the preferences checked of course) and you follow the triggers what to fix (I have pointed it out) and you're good to go
includes 4 triggers which only 3 triggers are in actuall use, the "STUN README" is where you copy your actions (more explained in that trigger itself for better understanding) and you're set with a stun!
also uses only one dummy unit - all the time. Creates it at map ini and never removes it omg omg so much performance boost
oh right btw, stun stacks, so if you stun a unit with one spell cast another spell that stuns too - the durations will add up together ^^ (OMG PERMASTUN SO OP)
I also included a stop stun where you can stop a stun at any given time - that's "STUN README2" ^^
HOW TO COPY PASTE
1. Copy paste the ability, buff and dummy unit. Remember to fix buff on the ability when you imported it to the correct buff.
2. Copy StunSystemStandAlone folder into your map
3. Follow all triggers and read where I pointed out where to fix this or that
4. Credit me and be happy to use a fully working stun system.
v1.1 fixed a boolean option so you can choose if you want stuns to stack or not, also fixed dead check
Good luck! And please credit me - baassee - if you use this system. Thank you!
Any questions just throw me a PM or VM or reply to the resource thread.
Can stun magic immune units (If constants are not touched ^^)
Stun stacks with other stuns from the system (rarely a pro, can also be a con but as said, implemented a cancel feature as well). - NOW YOU CAN CHOOSE IF YOU WANT IT TO STACK WITH THE PREVIOUS STUN OR JUST CHOOSE THE LAST ONE.
Only uses one dummy unit.
A unit can basicly be perma-stunned as the stuns stack with each others. - This can only happen if the user now only uses stack with the boolean added ^^
If you checked the constant "ultimate goes through magic immune" or whatever the name is, it will not work on magic immune units (false by default which makes it workable).
Well I included a GFX string variable BUT I recommend to use the standard version. Cause if different abilities got different stun GFX and a unit gets stunned, the GFX will not stack but the stun will (no it doesn't leak).
GFX will be overhead - I will not change this.
Shouldn't be used it any other stun systems nor even stun abilities. But it should work with other stun abilities due to the fact of custom buff yet I have not tested it so I cannot recommend this.
Structures cannot be target.
Have fun with the system. Give credit if used please.
06:46, 16th Aug 2012
Okay, cool. This is pretty useful.
Of course, you would greatly benefit if you used a hashtable or even better, a unit indexer, because that way, you wouldn't have to do a heavy iteration over every single...
Of course, you would greatly benefit if you used a hashtable or even better, a unit indexer, because that way, you wouldn't have to do a heavy iteration over every single instance of the spell to see if you should create a new instance or manipulate an existing one.