Restart [Round/Game] with respawn
#1
Es casi (yo creo que es igual Are you fucking kidding me? ) al restart round de AM(eng)

lo hice desde 0 basandome en como es ^_^
Código PHP:
#include <amxmodx>
#include <dhudmessage>

#define PLUGIN    "Restart Game"
#define AUTHOR    "AUTHOR"
#define VERSION    "1.0"

#define TASK_ID 2541

new g_conteo
new g_pcvar_restart_time

public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_event("TextMsg","round_start","a","2&#Game_C")
    
g_pcvar_restart_time register_cvar("amx_restart_time" "20")
}
public 
round_start()
{
    
g_conteo get_pcvar_num(g_pcvar_restart_time)
    
remove_task(TASK_ID)
    
set_task(1.0"func_conteo"TASK_ID__"b")
    
server_cmd("sv_restart %i"g_conteo)
    
}

public 
plugin_precache()
{
    
precache_sound("restart/round_begins_in.wav")
    
precache_sound("restart/prepare.wav")
    
precache_sound("restart/1.wav")
    
precache_sound("restart/2.wav")
    
precache_sound("restart/3.wav")
    
precache_sound("restart/fight.wav")
}

public 
func_conteo()
{
    new 
players[32]
    static 
num
    
new iPlayers
    
    get_players
(playersnum"e")
    for(new 
1numi++)
    {
        if(!
is_user_connected(players[i]) || is_user_bot(players[i])) continue;
        
        
iPlayers players[i]
        break
    }
    
    
g_conteo --
    
    
set_dhudmessage(255255255, -1.0, -1.000.00.850.10.1)
    
    if(
g_conteo)
    {
        
show_dhudmessage(iPlayers"EMPEZANDO PARTIDA: %i"g_conteo);
        switch(
g_conteo)
        {
            case 
9client_cmd(iPlayers"spk restart/prepare.wav")
            
            case 
5client_cmd(iPlayers"spk restart/round_begins_in.wav")
            
            case 
1..3 client_cmd(iPlayers"spk restart/%i.wav"g_conteo)
        }
    }
    else
    {
        
show_dhudmessage(iPlayers"FIGHT");
        
client_cmd(iPlayers"spk restart/fight.wav")
        
remove_task(TASK_ID)
    }


Con respawn
1.0
Código PHP:
#include <amxmodx>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN    "Restart Game"
#define AUTHOR    "AUTHOR"
#define VERSION    "1.2"

#define TASK_ID 2541

new g_conteo
new g_pcvar_restart_time
new iPlayers

public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_event("TextMsg","round_start","a","2&#Game_C")
    
register_clcmd("joinclass""task_in")
    
RegisterHam(Ham_Killed"player""task_in"1)
    
g_pcvar_restart_time register_cvar("amx_restart_time" "20")
}
public 
round_start()
{
    
g_conteo get_pcvar_num(g_pcvar_restart_time)
    
remove_task(TASK_ID)
    
set_task(1.0"func_conteo"TASK_ID__"b")
    
server_cmd("sv_restart %i"g_conteo)
}

public 
plugin_precache()
{
    
precache_sound("restart/round_begins_in.wav")
    
precache_sound("restart/prepare.wav")
    
precache_sound("restart/1.wav")
    
precache_sound("restart/2.wav")
    
precache_sound("restart/3.wav")
    
precache_sound("restart/fight.wav")
}

public 
func_conteo()
{
    new 
players[32]
    static 
num
    
    get_players
(playersnum"e")
    for(new 
1numi++)
    {
        if(!
is_user_connected(players[i]) || is_user_bot(players[i])) continue;
        
        
iPlayers players[i]
        break
    }
    
    
g_conteo --
    
    
set_dhudmessage(255255255, -1.0, -1.000.00.850.10.1)
    
    if(
g_conteo)
    {
        
show_dhudmessage(iPlayers"EMPEZANDO PARTIDA: %i"g_conteo);
        switch(
g_conteo)
        {
            case 
9client_cmd(iPlayers"spk restart/prepare.wav")
            
            case 
5client_cmd(iPlayers"spk restart/round_begins_in.wav")
            
            case 
1..3 client_cmd(iPlayers"spk restart/%i.wav"g_conteo)
        }
    }
    else
    {
        
show_dhudmessage(iPlayers"FIGHT");
        
client_cmd(iPlayers"spk restart/fight.wav")
        
remove_task(TASK_ID)
    }
}
public 
task_in(id)
{
    if(
g_conteo)
        
set_task(2.0"hm_respawn"id)
}
public 
hm_respawn(id)
{
    if(
g_conteo)
    {
        
ExecuteHamB(Ham_CS_RoundRespawnid)
    }

2.0
Código PHP:
#include <amxmodx>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN    "Restart Game"
#define AUTHOR    "Sugisaki"
#define VERSION    "2.0"

#define TASK_ID 2541

#define ROUND_BEGING 0
#define ONE 1
#define TWO 2
#define THREE 3
#define FIGHT 4
#define PREPARE 5

/* 
 * Remueve la linea "#define WITH_SOUND" ( osea linea 23 ) o agregale "//" al principio (//#define WITH_SOUND) 
 * para quitar los sonido, de lo contrario deja como esta
*/

#define WITH_SOUND

new g_count
new const g_cvar[] = "amx_restart_time"
#if defined WITH_SOUND
new const g_sound[][] =
{
    
"restart/round_begins_in.wav",
    
"restart/1.wav",
    
"restart/2.wav",
    
"restart/3.wav",
    
"restart/fight.wav",
    
"restart/prepare.wav"
}

public 
PlaySound(const sound[])
{
    
client_cmd(0"spk ^"%s^""sound)
}
#endif
public plugin_init() 
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_cvar(g_cvar"20")
    
register_event("TextMsg","round_start","a","2&#Game_C")
}
#if defined WITH_SOUND
public plugin_precache()
{
    for(new 
sizeof g_sound i++)
        
precache_sound(g_sound[i])
}
#endif
public round_start()
{
    if(
task_exists(TASK_ID)) remove_task(TASK_ID)
    
g_count get_cvar_num(g_cvar)
    
set_task(1.0"func_conteo"TASK_ID__"b")
    
server_cmd("sv_restart %i"g_count)
}

