You start with a bad team on the lowest league level. Then its pretty standard sport league stuff. You play home and away games against AI controlled teams. Finishing first gets you promoted to the upper league, finishing last means you loose the game. The objective is to win the top league and then a match against an all-star team to get the title of "super mega winner pro elite turbo" or something like that.
The player will be able to build and improve his own team. I'm not decided on how to do that yet, either a transfert system like in real sports, or a skill points system where you gain points to improve your players. I'd favor the transert system, as it means the player will never be able to mold his team exactly like he wants it, which means more challenge and more variety between games. Funnily enough, this is what I aim for. All teams and players are generated for each new game... like in a roguelike :D
Anyway here's how the league screen curently looks like, not sexy at all and stuff missing but functionnal.
The numbers on the right are Team Levels (Team Value in Blood Bowl terms), displayed for dev.
|everyone sucks and has zero points. losers.|
I improved the match interface a bit, here's how it looks like.
|"Winged Terrorists" AI... 9/11 anyone?|
Also, stupid team names and stupid player faces = FUN.
To handle game screens transitions and popups dialogs/messages I wrote Screen and ScreenManager classes.
A Screen is basically a container for a sprite (composition) and is not necessary an entire screen, could be a dialog.
The ScreenManager (singleton) manage screens. Duh. You can push a screen on top of others (popup); or you can transition the focused screen to another with animation effects. Only one screen has the focus at anytime. By default un-focused screens are darkened.
Its simple but makes game screen/popups management easier and you can do some effects, which is almost a requierement for flash games.
Here's an example of a popup in the main menu:
|Loading popup on top of main screen.|
Here's an example of transition in the code, here from the league screen to the play screen, using a fade in/out effect:
I have the basic game structure there and functional. So... I am now allowed to start
THE AI!! WOOOT!! :D
End of post.