Zumbis Online
Últimos assuntos
» (Ajuda) ZM VIP com Status do Perfect por Menssagem para Dono tambem!
por EleMenTaL. Hoje à(s) 4:37 pm

» [UTILITARIO] Bot Fake Spectador
por Wilian Hoje à(s) 9:09 am

» Hide Sheek Supply Box
por mito 20/10/2017, 10:31 pm

» (Ajuda) Thunder Quando Zombie Infecta!
por Biel-oGrande 16/10/2017, 7:29 am

» [PEDIDO] Plugin Quiz
por N0th1ng 12/10/2017, 1:55 pm

» [ZP] Banco de Ammopacks
por mito 12/10/2017, 10:32 am

» (Ajuda) Colocar Inatividade no Bank!
por mito 3/10/2017, 10:57 pm

» [Plugin] Dropar Ammo Packs
por Biel-oGrande 3/10/2017, 10:06 am

» [WOZ] World Of Zombies - ZP 2017 *(O MELHOR ZP DO BRASIL)*
por mito 2/10/2017, 4:33 pm

» Prazer Mito :)
por mito 2/10/2017, 4:13 pm

Frases filosóficas Zplague:
....
Adsense

[ZP] Spectador Invisivel

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[ZP] Spectador Invisivel

Mensagem por [D]etonado[R] em 18/11/2013, 8:30 pm

Este plugin deixa admins com acesso ADMIN_RCON ser espectadores, mas ainda aparece em uma equipe.
Ele pode ser útil para spectate potenciais cheaters.

Cheaters prestar atenção aos espectadores, de modo a manter em mente que quanto mais jogadores estarão em seu servidor, o mais difícil será ver você não está realmente vivo.
Observe também que será facilmente detectado muitos dos espectadores invisíveis ", ao mesmo tempo, e que dos espectadores invisíveis" são contados como jogadores mortos (cvar amx_inv_dead_percent).


Comandos:

amx_spectate

Digite este comando, uma vez que você está morto ou specator, você não vai aparecer na lista de espectadores.
Digite o mesmo comando ou participar de uma equipe para desativar sua "invisibilidade"
-------------------------------------------------------------------------------------------------------

Cvars:

amx_inv_dead_percent < value >



Quando o valor% do total de jogadores estão mortos ", espectadores invisíveis" parece estar morto.
-------------------------------------------------------------------------------------------------------

Modules:

Fakemeta
-------------------------------------------------------------------------------------------------------

Changelog:


v0.2 (14/11/2007)
- added amx_inv_dead_percent cvar



SMA:


Código:
/* http://forums.alliedmods.net/showthread.php?p=551999#post551999
*
* Changelog
* added cvar amx_inv_dead_percent <value>
*
*/

#include <amxmodx>
#include <fakemeta>

#if AMXX_VERSION_NUM < 180
 #define charsmax(%1) sizeof(%1) - 1
#endif

#define MAX_PLAYERS 32

#define DEAD_FLAG   (1<<0)

#define OFFSET_TEAM 114

enum {
 CS_TEAM_UNASSIGNED,
 CS_TEAM_T,
 CS_TEAM_CT,
 CS_TEAM_SPECTATOR
}

new bool:g_roundend
new pcvar_percent
new g_invisible[MAX_PLAYERS+1][2]
new gmsgScoreAttrib, gmsgTeamInfo

public plugin_init() {
 register_plugin("Invisible Spectator", "0.2", "ConnorMcLeod")

 pcvar_percent = register_cvar("amx_inv_dead_percent", "40")

 register_clcmd("amx_spectate", "make_invis")

 gmsgScoreAttrib = get_user_msgid("ScoreAttrib")
 gmsgTeamInfo = get_user_msgid("TeamInfo")

 register_message( gmsgScoreAttrib, "msg_ScoreAttrib")
 register_message( gmsgTeamInfo, "msg_TeamInfo")

 register_event("HLTV", "eNewRound", "a", "1=0", "2=0")
 register_logevent("eRoundEnd", 2, "1=Round_End")
 register_event("ResetHUD", "eResetHUD", "be")
 register_event("DeathMsg", "eDeathMsg", "a")
}

