reset run when using lgider
[carveJwlIkooP6JGAAIwe30JlM.git] / world.h
diff --git a/world.h b/world.h
index dde9aea83048a93f26a4f0227c0464df69132fb7..6ff3afbc00f295d7a459eec32d0eff75bcc7e719 100644 (file)
--- a/world.h
+++ b/world.h
@@ -49,21 +49,25 @@ static void skaterift_world_get_save_path( enum world_purpose which,
 #include "world_water.h"
 #include "world_audio.h"
 #include "world_routes.h"
+#include "world_routes_ui.h"
 
 /* console variables */
 
 static f32   k_day_length            = 30.0f; /* minutes */
 static i32   k_debug_light_indices   = 0,
              k_debug_light_complexity= 0,
-             k_light_preview         = 0;
+             k_light_preview         = 0,
+             k_light_editor          = 0;
 
+#define WORLD_SURFACE_HAS_TRAFFIC 0x1
+#define WORLD_SURFACE_HAS_PROPS   0x2
 
 struct world_instance {
    /* Fixed items
     * -------------------------------------------------------
     */
 
-   v4f player_co, player_angles;
+   v4f player_co;
 
    void *heap;
    enum world_status{
@@ -85,6 +89,7 @@ struct world_instance {
    water;
 
    f64 time;
+   f32 tar_min, tar_max;
 
    /* STD140 */
    struct ub_world_lighting{
@@ -153,6 +158,7 @@ struct world_instance {
       mdl_material info;
       mdl_submesh sm_geo,
                   sm_no_collide;
+      u32 flags;
    }
    * surfaces;
    u32 surface_count;
@@ -181,7 +187,9 @@ struct world_instance {
                  ent_relay,
                  ent_cubemap,
                  ent_miniworld,
-                 ent_prop;
+                 ent_prop,
+                 ent_region,
+                 ent_glider;
 
    enum skybox {
       k_skybox_default,
@@ -211,10 +219,11 @@ struct world_instance {
           mesh_water;
    u32 cubemap_cooldown, cubemap_side;
 
-   rb_object rb_geo;
-
    /* leaderboards */
    struct leaderboard_cache *leaderboard_cache;
+
+   /* ui */
+   struct route_ui *routes_ui;
 };
 
 struct world_static {