• 9
• 9
• 11
• 12
• 9
• entries
21
30
• views
12106

# check

420 views

Status check:

My dream of interactive programming continues to elude me. I've gotten it to work in special cases, but I want to be able to do it everywhere, without too much set-up work. BeanShell seems to have problems if you a) load a script, b) create an object with that script, then c) reload the script and try to use newly-defined code on that object. The object hangs on to references to the old script's structures. So I actually got an error that said "Error: Cannot cast class BlockType to class BlockType", because one of the BlockTypes was the new version and one was the old version, and it didn't figure out that they should be the same just cause they have the same name. Oy.

I've been playing the game Psychonauts. The art is amazing. The animation is amazing. The level design, and the entire premise of the game is delightfully weird and great. If you take everything that was great about Grim Fandango and multiply it by 5 then that's what the game is like.

It's just too bad you need to endure hours of annoying platform-jumping to enjoy all that great stuff. The gameplay mechanics are the least revolutionary thing about the game, so much that they drag down everything else.

Overall I think that the whole "jumping" mechanic just needs to die. It was silly to begin with, and it's been overdone to death, so maybe as an industry we can all just collectively move on.

Make a wrapper object. And then have it update/get the object for you. For example:

//myWrapper.bsh
public class myWrapper {
private BlockType bt;
public myWrapper(BlockType new) {
bt = new;
}
public BlockType getBlockType() {
return bt;
}
public void setBlockType(BlockType new) {
bt = new;
}
}
wrapper = myWrapper(new BlockType());

see if that helps you at all.

That could work. I guess the important thing is that any class definitions are somewhere else, where they won't be recompiled every time.