After spending about half an hour fighting Artemis that was crashing on me for no apparent reason, I found out the following:
if_variable statement does a truncation on both the variable and the value before doing the comparison.
This means that:
* after set_variable to 1.9 if_variable <= 1.1 will be true
* after set_variable to 2.6 if_variable = 2 will be true
* after set variable to 3.75 if_variable !=3 will be false
* after set_variable to random float 1..3, if_variable =1 will be true in 49.99% cases
And so on.
Since you can set variable to float, and you can even set it to random float, I doubt this behavior was intended. And it is very, very misleading, especially since you never expect it to be the culrpit.
[Last edited May 14, 2012 20:23:53]