[Tux4kids-commits] r993 - tuxmath/trunk/src
akash gangil
gangil-guest at alioth.debian.org
Mon May 25 22:26:00 UTC 2009
Author: gangil-guest
Date: 2009-05-25 22:26:00 +0000 (Mon, 25 May 2009)
New Revision: 993
Modified:
tuxmath/trunk/src/titlescreen.c
Log:
added LAN Gameplay option in the main menu
Modified: tuxmath/trunk/src/titlescreen.c
===================================================================
--- tuxmath/trunk/src/titlescreen.c 2009-05-25 14:26:57 UTC (rev 992)
+++ tuxmath/trunk/src/titlescreen.c 2009-05-25 22:26:00 UTC (rev 993)
@@ -96,6 +96,8 @@
SPRITE_CAMPAIGN,
SPRITE_SSWEEP,
SPRITE_ELIMINATION,
+ SPRITE_SERVER,
+ SPRITE_CLIENT,
N_SPRITES};
const char* menu_sprite_files[N_SPRITES] =
@@ -186,6 +188,8 @@
int run_custom_menu(void);
int run_activities_menu(void);
int run_options_menu(void);
+int run_lan_menu(void);
+int run_server_menu(void);
int handle_easter_egg(const SDL_Event* evt);
@@ -643,34 +647,34 @@
int run_main_menu(void)
{
- const char* menu_text[6] =
+ const char* menu_text[7] =
{N_("Play Alone"),
+ N_("LAN Game"),
N_("Play With Friends"),
N_("Factoroids!"),
N_("Help"),
N_("More Options"),
N_("Quit")};
- sprite* sprites[6] =
- {NULL, NULL, NULL, NULL, NULL, NULL};
+ sprite* sprites[7] =
+ {NULL, NULL, NULL, NULL, NULL, NULL,NULL};
menu_options menu_opts;
int choice,ret;
// Set up the sprites
sprites[0] = sprite_list[SPRITE_ALONE];
- sprites[1] = sprite_list[SPRITE_FRIENDS];
- sprites[2] = sprite_list[SPRITE_FACTOROIDS];
- sprites[3] = sprite_list[SPRITE_HELP];
- sprites[4] = sprite_list[SPRITE_OPTIONS];
- sprites[5] = sprite_list[SPRITE_QUIT];
-
-
+ sprites[2] = sprite_list[SPRITE_FRIENDS];
+ sprites[3] = sprite_list[SPRITE_FACTOROIDS];
+ sprites[4] = sprite_list[SPRITE_HELP];
+ sprites[5] = sprite_list[SPRITE_OPTIONS];
+ sprites[6] = sprite_list[SPRITE_QUIT];
+
//set_default_menu_options(&menu_opts);
//menu_opts.ytop = 100;
//menu_opts.ygap = 15;
//This function takes care of all the drawing and receives
//user input:
- choice = choose_menu_item(menu_text,sprites,6,NULL,main_scmo);
+ choice = choose_menu_item(menu_text,sprites,7,NULL,main_scmo);
while (choice >= 0) {
switch (choice) {
@@ -680,16 +684,20 @@
break;
}
case 1: {
+ ret = run_lan_menu();
+ break;
+ }
+ case 2: {
// Multiplayer games
ret = run_multiplay_menu();
break;
}
- case 2: {
+ case 3: {
// Factroids et. al.
ret = run_activities_menu();
break;
}
- case 3: {
+ case 4: {
// Help
Opts_SetHelpMode(1);
Opts_SetDemoMode(0);
@@ -702,19 +710,19 @@
Opts_SetHelpMode(0);
break;
}
- case 4: {
+ case 5: {
// More options
ret = run_options_menu();
break;
}
- case 5: {
+ case 6: {
// Quit
tmdprintf("Exiting main menu\n");
return 0;
- }
+ }
}
menu_opts.starting_entry = choice;
- choice = choose_menu_item(menu_text,sprites,6,NULL,main_scmo);
+ choice = choose_menu_item(menu_text,sprites,7,NULL,main_scmo);
}
return 0;
}
@@ -838,6 +846,87 @@
return 0;
}
+/////////////////////////// LAN game menu()////////////
+
+
+int run_lan_menu(void)
+{
+ int mode = -1;
+ char ipstr[HIGH_SCORE_NAME_LENGTH * 3];
+
+ const char* menu_text[3] =
+ {N_("Host"),
+ N_("Join"),
+ N_("Main menu")};
+
+ sprite* modesprites[3] = {NULL, NULL, NULL};
+ // Set up the sprites
+ modesprites[0] = sprite_list[SPRITE_SERVER];
+ modesprites[1] = sprite_list[SPRITE_CLIENT];
+ modesprites[2] = sprite_list[SPRITE_MAIN];
+ while (1)
+ {
+ //choose mode
+ mode = choose_menu_item(menu_text,modesprites,3,NULL,NULL);
+ if (mode == 2 || mode == -1)
+ break;
+
+ if(mode == 0) //chooses Host
+ run_server_menu();
+
+ if(mode == 1)
+ NameEntry(ipstr, _("Enter the IP Address"),
+ _("(of the Host)"));
+
+
+ }
+
+ return 0;
+
+}
+
+
+int run_server_menu(void)
+{
+
+ int difficulty = -1;
+
+
+ //just leech settings from arcade modes
+ const char* diff_menu_text[NUM_MATH_COMMAND_LEVELS + 1] =
+ {N_("Space Cadet"),
+ N_("Scout"),
+ N_("Ranger"),
+ N_("Ace"),
+ N_("Commando"),
+ N_("Main menu")};
+
+
+
+ sprite* diffsprites[6] = {NULL, NULL, NULL, NULL, NULL, NULL};
+
+
+ diffsprites[0] = sprite_list[SPRITE_CADET];
+ diffsprites[1] = sprite_list[SPRITE_SCOUT];
+ diffsprites[2] = sprite_list[SPRITE_RANGER];
+ diffsprites[3] = sprite_list[SPRITE_ACE];
+ diffsprites[4] = sprite_list[SPRITE_COMMANDO];
+ diffsprites[5] = sprite_list[SPRITE_MAIN];
+
+ while (1)
+ {
+ //choose difficulty
+ difficulty = choose_menu_item(diff_menu_text,diffsprites,6,NULL,NULL);
+ break;
+ }
+ return 0;
+
+
+}
+
+
+
+
int run_arcade_menu(void)
{
const char* menu_text[7] =
More information about the Tux4kids-commits
mailing list