X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=world.h;h=c412a88097cc3bb98ba044f0a08df45c4dc49764;hb=844527ec68c063d78d4993bd8e4053f9ddc47b78;hp=a3f69a5dc5043dd9af02998f510d70bcd012a946;hpb=74174e4357c402824302174845f89b975dba5981;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/world.h b/world.h index a3f69a5..c412a88 100644 --- a/world.h +++ b/world.h @@ -34,8 +34,8 @@ typedef struct world_instance world_instance; /* 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; @@ -155,7 +155,10 @@ struct world_instance { ent_marker, ent_camera, ent_swspreview, - ent_ccmd; + ent_ccmd, + ent_challenge, + ent_unlock, + ent_relay; ent_gate *rendering_gate; @@ -169,9 +172,9 @@ struct world_instance { 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; @@ -180,6 +183,9 @@ struct world_instance { mesh_water; rb_object rb_geo; + + ent_challenge *challenge_target; + f32 challenge_timer; }; struct world_static { @@ -195,8 +201,18 @@ struct world_static { u32 active_trigger_volumes[8]; u32 active_trigger_volume_count; - world_instance worlds[4]; - i32 active_world; + world_instance instances[4]; + i32 active_instance; + + 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;