]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - progsvm.h
more warnings fixed
[xonotic/darkplaces.git] / progsvm.h
index e389f0f0516203f212daed08234b817db9c6eed3..c977d7ab6b05e097fef515c757ebb4f7f54a8d86 100644 (file)
--- a/progsvm.h
+++ b/progsvm.h
@@ -261,6 +261,8 @@ typedef struct prvm_prog_s
        int                                     edict_size;                     // in bytes
        int                                     edictareasize;          // LordHavoc: in bytes (for bound checking)
 
+       int                                     *statement_linenums; // NULL if not available
+
        union {
                float *generic;
                globalvars_t *server;
@@ -268,7 +270,12 @@ typedef struct prvm_prog_s
 
        int                                     maxknownstrings;
        int                                     numknownstrings;
+       // this is updated whenever a string is removed or added
+       // (simple optimization of the free string search)
+       int                                     firstfreeknownstring;
        const char                      **knownstrings;
+       qbyte                           *knownstrings_freeable;
+       const char                      ***stringshash;
 
        // all memory allocations related to this vm_prog (code, edicts, strings)
        mempool_t                       *progs_mempool; // [INIT]
@@ -321,6 +328,10 @@ typedef struct prvm_prog_s
        float                           *time;
        float                           _time;
 
+       // allow writing to world entity fields, this is set by server init and
+       // cleared before first server frame
+       qboolean                        allowworldwrites;
+
        // name of the prog, e.g. "Server", "Client" or "Menu" (used for text output)
        char                            *name; // [INIT]
 
@@ -477,9 +488,8 @@ void PRVM_ED_PrintEdicts_f (void);
 void PRVM_ED_PrintNum (int ent);
 
 const char *PRVM_GetString(int num);
-int PRVM_SetQCString(const char *s);
 int PRVM_SetEngineString(const char *s);
-int PRVM_AllocString(int bufferlength, char **pointer);
+int PRVM_AllocString(size_t bufferlength, char **pointer);
 void PRVM_FreeString(int num);
 
 //============================================================================