Modo: HideNSeek v2.2
#1
HideNSeek v2.2

Explicación:
Modo creado para los que solo quieren ocupar la base del hns ya que el HidenSeek de Exolent contiene mas cosas aparte del modo base.

Comandos:

hns_gametype : Gamename (Tipo de juego)
hns_count : Tiempo de espera al iniciar ronda.
hns_disablekill : kill en consola <1 = Desactivado / 0 = Activado>
hns_noflash : Flash Segar entre Terroristas <1 = Desactivado / 0 = Activado>
hns_money : Dinero <1 = Desactivado / 0 = Activado>

hns_hiders_alivefrag : Cantidad de puntos al ganar los terroristas.
hns_hiders_knife : < 1 = Dar cuchillo a tt / 0 = No dar Cuchillo >
hns_hiders_he : Cantidad de Granadas HE para Terroristas.
hns_hiders_flash : Cantidad de Granadas FLASH para Terroristas.
hns_hiders_smoke : Cantidad de Granadas SMOKE para Terroristas.
hns_seek_armor : Armadura de CT al iniciar Ronda.


Código PHP:
#include < amxmodx.inc >
#include < amxmisc.inc >
#include < fakemeta.inc >
#include < hamsandwich.inc >
#include < fun.inc >     
#include < engine.inc >
#include < cstrike.inc >

#define TASK_ID 2017

new g_msgHideWeapong_FwSpawnTrie:g_tObjectivesig_count
new cvar_gamecvar_countcvar_killcvar_fragcvar_moneycvar_flashtt

