]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - progsvm.h
some const fixes and type fixes found by gcc -combine
[xonotic/darkplaces.git] / progsvm.h
index 8b412bca46dce777fd92476068d0fdaac2bd7e60..cf200b197129e8566597254b551c94912657b181 100644 (file)
--- a/progsvm.h
+++ b/progsvm.h
@@ -192,8 +192,9 @@ typedef struct prvm_prog_fieldoffsets_s
        int message; // csqc
        int modelflags; // ssqc
        int movement; // ssqc
-       int nextthink; // common - used by OP_STATE
+       int movetypesteplandevent; // ssqc
        int netaddress; // ssqc
+       int nextthink; // common - used by OP_STATE
        int nodrawtoclient; // ssqc
        int pflags; // ssqc
        int ping; // ssqc
@@ -249,6 +250,7 @@ typedef struct prvm_prog_globaloffsets_s
        int dmg_origin; // csqc
        int sb_showscores; // csqc
        int drawfont; // csqc / menu
+       int require_spawnfunc_prefix; // ssqc
 }
 prvm_prog_globaloffsets_t;
 
@@ -258,6 +260,7 @@ typedef struct prvm_prog_funcoffsets_s
 {
        func_t CSQC_ConsoleCommand; // csqc
        func_t CSQC_Ent_Remove; // csqc
+       func_t CSQC_Ent_Spawn; // csqc DP_CSQC_ENT_SPAWN extension (BlackHC - TODO: needs to be added to dpextensions.qc)
        func_t CSQC_Ent_Update; // csqc
        func_t CSQC_Event; // csqc [515]: engine call this for its own needs so csqc can do some things according to what engine it's running on.  example: to say about edicts increase, whatever...
        func_t CSQC_Event_Sound; // csqc : called by engine when an incoming sound packet arrives so CSQC can act on it
@@ -269,6 +272,7 @@ typedef struct prvm_prog_funcoffsets_s
        func_t CSQC_Parse_TempEntity; // csqc [515]: very helpfull when you want to create your own particles/decals/etc for effects that already exist
        func_t CSQC_Shutdown; // csqc
        func_t CSQC_UpdateView; // csqc
+       func_t Gecko_Query; // csqc, mqc
        func_t EndFrame; // ssqc
        func_t RestoreGame; // ssqc
        func_t SV_ChangeTeam; // ssqc
@@ -276,6 +280,7 @@ typedef struct prvm_prog_funcoffsets_s
        func_t SV_PlayerPhysics; // ssqc
        func_t SV_OnEntityNoSpawnFunction; // ssqc
        func_t GameCommand; // any
+       func_t SV_Shutdown; // ssqc
 
        // menu qc only uses some functions, nothing else
        func_t m_draw; // mqc
@@ -352,6 +357,7 @@ typedef struct prvm_prog_s
        int                                     localstack_used;
 
        unsigned short          headercrc; // [INIT]
+       unsigned short          headercrc2; // [INIT] alternate CRC for tenebrae progs.dat
 
        unsigned short          filecrc;
 
@@ -512,8 +518,9 @@ void PRVM_ED_ParseGlobals (const char *data);
 
 void PRVM_ED_LoadFromFile (const char *data);
 
-prvm_edict_t *PRVM_EDICT_NUM_ERROR(int n, char *filename, int fileline);
-#define        PRVM_EDICT_NUM(n) (((unsigned)(n) < (unsigned int)prog->max_edicts) ? prog->edicts + (n) : PRVM_EDICT_NUM_ERROR(n, __FILE__, __LINE__))
+unsigned int PRVM_EDICT_NUM_ERROR(unsigned int n, char *filename, int fileline);
+#define        PRVM_EDICT(n) (((unsigned)(n) < (unsigned int)prog->max_edicts) ? (unsigned int)(n) : PRVM_EDICT_NUM_ERROR((unsigned int)(n), __FILE__, __LINE__))
+#define        PRVM_EDICT_NUM(n) (prog->edicts + PRVM_EDICT(n))
 
 //int NUM_FOR_EDICT_ERROR(prvm_edict_t *e);
 #define PRVM_NUM_FOR_EDICT(e) ((int)((prvm_edict_t *)(e) - prog->edicts))