No kill en ronda Autorestart PX
#1
Buenas noches!
Necesito que en el transcurso que funcione este plugin no se puedan matar!
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <fakemeta>
//#include <dhudmessage>

#define PLUGIN_NAME        "Auto Restart Px"
#define PLUGIN_VERSION    "Generationcs"
#define PLUGIN_AUTHOR    "Kiske"

const UNIT_SECOND = (<< 12);

new 
g_message_hud;
new 
g_unique;
new 
g_count;
new 
g_count_screens;
new 
g_count_final;
new 
g_finish;
new 
g_maxplayers;

new 
g_message_screenshake;
new 
g_message_screenfade;

public 
plugin_precache()
{
    
precache_sound("px/one.wav");
    
precache_sound("px/two.wav");
    
precache_sound("px/three.wav");
    
precache_sound("px/four.wav");
    
precache_sound("px/five.wav");
    
    
precache_sound("weapons/c4_explode1.wav");
    
    
precache_generic("sound/px/aafcri.mp3");
}

public 
plugin_init()
{
    
register_plugin(PLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR);
    
    
register_concmd("amx_rr_px""concmd_RockFinal");
    
    
g_message_screenshake get_user_msgid("ScreenShake");
    
g_message_screenfade get_user_msgid("ScreenFade");
    
    
g_message_hud CreateHudSyncObj();
    
    
g_maxplayers get_maxplayers();
}

public 
concmd_RockFinal(idlevelcid)
{
    if(!
cmd_access(idADMIN_LEVEL_Acid1))
        return 
PLUGIN_HANDLED;
    
    if(
g_unique)
    {
        
console_print(id"Solo se puede usar este comando una vez por mapa!");
        return 
PLUGIN_HANDLED;
    }
    
    
g_unique 1
    
    g_count 
30;
    
set_task(2.0"fn_Vale");
    
    new 
i;
    for(
1<= g_maxplayers; ++i)
    {
        if(!
is_user_connected(i))
            continue;
        
        
cs_set_user_money(i0);
        
        if(!
is_user_alive(i))
            continue;
        
        
strip_user_weapons(i);
    }
    
    return 
PLUGIN_HANDLED;
}

