mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-05-09 12:08:12 +03:00
Added some structures from Breakthrough
This commit is contained in:
parent
e3dd9b9379
commit
8c9d4562d2
1 changed files with 576 additions and 31 deletions
607
ida/ida.h
607
ida/ida.h
|
@ -107,6 +107,7 @@ typedef unsigned char byte;
|
|||
#define MAX_CONFIGSTRINGS 2736
|
||||
#define MAX_EXTSTRINGCHARS 4096
|
||||
#define MAX_GAMESTATECHARS 32000
|
||||
#define MAX_GAMESTATECHARS_BT 41952
|
||||
|
||||
#define CS_MAXSOUNDS_BITS 8
|
||||
#define CS_MAXLIGHTSTYLES 32
|
||||
|
@ -1485,7 +1486,57 @@ typedef struct playerState_s
|
|||
|
||||
} playerState_t;
|
||||
|
||||
extern playerState_t ps;
|
||||
typedef struct playerState_bt_s
|
||||
{
|
||||
int commandTime;
|
||||
pmType_t pmType;
|
||||
int bobCycle;
|
||||
int pmFlags;
|
||||
vec3_t origin;
|
||||
vec3_t velocity;
|
||||
int gravity;
|
||||
int speed;
|
||||
int deltaAngles[3];
|
||||
int groundEntityNum;
|
||||
qboolean walking;
|
||||
qboolean groundPlane;
|
||||
int feetFalling;
|
||||
vec3_t fallDir;
|
||||
trace_t groundTrace;
|
||||
int clientNum;
|
||||
vec3_t viewAngles;
|
||||
int viewHeight;
|
||||
float leanAngle;
|
||||
int viewModelAnim;
|
||||
int viewModelAnimChanged;
|
||||
playerStat_e stats[MAX_PLAYERSTATS];
|
||||
int activeItems[8];
|
||||
int ammoNameIndex[MAX_WEAPONS];
|
||||
int ammoAmount[MAX_WEAPONS];
|
||||
int maxAmmoAmount[MAX_WEAPONS];
|
||||
musicMood_t currentMusicMood;
|
||||
musicMood_t fallbackMusicMood;
|
||||
float musicVolume;
|
||||
float musicVolumeFadeTime;
|
||||
int reverbType;
|
||||
float reverbLevel;
|
||||
vec4_t blend;
|
||||
float fov;
|
||||
vec3_t cameraOrigin;
|
||||
vec3_t cameraAngles;
|
||||
float cameraTime;
|
||||
vec3_t cameraOffset;
|
||||
vec3_t cameraPosOfs;
|
||||
int cameraFlags;
|
||||
vec3_t damageAngles;
|
||||
int unk1;
|
||||
qboolean voted;
|
||||
int ping;
|
||||
vec3_t eyePos;
|
||||
int unk2;
|
||||
int unk3;
|
||||
|
||||
} playerState_bt_t;
|
||||
|
||||
typedef struct gclient_s
|
||||
{
|
||||
|
@ -1633,6 +1684,30 @@ typedef struct pmove_s
|
|||
|
||||
} pmove_t;
|
||||
|
||||
typedef struct pmove_bt_s
|
||||
{
|
||||
playerState_bt_t *ps;
|
||||
userCmd_t cmd;
|
||||
int tracemask;
|
||||
qboolean noFootsteps;
|
||||
qboolean canLean;
|
||||
int framecount;
|
||||
int numtouch;
|
||||
int touchents[32];
|
||||
int moveresult;
|
||||
qboolean stepped;
|
||||
int pmoveEvent;
|
||||
float mins[3];
|
||||
float maxs[3];
|
||||
int watertype;
|
||||
int waterlevel;
|
||||
int pmove_fixed;
|
||||
int pmove_msec;
|
||||
void (*trace) ();
|
||||
int (*pointcontents) ();
|
||||
|
||||
} pmove_bt_t;
|
||||
|
||||
typedef struct pml_s {
|
||||
float forward[3];
|
||||
float left[3];
|
||||
|
@ -1688,6 +1763,14 @@ typedef struct gameState_s
|
|||
|
||||
} gameState_t;
|
||||
|
||||
typedef struct gameState_bt_s
|
||||
{
|
||||
int stringOffsets[MAX_CONFIGSTRINGS];
|
||||
char stringData[MAX_GAMESTATECHARS_BT];
|
||||
int dataCount;
|
||||
|
||||
} gameState_bt_t;
|
||||
|
||||
typedef struct entityState_s
|
||||
{
|
||||
int number;
|
||||
|
@ -1867,6 +1950,20 @@ typedef struct
|
|||
|
||||
} rectDef_t;
|
||||
|
||||
typedef struct {
|
||||
char *name;
|
||||
int offset;
|
||||
int bits; // 0 = float
|
||||
int type;
|
||||
} netField_t;
|
||||
|
||||
typedef struct {
|
||||
int offset;
|
||||
int bits; // 0 = float
|
||||
int type;
|
||||
char *name;
|
||||
} netField_ver17_t;
|
||||
|
||||
typedef rectDef_t Rectangles;
|
||||
|
||||
// FIXME: do something to separate text vs window stuff
|
||||
|
@ -2199,6 +2296,39 @@ typedef struct glConfig_s
|
|||
|
||||
} glConfig_t;
|
||||
|
||||
typedef struct glConfig_bt_s
|
||||
{
|
||||
char rendererString[MAX_STRINGCHARS];
|
||||
char vendorString[MAX_STRINGCHARS];
|
||||
char versionString[MAX_STRINGCHARS];
|
||||
char unknownString1[MAX_STRINGCHARS];
|
||||
char unknownString2[MAX_STRINGCHARS];
|
||||
char extensionsString[MAX_EXTSTRINGCHARS];
|
||||
int maxTextureSize;
|
||||
int maxActiveTextures;
|
||||
int colorBits;
|
||||
int depthBits;
|
||||
int stencilBits;
|
||||
glDriverType_t driverType;
|
||||
glHardwareType_t hardwareType;
|
||||
qboolean deviceSupportsGamma;
|
||||
int textureCompression;
|
||||
qboolean textureEnvAddAvailable;
|
||||
int vidWidth;
|
||||
int vidHeight;
|
||||
float windowAspect;
|
||||
int displayFrequency;
|
||||
qboolean isFullscreen;
|
||||
qboolean stereoEnabled;
|
||||
qboolean smpActive;
|
||||
int registerCombinerAvailable;
|
||||
qboolean secondaryColorAvailable;
|
||||
qboolean var;
|
||||
qboolean fence;
|
||||
int unk1;
|
||||
|
||||
} glConfig_bt_t;
|
||||
|
||||
typedef struct pcx_t
|
||||
{
|
||||
char manufacturer;
|
||||
|
@ -2458,6 +2588,11 @@ typedef struct {
|
|||
skelBone_HoseRot skelBone_HoseRot_parent;
|
||||
} skelBone_HoseRotParent;
|
||||
|
||||
typedef struct {
|
||||
float transformed[3];
|
||||
int index;
|
||||
} sphere_dlight_t;
|
||||
|
||||
typedef struct ftx_s
|
||||
{
|
||||
int width;
|
||||
|
@ -2575,7 +2710,7 @@ typedef struct cTerraPatchUnpacked_s {
|
|||
float y0;
|
||||
float z0;
|
||||
float zmax;
|
||||
shader_t *shader;
|
||||
struct shader_s *shader;
|
||||
short int iNorth;
|
||||
short int iEast;
|
||||
short int iSouth;
|
||||
|
@ -3892,6 +4027,22 @@ typedef struct snapshot_s
|
|||
|
||||
} snapshot_t;
|
||||
|
||||
typedef struct snapshot_bt_s
|
||||
{
|
||||
int snapFlags;
|
||||
int ping;
|
||||
int serverTime;
|
||||
byte areaMask[MAX_MAPAREABYTES];
|
||||
playerState_bt_t ps;
|
||||
int numEntities;
|
||||
entityState_t entities[MAX_ENTITIESINSNAPSHOT];
|
||||
int numServerCommands;
|
||||
int serverCommandSequence;
|
||||
int numberOfSounds;
|
||||
serverSound_t sounds[MAX_SERVERSOUNDS];
|
||||
|
||||
} snapshot_bt_t;
|
||||
|
||||
typedef struct centity_s
|
||||
{
|
||||
entityState_t currentState;
|
||||
|
@ -3962,6 +4113,44 @@ typedef struct cgs_s
|
|||
|
||||
} cgs_t;
|
||||
|
||||
typedef struct cgs_bt_s
|
||||
{
|
||||
gameState_bt_t gameState;
|
||||
glConfig_bt_t glConfig;
|
||||
float screenXScale;
|
||||
float screenYScale;
|
||||
float screenXBias;
|
||||
int serverCommandSequence;
|
||||
int processedSnapshotNum;
|
||||
qboolean localServer;
|
||||
int levelStartTime;
|
||||
int matchEndTime;
|
||||
int serverLagTime;
|
||||
int gameType;
|
||||
int dmFlags;
|
||||
int teamFlags;
|
||||
int fragLimit;
|
||||
int timeLimit;
|
||||
int maxClients;
|
||||
int cinematic;
|
||||
char mapName[MAX_QPATH];
|
||||
int unk0;
|
||||
int voteTime;
|
||||
int numVotesYes;
|
||||
int numVotesNo;
|
||||
int numUndecidedVotes;
|
||||
qboolean voteRefreshed;
|
||||
char voteString[1024];
|
||||
int modelDraw[MAX_MODELS];
|
||||
int unk1;
|
||||
int soundPrecache[MAX_SOUNDS];
|
||||
int numInlineModels;
|
||||
int inlineDrawModel[MAX_MODELS];
|
||||
vec3_t inlineModelMidpoints[MAX_MODELS];
|
||||
media_t media;
|
||||
|
||||
} cgs_bt_t;
|
||||
|
||||
typedef struct cg_s
|
||||
{
|
||||
int clientFrame;
|
||||
|
@ -4057,6 +4246,114 @@ typedef struct cg_s
|
|||
|
||||
} cg_t;
|
||||
|
||||
typedef struct cg_bt_s
|
||||
{
|
||||
int clientFrame;
|
||||
int clientNum;
|
||||
int demoPlayback;
|
||||
int levelShot;
|
||||
int latestSnapshotNum;
|
||||
int latestSnapshotTime;
|
||||
snapshot_bt_t* snap;
|
||||
snapshot_bt_t* nextSnap;
|
||||
snapshot_bt_t activeSnapshots[MAX_ACTIVESNAPSHOTS];
|
||||
float frameInterpolation;
|
||||
int thisFrameTeleport;
|
||||
int nextFrameTeleport;
|
||||
int nextFrameCameraCut;
|
||||
int frametime;
|
||||
int time;
|
||||
int physicsTime;
|
||||
int renderingThirdPerson;
|
||||
int hyperSpace;
|
||||
playerState_bt_t predictedPlayerState;
|
||||
int validPPS;
|
||||
int predictedErrorTime;
|
||||
vec3_t predictedError;
|
||||
int weaponCommand;
|
||||
int weaponCommandSend;
|
||||
vec3_t autoAngles;
|
||||
vec3_t autoAxis[3];
|
||||
vec3_t autoAnglesSlow;
|
||||
vec3_t autoAxisSlow[3];
|
||||
vec3_t autoAnglesFast;
|
||||
vec3_t autoAxisFast[3];
|
||||
refDef_t refdef;
|
||||
vec3_t playerHeadPos;
|
||||
vec3_t refdefViewAngles;
|
||||
vec3_t currentViewPos;
|
||||
vec3_t currentViewAngles;
|
||||
float currentViewHeight;
|
||||
float currentViewBobPhase;
|
||||
float currentViewBobAmp;
|
||||
int unk1;
|
||||
int unk2;
|
||||
int unk3;
|
||||
int unk4;
|
||||
dtiki_t* lastPlayerWorldModel;
|
||||
dtiki_t* playerFPSModel;
|
||||
int playerFPSModelHandle;
|
||||
qboolean fpsModelLastFrame;
|
||||
qboolean fpsOnGround;
|
||||
dtiki_t* alliedPlayerModel;
|
||||
int alliedPlayerModelHandle;
|
||||
dtiki_t* axisPlayerModel;
|
||||
int axisPlayerModelHandle;
|
||||
vec3_t offsetViewAngles;
|
||||
vec3_t lastHeadAngles;
|
||||
vec3_t lastViewAngles;
|
||||
vec3_t eyeOffsetMax;
|
||||
float eyeOffsetFrac;
|
||||
vec3_t soundOrg;
|
||||
vec3_t soundAxis[3];
|
||||
vec3_t cameraOrigin;
|
||||
vec3_t cameraAngles;
|
||||
float cameraFov;
|
||||
float zoomSensitivity;
|
||||
int intermissionDisplay;
|
||||
int scoresRequestTime;
|
||||
int showScores;
|
||||
char scoresMenuName[256];
|
||||
int instaMessageMenu;
|
||||
int centerPrintTime;
|
||||
int centerPrintCharWidth;
|
||||
int centerPrintY;
|
||||
char centerPrint[1024];
|
||||
int centerPrintLines;
|
||||
int matchStartTime;
|
||||
refEntity_t testModelEntity;
|
||||
char testModelName[MAX_QPATH];
|
||||
int testGun;
|
||||
float unk12;
|
||||
float farplaneDistance;
|
||||
float farplaneBias;
|
||||
float farplaneColor[3];
|
||||
int farplaneCull;
|
||||
int skyboxFarplane;
|
||||
qboolean renderTerrain;
|
||||
float farclipOverride;
|
||||
vec3_t farplaneColorOverride;
|
||||
int skyPortal;
|
||||
float skyAlpha;
|
||||
vec3_t skyOrigin;
|
||||
vec3_t skyAxis[3];
|
||||
int skyboxSpeed;
|
||||
vec2_t viewKick;
|
||||
float viewKickRecenter;
|
||||
float viewKickMinDecay;
|
||||
float viewKickMaxDecay;
|
||||
objective_t objectives[MAX_OBJECTIVES];
|
||||
float objectivesAlphaTime;
|
||||
float objectivesBaseAlpha;
|
||||
float objectivesDesiredAlpha;
|
||||
float objectivesCurrentAlpha;
|
||||
int currentObjective;
|
||||
rain_t rain;
|
||||
int unk14[16];
|
||||
clientInfo_t clientinfo[MAX_CLIENTS];
|
||||
|
||||
} cg_bt_t;
|
||||
|
||||
typedef struct clientSnapshot_s
|
||||
{
|
||||
int areabytes;
|
||||
|
@ -5572,11 +5869,6 @@ typedef struct {
|
|||
float maxs[3];
|
||||
} portalsky_t;
|
||||
|
||||
typedef struct {
|
||||
float transformed[3];
|
||||
int index;
|
||||
} sphere_dlight_t;
|
||||
|
||||
typedef struct msurface_s {
|
||||
int viewCount;
|
||||
int frameCount;
|
||||
|
@ -5721,6 +6013,28 @@ typedef struct refSprite_s {
|
|||
float shaderTime;
|
||||
} refSprite_t;
|
||||
|
||||
typedef struct {
|
||||
float width;
|
||||
float height;
|
||||
float origin_x;
|
||||
float origin_y;
|
||||
float scale;
|
||||
shader_t *shader;
|
||||
} sprite_t;
|
||||
|
||||
typedef enum { MOD_BAD, MOD_BRUSH, MOD_TIKI, MOD_SPRITE } modtype_t;
|
||||
typedef struct model_s {
|
||||
char name[128];
|
||||
modtype_t type;
|
||||
int index;
|
||||
qboolean serveronly;
|
||||
union {
|
||||
bmodel_t *bmodel;
|
||||
dtiki_t *tiki;
|
||||
sprite_t *sprite;
|
||||
} d;
|
||||
} model_t;
|
||||
|
||||
typedef struct {
|
||||
int x;
|
||||
int y;
|
||||
|
@ -6189,7 +6503,7 @@ typedef struct clientGameImport_s
|
|||
void ( *S_AddLoopingSound )( vec3_t origin, vec3_t velocity, sfxHandle_t sfxHandle, float volume, float minDist, float maxDist, float pitch, int flags );
|
||||
void ( *S_Respatialize )( int entityNum, vec3_t head, vec3_t axis[3] );
|
||||
void ( *S_BeginRegistration )( );
|
||||
sfxHandle_t ( *S_RegisterSound )( char *name, int streamed, qboolean forceLoad );
|
||||
sfxHandle_t ( *S_RegisterSound )( char *name, int streamed );
|
||||
void ( *S_EndRegistration )( );
|
||||
void ( *S_UpdateEntity )( int entityNum, vec3_t origin, vec3_t velocity, qboolean useListener );
|
||||
void ( *S_SetReverb )( int reverbType, float reverbLevel );
|
||||
|
@ -6302,6 +6616,188 @@ typedef struct clientGameImport_s
|
|||
|
||||
} clientGameImport_t;
|
||||
|
||||
typedef struct clientGameImport_bt_s
|
||||
{
|
||||
int apiVersion;
|
||||
|
||||
void (*Printf)(char* fmt, ...);
|
||||
void (*DPrintf)(char* fmt, ...);
|
||||
void (*DebugPrintf)(char* fmt, ...);
|
||||
void* (*Malloc)(int size);
|
||||
void (*Free)(void* ptr);
|
||||
void (*Error)(errorParm_t code, char* fmt, ...);
|
||||
int (*Milliseconds)();
|
||||
char* (*LV_ConvertString)(char* string);
|
||||
cvar_t* (*Cvar_Get)(const char* varName, const char* varValue, int varFlags);
|
||||
void (*Cvar_Set)(const char* varName, const char* varValue);
|
||||
int (*Argc)();
|
||||
char* (*Argv)(int arg);
|
||||
char* (*Args)();
|
||||
void (*AddCommand)(char* cmdName, xcommand_t cmdFunction);
|
||||
void (*Cmd_Stuff)(const char* text);
|
||||
void (*Cmd_Execute)(cbufExec_t execWhen, char* text);
|
||||
void (*Cmd_TokenizeString)(char* textIn);
|
||||
int (*FS_ReadFile)(char* qpath, void** buffer);
|
||||
void (*FS_FreeFile)(void* buffer);
|
||||
int (*FS_WriteFile)(char* qpath, void* buffer, int size);
|
||||
void (*FS_WriteTextFile)(char* qpath, void* buffer, int size);
|
||||
void (*FS_Unk1)();
|
||||
void (*FS_Unk2)();
|
||||
void (*SendConsoleCommand)(const char* text);
|
||||
int (*MSG_ReadBits)(int bits);
|
||||
int (*MSG_ReadChar)();
|
||||
int (*MSG_ReadByte)();
|
||||
int (*MSG_ReadSVC)();
|
||||
int (*MSG_ReadShort)();
|
||||
int (*MSG_ReadLong)();
|
||||
float (*MSG_ReadFloat)();
|
||||
char* (*MSG_ReadString)();
|
||||
char* (*MSG_ReadStringLine)();
|
||||
float (*MSG_ReadAngle8)();
|
||||
float (*MSG_ReadAngle16)();
|
||||
void (*MSG_ReadData)(void* data, int len);
|
||||
float (*MSG_ReadCoord)();
|
||||
void (*MSG_ReadDir)(vec3_t dir);
|
||||
void (*SendClientCommand)(const char* text);
|
||||
void (*CM_LoadMap)(char* name);
|
||||
clipHandle_t(*CM_InlineModel)(int index);
|
||||
int (*CM_NumInlineModels)();
|
||||
int (*CM_PointContents)(vec3_t point, clipHandle_t model);
|
||||
int (*CM_TransformedPointContents)(vec3_t point, clipHandle_t model, vec3_t origin, vec3_t angles);
|
||||
void (*CM_BoxTrace)(trace_t* results, const vec3_t start, const vec3_t end, const vec3_t mins, const vec3_t maxs, int model, int brushMask, int cylinder);
|
||||
void (*CM_TransformedBoxTrace)(trace_t* results, vec3_t start, vec3_t end, vec3_t mins, vec3_t maxs, int model, int brushMask, vec3_t origin, vec3_t angles, int cylinder);
|
||||
clipHandle_t(*CM_TempBoxModel)(vec3_t mins, vec3_t maxs, int contents);
|
||||
void (*CM_PrintBSPFileSizes)();
|
||||
qboolean(*CM_LeafInPVS)(int leaf1, int leaf2);
|
||||
int (*CM_PointLeafnum)(vec3_t p);
|
||||
int (*R_MarkFragments)(int numPoints, vec3_t* points, vec3_t projection, int maxPoints, vec3_t pointBuffer, int maxFragments, markFragment_t* fragmentBuffer, float fRadiusSquared);
|
||||
int (*R_MarkFragmentsForInlineModel)(clipHandle_t bmodel, vec3_t vAngles, vec3_t vOrigin, int numPoints, vec3_t* points, vec3_t projection, int maxPoints, vec3_t pointBuffer, int maxFragments, markFragment_t* fragmentBuffer, float fRadiusSquared);
|
||||
void (*R_GetInlineModelBounds)(int index, vec3_t mins, vec3_t maxs);
|
||||
void (*R_GetLightingForDecal)(vec3_t light, vec3_t facing, vec3_t origin);
|
||||
void (*R_GetLightingForSmoke)(vec3_t light, vec3_t origin);
|
||||
int (*R_GatherLightSources)(vec3_t pos, vec3_t* lightPos, vec3_t* lightIntensity, int maxLights);
|
||||
void (*S_StartSound)(vec3_t origin, int entNum, int entChannel, sfxHandle_t sfxHandle, float volume, float minDist, float pitch, float maxDist, int streamed);
|
||||
void (*S_StartLocalSound)(char* soundName, qboolean forceLoad);
|
||||
void (*S_StopSound)(int entNum, int channel);
|
||||
void (*S_ClearLoopingSounds)();
|
||||
void (*S_AddLoopingSound)(vec3_t origin, vec3_t velocity, sfxHandle_t sfxHandle, float volume, float minDist, float maxDist, float pitch, int flags);
|
||||
void (*S_Respatialize)(int entityNum, vec3_t head, vec3_t axis[3]);
|
||||
void (*S_BeginRegistration)();
|
||||
sfxHandle_t(*S_RegisterSound)(char* name, int streamed, qboolean forceLoad);
|
||||
void (*S_EndRegistration)();
|
||||
void (*S_UpdateEntity)(int entityNum, vec3_t origin, vec3_t velocity, qboolean useListener);
|
||||
void (*S_SetReverb)(int reverbType, float reverbLevel);
|
||||
void (*S_SetGlobalAmbientVolumeLevel)(float volume);
|
||||
float (*S_GetSoundTime)(sfxHandle_t handle);
|
||||
int (*S_ChannelNameToNum)(char* name);
|
||||
char* (*S_ChannelNumToName)(int channel);
|
||||
int (*S_IsSoundPlaying)(int channelNumber, char* name);
|
||||
void (*MUSIC_NewSoundtrack)(char* name);
|
||||
void (*MUSIC_UpdateMood)(musicMood_t current, musicMood_t fallback);
|
||||
void (*MUSIC_UpdateVolume)(float volume, float fadeTime);
|
||||
float* (*get_camera_offset)(qboolean* lookActive, qboolean* resetView);
|
||||
void (*R_ClearScene)();
|
||||
void (*R_RenderScene)(refDef_t* fd);
|
||||
void (*R_LoadWorldMap)(char* name);
|
||||
void (*R_PrintBSPFileSizes)();
|
||||
int (*MapVersion)();
|
||||
int (*R_MapVersion)();
|
||||
qhandle_t(*R_RegisterModel)(char* name);
|
||||
qhandle_t(*R_SpawnEffectModel)(char* name, vec3_t pos, vec3_t axis[3]);
|
||||
qhandle_t(*R_RegisterServerModel)(char* name);
|
||||
void (*R_Unk1)();
|
||||
void (*R_UnregisterServerModel)(qhandle_t hModel);
|
||||
qhandle_t(*R_RegisterShader)(char* name);
|
||||
qhandle_t(*R_RegisterShaderNoMip)(char* name);
|
||||
void (*R_Unk2)();
|
||||
void (*R_AddRefEntityToScene)(refEntity_t* ent, int parentEntityNumber);
|
||||
void (*R_AddRefSpriteToScene)(refEntity_t* ent);
|
||||
void (*R_AddLightToScene)(vec3_t org, float intensity, float r, float g, float b, dlighttype_t type);
|
||||
qboolean(*R_AddPolyToScene)(qhandle_t hShader, int numVerts, polyVert_t* verts, int renderFx);
|
||||
void (*R_AddTerrainMarkToScene)(int terrainIndex, qhandle_t hShader, int numVerts, polyVert_t* verts, int renderFx);
|
||||
void (*R_SetColor)(vec4_t rgba);
|
||||
void (*R_DrawStretchPic)(float x, float y, float w, float h, float s1, float t1, float s2, float t2, qhandle_t hShader);
|
||||
fontheader_t* (*R_LoadFont)(const char* name);
|
||||
void (*R_DrawString)(fontheader_t* font, const char* text, float x, float y, int maxLen, qboolean virtualScreen);
|
||||
refEntity_t* (*R_GetRenderEntity)(int entityNumber);
|
||||
void (*R_ModelBounds)(clipHandle_t model, vec3_t mins, vec3_t maxs);
|
||||
float (*R_ModelRadius)(qhandle_t handle);
|
||||
float (*R_Noise)(float x, float y, float z, float t);
|
||||
void (*R_DebugLine)(const vec3_t start, const vec3_t end, float r, float g, float b, float alpha);
|
||||
baseShader_t* (*GetShader)(int shaderNum);
|
||||
void (*R_SwipeBegin)(float thistime, float life, qhandle_t shader);
|
||||
void (*R_SwipePoint)(vec3_t point1, vec3_t point2, float time);
|
||||
void (*R_SwipeEnd)();
|
||||
int (*R_GetShaderWidth)(qhandle_t hShader);
|
||||
int (*R_GetShaderHeight)(qhandle_t hShader);
|
||||
void (*R_DrawBox)(float x, float y, float w, float h);
|
||||
void (*GetGameState)(gameState_t* gameState);
|
||||
int (*GetSnapshot)(int snapshotNumber, snapshot_t* snapshot);
|
||||
int (*GetServerStartTime)();
|
||||
void (*SetTime)(float time);
|
||||
void (*GetCurrentSnapshotNumber)(int* snapshotNumber, int* serverTime);
|
||||
void (*GetGlconfig)(glConfig_t* glConfig);
|
||||
qboolean(*GetParseEntityState)(int parseEntityNumber, entityState_t* state);
|
||||
int (*GetCurrentCmdNumber)();
|
||||
qboolean(*GetUserCmd)(int cmdNumber, userCmd_t* userCmd);
|
||||
qboolean(*GetServerCommand)(int serverCommandNumber, qboolean differentServer);
|
||||
qboolean(*Alias_Add)(char* alias, char* name, char* parameters);
|
||||
qboolean(*Alias_ListAdd)(AliasList_t* list, char* alias, char* name, char* parameters);
|
||||
char* (*Alias_FindRandom)(char* alias, AliasListNode_t** ret);
|
||||
char* (*Alias_ListFindRandom)(AliasList_t* list, char* alias, AliasListNode_t** ret);
|
||||
void (*Alias_Dump)();
|
||||
void (*Alias_Clear)();
|
||||
AliasList_t* (*AliasList_New)(char* name);
|
||||
void (*Alias_ListFindRandomRange)(AliasList_t* list, char* alias, int* minIndex, int* maxIndex, float* totalWeight);
|
||||
AliasList_t* (*Alias_GetGlobalList)();
|
||||
void (*UI_ShowMenu)(char* name, qboolean bForce);
|
||||
void (*UI_HideMenu)(char* name, qboolean bForce);
|
||||
int (*UI_FontStringWidth)(fontheader_t* font, char* string, int maxLen);
|
||||
void (*Key_Unk1)();
|
||||
int (*Key_StringToKeynum)(char* str);
|
||||
char* (*Key_KeynumToBindString)(int keyNum);
|
||||
void (*Key_GetKeysForCommand)(char* command, int* key1, int* key2);
|
||||
float (*GetFontHeight)(fontheader_t* font);
|
||||
int (*TIKI_NumAnims)(dtiki_t* pmdl);
|
||||
void (*TIKI_CalculateBounds)(dtiki_t* pmdl, float scale, vec3_t mins, vec3_t maxs);
|
||||
char* (*TIKI_Name)(dtiki_t* tiki, int entNum);
|
||||
void* (*TIKI_GetSkeletor)(dtiki_t* tiki, int entNum);
|
||||
void (*TIKI_SetEyeTargetPos)(dtiki_t* tiki, int entNum, vec3_t pos);
|
||||
char* (*Anim_NameForNum)(dtiki_t* tiki, int animNum);
|
||||
int (*Anim_NumForName)(dtiki_t* tiki, char* name);
|
||||
int (*Anim_Random)(dtiki_t* tiki, char* name);
|
||||
int (*Anim_NumFrames)(dtiki_t* tiki, int animNum);
|
||||
float (*Anim_Time)(dtiki_t* tiki, int animNum);
|
||||
float (*Anim_Frametime)(dtiki_t* tiki, int animNum);
|
||||
void (*Anim_Delta)(dtiki_t* tiki, int animNum, vec3_t delta);
|
||||
int (*Anim_Flags)(dtiki_t* tiki, int animNum);
|
||||
int (*Anim_FlagsSkel)(dtiki_t* tiki, int animNum);
|
||||
float (*Anim_CrossblendTime)(dtiki_t* tiki, int animNum);
|
||||
qboolean(*Anim_HasCommands)(dtiki_t* tiki, int animNum);
|
||||
qboolean(*Frame_Commands)(dtiki_t* tiki, int animNum, int frameNum, dtikicmd_t* tikiCmds);
|
||||
qboolean(*Frame_CommandsTime)(dtiki_t* pmdl, int animNum, float start, float end, dtikicmd_t* tikiCmd);
|
||||
int (*Surface_NameToNum)(dtiki_t* pmdl, const char* name);
|
||||
int (*Tag_NumForName)(dtiki_t* pmdl, const char* name);
|
||||
char* (*Tag_NameForNum)(dtiki_t* pmdl, int animNum);
|
||||
void (*ForceUpdatePose)(refEntity_t* model);
|
||||
orientation_t* (*TIKI_Orientation)(orientation_t* orientation, refEntity_t* model, int tagNum);
|
||||
qboolean (*TIKI_IsOnGround)(refEntity_t* model, int tagNum, float threshold);
|
||||
void (*UI_ShowScoreBoard)(const char* menuName);
|
||||
void (*UI_HideScoreBoard)();
|
||||
void (*UI_SetScoreBoardItem)(int itemNumber, char* data1, char* data2, char* data3, char* data4, char* data5, char* data6, char* data7, char* data8, float* textColor, float* backColor, qboolean isHeader);
|
||||
void (*UI_DeleteScoreBoardItems)(int maxIndex);
|
||||
void (*UI_ToggleDMMessageConsole)(int consoleMode);
|
||||
dtiki_t* (*TIKI_FindTiki)(char* path);
|
||||
void (*LoadResource)(char* name);
|
||||
void (*FS_CanonicalFilename)(char* name);
|
||||
|
||||
cvar_t* fsDebug;
|
||||
hdElement_t* hudDrawElements;
|
||||
clientAnim_t* anim;
|
||||
stopWatch_t* stopWatch;
|
||||
|
||||
} clientGameImport_bt_t;
|
||||
|
||||
typedef struct clientGameExport_s
|
||||
{
|
||||
void ( *CG_Init )( clientGameImport_t *imported, int serverMessageNum, int serverCommandSequence, int clientNum );
|
||||
|
@ -7001,29 +7497,6 @@ typedef struct Player_s
|
|||
int un1[20];
|
||||
} Player;
|
||||
|
||||
|
||||
typedef struct {
|
||||
float width;
|
||||
float height;
|
||||
float origin_x;
|
||||
float origin_y;
|
||||
float scale;
|
||||
shader_t *shader;
|
||||
} sprite_t;
|
||||
|
||||
typedef enum { MOD_BAD, MOD_BRUSH, MOD_TIKI, MOD_SPRITE } modtype_t;
|
||||
typedef struct model_s {
|
||||
char name[128];
|
||||
modtype_t type;
|
||||
int index;
|
||||
qboolean serveronly;
|
||||
union {
|
||||
bmodel_t *bmodel;
|
||||
dtiki_t *tiki;
|
||||
sprite_t *sprite;
|
||||
} d;
|
||||
} model_t;
|
||||
|
||||
typedef union sval_u {
|
||||
int type;
|
||||
char *stringValue;
|
||||
|
@ -8451,3 +8924,75 @@ typedef struct AliasList_s
|
|||
AliasListNode_t ** sorted_list;
|
||||
AliasListNode_t * data_list;
|
||||
} AliasList_t;
|
||||
|
||||
//===== Gamespy =====
|
||||
|
||||
typedef int GError;
|
||||
typedef int gbool;
|
||||
|
||||
struct DArrayImplementation {
|
||||
int count;
|
||||
int capacity;
|
||||
int elemsize;
|
||||
int growby;
|
||||
void (*elemfreefn) (/* unknown */);
|
||||
void *list;
|
||||
};
|
||||
|
||||
typedef DArrayImplementation *DArray;
|
||||
|
||||
struct HashImplementation {
|
||||
DArray *buckets;
|
||||
int nbuckets;
|
||||
void (*freefn) (/* unknown */);
|
||||
int (*hashfn) (/* unknown */);
|
||||
int (*compfn) (/* unknown */);
|
||||
};
|
||||
|
||||
typedef HashImplementation *HashTable;
|
||||
|
||||
typedef enum { sl_idle, sl_listxfer, sl_lanlist, sl_querying } GServerListState;
|
||||
typedef enum { cm_int, cm_float, cm_strcase, cm_stricase } GCompareMode;
|
||||
typedef enum { qt_basic, qt_info, qt_rules, qt_players, qt_info_rules, qt_status, qt_grouprooms, qt_masterinfo } GQueryType;
|
||||
typedef enum { pi_fieldcount, pi_fields, pi_servers } GParseInfoState;
|
||||
typedef void (*ListCallBackFn) (/* unknown */);
|
||||
typedef void (*KeyEnumFn) (/* unknown */);
|
||||
|
||||
typedef struct GServerImplementation {
|
||||
long unsigned int ip;
|
||||
short unsigned int port;
|
||||
short int ping;
|
||||
GQueryType querytype;
|
||||
struct HashImplementation *keyvals;
|
||||
struct HashImplementation *keylist;
|
||||
} *GServer;
|
||||
|
||||
typedef struct {
|
||||
int s;
|
||||
GServer currentserver;
|
||||
long unsigned int starttime;
|
||||
struct sockaddr_in saddr;
|
||||
} UpdateInfo;
|
||||
|
||||
typedef struct {
|
||||
GServerListState state;
|
||||
DArray servers;
|
||||
UpdateInfo *updatelist;
|
||||
char gamename[32];
|
||||
char seckey[32];
|
||||
char enginename[32];
|
||||
int maxupdates;
|
||||
int nextupdate;
|
||||
int abortupdate;
|
||||
ListCallBackFn CallBackFn;
|
||||
void *instance;
|
||||
char *sortkey;
|
||||
gbool sortascending;
|
||||
int slsocket;
|
||||
long unsigned int lanstarttime;
|
||||
GQueryType querytype;
|
||||
HashTable keylist;
|
||||
GParseInfoState pistate;
|
||||
} GServerListImplementation;
|
||||
|
||||
typedef GServerListImplementation *GServerList;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue