Restructure access to the Client
JohnathonNow opened this issue · comments
Right now Client has many public fields, which is sad. On top of that, many are static, which is extra sad. For example, see below where other modules access Client's fields directly.
Bending/src/main/java/com/johnwesthoff/bending/logic/World.java
Lines 990 to 994 in e9e8526
Bending/src/main/java/com/johnwesthoff/bending/ui/AppletActionListener.java
Lines 107 to 110 in e9e8526
Ultimately, I would like for Client to be split up into smaller components, as right now it is a terrible blend of game state, game logic, UI nonsense, and other things I don't even know is there. For now, however, it having everything static removed and replaced with something else - perhaps a singleton.
I'm sufficiently happy with #52 to close this for now.