add medals to miniworld display
[carveJwlIkooP6JGAAIwe30JlM.git] / entity.h
index 7cfce589b881e60605e57d9b2d0b5b3cb8f4e4f1..3fd3508eef3358ff47766b73ef2ad11cc0dddbc0 100644 (file)
--- a/entity.h
+++ b/entity.h
@@ -113,11 +113,13 @@ enum gate_type{
 /* v102+ */
 enum ent_gate_flag{
    k_ent_gate_linked      = 0x1, /* this is a working portal */
-   k_ent_gate_nonlocal_DELETED = 0x2, /* use the key string to link this portal.
+   k_ent_gate_nonlocal    = 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 */
    k_ent_gate_locked      = 0x10,/* has to be unlocked to be useful */
+
+   k_ent_gate_clean_pass  = 0x20,/* player didn't rewind while getting here */
 };
 
 struct ent_gate{
@@ -187,6 +189,10 @@ struct ent_route{
    f64 timing_base;
 
    u32 id_camera; /* v103+ */
+
+   /* v104+, but always accessible */
+   u32 achievment_status;
+   f64 best_laptime;
 };
 
 struct ent_water{
@@ -247,9 +253,11 @@ struct ent_marker{
 };
 
 enum skateshop_type{
-   k_skateshop_type_boardshop,
-   k_skateshop_type_charshop,
-   k_skateshop_type_worldshop,
+   k_skateshop_type_boardshop = 0,
+   k_skateshop_type_charshop = 1,
+   k_skateshop_type_worldshop = 2,
+   k_skateshop_type_DELETED = 3,
+   k_skateshop_type_server = 4
 };
 
 struct ent_skateshop{
@@ -275,6 +283,11 @@ struct ent_skateshop{
              id_info;
       }
       worlds;
+
+      struct{
+         u32 id_lever;
+      }
+      server;
    };
 };
 
@@ -504,8 +517,7 @@ struct ent_call{
 struct ent_miniworld {
    mdl_transform transform;
    u32 pstr_world;
-
-   i32 purpose_DELTED;
+   u32 camera;
    u32 proxy;
 };