[QUOTE=dcrew]Does no one understand what I asked for? I don't want multiple events, for example: take your capx and the event "Is animation 'Red' Playing?" rather than having it seperate I want: "Is animation 'Red' or 'Blue' or 'Green' or 'Purple' Playing?" for reasons I do not feel the need to explain.[/QUOTE]
I know you won't listen, because I tried to explain it two times. We did understand, but the simple fact is, "or" in a programming language does not work like "or" in a spoken language.
While you can say, "Is the apple's color 'green', or 'red', or 'orange'?", and everyone will understand you, for the logic of a programming language you have to phrase, "Is the apple's color 'green', or is the apple's color 'red', or is the apple's color 'orange'?", which is a tiny little difference for us humans, but a huge one for logical operators.
The first one will look to Construct like so: "Is the apple's color 'TRUE', or 'TRUE', or 'TRUE' "
Now 'or' returns true if any of the elements result to true. They all result to true, no matter what the real color's name is, because they are non-empty strings, so the result will always be 'TRUE'.
What you need is a way to get the boolean 'TRUE' only if the apple's color is either of the three color names and 'FALSE' in all other cases.
That's why the second one is so important. There you have three evaluations and every single one will only be true, if the apple's color matches that name. Let's say, the current color name is 'green', then the second one will look to Construct like so: " 'TRUE', or 'FALSE', or 'FALSE' "
That's important as soon as the real color of the apple does not match any of the three color names. Let's say, the color of the apple is 'purple'.
First one will still read as: "Is the apple's color 'TRUE', or 'TRUE', or 'TRUE'" That will result to 'TRUE', so the event will be executed, although the apple does not have the correct color.
Second one will read as: " 'FALSE', or 'FALSE', or 'FALSE' " That would result to 'FALSE', just as we expect it to be.
As soon as the type mismatch issue is corrected by Ashley, you still have to phrase it the right way.
Block.AnimationName = "Block1" | "Block3" | "Block13" | "Block14"
will still not work (as I explained above). It is phrased wrong.
Block.AnimationName = "Block1" | Block.AnimationName = "Block3" | Block.AnimationName = "Block13" | Block.AnimationName = "Block14"
is the only way to make it work as you want it to behave.