if(Cmd_Argc() != 2)
{
- Con_Print("prvm_edicts <program name>\n");
+ Con_Printf("prvm_edicts <program name>\n");
return;
}
if(Cmd_Argc() != 3)
{
- Con_Print("prvm_edict <program name> <edict number>\n");
+ Con_Printf("prvm_edict <program name> <edict number>\n");
return;
}
if(Cmd_Argc() != 2)
{
- Con_Print("prvm_count <program name>\n");
+ Con_Printf("prvm_count <program name>\n");
return;
}
}
//
-// immediately call spawn function, but only if there is a self global
+// immediately call spawn function, but only if there is a self global and a classname
//
if(prog->self && prog->flag & PRVM_FE_CLASSNAME)
{
void PRVM_ResetProg()
{
- mempool_t *t1, *t2, *t3;
+ /*mempool_t *t1, *t2, *t3;
t1 = prog->progs_mempool;
t2 = prog->edictstring_mempool;
Mem_EmptyPool(prog->progs_mempool);
Mem_EmptyPool(prog->edictstring_mempool);
- Mem_EmptyPool(prog->edicts_mempool);
+ Mem_EmptyPool(prog->edicts_mempool);*/
+ Mem_FreePool(&prog->progs_mempool);
+ Mem_FreePool(&prog->edictstring_mempool);
+ Mem_FreePool(&prog->edicts_mempool);
memset(prog,0,sizeof(prvm_prog_t));
- prog->time = &prog->_time;
+ /*prog->time = &prog->_time;
prog->progs_mempool = t1;
prog->edictstring_mempool = t2;
- prog->edicts_mempool = t3;
+ prog->edicts_mempool = t3;*/
PRVM_GCALL(reset_cmd)();
}
prog->flag |= PRVM_OP_STATE;
PRVM_GCALL(reset_cmd)();
+ PRVM_GCALL(init_cmd)();
// init mempools
PRVM_MEM_Alloc();
if(Cmd_Argc() != 2)
{
- Con_Print("prvm_fields <program name>\n");
+ Con_Printf("prvm_fields <program name>\n");
return;
}
}*/
if(Cmd_Argc () != 2)
{
- Con_Print ("prvm_globals <program name>\n");
+ Con_Printf("prvm_globals <program name>\n");
return;
}
prog = &prog_list[prognr];
+ if(prog->loaded)
+ PRVM_ResetProg();
+
memset(prog, 0, sizeof(prvm_prog_t));
prog->time = &prog->_time;
-
- PRVM_GCALL(init_cmd)();
}
int PRVM_GetProgNr()