clear runs when respawning
[carveJwlIkooP6JGAAIwe30JlM.git] / world.c
diff --git a/world.c b/world.c
index 0183acbbd12997d4e3be23296e601bdad6b2c07d..019e572a63b714c6c690a0ecb438bdc369b7f518 100644 (file)
--- a/world.c
+++ b/world.c
@@ -9,7 +9,7 @@
 #include "network.h"
 
 static world_instance *world_current_instance(void){
-   return &world_static.worlds[ world_static.active_world ];
+   return &world_static.instances[ world_static.active_instance ];
 }
 
 static void world_init(void)
@@ -26,6 +26,30 @@ static void world_init(void)
                                                    VG_MEMORY_SYSTEM );
 }
 
+static void world_set_active_instance( u32 index ){
+   world_static.challenge_target = NULL;
+   world_static.challenge_timer = 0.0f;
+   world_static.focused_entity = 0;
+   world_static.focus_strength = 0.0f;
+   world_static.active_trigger_volume_count = 0;
+   world_static.active_instance = index;
+}
+
+static void skaterift_world_get_save_path( enum world_purpose which, 
+                                           char buf[128] ){
+   addon_reg *reg;
+
+   if( which == k_world_purpose_hub ) reg = world_static.addon_hub;
+   else reg = world_static.addon_client;
+
+   assert( reg );
+
+   char id[76];
+   addon_alias_uid( &reg->alias, id );
+   snprintf( buf, 128, "savedata/%s.bkv", id );
+}
+
+
 #include "world_entity.c"
 #include "world_gate.c"
 #include "world_gen.c"