public make_invis(id) {
 if( !(get_user_flags(id) & ADMIN_RCON) )
 return PLUGIN_CONTINUE

 if(g_invisible[id][0])
 {
 client_print(id, print_console, "You're not invisible anymore")
 g_invisible[id][0] = 0
 return PLUGIN_HANDLED
 }
 
if( is_user_alive(id) )
 {
 client_print(id, print_console, "You have to be dead first to be an invisible spectator !")
 return PLUGIN_HANDLED
 }

 g_invisible[id][0] = 1
 client_print(id, print_console, "You're now an invisible spectator")

 new team = get_pdata_int(id, OFFSET_TEAM)
 if( CS_TEAM_T <= team <= CS_TEAM_CT )
 {
 g_invisible[id][1] = team
 set_pdata_int(id, OFFSET_TEAM, CS_TEAM_SPECTATOR)
 }
 else
 {
 new players[MAX_PLAYERS], tnum, ctnum
 get_players(players, tnum, "e", "TERRORIST")
 get_players(players, ctnum, "e", "CT")
 g_invisible[id][1] = ctnum > tnum ? 1 : 2
 }

 send_ScoreAttrib(id, 0)

 new teamname[12]
 switch( g_invisible[id][1] )
 {
 case 1:formatex(teamname, charsmax(teamname), "TERRORIST")
 case 2:formatex(teamname, charsmax(teamname), "CT")
 }
 send_TeamInfo(id, teamname)

 return PLUGIN_HANDLED
}

public eDeathMsg() {
 if(g_roundend)
 return

 new players[MAX_PLAYERS], dead, inum, player, Float:percent = get_pcvar_float(pcvar_percent) / 100.0
 get_players(players, dead, "bh")
 get_players(players, inum, "h")

 if( float(dead) / float(inum) < percent)
return

 for(new i; i < inum; i++)
 {
 player = players[i]
 if( g_invisible[player][0] )
 send_ScoreAttrib(player, DEAD_FLAG)
 }
}

public eNewRound() {
 g_roundend = false
 new players[MAX_PLAYERS], inum, player
 get_players(players, inum)
 for(new i; i < inum; i++)
 {
 player = players[i]
 if( g_invisible[player][0] )
 send_ScoreAttrib(player, 0)
 }
}

public eRoundEnd() {
 g_roundend = true
 new players[MAX_PLAYERS], inum, player
 get_players(players, inum)
 for(new i; i < inum; i++)
 {
 player = players[i]
 if( g_invisible[player][0] )
 send_ScoreAttrib(player, DEAD_FLAG)
 }
}

public eResetHUD(id) {
 if( g_invisible[id][0] )
 g_invisible[id][0] = 0
}

// Doesn't seem to work so set flag to 0 at NewRound event.
public msg_ScoreAttrib(msg_type, msg_dest, target) {
 if(!g_invisible[get_msg_arg_int(1)][0])
 return PLUGIN_CONTINUE

 new flags = get_msg_arg_int(2)
 if(flags & DEAD_FLAG)
 set_msg_arg_int(2, 0, flags & ~DEAD_FLAG)

 return PLUGIN_CONTINUE
}

public msg_TeamInfo(msg_type, msg_dest, target) {
 new id = get_msg_arg_int(1)
 if(!g_invisible[id][0])
 return PLUGIN_CONTINUE

 new teamname[12]
 get_msg_arg_string(2, teamname, charsmax(teamname))
 if( g_invisible[id][1] == CS_TEAM_T && strcmp(teamname, "TERRORIST") != 0 )
 set_msg_arg_string(2, "TERRORIST")
 else if( g_invisible[id][1] == CS_TEAM_CT && strcmp(teamname, "CT") != 0 )
 set_msg_arg_string(2, "CT")

 return PLUGIN_CONTINUE
}

send_ScoreAttrib(id, flags)
{
 message_begin(MSG_ALL, gmsgScoreAttrib, _, 0)
 write_byte(id)
 write_byte(flags)
 message_end()
}

send_TeamInfo(id, teamname[])
{
 message_begin(MSG_ALL, gmsgTeamInfo, _, 0)
 write_byte(id)
 write_string(teamname)
 message_end()
}
Creditos: AlliedModders


____________________________________________

avatar
[D]etonado[R]
Humano
Humano

Nick : [D]etonado[R]
Masculino Número de Mensagens : 625
Ammo Packs : 1655
Honra : 20
Data de inscrição : 17/10/2013

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [ZP] Spectador Invisivel

Mensagem por Leozinho em 18/11/2013, 8:40 pm

Zplague12

____________________________________________

avatar
Leozinho
Administrador
Administrador

Masculino Número de Mensagens : 2856
Ammo Packs : 2821
Honra : 75
Data de inscrição : 20/11/2011

Ver perfil do usuário leozinho.zp

Voltar ao Topo Ir em baixo

Re: [ZP] Spectador Invisivel

Mensagem por 0wnderless em 19/11/2013, 1:38 pm

Esse plugin um amigo meu da Romênia que fez, foi feito pra fazer demo de players, Você entra como spectador mas fica na lista ou dos terroristas ou dos ct's, Bem feito.

____________________________________________

avatar
0wnderless
Moderador
Moderador

Masculino Número de Mensagens : 579
Love you Rafaella <3
Ammo Packs : 1849
Honra : 20
Data de inscrição : 24/08/2013

Ver perfil do usuário http://zplague.forumclan.com/ josh.griz1

Voltar ao Topo Ir em baixo

Re: [ZP] Spectador Invisivel

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum