mirror of
https://git.code.sf.net/p/quake/quakeforge-old
synced 2024-11-25 13:21:04 +00:00
e818226c34
are done (sorry if this steps on your toes with the view.c merge Deek) and I'm almost positive flymode will now work. Even though view offset is done, it won't. The reason for this is that cl.stats[STAT_FLYMODE] is pretty much going to ALWAYS be 0 on a standard server. Since 0 tells us that we're not flying, this is fine. cl.stats[STAT_VIEWHEIGHT] is also going to be 0, but it should be 22 for normal views. I could always assume this value is an offset from 22, but that just seems lame to me. I'll either do it anyway or we'll have to find a good opportunity in the connect cycle to set the cl.qfserver qboolean to true. I'm thinking about using an info key value for this, but we'd be better served I think by coordinating with QSG to up the protocol version across all engines.
71 lines
1.7 KiB
C
71 lines
1.7 KiB
C
/*
|
|
pmove.h
|
|
Copyright (C) 1996-1997 Id Software, Inc.
|
|
Copyright (C) 1999,2000 contributors of the QuakeForge project
|
|
Please see the file "AUTHORS" for a list of contributors
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License
|
|
as published by the Free Software Foundation; either version 2
|
|
of the License, or (at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
*/
|
|
|
|
#ifndef __PMOVE_H
|
|
#define __PMOVE_H
|
|
|
|
#include <pmove_simple.h>
|
|
#include <model.h>
|
|
#include <net.h>
|
|
#include <protocol.h>
|
|
|
|
typedef struct
|
|
{
|
|
vec3_t origin;
|
|
model_t *model; // only for bsp models
|
|
vec3_t mins, maxs; // only for non-bsp models
|
|
int info; // for client or server to identify
|
|
} physent_t;
|
|
|
|
|
|
typedef struct
|
|
{
|
|
int sequence; // just for debugging prints
|
|
|
|
// player state
|
|
vec3_t origin;
|
|
vec3_t angles;
|
|
vec3_t velocity;
|
|
int oldbuttons;
|
|
float waterjumptime;
|
|
qboolean dead;
|
|
qboolean flying;
|
|
int spectator;
|
|
|
|
// world state
|
|
int numphysent;
|
|
physent_t physents[MAX_PHYSENTS]; // 0 should be the world
|
|
|
|
// input
|
|
usercmd_t cmd;
|
|
|
|
// results
|
|
int numtouch;
|
|
int touchindex[MAX_PHYSENTS];
|
|
} playermove_t;
|
|
|
|
extern playermove_t pmove;
|
|
|
|
int PM_HullPointContents (hull_t *hull, int num, vec3_t p);
|
|
|
|
#endif // __PMOVE_H
|