public 
fn_Vale()
{
    new 
sMsg[64];
    
    if(
g_count 5)
        
formatex(sMsgcharsmax(sMsg), "El juego comienza en %d segundos"g_count);
    else
    {
        new 
sSound[64];
        
        switch(
g_count)
        {
            case 
5:
            {
                
formatex(sSoundcharsmax(sSound), "px/five.wav");
                
                new 
i;
                for(
1<= g_maxplayers; ++i)
                {
                    if(!
is_user_connected(i))
                        continue;
                    
                    
message_begin(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                    
write_short(UNIT_SECOND 14);
                    
write_short(UNIT_SECOND 9);
                    
write_short(UNIT_SECOND 14);
                    
message_end();
                }
                
                for(
1<= g_maxplayers; ++i)
                {
                    if(!
is_user_connected(i))
                        continue;
                    
                    
ClearSyncHud(ig_message_hud);
                }
                
                
set_lights("i");
            }
            case 
4:
            {
                
formatex(sSoundcharsmax(sSound), "px/four.wav");
                
set_lights("g");
            }
            case 
3:
            {
                
formatex(sSoundcharsmax(sSound), "px/three.wav");
                
set_lights("e");
            }
            case 
2:
            {
                
formatex(sSoundcharsmax(sSound), "px/two.wav");
                
set_lights("c");
            }
            case 
1:
            {
                
formatex(sSoundcharsmax(sSound), "px/one.wav");
                
set_lights("a");
            }
            case 
0:
            {    
                
g_count 1;
                
                
set_task(3.0"fn_PlayMusic");
                
                return;
            }
        }
        
        
client_cmd(0"spk ^"%s^""sSound);
        
        
set_dhudmessage(2552550, -1.00.300.00.30.30.3);
        
show_dhudmessage(0"%d"g_count);
    }
    
    if(
g_count 5)
    {
        
set_hudmessage(2552550, -1.00.300.03.02.01.0, -1);
        
ShowSyncHudMsg(0g_message_hud"%s"sMsg);
    }
    
    --
g_count;
    
    
set_task(1.0"fn_Vale");
}

public 
fn_PlayMusic()
{
    if(
g_count == 5)
    {
        ++
g_count;
        
        
set_task(0.1"fn_PlayMusic");
        
        return;
    }
    
    new 
sSound[64];
    
    switch(
g_count)
    {
        case 
1formatex(sSoundcharsmax(sSound), "px/one.wav");
        case 
2formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 
3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 
4formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 
6:
        {
            
client_cmd(0"MP3Volume 2.0");
            
client_cmd(0"mp3 play ^"sound/px/aafcri.mp3^"");
            
            new 
i;
            for(
1<= g_maxplayers; ++i)
            {
                if(!
is_user_connected(i))
                    continue;
                
                
message_begin(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                
write_short(UNIT_SECOND 28);
                
write_short(UNIT_SECOND 18);
                
write_short(UNIT_SECOND 28);
                
message_end();
            }
            
            
g_count 1;
            
g_count_final 1;
            
            
set_task(0.1"fn_ChangeRender");
            
set_task(5.0"fn_ChangeNumber");
            
set_task(15.0"fn_ChangeScreens");
            
set_task(30.1"fn_Finish");
            
            return;
        }
    }
    
    
client_cmd(0"spk ^"%s^""sSound);
    
    ++
g_count;
    
    
set_task(0.3"fn_PlayMusic");
}

public 
fn_ChangeRender()
{
    if(
g_count == 60 || g_finish)
        return;

    static 
i;
    static 
Float:vecOrigin[3];
    
    for(
1<= g_maxplayers; ++i)
    {
        if((
g_count 2) == 0)
        {
            if(!
is_user_connected(i))
                continue;
            
            
message_begin(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            
write_short(UNIT_SECOND 9);
            
write_short(UNIT_SECOND 6);
            
write_short(UNIT_SECOND 9);
            
message_end();
            
            if(!
is_user_alive(i))
                continue;
            
            
entity_get_vector(iEV_VEC_originvecOrigin);
            
            
engfunc(EngFunc_MessageBeginMSG_PVSSVC_TEMPENTITYvecOrigin0);
            
write_byte(TE_DLIGHT);
            
engfunc(EngFunc_WriteCoordvecOrigin[0]);
            
engfunc(EngFunc_WriteCoordvecOrigin[1]);
            
engfunc(EngFunc_WriteCoordvecOrigin[2]);
            
write_byte(40);
            
write_byte(random_num(50250));
            
write_byte(random_num(50250));
            
write_byte(random_num(50250));
            
write_byte(50);
            
write_byte(10);
            
message_end();
        }
        
        if(!
is_user_alive(i))
            continue;
        
        
set_user_rendering(ikRenderFxGlowShellrandom_num(150250), random_num(150250), random_num(150250), kRenderNormal25);
    }
    
    ++
g_count;
    
    
set_task(0.5"fn_ChangeRender");
}

public 
fn_ChangeScreens()
{
    if(
g_count_screens == 75 || g_finish)
        return;
    
    static 
i;
    if((
g_count_screens 15) == 0)
    {
        for(
1<= g_maxplayers; ++i)
        {
            if(!
is_user_connected(i))
                continue;
            
            
message_begin(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            
write_short(UNIT_SECOND 28);
            
write_short(UNIT_SECOND 18);
            
write_short(UNIT_SECOND 28);
            
message_end();
        }
    }
    
    for(
1<= g_maxplayers; ++i)
    {
        if(!
is_user_connected(i))
            continue;
        
        
message_begin(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        
write_short(UNIT_SECOND*4);
        
write_short(UNIT_SECOND*4);
        
write_short(0x0000);
        
write_byte(random_num(100250));
        
write_byte(random_num(100250));
        
write_byte(random_num(100250));
        
write_byte(200);
        
message_end();
    }
    
    ++
g_count_screens;
    
    
set_task(0.2"fn_ChangeScreens");
}

public 
fn_Finish()
{
    
g_finish 1;
    
    
client_cmd(0"mp3 stop; stopsound");
    
    
client_cmd(0"spk weapons/c4_explode1.wav");
    
client_cmd(0"spk weapons/c4_explode1.wav");
    
    
set_lights("");
    
    new 
i;
    for(
1<= g_maxplayers; ++i)
    {
        if(!
is_user_connected(i))
            continue;
        
        
message_begin(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        
write_short(UNIT_SECOND*4);
        
write_short(UNIT_SECOND*4);
        
write_short(0x0000);
        
write_byte(255);
        
write_byte(255);
        
write_byte(25);
        
write_byte(255);
        
message_end();
        
        
set_user_rendering(i);
    }
    
    
set_task(0.3"fn_R");
    
set_task(2.0"fn_Restart3");
}

public 
fn_R()
    
server_cmd("sv_restart 1")

public 
fn_Restart3()
{
    
client_print(0print_chat"Bienvenidos a todos!");
    
client_print(0print_chat"Diviertete y Disfruta Nuestro Servidor.");
    
client_print(0print_chat"atte. UN SERVER PERFECTO");
}

public 
fn_ChangeNumber()
{
    if(
g_count_final == 6)
        return;
    
    new 
sSound[64];
    
    switch(
g_count_final)
    {
        case 
1formatex(sSoundcharsmax(sSound), "px/five.wav");
        case 
2formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 
3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 
4formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 
5formatex(sSoundcharsmax(sSound), "px/one.wav");
    }
    
    
client_cmd(0"spk ^"%s^""sSound);
    
    ++
g_count_final;
    
    
set_task(5.0"fn_ChangeNumber");

Responder
#2
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
//#include <dhudmessage>

#define PLUGIN_NAME        "Auto Restart Px"
#define PLUGIN_VERSION    "Generationcs"
#define PLUGIN_AUTHOR    "Kiske"

const UNIT_SECOND = (<< 12);

new 
bool:g_bIsRestart false
new g_message_hud;
new 
g_unique;
new 
g_count;
new 
g_count_screens;
new 
g_count_final;
new 
g_finish;
new 
g_maxplayers;

new 
g_message_screenshake;
new 
g_message_screenfade;

public 
plugin_precache()
{
    precache_sound("px/one.wav");
    precache_sound("px/two.wav");
    precache_sound("px/three.wav");
    precache_sound("px/four.wav");
    precache_sound("px/five.wav");
    
    precache_sound
("weapons/c4_explode1.wav");
    
    precache_generic
("sound/px/aafcri.mp3");
}

public 
plugin_init()
{
    register_plugin(PLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR);
    
    register_concmd
("amx_rr_px""concmd_RockFinal");
    
    g_message_screenshake 
get_user_msgid("ScreenShake");
    g_message_screenfade get_user_msgid("ScreenFade");
    
    g_message_hud 
CreateHudSyncObj();
    
    RegisterHam
(Ham_TakeDamage"player""fw_TakeDamage")
    
    g_maxplayers 
get_maxplayers();
}

public 
fw_TakeDamage(victiminflictorattackerFloat:damagedmg_type) {
 if(
g_bIsRestart) {
 return 
HAM_SUPERCEDE;
 }
 return 
HAM_IGNORED
}

public 
concmd_RockFinal(idlevelcid)
{
    if(!cmd_access(idADMIN_LEVEL_Acid1))
        return PLUGIN_HANDLED;
    
    
if(g_unique)
    {
        console_print(id"Solo se puede usar este comando una vez por mapa!");
        return PLUGIN_HANDLED;
    }
    
    g_unique 
1
    
    g_count 
30;
    set_task(2.0"fn_Vale");
    
    
new i;
    for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        cs_set_user_money
(i0);
        
        
if(!is_user_alive(i))
            continue;
        
        strip_user_weapons
(i);
    }
    
    g_bIsRestart 
true;
    
    
return PLUGIN_HANDLED;
}

public 
fn_Vale()
{
    new sMsg[64];
    
    
if(g_count 5)
        formatex(sMsgcharsmax(sMsg), "El juego comienza en %d segundos"g_count);
    else
    {
        new sSound[64];
        
        
switch(g_count)
        {
            case 5:
            {
                formatex(sSoundcharsmax(sSound), "px/five.wav");
                
                
new i;
                for(1<= g_maxplayers; ++i)
                {
                    if(!is_user_connected(i))
                        continue;
                    
                    message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                    write_short(UNIT_SECOND 14);
                    write_short(UNIT_SECOND 9);
                    write_short(UNIT_SECOND 14);
                    message_end();
                }
                
                
for(1<= g_maxplayers; ++i)
                {
                    if(!is_user_connected(i))
                        continue;
                    
                    ClearSyncHud
(ig_message_hud);
                }
                
                set_lights
("i");
            }
            case 4:
            {
                formatex(sSoundcharsmax(sSound), "px/four.wav");
                set_lights("g");
            }
            case 3:
            {
                formatex(sSoundcharsmax(sSound), "px/three.wav");
                set_lights("e");
            }
            case 2:
            {
                formatex(sSoundcharsmax(sSound), "px/two.wav");
                set_lights("c");
            }
            case 1:
            {
                formatex(sSoundcharsmax(sSound), "px/one.wav");
                set_lights("a");
            }
            case 0:
            {    
                g_count 
1;
                
                set_task
(3.0"fn_PlayMusic");
                
                
return;
            }
        }
        
        client_cmd
(0"spk ^"%s^""sSound);
        
        set_dhudmessage
(2552550, -1.00.300.00.30.30.3);
        show_dhudmessage(0"%d"g_count);
    }
    
    
if(g_count 5)
    {
        set_hudmessage(2552550, -1.00.300.03.02.01.0, -1);
        ShowSyncHudMsg(0g_message_hud"%s"sMsg);
    }
    
    
--g_count;
    
    set_task
(1.0"fn_Vale");
}

public 
fn_PlayMusic()
{
    /*if(g_count == 5)
    {
        ++g_count;
        
        set_task(0.1, "fn_PlayMusic");
        
        return;
    }*/
    
    
new sSound[64];
    
    
switch(g_count)
    {
        case 1formatex(sSoundcharsmax(sSound), "px/one.wav");
        case 2formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 4formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 6:
        {
            client_cmd(0"MP3Volume 2.0");
            client_cmd(0"mp3 play ^"sound/px/aafcri.mp3^"");
            
            
new i;
            for(1<= g_maxplayers; ++i)
            {
                if(!is_user_connected(i))
                    continue;
                
                message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                write_short(UNIT_SECOND 28);
                write_short(UNIT_SECOND 18);
                write_short(UNIT_SECOND 28);
                message_end();
            }
            
            g_count 
1;
            g_count_final 1;
            
            set_task
(0.1"fn_ChangeRender");
            set_task(5.0"fn_ChangeNumber");
            set_task(15.0"fn_ChangeScreens");
            set_task(30.1"fn_Finish");
            
            
return;
        }
    }
    
    client_cmd
(0"spk ^"%s^""sSound);
    
    
++g_count;
    
    set_task
(0.3"fn_PlayMusic");
}

public 
fn_ChangeRender()
{
    if(g_count == 60 || g_finish)
        return;

    static i;
    static Float:vecOrigin[3];
    
    
for(1<= g_maxplayers; ++i)
    {
        if((g_count 2) == 0)
        {
            if(!is_user_connected(i))
                continue;
            
            message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            write_short(UNIT_SECOND 9);
            write_short(UNIT_SECOND 6);
            write_short(UNIT_SECOND 9);
            message_end();
            
            
if(!is_user_alive(i))
                continue;
            
            entity_get_vector
(iEV_VEC_originvecOrigin);
            
            engfunc
(EngFunc_MessageBeginMSG_PVSSVC_TEMPENTITYvecOrigin0);
            write_byte(TE_DLIGHT);
            engfunc(EngFunc_WriteCoordvecOrigin[0]);
            engfunc(EngFunc_WriteCoordvecOrigin[1]);
            engfunc(EngFunc_WriteCoordvecOrigin[2]);
            write_byte(40);
            write_byte(random_num(50250));
            write_byte(random_num(50250));
            write_byte(random_num(50250));
            write_byte(50);
            write_byte(10);
            message_end();
        }
        
        
if(!is_user_alive(i))
            continue;
        
        set_user_rendering
(ikRenderFxGlowShellrandom_num(150250), random_num(150250), random_num(150250), kRenderNormal25);
    }
    
    
++g_count;
    
    set_task
(0.5"fn_ChangeRender");
}

public 
fn_ChangeScreens()
{
    if(g_count_screens == 75 || g_finish)
        return;
    
    
static i;
    if((g_count_screens 15) == 0)
    {
        for(1<= g_maxplayers; ++i)
        {
            if(!is_user_connected(i))
                continue;
            
            message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            write_short(UNIT_SECOND 28);
            write_short(UNIT_SECOND 18);
            write_short(UNIT_SECOND 28);
            message_end();
        }
    }
    
    
for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        message_begin
(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        write_short(UNIT_SECOND*4);
        write_short(UNIT_SECOND*4);
        write_short(0x0000);
        write_byte(random_num(100250));
        write_byte(random_num(100250));
        write_byte(random_num(100250));
        write_byte(200);
        message_end();
    }
    
    
++g_count_screens;
    
    set_task
(0.2"fn_ChangeScreens");
}

public 
fn_Finish()
{
    g_finish 1;
    
    client_cmd
(0"mp3 stop; stopsound");
    
    client_cmd
(0"spk weapons/c4_explode1.wav");
    client_cmd(0"spk weapons/c4_explode1.wav");
    
    set_lights
("");
    
    
new i;
    for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        message_begin
(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        write_short(UNIT_SECOND*4);
        write_short(UNIT_SECOND*4);
        write_short(0x0000);
        write_byte(255);
        write_byte(255);
        write_byte(25);
        write_byte(255);
        message_end();
        
        set_user_rendering
(i);
    }
    
    set_task
(0.3"fn_R");
    set_task(2.0"fn_Restart3");
}

public 
fn_R()
    server_cmd("sv_restart 1")

public 
fn_Restart3()
{
 
g_bIsRestart false
 client_print
(0print_chat"Bienvenidos a todos!");
 
client_print(0print_chat"Diviertete y Disfruta Nuestro Servidor.");
 
client_print(0print_chat"atte. UN SERVER PERFECTO");
}

public 
fn_ChangeNumber()
{
    if(g_count_final == 6)
        return;
    
    
new sSound[64];
    
    
switch(g_count_final)
    {
        case 1formatex(sSoundcharsmax(sSound), "px/five.wav");
        case 2formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 4formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 5formatex(sSoundcharsmax(sSound), "px/one.wav");
    }
    
    client_cmd
(0"spk ^"%s^""sSound);
    
    
++g_count_final;
    
    set_task
(5.0"fn_ChangeNumber");


Espero te sirva  Whatdone
Estoy cansado de este sufrimiento llamado vivir en Venezuela
Okay
Responder
#3
(23/04/2021, 11:44 AM)samueldmq escribió:
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
//#include <dhudmessage>

#define PLUGIN_NAME        "Auto Restart Px"
#define PLUGIN_VERSION    "Generationcs"
#define PLUGIN_AUTHOR    "Kiske"

const UNIT_SECOND = (<< 12);

new 
bool:g_bIsRestart false
new g_message_hud;
new 
g_unique;
new 
g_count;
new 
g_count_screens;
new 
g_count_final;
new 
g_finish;
new 
g_maxplayers;

new 
g_message_screenshake;
new 
g_message_screenfade;

public 
plugin_precache()
{
    precache_sound("px/one.wav");
    precache_sound("px/two.wav");
    precache_sound("px/three.wav");
    precache_sound("px/four.wav");
    precache_sound("px/five.wav");
    
    precache_sound
("weapons/c4_explode1.wav");
    
    precache_generic
("sound/px/aafcri.mp3");
}

public 
plugin_init()
{
    register_plugin(PLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR);
    
    register_concmd
("amx_rr_px""concmd_RockFinal");
    
    g_message_screenshake 
get_user_msgid("ScreenShake");
    g_message_screenfade get_user_msgid("ScreenFade");
    
    g_message_hud 
CreateHudSyncObj();
    
    RegisterHam
(Ham_TakeDamage"player""fw_TakeDamage")
    
    g_maxplayers 
get_maxplayers();
}

public 
fw_TakeDamage(victiminflictorattackerFloat:damagedmg_type) {
 if(
g_bIsRestart) {
 return 
HAM_SUPERCEDE;
 }
 return 
HAM_IGNORED
}

public 
concmd_RockFinal(idlevelcid)
{
    if(!cmd_access(idADMIN_LEVEL_Acid1))
        return PLUGIN_HANDLED;
    
    
if(g_unique)
    {
        console_print(id"Solo se puede usar este comando una vez por mapa!");
        return PLUGIN_HANDLED;
    }
    
    g_unique 
1
    
    g_count 
30;
    set_task(2.0"fn_Vale");
    
    
new i;
    for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        cs_set_user_money
(i0);
        
        
if(!is_user_alive(i))
            continue;
        
        strip_user_weapons
(i);
    }
    
    g_bIsRestart 
true;
    
    
return PLUGIN_HANDLED;
}

public 
fn_Vale()
{
    new sMsg[64];
    
    
if(g_count 5)
        formatex(sMsgcharsmax(sMsg), "El juego comienza en %d segundos"g_count);
    else
    {
        new sSound[64];
        
        
switch(g_count)
        {
            case 5:
            {
                formatex(sSoundcharsmax(sSound), "px/five.wav");
                
                
new i;
                for(1<= g_maxplayers; ++i)
                {
                    if(!is_user_connected(i))
                        continue;
                    
                    message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                    write_short(UNIT_SECOND 14);
                    write_short(UNIT_SECOND 9);
                    write_short(UNIT_SECOND 14);
                    message_end();
                }
                
                
for(1<= g_maxplayers; ++i)
                {
                    if(!is_user_connected(i))
                        continue;
                    
                    ClearSyncHud
(ig_message_hud);
                }
                
                set_lights
("i");
            }
            case 4:
            {
                formatex(sSoundcharsmax(sSound), "px/four.wav");
                set_lights("g");
            }
            case 3:
            {
                formatex(sSoundcharsmax(sSound), "px/three.wav");
                set_lights("e");
            }
            case 2:
            {
                formatex(sSoundcharsmax(sSound), "px/two.wav");
                set_lights("c");
            }
            case 1:
            {
                formatex(sSoundcharsmax(sSound), "px/one.wav");
                set_lights("a");
            }
            case 0:
            {    
                g_count 
1;
                
                set_task
(3.0"fn_PlayMusic");
                
                
return;
            }
        }
        
        client_cmd
(0"spk ^"%s^""sSound);
        
        set_dhudmessage
(2552550, -1.00.300.00.30.30.3);
        show_dhudmessage(0"%d"g_count);
    }
    
    
if(g_count 5)
    {
        set_hudmessage(2552550, -1.00.300.03.02.01.0, -1);
        ShowSyncHudMsg(0g_message_hud"%s"sMsg);
    }
    
    
--g_count;
    
    set_task
(1.0"fn_Vale");
}

public 
fn_PlayMusic()
{
    /*if(g_count == 5)
    {
        ++g_count;
        
        set_task(0.1, "fn_PlayMusic");
        
        return;
    }*/
    
    
new sSound[64];
    
    
switch(g_count)
    {
        case 1formatex(sSoundcharsmax(sSound), "px/one.wav");
        case 2formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 4formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 6:
        {
            client_cmd(0"MP3Volume 2.0");
            client_cmd(0"mp3 play ^"sound/px/aafcri.mp3^"");
            
            
new i;
            for(1<= g_maxplayers; ++i)
            {
                if(!is_user_connected(i))
                    continue;
                
                message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                write_short(UNIT_SECOND 28);
                write_short(UNIT_SECOND 18);
                write_short(UNIT_SECOND 28);
                message_end();
            }
            
            g_count 
1;
            g_count_final 1;
            
            set_task
(0.1"fn_ChangeRender");
            set_task(5.0"fn_ChangeNumber");
            set_task(15.0"fn_ChangeScreens");
            set_task(30.1"fn_Finish");
            
            
return;
        }
    }
    
    client_cmd
(0"spk ^"%s^""sSound);
    
    
++g_count;
    
    set_task
(0.3"fn_PlayMusic");
}

public 
fn_ChangeRender()
{
    if(g_count == 60 || g_finish)
        return;

    static i;
    static Float:vecOrigin[3];
    
    
for(1<= g_maxplayers; ++i)
    {
        if((g_count 2) == 0)
        {
            if(!is_user_connected(i))
                continue;
            
            message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            write_short(UNIT_SECOND 9);
            write_short(UNIT_SECOND 6);
            write_short(UNIT_SECOND 9);
            message_end();
            
            
if(!is_user_alive(i))
                continue;
            
            entity_get_vector
(iEV_VEC_originvecOrigin);
            
            engfunc
(EngFunc_MessageBeginMSG_PVSSVC_TEMPENTITYvecOrigin0);
            write_byte(TE_DLIGHT);
            engfunc(EngFunc_WriteCoordvecOrigin[0]);
            engfunc(EngFunc_WriteCoordvecOrigin[1]);
            engfunc(EngFunc_WriteCoordvecOrigin[2]);
            write_byte(40);
            write_byte(random_num(50250));
            write_byte(random_num(50250));
            write_byte(random_num(50250));
            write_byte(50);
            write_byte(10);
            message_end();
        }
        
        
if(!is_user_alive(i))
            continue;
        
        set_user_rendering
(ikRenderFxGlowShellrandom_num(150250), random_num(150250), random_num(150250), kRenderNormal25);
    }
    
    
++g_count;
    
    set_task
(0.5"fn_ChangeRender");
}

public 
fn_ChangeScreens()
{
    if(g_count_screens == 75 || g_finish)
        return;
    
    
static i;
    if((g_count_screens 15) == 0)
    {
        for(1<= g_maxplayers; ++i)
        {
            if(!is_user_connected(i))
                continue;
            
            message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            write_short(UNIT_SECOND 28);
            write_short(UNIT_SECOND 18);
            write_short(UNIT_SECOND 28);
            message_end();
        }
    }
    
    
for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        message_begin
(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        write_short(UNIT_SECOND*4);
        write_short(UNIT_SECOND*4);
        write_short(0x0000);
        write_byte(random_num(100250));
        write_byte(random_num(100250));
        write_byte(random_num(100250));
        write_byte(200);
        message_end();
    }
    
    
++g_count_screens;
    
    set_task
(0.2"fn_ChangeScreens");
}

public 
fn_Finish()
{
    g_finish 1;
    
    client_cmd
(0"mp3 stop; stopsound");
    
    client_cmd
(0"spk weapons/c4_explode1.wav");
    client_cmd(0"spk weapons/c4_explode1.wav");
    
    set_lights
("");
    
    
new i;
    for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        message_begin
(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        write_short(UNIT_SECOND*4);
        write_short(UNIT_SECOND*4);
        write_short(0x0000);
        write_byte(255);
        write_byte(255);
        write_byte(25);
        write_byte(255);
        message_end();
        
        set_user_rendering
(i);
    }
    
    set_task
(0.3"fn_R");
    set_task(2.0"fn_Restart3");
}

public 
fn_R()
    server_cmd("sv_restart 1")

public 
fn_Restart3()
{
 
g_bIsRestart false
 client_print
(0print_chat"Bienvenidos a todos!");
 
client_print(0print_chat"Diviertete y Disfruta Nuestro Servidor.");
 
client_print(0print_chat"atte. UN SERVER PERFECTO");
}

public 
fn_ChangeNumber()
{
    if(g_count_final == 6)
        return;
    
    
new sSound[64];
    
    
switch(g_count_final)
    {
        case 1formatex(sSoundcharsmax(sSound), "px/five.wav");
        case 2formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 4formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 5formatex(sSoundcharsmax(sSound), "px/one.wav");
    }
    
    client_cmd
(0"spk ^"%s^""sSound);
    
    
++g_count_final;
    
    set_task
(5.0"fn_ChangeNumber");


Espero te sirva  Whatdone

gracias buen hombre, en un rato lo pruebo !
Responder
#4
(23/04/2021, 11:44 AM)samueldmq escribió:
Código PHP:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
//#include <dhudmessage>

#define PLUGIN_NAME        "Auto Restart Px"
#define PLUGIN_VERSION    "Generationcs"
#define PLUGIN_AUTHOR    "Kiske"

const UNIT_SECOND = (<< 12);

new 
bool:g_bIsRestart false
new g_message_hud;
new 
g_unique;
new 
g_count;
new 
g_count_screens;
new 
g_count_final;
new 
g_finish;
new 
g_maxplayers;

new 
g_message_screenshake;
new 
g_message_screenfade;

public 
plugin_precache()
{
    precache_sound("px/one.wav");
    precache_sound("px/two.wav");
    precache_sound("px/three.wav");
    precache_sound("px/four.wav");
    precache_sound("px/five.wav");
    
    precache_sound
("weapons/c4_explode1.wav");
    
    precache_generic
("sound/px/aafcri.mp3");
}

public 
plugin_init()
{
    register_plugin(PLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR);
    
    register_concmd
("amx_rr_px""concmd_RockFinal");
    
    g_message_screenshake 
get_user_msgid("ScreenShake");
    g_message_screenfade get_user_msgid("ScreenFade");
    
    g_message_hud 
CreateHudSyncObj();
    
    RegisterHam
(Ham_TakeDamage"player""fw_TakeDamage")
    
    g_maxplayers 
get_maxplayers();
}

public 
fw_TakeDamage(victiminflictorattackerFloat:damagedmg_type) {
 if(
g_bIsRestart) {
 return 
HAM_SUPERCEDE;
 }
 return 
HAM_IGNORED
}

public 
concmd_RockFinal(idlevelcid)
{
    if(!cmd_access(idADMIN_LEVEL_Acid1))
        return PLUGIN_HANDLED;
    
    
if(g_unique)
    {
        console_print(id"Solo se puede usar este comando una vez por mapa!");
        return PLUGIN_HANDLED;
    }
    
    g_unique 
1
    
    g_count 
30;
    set_task(2.0"fn_Vale");
    
    
new i;
    for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        cs_set_user_money
(i0);
        
        
if(!is_user_alive(i))
            continue;
        
        strip_user_weapons
(i);
    }
    
    g_bIsRestart 
true;
    
    
return PLUGIN_HANDLED;
}

public 
fn_Vale()
{
    new sMsg[64];
    
    
if(g_count 5)
        formatex(sMsgcharsmax(sMsg), "El juego comienza en %d segundos"g_count);
    else
    {
        new sSound[64];
        
        
switch(g_count)
        {
            case 5:
            {
                formatex(sSoundcharsmax(sSound), "px/five.wav");
                
                
new i;
                for(1<= g_maxplayers; ++i)
                {
                    if(!is_user_connected(i))
                        continue;
                    
                    message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                    write_short(UNIT_SECOND 14);
                    write_short(UNIT_SECOND 9);
                    write_short(UNIT_SECOND 14);
                    message_end();
                }
                
                
for(1<= g_maxplayers; ++i)
                {
                    if(!is_user_connected(i))
                        continue;
                    
                    ClearSyncHud
(ig_message_hud);
                }
                
                set_lights
("i");
            }
            case 4:
            {
                formatex(sSoundcharsmax(sSound), "px/four.wav");
                set_lights("g");
            }
            case 3:
            {
                formatex(sSoundcharsmax(sSound), "px/three.wav");
                set_lights("e");
            }
            case 2:
            {
                formatex(sSoundcharsmax(sSound), "px/two.wav");
                set_lights("c");
            }
            case 1:
            {
                formatex(sSoundcharsmax(sSound), "px/one.wav");
                set_lights("a");
            }
            case 0:
            {    
                g_count 
1;
                
                set_task
(3.0"fn_PlayMusic");
                
                
return;
            }
        }
        
        client_cmd
(0"spk ^"%s^""sSound);
        
        set_dhudmessage
(2552550, -1.00.300.00.30.30.3);
        show_dhudmessage(0"%d"g_count);
    }
    
    
if(g_count 5)
    {
        set_hudmessage(2552550, -1.00.300.03.02.01.0, -1);
        ShowSyncHudMsg(0g_message_hud"%s"sMsg);
    }
    
    
--g_count;
    
    set_task
(1.0"fn_Vale");
}

public 
fn_PlayMusic()
{
    /*if(g_count == 5)
    {
        ++g_count;
        
        set_task(0.1, "fn_PlayMusic");
        
        return;
    }*/
    
    
new sSound[64];
    
    
switch(g_count)
    {
        case 1formatex(sSoundcharsmax(sSound), "px/one.wav");
        case 2formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 4formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 6:
        {
            client_cmd(0"MP3Volume 2.0");
            client_cmd(0"mp3 play ^"sound/px/aafcri.mp3^"");
            
            
new i;
            for(1<= g_maxplayers; ++i)
            {
                if(!is_user_connected(i))
                    continue;
                
                message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
                write_short(UNIT_SECOND 28);
                write_short(UNIT_SECOND 18);
                write_short(UNIT_SECOND 28);
                message_end();
            }
            
            g_count 
1;
            g_count_final 1;
            
            set_task
(0.1"fn_ChangeRender");
            set_task(5.0"fn_ChangeNumber");
            set_task(15.0"fn_ChangeScreens");
            set_task(30.1"fn_Finish");
            
            
return;
        }
    }
    
    client_cmd
(0"spk ^"%s^""sSound);
    
    
++g_count;
    
    set_task
(0.3"fn_PlayMusic");
}

public 
fn_ChangeRender()
{
    if(g_count == 60 || g_finish)
        return;

    static i;
    static Float:vecOrigin[3];
    
    
for(1<= g_maxplayers; ++i)
    {
        if((g_count 2) == 0)
        {
            if(!is_user_connected(i))
                continue;
            
            message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            write_short(UNIT_SECOND 9);
            write_short(UNIT_SECOND 6);
            write_short(UNIT_SECOND 9);
            message_end();
            
            
if(!is_user_alive(i))
                continue;
            
            entity_get_vector
(iEV_VEC_originvecOrigin);
            
            engfunc
(EngFunc_MessageBeginMSG_PVSSVC_TEMPENTITYvecOrigin0);
            write_byte(TE_DLIGHT);
            engfunc(EngFunc_WriteCoordvecOrigin[0]);
            engfunc(EngFunc_WriteCoordvecOrigin[1]);
            engfunc(EngFunc_WriteCoordvecOrigin[2]);
            write_byte(40);
            write_byte(random_num(50250));
            write_byte(random_num(50250));
            write_byte(random_num(50250));
            write_byte(50);
            write_byte(10);
            message_end();
        }
        
        
if(!is_user_alive(i))
            continue;
        
        set_user_rendering
(ikRenderFxGlowShellrandom_num(150250), random_num(150250), random_num(150250), kRenderNormal25);
    }
    
    
++g_count;
    
    set_task
(0.5"fn_ChangeRender");
}

public 
fn_ChangeScreens()
{
    if(g_count_screens == 75 || g_finish)
        return;
    
    
static i;
    if((g_count_screens 15) == 0)
    {
        for(1<= g_maxplayers; ++i)
        {
            if(!is_user_connected(i))
                continue;
            
            message_begin
(MSG_ONE_UNRELIABLEg_message_screenshake_i);
            write_short(UNIT_SECOND 28);
            write_short(UNIT_SECOND 18);
            write_short(UNIT_SECOND 28);
            message_end();
        }
    }
    
    
for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        message_begin
(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        write_short(UNIT_SECOND*4);
        write_short(UNIT_SECOND*4);
        write_short(0x0000);
        write_byte(random_num(100250));
        write_byte(random_num(100250));
        write_byte(random_num(100250));
        write_byte(200);
        message_end();
    }
    
    
++g_count_screens;
    
    set_task
(0.2"fn_ChangeScreens");
}

public 
fn_Finish()
{
    g_finish 1;
    
    client_cmd
(0"mp3 stop; stopsound");
    
    client_cmd
(0"spk weapons/c4_explode1.wav");
    client_cmd(0"spk weapons/c4_explode1.wav");
    
    set_lights
("");
    
    
new i;
    for(1<= g_maxplayers; ++i)
    {
        if(!is_user_connected(i))
            continue;
        
        message_begin
(MSG_ONE_UNRELIABLEg_message_screenfade_i)
        write_short(UNIT_SECOND*4);
        write_short(UNIT_SECOND*4);
        write_short(0x0000);
        write_byte(255);
        write_byte(255);
        write_byte(25);
        write_byte(255);
        message_end();
        
        set_user_rendering
(i);
    }
    
    set_task
(0.3"fn_R");
    set_task(2.0"fn_Restart3");
}

public 
fn_R()
    server_cmd("sv_restart 1")

public 
fn_Restart3()
{
 
g_bIsRestart false
 client_print
(0print_chat"Bienvenidos a todos!");
 
client_print(0print_chat"Diviertete y Disfruta Nuestro Servidor.");
 
client_print(0print_chat"atte. UN SERVER PERFECTO");
}

public 
fn_ChangeNumber()
{
    if(g_count_final == 6)
        return;
    
    
new sSound[64];
    
    
switch(g_count_final)
    {
        case 1formatex(sSoundcharsmax(sSound), "px/five.wav");
        case 2formatex(sSoundcharsmax(sSound), "px/four.wav");
        case 3formatex(sSoundcharsmax(sSound), "px/three.wav");
        case 4formatex(sSoundcharsmax(sSound), "px/two.wav");
        case 5formatex(sSoundcharsmax(sSound), "px/one.wav");
    }
    
    client_cmd
(0"spk ^"%s^""sSound);
    
    
++g_count_final;
    
    set_task
(5.0"fn_ChangeNumber");


Espero te sirva  Whatdone

Hola buenas noches samuel de nuevo yo, disculpa el Plugin me Sirvió a la perfeccion, pero hay 3 detallitos que quisiera saber si se puede arreglar o no, 
Quisiera colocarlo para que se haga cuando recien comience el mapa sin tener que colocar el comando, 2do que no se puedan matar en el proceso del Restart, y 3ero El ultimo mensaje que aparece en say, ponerlo con color se podrá? y gracias de antemano
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)