Something is wrong.
The full front end of the script is this;
;Target location and projectile direction.
_targ = _this select 0
_direction = _this select 1
hint format ["%1", _direction]
?_direction==north: goto "north"
?_direction==northeast: goto "northeast"
?_direction==east: goto "east"
?_direction==southeast: goto "southeast"
?_direction==south: goto "south"
?_direction==southwest: goto "southwest"
?_direction==west: goto "west"
?_direction==northwest: goto "northwest"
man globalchat "Direction incorrectly specified"
goto "exit"
All Ive done to the script is add in support for four more compass points and changed the names up their full unabbrieviated versions.
Now, I know the basis of the script is sound, because Ive tested it with numbering the compass points instead of using names, and it works fine that way. The stumbling block is passing a word to the script, and checking that the work is the same as one of eight possible options, if not, the script exits.
If I use, as above, the word in quotes;
[cachetarget,"East"] exec "scud2.sqs"
Then the hint line displaying _direction correctly says its East, however I get an error;
_direction==west |#| Generic error in expression
And the chat line I put in to tell if a variable hasnt been accepted displays;
"Direction incorrectly specified"
Removing the quotes from around the word when it calls the script works, with the East Direction. However when choosing another direction, for example, South, the hint _direction line displays;
Scalar Bool Array String 0xfcffffef
And the chat line says that Ive incorrectly specified a direction.