Auto Demo Recorder
#1
Saludos, he notado que muchos vienen por aquí a solicitar un AutoDemo para pug. Aquí les vengo a dejar este pequeño aporte. Lo consegui y le hice unos pequeños ajustes, ya que tenia varios problemitas.

Espero logre sacar de apuros a cualquiera que lo necesite.

Graba la demo con nombre, nombre del mapa y hora.

Fuente:
https://forums.alliedmods.net/showthread.php?p=770786

Código PHP:
/****************************************/
/* */
/* Auto Demo Recorder */
/* by IzI */
/* */
/****************************************/

#include <amxmodx>
#pragma semicolon 1

new g_Toggleg_DModg_UseNIg_RStartAfterg_DemoNameg_DemoNamePrefix;
new 
g_mapname[32];

public 
plugin_init() { 
 
register_plugin"Auto Demo Recorder""1.5""IzI" );
 
g_Toggle register_cvar"amx_demo""1" );
 
g_DMod register_cvar"amx_demo_mode""0" );
 
g_UseNI register_cvar"amx_demo_steamid""0" );
 
g_RStartAfter register_cvar"amx_demo_rectime""5" ); // If it is less than 5, it will automatically set to 5, but willn't apply the changes to the console. I recoment to use default settings.
 
g_DemoName register_cvar"amx_demo_name""AMXX" );
 
g_DemoNamePrefix register_cvar"amx_demo_prefix""AMXX" );
 
//register_dictionary( "demorecorder.txt" );
 
get_mapname(g_mapnamecharsmax(g_mapname));
}

public 
client_putinserverid ) {
 if( 
get_pcvar_numg_Toggle ) ) {
 new 
Float:delay get_pcvar_floatg_RStartAfter );
 if( 
delay )
 
set_pcvar_floatg_RStartAfter, ( delay 5.0 ) );
 
set_taskdelay"Record"id );
 }
}

public 
Recordid ) {
 if( !
is_user_connectedid ) || get_pcvar_numg_Toggle ) != )
 return;

 
// Getting time, client SteamID, server's name, server's ip with port.
 
new szSName[128], szINamePrefix[64], szTimedata[9];
 new 
iUseIN get_pcvar_numg_UseNI );
 new 
iDMod get_pcvar_numg_DMod );
 
get_pcvar_stringg_DemoNamePrefixszINamePrefix63 );
 
get_time "%H-%M-%S"szTimedata);

 switch( 
iDMod ) {
 case 
0get_pcvar_stringg_DemoNameszSName127 );
 case 
1get_user_ip0szSName127);
 case 
2get_user_name0szSName127 );
 }

 if( 
iUseIN ) {
 new 
szCID[32];
 
get_user_authididszCID31 );
 
formatszSName127"[%s]%s_%s"szCIDszSNameszTimedata);
 }

 
// Replacing signs.
 
replace_allszSName127":""_" );
 
replace_allszSName127".""_" );
 
replace_allszSName127"*""_" );
 
replace_allszSName127"/""_" );
 
replace_allszSName127"|""_" );
 
replace_allszSName127"\", "_" );
 replace_all( szSName, 127, "
?", "_" );
 replace_all( szSName, 127, "
>", "_" );
 replace_all( szSName, 127, "
<", "_" );
 replace_all( szSName, 127, " ", "
_" );

 // Displaying messages.
 client_cmd( id, "
stoprecord ^"%s_%s_%s^"", szSName, g_mapname, szTimedata );
 client_print_color( id, print_chat, "
^4[%s]^3 AutoDemo:^^"%s_%s_%s.dem^"", szINamePrefix, szSName, g_mapname, szTimedata );

Responder
#2
Agregá la fuente de dónde sacaste el código.
Responder
#3
(15/03/2021, 05:09 AM)Ballers escribió: Agregá la fuente de dónde sacaste el código.

Listo amigo.
Responder
#4
te reemplaza la demo si mandas el mismo mapa?
Responder
#5
(16/03/2021, 01:15 AM)polisha escribió: te reemplaza la demo  si mandas el mismo mapa?
pd: me pasas el include? no me compila

no te reemplazara nada y que include solo esta el #include <amxmodx> y ese lo trae por default que error te sale al compilar
Pawn Básico no critiquen xD  Approved

Responder
#6
(16/03/2021, 01:32 AM)Meliodas escribió: no te reemplazara nada y que include solo esta el #include <amxmodx> y ese lo trae por default que error te sale al compilar

gracias por responderme ya lo pude solucionar, cambie la linea que dice client_print_color
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)