#ifndef WORLD_H
#define WORLD_H
+#include "qtypes.h"
#include "collision.h"
#define MOVE_NORMAL 0
typedef struct link_s
{
+ llist_t list;
int entitynumber;
- struct link_s *prev, *next;
} link_t;
typedef struct world_physics_s
{
// for ODE physics engine
- qboolean ode; // if true then ode is activated
+ qbool ode; // if true then ode is activated
void *ode_world;
void *ode_space;
void *ode_contactgroup;
int ode_iterations;
// actual step (server frametime / ode_iterations)
vec_t ode_step;
+ // time we need to simulate, for constantstep
+ vec_t ode_time;
// stats
int ode_numobjects; // total objects cound
int ode_activeovjects; // active objects count
void World_UnlinkEdict(struct prvm_edict_s *ent);
/// Needs to be called any time an entity changes origin, mins, maxs
-void World_LinkEdict(world_t *world, struct prvm_edict_s *ent, const vec3_t mins, const vec3_t maxs);
+void World_LinkEdict(world_t *world, struct prvm_edict_s *ent, const vec3_t mins, const vec3_t maxs, qbool link_solid_not);
/// \returns list of entities touching a box
int World_EntitiesInBox(world_t *world, const vec3_t mins, const vec3_t maxs, int maxlist, struct prvm_edict_s **list);