For the first part of your post, just use Compare to active Objects value = Loopindex
Ooooh, I know what you mean. Thanks.
Also, can't you just use compare two general values and use to conditions, one is the max speed, one is greator than 0, opposite for going left, ect...
...Hmmm... I think I see what you are saying here, but I'm a little confused. Could you clarify? If I understand what you are saying, I don't think it would work, because technically my movement system would have to to have an event for all 4 directions and combinations for the directions. Well, it would work (I think) but would require lots of hard coding for direction checking.
Here is my updated file. Check it out and see. If you run into the eastward wind while facing down and holding shift (run key), it reacts just fine, but if you go in without holding shift and facing down, it will flip you around and super accelerate backwards. I'm not sure whats causing it, but its got to do with the acceleration formula.
Oh, I also looked at your site. "The way I think" totally describes me. Even the thing about perpetual magnets and perfect tune music memory!
EDIT: I fixed the problem. The problem was when changing from a higher top speed to a lower one. Now I've set the top speed to change to the higher of the speeds. Still having a bit of trouble with the wind. I've included the updated file, which also has an acceleration grapher.