new const g_szObjectiveEnts[][] = { 
    
"func_bomb_target",       
    
"info_bomb_target",        
    
"hostage_entity"
    
"monster_scientist",      
    
"func_hostage_rescue",     
    
"info_hostage_rescue"
    
"info_vip_start",          
    
"func_vip_safetyzone",      
    
"func_escapezone"
    
"armoury_entity"
}
public 
plugin_init() {
    
register_plugin("HidenSeek""v2.2""ZSIRCA' #PipaRoja"// estos datos dan igual ya que va a venir un pargela y va a poner su nombre en author...
    
    
cvar_game        register_cvar("hns_gametype""Escondidas Clasico"// Nombre de Juego
    
cvar_count     register_cvar("hns_count""10")
    
cvar_kill        register_cvar("hns_disablekill""0")   // kill en consola   <1 = Desabilitado / 0 = Habilitado>   
    
cvar_flashtt    register_cvar("hns_noflash""1")       // Flash Segar Terrorist's <1 = Desabilitado / 0 = Habilitado> 
    
cvar_money    register_cvar("hns_money""1")         // Dinero <1 = Desabilitado / 0 = Habilitado> 
    
    
cvar_frag    register_cvar("hns_hiders_alivefrag""1")
    
    
g_msgHideWeapon get_user_msgid("HideWeapon")
    
    
RegisterHam(Ham_Spawn"player""PlayerSpawn"1)
    
    
register_forward(FM_GetGameDescription"Gamename")
    
register_forward(FM_CmdStart"CmdStart" )
    
register_forward(FM_PlayerPreThink"PlayerPreThink"0)
    
    
unregister_forward(FM_Spawng_FwSpawn)
    
    
register_message(get_user_msgid("StatusIcon"), "message_statusicon")
    
register_message(g_msgHideWeapon"msgHideWeapon")
    
register_message(get_user_msgid("ScreenFade"), "Message_ScreenFade"
    
    
register_event("HLTV""RoundStart""a""1=0""2=0")
    
register_event("ResetHUD""ResetHUD""b")
    
    
register_logevent("logevent_round_end"2"1=Round_End")
    
    new 
iEnt = -1
    
while((iEnt find_ent_by_class(iEnt"func_breakable")) > 0)
    {
        if(
entity_get_int(iEntEV_INT_playerclass) == 1)
            
remove_entity(iEnt)
    }
}
public 
plugin_precache() {
    
    
g_tObjectives TrieCreate()
    
    for(
0sizeof g_szObjectiveEntsi++)
        
TrieSetCell(g_tObjectivesg_szObjectiveEnts[i], 1)
    
    
g_FwSpawn register_forward(FM_Spawn"FwSpawn")
    
    new 
ent;
    
ent create_entity("hostage_entity");
    
    if (
is_valid_ent(ent))
    {
        
entity_set_vector(entEV_VEC_originFloat:{ 8192.08192.08192.0 });
        
DispatchSpawn(ent);
    }
}
public 
client_disconnected(id) {
    
    if(
g_count >= 
        
remove_task(TASK_ID)
}
public 
Gamename()  { 
    static 
gamename[32]; 
    
    
get_pcvar_string(cvar_gamegamename31
    
forward_returnFMV_STRINGgamename
    
    return 
FMRES_SUPERCEDE
}
public 
PlayerSpawn(Client) {
    
    if(!
is_user_alive(Client) || !is_user_connected(Client))
        return;
    
    
strip_user_weapons(Client)
    
    switch(
cs_get_user_team(Client))// te lo dejo por si quieres agregar algo a los tt
    
{
        case 
CS_TEAM_CT: {
            
give_item(Client"weapon_knife"// buscadores tendrán cuchillo
            
set_user_rendering(ClientkRenderFxGlowShell25500kRenderNormal255// buscadores tendrán glow rojo
            
        
}
    }  
}

public 
RoundStart() {
    
remove_task(TASK_ID)
    
    
g_count get_pcvar_num(cvar_count)
    
    
set_task(1.0"Conteo"TASK_ID__"a"g_count)
}

public 
PlayerPreThink(id) {
    if(
is_user_alive(id))
    {        
        if(
g_count >= && cs_get_user_team(id) == CS_TEAM_CT) {
            
set_pev(idpev_flagspev(idpev_flags) | FL_FROZEN);
        }
    }
}
public 
Conteo() {
    
g_count--
    
    new 
sSound[16]
    
num_to_word(g_countsSound15);
    
    
set_hudmessage(00200, -1.0, -1.001.00.21.00.0);
    
    if(
g_count) {
        
        
show_hudmessage(0"Quedan %d segundo%s Para esconderse"g_countg_count "s" "")
        
client_cmd(0"spk vox/%s.wav"sSound)
        
        for(
0get_maxplayers(); i++) {
            
            if(!
is_user_alive(i) || get_user_team(i) != 2)
                continue;
            
            
ScreenFade(i1.0000255)
        }
    }
    else {
        
remove_task(TASK_ID)
        
show_hudmessage(0"Termino el tiempo!")
        
        for(
0get_maxplayers(); i++) {
            
            if(!
is_user_alive(i) && get_user_team(i) != 2)
                continue;
            
            
set_pev(ipev_flagspev(ipev_flags) & ~FL_FROZEN)
        }
        
    }
}    
public 
message_statusicon(msg_idmsg_destid) {
    
    static 
szIcon[8]; get_msg_arg_string(2szIconcharsmax(szIcon))
    
    if (
equal(szIcon"buyzone") && get_msg_arg_int(1))
    {
        
set_pdata_int(id235get_pdata_int(id235) & ~(1<<0))
        return 
PLUGIN_HANDLED;
    }
    
    return 
PLUGIN_CONTINUE;


public 
FwSpawn(ent)
{
    if(!
pev_valid(ent))
        return 
FMRES_IGNORED
    
    
static szClassName[32]
    
pev(entpev_classnameszClassNamecharsmax(szClassName))
    
    if(
TrieKeyExists(g_tObjectivesszClassName))
    {
        
engfunc(EngFunc_RemoveEntityent)
        return 
FMRES_SUPERCEDE
    
}
    
    return 
FMRES_IGNORED
}
public 
CmdStart(const Client, const uc_handlerandom_seed) {
    
    if(!
is_user_alive(Client))
        return 
FMRES_IGNORED
    
    
static clipammo;
    if(
get_user_weapon(Clientclipammo) != CSW_KNIFE)
        return 
FMRES_IGNORED
    
    
if(get_user_team(Client) == 1) {
        new 
button get_uc(uc_handleUC_Buttons);
        
        if(
button&IN_ATTACK)
            
button &= ~IN_ATTACK;
        if(
button&IN_ATTACK2)
            
button &= ~IN_ATTACK2;
        
        
set_uc(uc_handleUC_Buttonsbutton);
        
        return 
FMRES_SUPERCEDE;
    }
    else if(
get_user_team(Client)== 2) {
        new 
button get_uc(uc_handleUC_Buttons);
        
        if(
button&IN_ATTACK) {
            
button &= ~IN_ATTACK;
            
button |= IN_ATTACK2;
        }
        
        
set_uc(uc_handleUC_Buttonsbutton);
        
        return 
FMRES_SUPERCEDE;
    }
    
    return 
FMRES_IGNORED;
}
public 
ResetHUD(Client) {
    
    if(!
get_pcvar_num(cvar_money))
        return;
    
    new 
HudMoney MoneyHud()
    
    if(
HudMoney){
        
message_begin(MSG_ONEg_msgHideWeapon_Client)
        
write_byte(HudMoney)
        
message_end()
    }    
}

public 
msgHideWeapon() {
    
    if(!
get_pcvar_num(cvar_money))
        return;
    
    new 
HudMoney MoneyHud()
    
    if(
HudMoneyset_msg_arg_int(1ARG_BYTEget_msg_arg_int(1) | HudMoney)
}

public 
MoneyHud() {
    
    new 
HudMoneyHudMoney |= (1<<5)
    return 
HudMoney
}  
public 
Message_ScreenFade(MsgIdMsgDestMsgEntity) {
    
    if(!
get_pcvar_num(cvar_flashtt)) 
        return 
PLUGIN_CONTINUE;
    
    if(
get_msg_arg_int(4) == 255 && get_msg_arg_int(5) == 255 && get_msg_arg_int(6) == 255) {
        if(!
is_user_connected(MsgEntity) || cs_get_user_team(MsgEntity) == CS_TEAM_T) return PLUGIN_HANDLED;
        
set_msg_arg_int(4ARG_BYTErandom(255))
        
set_msg_arg_int(5ARG_BYTErandom(255))
        
set_msg_arg_int(6ARG_BYTErandom(255))
    }
    return 
PLUGIN_CONTINUE;

public 
logevent_round_end() {
    
    for (
1<= get_maxplayers(); i++) {
        
        switch(
cs_get_user_team(i)) {
            
            case 
CS_TEAM_T: {
                
set_user_frags(iget_user_frags(i) + get_pcvar_num(cvar_frag))
                
client_print(0print_chat"[HNS] Escondidos Ganan 1 Frag por ganar la ronda.")
            }
            case 
CS_TEAM_CT:  client_print(0print_chat"[HNS] Buscadores Ganan la ronda, Cambio de Equipos!"),  rotar()    
            }
    }
}
public 
rotar() {
    for (
1<= get_maxplayers(); i++) {
        
        switch(
cs_get_user_team(i)) {
            case 
CS_TEAM_T:   cs_set_user_team(iCS_TEAM_CT)
                case 
CS_TEAM_CT:  cs_set_user_team(iCS_TEAM_T)
            }
    }
    return 
PLUGIN_HANDLED;
}
public 
client_kill(id) {
    if(!
get_pcvar_num(cvar_kill)) 
        return 
PLUGIN_CONTINUE;
    
    return 
PLUGIN_HANDLED;
}
stock ScreenFade(ClientFloat:fDurationredgreenbluealpha)
{
    
Client Client get_maxplayers();
    
    if(!
i)
        return 
0;
    
    
    
message_begin(Client MSG_ONE MSG_ALLget_user_msgid"ScreenFade"), {000}, Client);
    
write_short(floatround(4096.0 fDurationfloatround_round));
    
write_short(floatround(4096.0 fDurationfloatround_round));
    
write_short(4096);
    
write_byte(red);
    
write_byte(green);
    
write_byte(blue);
    
write_byte(alpha);
    
message_end();
    
    return 
1;


public 
plugin_end() 
    
TrieDestroy(g_tObjectives

No recuerdo haberlo subido antes o lo subi y lo borre... lo acabo de encontrar junto con otros proyectos para escondidas mod, espero sus +Rep minimo... aaah eso... se despide Atte: Penecitoloco ndeaah
Responder
#2
Ya subiste esto, ahora subi el escondidas mod y cerra el pico (?
Responder
#3
(04/04/2020, 09:39 PM)Chema escribió: Ya subiste esto, ahora subi el escondidas mod y cerra el pico (?
Responder
#4
Creo que si al conteo del player lo haces asi, me parece que cuando relogeas el conteo no sirve.
Responder
#5
Esta mal ese conteo, lo que dijo el de arriba..
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)