public 
respawn(id)
{
    if(
g_count)
        
ExecuteHamB(Ham_CS_RoundRespawnid)
}

public 
func_conteo()
{
    
g_count --
    
    new 
players[32], count
    get_players
(playerscount"bh")
    for ( new 
count i++ )
    {
        new 
id players[i]
        if(!
is_user_connected(id)) continue
        if( !
is_user_alive(id) && ( get_user_team(id) == ||  get_user_team(id) == ) )
            
respawn(id)
    }
    
set_dhudmessage(255255255, -1.0, -1.000.00.850.10.1)
    if(
g_count)
    {
        
show_dhudmessage(0"EMPEZANDO PARTIDA: %i"g_count)
        
#if defined WITH_SOUND
        
switch(g_count)
        {
            case 
PlaySound(g_sound[PREPARE])
            case 
PlaySound(g_sound[ROUND_BEGING])
            case 
PlaySound(g_sound[THREE])
            case 
PlaySound(g_sound[TWO])
            case 
PlaySound(g_sound[ONE])
        }
        
#endif
    
}
    else
    {
        
show_dhudmessage(0"FIGHT")
        
#if defined WITH_SOUND
        
PlaySound(g_sound[FIGHT])
        
#endif
        
remove_task(TASK_ID)
    }


practicamente lo que estoy aportando son los sonidos que estan abajo y mediante de este code como emplearlos ^_^

PD: No critiquen para mal

Sonidos estan adjuntos

una PD: creo que el cs tiene un bug, si pones en client_cmd "spk new_restart/sonido.wav" te sale un error: Server tried to send invalid command "spk new_restart/sonido.wav"

que cosas no?


Archivos adjuntos
.zip   restart.zip (Tamaño: 104.95 KB / Descargas: 240)
Competitive/Face it Pick Up Game (PUG) servidor de prueba: 45.77.94.109:27016 Click para Entrar
[Imagen: b_350_20_5A6C3E_383F2D_D2E1B5_2E3226.png]

(14/08/2015, 10:15 PM)Sugisaki escribió: "El mundo es caotico, irracional e injusto. No tiene ningun significado"
Palabras que desde hace mucho tiempo he buscado para describir, ¿Que es el mundo?
Crab

Código PHP:
if(ayuda && free)
{
    exit();

Responder
#2
Pequeño UPDATED!!!
Fix No respawn
Thanks "PepeArgento"
Competitive/Face it Pick Up Game (PUG) servidor de prueba: 45.77.94.109:27016 Click para Entrar
[Imagen: b_350_20_5A6C3E_383F2D_D2E1B5_2E3226.png]

(14/08/2015, 10:15 PM)Sugisaki escribió: "El mundo es caotico, irracional e injusto. No tiene ningun significado"
Palabras que desde hace mucho tiempo he buscado para describir, ¿Que es el mundo?
Crab

Código PHP:
if(ayuda && free)
{
    exit();

Responder
#3
Gracias a vos.. me gusta este autorestart. Voy a cambiarle los sound por los de valve.

Saludos.
Responder
#4
Ayuda el Restart con el respawn no me sirve.  Cutecry
Responder
#5
(27/01/2021, 07:44 PM)Xavi. escribió: Ayuda el Restart con el respawn no me sirve.  Cutecry

Explica porque no te sirve...
Responder
#6
(27/01/2021, 10:47 PM)Chema escribió: Explica porque no te sirve...

Me lanza un error, dentro un rato le envio el error que me sale
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)