pioneerspacesim/pioneer — pull request #1083 by Luomu (2012-03-18 18:39:45+00:00)
Title: Ship controller - might need some design input

In short: I moved all the input handling from Player.cpp to a new class. Non-player ships get a simpler Controller that only uses AI.
I did this because I want to separate the Player (character) from Ships. After that is done, any ship is potentially pilotable, it's just a matter of swapping the controller and viewpoint. Next part in player separation would be moving the MarketAgent stuff, then updating the Lua api, after that the current Player.cpp practically has no responsibilities.
Let me know if the basic concept looks OK. It's not very complicated and I don't currently have big changes in mind. It might be possible to move some more AI related code to a Controller, at least Ship::AITimeStep. I did not want to break the AI yet :-)