/* console variables */
-static float k_day_length = 30.0f; /* minutes */
-static int k_debug_light_indices = 0,
+static f32 k_day_length = 30.0f; /* minutes */
+static i32 k_debug_light_indices = 0,
k_debug_light_complexity= 0,
k_light_preview = 0;
ent_skateshop,
ent_marker,
ent_camera,
- ent_swspreview;
+ ent_swspreview,
+ ent_ccmd,
+ ent_challenge,
+ ent_unlock,
+ ent_relay;
ent_gate *rendering_gate;
scene_lines;
/* spacial mappings */
- bh_tree *audio_bh,
- *volume_bh,
- *geo_bh;
+ bh_tree *geo_bh,
+ *entity_bh;
+ u32 *entity_list;
/* graphics */
glmesh mesh_route_lines;
mesh_water;
rb_object rb_geo;
+
+ ent_challenge *challenge_target;
+ f32 challenge_timer;
};
struct world_static {
u32 current_run_version;
double time, rewind_from, rewind_to, last_use;
- int in_volume;
+ u32 active_trigger_volumes[8];
+ u32 active_trigger_volume_count;
+
+ world_instance instances[4];
+ i32 active_instance;
- world_instance worlds[4];
- u32 active_world;
+ addon_reg *addon_hub,
+ *addon_client;
+
+ enum world_loader_state{
+ k_world_loader_none,
+ k_world_loader_preload,
+ k_world_loader_load
+ }
+ load_state;
}
static world_static;