]> git.rm.cloudns.org Git - xonotic/darkplaces.git/commitdiff
Merge remote branch 'origin/div0-stable' into samual/movetype_spectator
authorSamual <samual@xonotic.org>
Sun, 14 Aug 2011 22:29:25 +0000 (18:29 -0400)
committerSamual <samual@xonotic.org>
Sun, 14 Aug 2011 22:29:25 +0000 (18:29 -0400)
Conflicts:
sv_phys.c

1  2 
server.h
sv_phys.c

diff --cc server.h
Simple merge
diff --cc sv_phys.c
index c7a3b145924e180af120f6027b37bdb3c2cb43d8,a28d178b2a0b195368fb1f8fe7fcd8945c50b2a8..02539aca82ee70a9b6973e641806009aa29de141
+++ b/sv_phys.c
@@@ -984,11 -984,10 +984,11 @@@ void SV_CheckAllEnts (void
        {
                if (check->priv.server->free)
                        continue;
-               if (check->fields.server->movetype == MOVETYPE_PUSH
-                || check->fields.server->movetype == MOVETYPE_NONE
-                || check->fields.server->movetype == MOVETYPE_FOLLOW
-                || check->fields.server->movetype == MOVETYPE_NOCLIP
-                || check->fields.server->movetype == MOVETYPE_SPECTATOR)
+               if (PRVM_serveredictfloat(check, movetype) == MOVETYPE_PUSH
+                || PRVM_serveredictfloat(check, movetype) == MOVETYPE_NONE
+                || PRVM_serveredictfloat(check, movetype) == MOVETYPE_FOLLOW
 -               || PRVM_serveredictfloat(check, movetype) == MOVETYPE_NOCLIP)
++               || PRVM_serveredictfloat(check, movetype) == MOVETYPE_NOCLIP
++               || PRVM_serveredictfloat(check, movetype) == MOVETYPE_SPECTATOR)
                        continue;
  
                if (SV_TestEntityPosition (check, vec3_origin))
@@@ -2209,14 -2280,11 +2283,13 @@@ void SV_WalkMove (prvm_edict_t *ent
                // only try this if there was no floor in the way in the trace (no,
                // this check seems to be not REALLY necessary, because if clip & 1,
                // our trace will hit that thing too)
-               VectorSet(upmove, ent->fields.server->origin[0], ent->fields.server->origin[1], ent->fields.server->origin[2] + 1);
-               VectorSet(downmove, ent->fields.server->origin[0], ent->fields.server->origin[1], ent->fields.server->origin[2] - 1);
-               if (ent->fields.server->movetype == MOVETYPE_FLYMISSILE)
+               VectorSet(upmove, PRVM_serveredictvector(ent, origin)[0], PRVM_serveredictvector(ent, origin)[1], PRVM_serveredictvector(ent, origin)[2] + 1);
+               VectorSet(downmove, PRVM_serveredictvector(ent, origin)[0], PRVM_serveredictvector(ent, origin)[1], PRVM_serveredictvector(ent, origin)[2] - 1);
+               if (PRVM_serveredictfloat(ent, movetype) == MOVETYPE_FLYMISSILE)
                        type = MOVE_MISSILE;
-               else if (ent->fields.server->movetype == MOVETYPE_SPECTATOR)
++              else if (PRVM_serveredictfloat(ent, movetype) == MOVETYPE_SPECTATOR)
 +                      type = MOVE_WORLDONLY;
-               else if (ent->fields.server->solid == SOLID_TRIGGER || ent->fields.server->solid == SOLID_NOT)
+               else if (PRVM_serveredictfloat(ent, solid) == SOLID_TRIGGER || PRVM_serveredictfloat(ent, solid) == SOLID_NOT)
                        type = MOVE_NOMONSTERS; // only clip against bmodels
                else
                        type = MOVE_NORMAL;