You produce handle leaks. A lot of handle leaks.
For initializing your stuff, you should can use the vJass keyword "initializer".
For my point of view your code looks a bit hardcoded.
Furthermore it would be nice if you attach a demo map to the script,
so we can get the ingame purpose, quickly.
Finally I think this is more fitting for the spell section than the JASS submission.