// make sure no one gets wrong ideas
prog->globals.client->self = 0;
PRVM_ExecuteProgram(prog->funcoffsets.CSQC_Ent_Spawn, "QC function CSQC_Ent_Spawn is missing");
- entnum = PRVM_G_INT(OFS_RETURN);
- PRVM_CHECKEDICTNUM(entnum);
- cl.csqc_server2csqcentitynumber[realentnum] = entnum;
+ cl.csqc_server2csqcentitynumber[realentnum] = PRVM_EDICT( PRVM_G_INT( OFS_RETURN ) );
}
}
else {
void PRVM_ED_LoadFromFile (const char *data);
-prvm_edict_t *PRVM_EDICT_NUM_ERROR(unsigned int n, char *filename, int fileline);
-#define PRVM_CHECKEDICTNUM(n) (((unsigned)(n) < (unsigned int)prog->max_edicts) ? NULL : PRVM_EDICT_NUM_ERROR((n), __FILE__, __LINE__))
-#define PRVM_EDICT_NUM(n) (PRVM_CHECKEDICTNUM(n), prog->edicts + (n))
+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))
}
// LordHavoc: turned PRVM_EDICT_NUM into a #define for speed reasons
-prvm_edict_t *PRVM_EDICT_NUM_ERROR(unsigned int n, char *filename, int fileline)
+unsigned int PRVM_EDICT_NUM_ERROR(unsigned int n, char *filename, int fileline)
{
PRVM_ERROR ("PRVM_EDICT_NUM: %s: bad number %i (called at %s:%i)", PRVM_NAME, n, filename, fileline);
- return NULL;
+ return 0;
}
/*