About the getKey stuff, I think
if ("space".equals(Greenfoot.getKey())
is best, because the thing you check on is never null and is capable of being compared to something that is null. And I think
if (Greenfoot.getKey() == "space")
compares the pointers, because the 2 Strings are instances, not data types like integers, so this will always return false. But I may be wrong, because I can't run the scenario on this device and therefore don't know if it will work :)
In older Java-versions 'Greenfoot.getKey() == "space"' always returned wrong.
But in the current version, this will return true, if both strings are the same! :)
2013/10/6
2013/10/6
2013/10/6
2013/10/6
2013/10/6
2013/10/6
2013/10/7
2013/10/7
2013/10/7
2013/10/8