X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=mvm_cmds.c;h=bc43c092af2d417427191e2461ec1d287ae15f55;hb=913039faa5b22651954fe10a148ff1e87e4b84fd;hp=6042843ff6ee1c17d5bc974c6532698652ab6c21;hpb=7552885ae0db4b06e323f60ad00e43274adcdd61;p=xonotic%2Fdarkplaces.git diff --git a/mvm_cmds.c b/mvm_cmds.c index 6042843f..bc43c092 100644 --- a/mvm_cmds.c +++ b/mvm_cmds.c @@ -24,6 +24,7 @@ char *vm_m_extensions = "DP_QC_FINDCHAIN_TOFIELD " "DP_QC_LOG " "DP_QC_RENDER_SCENE " +"DP_QC_SPRINTF " "DP_QC_STRFTIME " "DP_QC_STRINGBUFFERS " "DP_QC_STRINGBUFFERS_CVARLIST " @@ -193,9 +194,9 @@ void VM_M_getgamedirinfo(void) if(nr >= 0 && nr < fs_all_gamedirs_count) { if(item == 0) - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( fs_all_gamedirs[nr].name ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( fs_all_gamedirs[nr].name ); else if(item == 1) - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( fs_all_gamedirs[nr].description ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( fs_all_gamedirs[nr].description ); } } @@ -303,25 +304,25 @@ void VM_M_setserverlistmaskstring( void ) switch( field ) { case SLIF_CNAME: - strlcpy( mask->info.cname, PRVM_G_STRING( OFS_PARM2 ), sizeof(mask->info.cname) ); + strlcpy( mask->info.cname, str, sizeof(mask->info.cname) ); break; case SLIF_NAME: - strlcpy( mask->info.name, PRVM_G_STRING( OFS_PARM2 ), sizeof(mask->info.name) ); + strlcpy( mask->info.name, str, sizeof(mask->info.name) ); break; case SLIF_QCSTATUS: - strlcpy( mask->info.qcstatus, PRVM_G_STRING( OFS_PARM2 ), sizeof(mask->info.qcstatus) ); + strlcpy( mask->info.qcstatus, str, sizeof(mask->info.qcstatus) ); break; case SLIF_PLAYERS: - strlcpy( mask->info.players, PRVM_G_STRING( OFS_PARM2 ), sizeof(mask->info.players) ); + strlcpy( mask->info.players, str, sizeof(mask->info.players) ); break; case SLIF_MAP: - strlcpy( mask->info.map, PRVM_G_STRING( OFS_PARM2 ), sizeof(mask->info.map) ); + strlcpy( mask->info.map, str, sizeof(mask->info.map) ); break; case SLIF_MOD: - strlcpy( mask->info.mod, PRVM_G_STRING( OFS_PARM2 ), sizeof(mask->info.mod) ); + strlcpy( mask->info.mod, str, sizeof(mask->info.mod) ); break; case SLIF_GAME: - strlcpy( mask->info.game, PRVM_G_STRING( OFS_PARM2 ), sizeof(mask->info.game) ); + strlcpy( mask->info.game, str, sizeof(mask->info.game) ); break; default: VM_Warning( "VM_M_setserverlistmaskstring: Bad field number %i passed!\n", field ); @@ -435,35 +436,35 @@ void VM_M_getserverliststring(void) Con_Print("VM_M_getserverliststring: bad hostnr passed!\n"); return; } - cache = serverlist_viewlist[hostnr]; + cache = ServerList_GetViewEntry(hostnr); switch( (int) PRVM_G_FLOAT(OFS_PARM0) ) { case SLIF_CNAME: - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( cache->info.cname ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( cache->info.cname ); break; case SLIF_NAME: - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( cache->info.name ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( cache->info.name ); break; case SLIF_QCSTATUS: - PRVM_G_INT (OFS_RETURN ) = PRVM_SetEngineString (cache->info.qcstatus ); + PRVM_G_INT (OFS_RETURN ) = PRVM_SetTempString (cache->info.qcstatus ); break; case SLIF_PLAYERS: - PRVM_G_INT (OFS_RETURN ) = PRVM_SetEngineString (cache->info.players ); + PRVM_G_INT (OFS_RETURN ) = PRVM_SetTempString (cache->info.players ); break; case SLIF_GAME: - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( cache->info.game ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( cache->info.game ); break; case SLIF_MOD: - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( cache->info.mod ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( cache->info.mod ); break; case SLIF_MAP: - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( cache->info.map ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( cache->info.map ); break; // TODO remove this again case 1024: - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( cache->line1 ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( cache->line1 ); break; case 1025: - PRVM_G_INT( OFS_RETURN ) = PRVM_SetEngineString( cache->line2 ); + PRVM_G_INT( OFS_RETURN ) = PRVM_SetTempString( cache->line2 ); break; default: Con_Print("VM_M_getserverliststring: bad field number passed!\n"); @@ -493,7 +494,7 @@ void VM_M_getserverlistnumber(void) Con_Print("VM_M_getserverliststring: bad hostnr passed!\n"); return; } - cache = serverlist_viewlist[hostnr]; + cache = ServerList_GetViewEntry(hostnr); switch( (int) PRVM_G_FLOAT(OFS_PARM0) ) { case SLIF_MAXPLAYERS: PRVM_G_FLOAT( OFS_RETURN ) = cache->info.maxplayers; @@ -1406,6 +1407,7 @@ VM_M_addwantedserverlistkey, // #623 void addwantedhostcachekey(string key) VM_CL_getextresponse, // #624 string getextresponse(void) VM_netaddress_resolve, // #625 string netaddress_resolve(string, float) VM_M_getgamedirinfo, // #626 string getgamedirinfo(float n, float prop) +VM_sprintf, // #627 string sprintf(string format, ...) NULL };