X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=world_entity.h;h=1e5e70c684d55e4ace42df0749ce31d008a602fb;hb=76315944e5a98838163e0aba8601ed3522f0724d;hp=63cab47673e075f9c237c9032d36303abf414d91;hpb=2329044d44a5aff035b01926f7901d9e89ad284e;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/world_entity.h b/world_entity.h index 63cab47..1e5e70c 100644 --- a/world_entity.h +++ b/world_entity.h @@ -5,26 +5,33 @@ #include "entity.h" #include "bvh.h" #include "save.h" +#include "vg/vg_msg.h" -VG_STATIC void world_gen_entities_init( world_instance *world ); -VG_STATIC ent_spawn *world_find_spawn_by_name( world_instance *world, +static void world_gen_entities_init( world_instance *world ); +static ent_spawn *world_find_spawn_by_name( world_instance *world, const char *name ); -VG_STATIC ent_spawn *world_find_closest_spawn( world_instance *world, +static ent_spawn *world_find_closest_spawn( world_instance *world, v3f position ); -VG_STATIC void world_entity_start( world_instance *world, - struct savedata *sav ); +static void world_entity_start( world_instance *world, vg_msg *sav ); +static void world_entity_serialize( world_instance *world, vg_msg *sav ); -VG_STATIC void ent_volume_call( world_instance *world, ent_call *call ); -VG_STATIC void ent_audio_call( world_instance *world, ent_call *call ); -VG_STATIC void ent_ccmd_call( world_instance *world, ent_call *call ); +static void ent_volume_call( world_instance *world, ent_call *call ); +static void ent_audio_call( world_instance *world, ent_call *call ); +static void ent_ccmd_call( world_instance *world, ent_call *call ); -VG_STATIC void entity_bh_expand_bound( void *user, boxf bound, u32 item_index ); -VG_STATIC float entity_bh_centroid( void *user, u32 item_index, int axis ); -VG_STATIC void entity_bh_swap( void *user, u32 ia, u32 ib ); -VG_STATIC void entity_bh_debug( void *user, u32 item_index ); -VG_STATIC void entity_bh_closest( void *user, u32 item_index, v3f point, +static void entity_bh_expand_bound( void *user, boxf bound, u32 item_index ); +static float entity_bh_centroid( void *user, u32 item_index, int axis ); +static void entity_bh_swap( void *user, u32 ia, u32 ib ); +static void entity_bh_debug( void *user, u32 item_index ); +static void entity_bh_closest( void *user, u32 item_index, v3f point, v3f closest ); +static void world_entity_focus( u32 entity_id ); +static void world_entity_focus_preupdate(void); +static void world_entity_focus_render(void); +static void world_entity_unfocus(); +static void world_entity_focus_camera( world_instance *world, u32 uid ); + static bh_system bh_system_entity_list = { .expand_bound = entity_bh_expand_bound, .item_centroid = entity_bh_centroid,