r6103 - in trunk/data/qcsrc/menu: . nexuiz

esteel at icculus.org esteel at icculus.org
Wed Mar 11 15:59:46 EDT 2009


Author: esteel
Date: 2009-03-11 15:59:46 -0400 (Wed, 11 Mar 2009)
New Revision: 6103

Added:
   trunk/data/qcsrc/menu/nexuiz/modbutton.c
Modified:
   trunk/data/qcsrc/menu/classes.c
   trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_create.c
   trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_join.c
   trunk/data/qcsrc/menu/nexuiz/dialog_singleplayer.c
Log:
a very simple approach at switching between havoc and data

Modified: trunk/data/qcsrc/menu/classes.c
===================================================================
--- trunk/data/qcsrc/menu/classes.c	2009-03-11 19:46:32 UTC (rev 6102)
+++ trunk/data/qcsrc/menu/classes.c	2009-03-11 19:59:46 UTC (rev 6103)
@@ -23,6 +23,7 @@
 #include "nexuiz/bigbutton.c"
 #include "nexuiz/commandbutton.c"
 #include "nexuiz/bigcommandbutton.c"
+#include "nexuiz/modbutton.c"
 #include "nexuiz/dialog_teamselect.c"
 #include "nexuiz/dialog_settings.c"
 #include "nexuiz/dialog_settings_video.c"

Modified: trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_create.c
===================================================================
--- trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_create.c	2009-03-11 19:46:32 UTC (rev 6102)
+++ trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_create.c	2009-03-11 19:59:46 UTC (rev 6103)
@@ -162,7 +162,8 @@
 			e0.allowCut = 1;
 
 	me.gotoRC(me, me.rows - 1, 0);
-		me.TD(me, 1, me.columns, e = makeNexuizButton("Start Multiplayer!", '0 0 0'));
+		me.TD(me, 1, 2, e = makeNexuizModButton());
+		me.TD(me, 1, me.columns - 2, e = makeNexuizButton("Start Multiplayer!", '0 0 0'));
 			e.onClick = MapList_LoadMap;
 			e.onClickEntity = me.mapListBox;
 			me.mapListBox.startButton = e;

Modified: trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_join.c
===================================================================
--- trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_join.c	2009-03-11 19:46:32 UTC (rev 6102)
+++ trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_join.c	2009-03-11 19:59:46 UTC (rev 6103)
@@ -50,23 +50,25 @@
 		me.TD(me, 1, 1, slist.sortButton4 = makeNexuizButton(string_null, '0 0 0'));
 		me.TD(me, 1, 1, slist.sortButton5 = makeNexuizButton(string_null, '0 0 0'));
 	me.TR(me);
-		me.TD(me, me.rows - 3, me.columns, slist);
+		me.TD(me, me.rows - 4, me.columns, slist);
 
-	me.gotoRC(me, me.rows - 1, 0);
+	me.gotoRC(me, me.rows - 2, 0);
 		me.TD(me, 1, 0.6, e = makeNexuizTextLabel(0, "Address:"));
-		me.TD(me, 1, 1.5, e = makeNexuizInputBox(0, string_null));
+		me.TD(me, 1, 2.9, e = makeNexuizInputBox(0, string_null));
 			e.onEnter = ServerList_Connect_Click;
 			e.onEnterEntity = slist;
 			slist.ipAddressBox = e;
-		me.TD(me, 1, 1, e = makeNexuizButton("", '0 0 0'));
+		me.TD(me, 1, 1.5, e = makeNexuizButton("", '0 0 0'));
 			e.onClick = ServerList_Favorite_Click;
 			e.onClickEntity = slist;
 			slist.favoriteButton = e;
-		me.TD(me, 1, 1, e = makeNexuizButton("Info", '0 0 0'));
+		me.TD(me, 1, 1.5, e = makeNexuizButton("Info", '0 0 0'));
 			e.onClick = ServerList_Info_Click;
 			e.onClickEntity = slist;
 			slist.infoButton = e;
-		me.TD(me, 1, me.columns - 0.6 - 1.5 - 1 - 1, e = makeNexuizButton("Join!", '0 0 0'));
+	me.TR(me);
+		me.TD(me, 1, 2, e = makeNexuizModButton());
+		me.TD(me, 1, me.columns - 2, e = makeNexuizButton("Join!", '0 0 0'));
 			e.onClick = ServerList_Connect_Click;
 			e.onClickEntity = slist;
 			slist.connectButton = e;

Modified: trunk/data/qcsrc/menu/nexuiz/dialog_singleplayer.c
===================================================================
--- trunk/data/qcsrc/menu/nexuiz/dialog_singleplayer.c	2009-03-11 19:46:32 UTC (rev 6102)
+++ trunk/data/qcsrc/menu/nexuiz/dialog_singleplayer.c	2009-03-11 19:59:46 UTC (rev 6103)
@@ -76,7 +76,8 @@
 			me.campaignBox.campaignGo(me.campaignBox, 0);
 
 	me.gotoRC(me, me.rows - 1, 0);
-		me.TD(me, 1, me.columns, e = makeNexuizButton("Start Singleplayer!", '0 0 0'));
+		me.TD(me, 1, 2, e = makeNexuizModButton());
+		me.TD(me, 1, me.columns - 2 , e = makeNexuizButton("Start Singleplayer!", '0 0 0'));
 			e.onClick = CampaignList_LoadMap;
 			e.onClickEntity = me.campaignBox;
 }

Added: trunk/data/qcsrc/menu/nexuiz/modbutton.c
===================================================================
--- trunk/data/qcsrc/menu/nexuiz/modbutton.c	                        (rev 0)
+++ trunk/data/qcsrc/menu/nexuiz/modbutton.c	2009-03-11 19:59:46 UTC (rev 6103)
@@ -0,0 +1,37 @@
+#ifdef INTERFACE
+CLASS(NexuizModButton) EXTENDS(NexuizButton)
+	METHOD(NexuizModButton, configureNexuizModButton, void(entity))
+ENDCLASS(NexuizModButton)
+entity makeNexuizModButton();
+void NexuizModButton_Click(entity me, entity other);
+#endif
+
+#ifdef IMPLEMENTATION
+entity makeNexuizModButton()
+{
+	entity me;
+	me = spawnNexuizModButton();
+	me.configureNexuizModButton(me);
+	return me;
+}
+
+void NexuizModButton_Click(entity me, entity other)
+{
+	if (cvar_string("menu_slist_modfilter") == "havoc")
+		cmd("gamedir data; menu_restart");
+	else
+		cmd("gamedir havoc; menu_restart");
+}
+
+void configureNexuizModButtonNexuizModButton(entity me)
+{
+	me.configureNexuizButton(me, "", '0 0 0');
+	me.onClick = NexuizModButton_Click;
+	me.onClickEntity = me;
+
+	if (cvar_string("menu_slist_modfilter") == "havoc")
+		me.text = "Switch to Nexuiz mode";
+	else
+		me.text = "Switch to Havoc mode";
+}
+#endif




More information about the nexuiz-commits mailing list