When working in mobile, decided to change DIR to a class and add logic to greatly simplify everything.
Mobile._find_exploration_move_end_tile() should be working right now.
The functions to add and remove entities from Level are implemented, as well as Level.move_entity_from_to().
Whoops. Changed all classes to inherit from object, because I'm not in Python 3. Also, Mobile._commit_exploration() should be done, too.
Movement should be working - except that it lags behind. What's with that lag?
Oh, right. I was moving the camera AFTER moving the drone. Fixed it.
So, loading in the strings 'True' and 'False' is NOT a thing you should do. Compare them to get a bool value, as so: string == 'True'. Changed Tile.load() to do so.
Decided on a rough control scheme.
Set up skeleton classes for the key input.
I just had an idea - we could use the same system we use for input to draw the UI.
Okay. Two things. First, modified the Mode classes to have a UIList which they reference and which references them to allow them to return stateful objects to the Controller. Second, ModeFreeLook is working. Third - there is something horribly wrong in the drawing code; I set the level to be 1 across, but it's drawing...more than that.
Fixed the bug with it rendering phantom tiles. Turns out Level.tile_at(x, y) was returning a tile even if x, y were negative, making Level.at(x,y) return false positives.
Ugh, lots of phantoms hanging around. Bye!
Free look now works properly. Also, keypad works. I don't know why it exits if you hit escape though - is that an artifact of the IDE, or...? Because that should not happen.
Moved a lot of stuff around. Also fixed free look - it did not reset when you hit escape.
Working on the structure section. May move some code out of mobile and add new functionality...mobile is turning into combatant.
Moved the mobile stuff into its own package.
Exploration mode movement works.
StructureHardpoint is done, I believe. It uses the default module as a 'filler' module to represent the lack of a module. It's, uh, a plug or something, like they put in the barrel of the gun. I dunno.
Provided default constructor for Module, Portable, Entity, which defaults to the default image. Moved default images into images/defaults.