typedef struct ent_challenge ent_challenge;
typedef struct ent_relay ent_relay;
typedef struct ent_cubemap ent_cubemap;
+typedef struct ent_miniworld ent_miniworld;
enum entity_alias{
k_ent_none = 0,
k_ent_objective = 18,
k_ent_challenge = 19,
k_ent_relay = 20,
- k_ent_cubemap = 21
+ k_ent_cubemap = 21,
+ k_ent_miniworld = 22
};
static u32 mdl_entity_id_type( u32 entity_id ){
/* v102+ */
enum ent_gate_flag{
k_ent_gate_linked = 0x1, /* this is a working portal */
- k_ent_gate_nonlocal = 0x2, /* use the key string to link this portal.
+ k_ent_gate_nonlocal_DELETED = 0x2, /* use the key string to link this portal.
NOTE: if set, it adds the flip flag. */
k_ent_gate_flip = 0x4, /* flip direction 180* for exiting portal */
k_ent_gate_custom_mesh = 0x8, /* use a custom submesh instead of default */
};
struct ent_route{
-
union{
mdl_transform transform;
u32 official_track_id;
- };
+ }
+ anon;
u32 pstr_name;
u16 checkpoints_start,
u16 active_checkpoint,
valid_checkpoints;
- float factive;
+ f32 factive;
m4x3f board_transform;
mdl_submesh sm;
- double timing_base;
+ f64 timing_base;
+
+ u32 id_camera; /* v103+ */
};
struct ent_water{
k_ent_menuitem_type_slider = 4,
k_ent_menuitem_type_page = 5,
k_ent_menuitem_type_binding = 6,
+ k_ent_menuitem_type_visual_nocol = 7,
k_ent_menuitem_type_disabled = 90
};
void *data;
};
+struct ent_miniworld {
+ mdl_transform transform;
+ u32 pstr_world;
+
+ i32 purpose;
+};
+
#include "world.h"
static void entity_call( world_instance *world, ent_call *call );