Original Post
Ok, I'm still designing my game, so this thread may belong in the design section. Anyway I'm trying to design a simple 2D adventure game (think zelda on the nes) So I have a level data file (ascii) this will be read in and an array will be created. The array represents the game map, and holds tile objects. The tile objects contain information on what graphic to display for the tile, and what objects are on the tile (monsters, items, etc) A user should be able to move a character around the map (need to figure out the details of this still!) Anyway I would like the core part of the game to be reusable (I guess we could call it an engine) So I plan to have a base object which can be inherted to create any object in the game such as a monster or an item (is this a good idea, I can't think of any other way to let the engine know what objects it will have to store). MY question is, when I come to add intelligence to the monsters, or someone else does, is it acceptable to inhert a class from the basic object class.. Call it monster, and write functions to give it intelligence. I guess if I was to do it this way, every object would be responsible for themselves, to carry out collision detection etc. I know another method is to use scripting, but I think this would start to make things a little to complicated for me. I'm doing this for a uni project, so I have a limited amount of time. Any thoughts?