From: Brett L. <wak...@gm...> - 2007-08-03 18:28:39
|
On Fri, 2007-08-03 at 19:32 +0200, Erik Vos wrote: > > I think we might be able to get away with just creating an array of > > ComponentManagers, and read all of the Game.xmls on startup. > > This should > > give us all of the information we need to present the inital game > > information and game variant options. > > Yes, I was thinking along the same lines. > My suggestion is to split Game.xml into a smaller Game.xml > that only has the startup options, and a Components.xml > that contains all the rest. Only Game.xml is needed to > find out about variants and such. > I'm not sure adding more files really buys us much. One way or another, we're going to need to read files for each game. I think that we have the start of a good system: game.properties defines what games are available, and gives a basic description of how functional each game is. Game.xml defines all of the basic information about each game. Much of this information we could expose in the startup dialog as additional game information for users that aren't familiar with every game. It could be handy to display information such as starting player wallet values, and the starting bank value. So, splitting this into another file would deprive us of this ability or force us to add redundant information into multiple files. > > This would also allow us to add a property to define the number of > > minimum and maximum players, and have the Options() dialog dynamically > > add or subtract name boxes based on this data. > > In that case, the game selection should precede player entry. > No. Starting a game must not happen in forced steps. This is simply not an acceptable approach. We need to be able to load some basic info about each game, then present the user with a single UI for them to select a game, select variants, enter player names, and do it in any order they choose. Providing information about each game is helpful, but is a lower priority issue (for now). The only thing we should be doing is disallowing them from clicking New Game until the minimum requirements for each game are met. After that, the user should be free to navigate the UI any way that suits them. ---Brett. Teamwork is essential -- it allows you to blame someone else. |