Not so much a Bmax question but OO design.
I'm writing out the design for a simple game. The game has a splash screen, intro screen, title screen, options screen, high score screen, game screen etc.
Noticing these are all screens I thought it best to have a TBase_Screen and extend for the different type of screen.
However, as always, I have got myself in an OO stalemate. I can't think what would be attributes for TBase_Screen. Some of the screens will have background images, some will use fonts, some will use text, some will have music but there is not one thing I can think off that all will DEFINATELY have.
I'm beginning to think that I should just have a TScreen even though they seem to fit the 'is-a' rule. An alternative thought it to have no attributes for TBase_Screen but extend for common functions/methods.
How have other people done this and what are the common attributes for your screens?
I'm writing out the design for a simple game. The game has a splash screen, intro screen, title screen, options screen, high score screen, game screen etc.
Noticing these are all screens I thought it best to have a TBase_Screen and extend for the different type of screen.
However, as always, I have got myself in an OO stalemate. I can't think what would be attributes for TBase_Screen. Some of the screens will have background images, some will use fonts, some will use text, some will have music but there is not one thing I can think off that all will DEFINATELY have.
I'm beginning to think that I should just have a TScreen even though they seem to fit the 'is-a' rule. An alternative thought it to have no attributes for TBase_Screen but extend for common functions/methods.
How have other people done this and what are the common attributes for your screens?