wind rushing sound
[carveJwlIkooP6JGAAIwe30JlM.git] / world_gate.h
index 4defb75ac198ee07d5fe398d75af61a6f6292f4e..151e428ff7be1172dd9d761572ac2cc097a91f33 100644 (file)
@@ -5,25 +5,33 @@
 #ifndef WORLD_GATE_H
 #define WORLD_GATE_H
 
+#include "camera.h"
 #include "world.h"
 #include "shaders/model_gate.h"
 
 struct world_gates{
    glmesh mesh;
    mdl_submesh sm_surface, sm_marker[4];
+   camera cam;
+
+   v3f userportal_co;
 }
 static world_gates;
 
-VG_STATIC void world_gates_init(void);
-VG_STATIC void gate_transform_update( ent_gate *gate );
-VG_STATIC void world_link_nonlocal_async( void *payload, u32 size );
-VG_STATIC void world_unlink_nonlocal( world_instance *world );
-VG_STATIC int render_gate( world_instance *world_inside,
-                           ent_gate *gate, camera *cam, int layer_depth );
+static void world_gates_init(void);
+static void gate_transform_update( ent_gate *gate );
+static int render_gate( world_instance *world, world_instance *world_inside,
+                           ent_gate *gate, camera *cam );
+
+static int gate_intersect( ent_gate *gate, v3f pos, v3f last );
+static u32 world_intersect_gates( world_instance *world, v3f pos, v3f last );
 
-VG_STATIC int gate_intersect( ent_gate *gate, v3f pos, v3f last );
-VG_STATIC ent_gate *world_intersect_gates( world_instance *world,
-                                           v3f pos, v3f last );
+static void ent_gate_call( world_instance *world, ent_call *call );
+static void ent_gate_get_mdl_mtx( ent_gate *gate, m4x3f mmdl );
 
+static void world_link_nonlocal_async( void *payload, u32 size );
+static void world_unlink_nonlocal( world_instance *world );
+static void render_gate_unlinked( world_instance *world,
+                                  ent_gate *gate, camera *cam );
 
 #endif /* WORLD_GATE_H */