unlock rendering
[carveJwlIkooP6JGAAIwe30JlM.git] / entity.h
index ae9d63bd45f7aa442b41779d7d1d6d919792c648..8920eef3ab5fed3438bf145d53c35222b489a66a 100644 (file)
--- a/entity.h
+++ b/entity.h
@@ -29,6 +29,7 @@ typedef struct ent_ccmd ent_ccmd;
 typedef struct ent_challenge ent_challenge;
 typedef struct ent_unlock ent_unlock;
 typedef struct ent_relay ent_relay;
+typedef struct ent_cubemap ent_cubemap;
 
 enum entity_alias{
    k_ent_none        = 0,
@@ -51,7 +52,8 @@ enum entity_alias{
    k_ent_ccmd        = 17,
    k_ent_challenge   = 18,
    k_ent_unlock      = 19,
-   k_ent_relay       = 20
+   k_ent_relay       = 20,
+   k_ent_cubemap     = 21
 };
 
 static u32 mdl_entity_id_type( u32 entity_id ){
@@ -399,18 +401,46 @@ struct ent_ccmd{
    u32 pstr_command;
 };
 
+enum ent_challenge_filter{
+   k_ent_challenge_filter_none            = 0x00000000,
+   k_ent_challenge_filter_trick_shuvit    = 0x00000001,
+   k_ent_challenge_filter_trick_kickflip  = 0x00000002,
+   k_ent_challenge_filter_trick_treflip   = 0x00000004,
+   k_ent_challenge_filter_trick_any       = 
+      k_ent_challenge_filter_trick_shuvit|
+      k_ent_challenge_filter_trick_treflip|
+      k_ent_challenge_filter_trick_kickflip,
+   k_ent_challenge_filter_flip_back       = 0x00000008,
+   k_ent_challenge_filter_flip_front      = 0x00000010,
+   k_ent_challenge_filter_flip_any        =
+      k_ent_challenge_filter_flip_back|
+      k_ent_challenge_filter_flip_front,
+   k_ent_challenge_filter_grind_truck_any = 0x00000020,
+   k_ent_challenge_filter_grind_board_any = 0x00000040,
+   k_ent_challenge_filter_grind_any       =
+      k_ent_challenge_filter_grind_truck_any|
+      k_ent_challenge_filter_grind_board_any,
+   k_ent_challenge_filter_footplant       = 0x00000080
+};
+
+enum ent_challenge_flag {
+   k_ent_challenge_hidden = 0x1
+};
+
 struct ent_challenge{
    mdl_transform transform;
    u32 submesh_start,
        submesh_count,
+       flags,
        id_next,
-       filter,
+       filter,filter2,
        id_win,
        win_event;
    f32 time_limit;
 };
 
 struct ent_unlock{
+   mdl_transform transform;
    u32 pstr_alias,
        target,
        target_event,
@@ -421,6 +451,12 @@ struct ent_relay {
    u32 targets[4][2];
 };
 
+struct ent_cubemap {
+   v3f co;
+   u32 resolution, live, texture_id, 
+       framebuffer_id, renderbuffer_id, placeholder[2];
+};
+
 typedef struct ent_call ent_call;
 struct ent_call{
    u32 id, function;