about summary refs log tree commit diff
path: root/src/game/client/gameclient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/client/gameclient.cpp')
-rw-r--r--src/game/client/gameclient.cpp24
1 files changed, 19 insertions, 5 deletions
diff --git a/src/game/client/gameclient.cpp b/src/game/client/gameclient.cpp
index 44d297b5..4f18cf65 100644
--- a/src/game/client/gameclient.cpp
+++ b/src/game/client/gameclient.cpp
@@ -88,7 +88,7 @@ static void load_sounds_thread(void *do_render)
 	}
 }
 
-void GAMECLIENT::on_init()
+void GAMECLIENT::on_console_init()
 {
 	// setup pointers
 	binds = &::binds;
@@ -146,15 +146,23 @@ void GAMECLIENT::on_init()
 	input.add(&emoticon);
 	input.add(controls);
 	input.add(binds);
+		
+	// add the some console commands
+	MACRO_REGISTER_COMMAND("team", "", con_team, this);
+	MACRO_REGISTER_COMMAND("kill", "", con_kill, this);
+			
+	for(int i = 0; i < all.num; i++)
+		all.components[i]->on_console_init();
+}
+
+void GAMECLIENT::on_init()
+{
+
 
 	// init all components
 	for(int i = 0; i < all.num; i++)
 		all.components[i]->on_init();
 	
-	// add the some console commands
-	MACRO_REGISTER_COMMAND("team", "", con_team, this);
-	MACRO_REGISTER_COMMAND("kill", "", con_kill, this);
-	
 	// setup item sizes
 	for(int i = 0; i < NUM_NETOBJTYPES; i++)
 		snap_set_staticsize(i, netobj_get_size(i));
@@ -197,6 +205,12 @@ void GAMECLIENT::on_init()
 	
 }
 
+void GAMECLIENT::on_save()
+{
+	for(int i = 0; i < all.num; i++)
+		all.components[i]->on_save();
+}
+
 void GAMECLIENT::dispatch_input()
 {
 	// handle mouse movement