I had a rather speedy once-over of your code, here are a few notes:
- Spells need a proper configuration, see how other approved spells do this
- Your function names need to be unique (considering that these are JASS functions) as such I suggest adding a prefix like "OM_" to them to keep them unique
- There's no importing instructions for the spell
- You utilise a globals block, that makes this spell vJASS as it will not compile in the vanilla world editor
- changing the colour of units is not recommended (or should at least be optional) considering that the caster may not have 255 255 255 colour values
- Your indentation is very lacking, the code is much harder to read when you fail to indent code properly
- Your map needs a version number
- Your folder name should match your spell
- Your trigger names should match your spell
- Triggers unrelated to the functioning of your spell should be in a separate trigger folder as they do not need to be imported
- Commenting your code can also make it much easier to understand
- List requirements in your trigger (e.g. requires DistanceXY2D
For the above stated reasons I'm setting this resource to needs fix - please update accordingly