EDIT:
You should change this Set FS_Caster[FS_Temp] = (Casting unit)
to Set FS_Caster[FS_Temp] = (Triggering unit)
.
This Set FS_CastRange[FS_Temp] = (Distance between (Position of FS_Caster[FS_Temp]) and (Position of FS_Target[FS_Temp]))
, you have 2 leaks
In your Trigger Loop, Set FS_Move[FS_Temp] = ((Position of FS_Caster[FS_Temp]) offset by FS_Speed towards (Facing of FS_Caster[FS_Temp]) degrees)
you have leak
EDIT 2:
This Trigger - Turn on FS Loop <gen>
put it in ITE (IF THEN ELSE)
You need to change this Trigger - Turn off FS Loop <gen>
into Trigger - Turn off this trigger
and also put it in a ITE