X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=entity.h;h=143ad0da8428d3e49d9525ef2a30bcf8db613ae7;hb=d6171f1c56789b2ca79efa3313fbbf74a13bda7a;hp=e437d3d77810f059bfc8dd22f5a488ed464df4a9;hpb=b888cce683d95cc01d0b4be9bbe92a0dd47452ac;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/entity.h b/entity.h index e437d3d..143ad0d 100644 --- a/entity.h +++ b/entity.h @@ -18,6 +18,9 @@ typedef struct ent_volume ent_volume; typedef struct ent_audio ent_audio; typedef struct ent_index ent_index; typedef struct ent_marker ent_marker; +typedef struct ent_font ent_font; +typedef struct ent_font_variant ent_font_variant; +typedef struct ent_glyph ent_glyph; enum entity_alias{ k_ent_gate = 1, @@ -87,12 +90,13 @@ struct ent_gate{ u32 timing_version; struct{ - u8 ref_count, ref_total; + u8 ref_count; }; }; double timing_time; u16 routes[4]; /* routes that pass through this gate */ + u8 route_count; }; struct ent_route_node{ @@ -124,11 +128,13 @@ struct ent_route{ v4f colour; /* runtime */ - u32 active_checkpoint; + u16 active_checkpoint, + valid_checkpoints; + float factive; m4x3f board_transform; mdl_submesh sm; - double latest_pass; + double timing_base; }; struct ent_water{ @@ -189,6 +195,20 @@ struct ent_marker{ u32 pstr_alias; }; +VG_STATIC ent_marker *ent_find_marker( mdl_context *mdl, + mdl_array_ptr *arr, const char *alias ) +{ + for( u32 i=0; ipstr_alias ), alias ) ){ + return marker; + } + } + + return NULL; +} + enum channel_behaviour{ k_channel_behaviour_unlimited = 0, k_channel_behaviour_discard_if_full = 1, @@ -201,18 +221,24 @@ enum probability_curve{ k_probability_curve_wildlife_night = 2 }; -VG_STATIC ent_marker *ent_find_marker( mdl_context *mdl, - mdl_array_ptr *arr, const char *alias ) -{ - for( u32 i=0; ipstr_alias ), alias ) ){ - return marker; - } - } +struct ent_font_variant{ + u32 name, + material_id; +}; - return NULL; -} +struct ent_glyph{ + v2f size; + u32 indice_start, + indice_count; +}; #endif /* ENTITY_H */