One other decision I''ve already made (and I am not too sure if it''s correct) concerning the game, has to do with the way the screen is updated. I''ve used directInput and had the pointer blited each time I get a mouse event. The thing is that I am NOT following Microsoft''s example having a function ("updateFrame") called constantly to update the screen, but rather a function that is called only if something occurs (e.g. a mouse event or something else). Is this the right way to do things, or I should follow Microsoft''s example. It''s just that it strikes me as not too efficient. Any thoughts?
How often will the images on screen change? If it''s pretty often, just redraw everything as soon as you can; It''s not that inefficient in that case. Otherwise, your approach is basically what you should be doing.