Hi SO,
I am programming a simple game in Java but I am trying to do it 'right' with a nice clean design and no hacks.
I have two classes GamePanel
that receives clicks and keypresses and Model
which contains all the Entities and is responsible for their updates. The Model needs to know where the user's mouse is but I can't decide on the 'right' way to do it.
Should the Model
and every Entity
within keep a reference to the GamePanel
or just cache the last known mouse position and receive updates from the GamePanel
regularly. With the first option when the model is created it will need to be given a reference to the GamePanel
and with the second the last mouse position will be sent as a parameter to the World.update()
method.
Neither of these solutions seem elegant so I was wondering if there is a 'right' way to do this that I have missed.
Thanks, Ben.