Zplague
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Zplague Entrar

Seu portal de Zombie Plague no Brasil


description[VIP] Menu apenas VIP's Empty[VIP] Menu apenas VIP's

more_horiz

Código:

Comandos: /vipmenu



Oque esse plugin faz?
R:. Abre um menu para VIP'S.

Exemplo:

[Play Team] Menu VIP:

1. Kickar Jogador
2. Transferir jogador de Time

SMA:

Código:

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

#define PLUGIN "Jb Menu VIP"
#define VERSION "1.0"
#define AUTHOR "[S]layer"

#define Flags ADMIN_ALL

#define MAX_PLAYERS 32

new g_menuposition[MAX_PLAYERS+1]
new g_menuplayers[MAX_PLAYERS+1][32]
new g_menuplayersnum[MAX_PLAYERS+1]


public plugin_init()
{
 register_plugin(PLUGIN, VERSION, AUTHOR)
 register_clcmd("say /vipmenu", "menuVIP1")
 register_menucmd(register_menuid("Kick Menu"), 1023, "caseKICK")
 register_menucmd(register_menuid("Tranfer Menu"), 1023, "caseTranfer")
 
}


public menuVIP1(id)
{
 if (!(get_user_flags( id )&ADMIN_RESERVATION)){
 ChatColor(id,"Voce nao tem acesso a esse menu")
 client_print(id, print_center, "Somente VIPs pode acessa esse menu")
 return PLUGIN_HANDLED;
 }
 
new menu32[ 256 ]
 formatex(menu32, 255, "~> Play Team VIP Menu <~")
 new menu35 = menu_create(menu32,"caseMENU")
 
menu_additem(menu35,"Kickar Jogador","1")
 menu_additem(menu35,"Transferir jogador de time","2")
 
menu_display(id, menu35, 0)
 menu_setprop(menu35, MPROP_EXIT, MEXIT_ALL)
 
return PLUGIN_CONTINUE
}

public caseMENU( id, menu, item )
{
 if( item == MENU_EXIT )
 {
 menu_destroy(menu);
 return PLUGIN_HANDLED;
 }
 
new szname[ 33 ]
 get_user_name(id, szname,charsmax( szname ))
 
new data[6], iName[64];
 new iaccess, callback;
 menu_item_getinfo(menu, item, iaccess, data,4, iName, 63, callback);
 new key = str_to_num(data);
 
switch(key)
 {
 case 1: menuKICK(id, g_menuposition[id] = 0)
 case 2: menuTranfe(id, g_menuposition[id] = 0)
 }
 return PLUGIN_CONTINUE;
}


menuKICK(id, pos)
{
 get_players(g_menuplayers[id], g_menuplayersnum[id])

 static menubody[512]
new len = format(menubody, 511, "\wKick Menu^n^n")


 if(pos < 0)  
 return
 
new start = pos * 8
 if(start >= g_menuplayersnum[id])
 start = pos = g_menuposition[id]
 
new end = start + 8
 if(end > g_menuplayersnum[id])
 end = g_menuplayersnum[id]
 
static name[32]
 new b = 0, i
 new keys = MENU_KEY_0
 
for(new a = start; a < end; ++a)
 {
 i = g_menuplayers[id][a]
 get_user_name(i, name, 31)
 
if(i == id)
 {
 ++b
 len += format(menubody[len], 511 - len, "\r#  %s \d%s^n", name, name ? "( Seu Nome )" : "")
 }
 
else
 {
 keys |= (1<<b)
 len += format(menubody[len], 511 - len, "\y%d. \w%s.\w^n",++b, name)
 }
 
}
 
if(end != g_menuplayersnum[id])
{
 format(menubody[len], 511 - len, "^n9. %s...^n0. %s", "Avancar", pos ? "Voltar" : "Sair")
 keys |= MENU_KEY_9
 }
 else
 format(menubody[len], 511-len, "^n0. %s", pos ? "Voltar" : "Sair")
 
show_menu(id, keys, menubody, -1, "Kick Menu")
}

public caseKICK(id, key)
{
 
switch(key)
{
 case 8: menuKICK(id, ++g_menuposition[id])
 case 9: menuKICK(id, --g_menuposition[id])
 default:
{
 new player = g_menuplayers[id][g_menuposition[id] * 8 + key]
 
menuKICK(id, g_menuposition[id])
 

static name[32]
 get_user_name(player, name, 31)
 ChatColor(id, "Voce kikou jogador %s", name)
 server_cmd( "kick #%d ^"Chutado do servidor^"", get_user_userid( player ))
 
new szname[32]
 get_user_name(Flags,szname,31)
 
ChatColor(0, "!yJogador VIP !g%s !ydeu kick no player !t%s",szname, name)
 }
 }
 return PLUGIN_CONTINUE
}

menuTranfe(id, pos)
{
 get_players(g_menuplayers[id], g_menuplayersnum[id])

 static menubody[512]
new len = format(menubody, 511, "\wTranfer Menu^n^n")


 if(pos < 0)  
 return
 
new start = pos * 8
 if(start >= g_menuplayersnum[id])
 start = pos = g_menuposition[id]
 
new end = start + 8
 if(end > g_menuplayersnum[id])
 end = g_menuplayersnum[id]
 
static name[32]
 new b = 0, i
 new keys = MENU_KEY_0
 
for(new a = start; a < end; ++a)
 {
 i = g_menuplayers[id][a]
 get_user_name(i, name, 31)
 
if(i == id)
 {
 ++b
 len += format(menubody[len], 511 - len, "\r#  %s \d%s^n", name, name ? "( Seu Nome )" : "")
 }
 
else
 {
 if(cs_get_user_team( i )== CS_TEAM_CT)
 {
 keys |= (1<<b)
 len += format(menubody[len], 511 - len, "\y%d. \w%s \d( CT ).\w^n",++b, name)
 }
 
if(cs_get_user_team( i )== CS_TEAM_T)
 {
 keys |= (1<<b)
 len += format(menubody[len], 511 - len, "\y%d. \w%s \D( TR ).\w^n",++b, name)
 }
 }
 
}
 
if(end != g_menuplayersnum[id])
{
 format(menubody[len], 511 - len, "^n9. %s...^n0. %s", "Avancar", pos ? "Voltar" : "Sair")
 keys |= MENU_KEY_9
 }
 else
 format(menubody[len], 511-len, "^n0. %s", pos ? "Voltar" : "Sair")
 
show_menu(id, keys, menubody, -1, "Tranfer Menu")
}

public caseTranfer(id, key)
{
 
switch(key)
{
 case 8: menuTranfe(id, ++g_menuposition[id])
 case 9: menuTranfe(id, --g_menuposition[id])
 default:
{
 new player = g_menuplayers[id][g_menuposition[id] * 8 + key]
 
menuTranfe(id, g_menuposition[id])
 
new szname[32]
 get_user_name(Flags,szname,31)
 
static name[32]
 get_user_name(player, name, 31)
 ChatColor(id, "Voce mudou o time do jogador !g%s", name)
 
if(cs_get_user_team( player ) == CS_TEAM_T)
 {
 cs_set_user_team(player, CS_TEAM_CT)
 user_kill(player)
 ChatColor(0, "!yJogador VIP !g%s !ytranferiu o jogador !t%s !ypara CT",szname, name)
 }
 
else
 {
 cs_set_user_team( player, CS_TEAM_T)
 user_kill(player)
 ChatColor(0, "!yJogador VIP !g%s !ytranferiu o jogador !t%s !ypara TR",szname, name)
 }
}
 }
}

stock ChatColor(const id, const input[], any:...)
{
 new count = 1, players[32]
 static msg[191]
 vformat(msg, 190, input, 3)

 replace_all(msg, 190, "!g", "^4")  // Chat Verde
 replace_all(msg, 190, "!y", "^1")  // Chat Normal
 replace_all(msg, 190, "!t", "^3")  // Chat Do Time Tr=Vermelho Ct=Azul Spec=Branco
 replace_all(msg, 190, "!t2", "^0") // Chat Do Time Tr=Vermelho Ct=Azul Spec=Branco

 if (id) players[0] = id; else get_players(players, count, "ch")

 for (new i = 0; i < count; i++)
 {
 if (is_user_connected(players[i]))
 {
 message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
 write_byte(players[i]);
 write_string(msg);
 message_end();
 }
 }
}

description[VIP] Menu apenas VIP's EmptyRe: [VIP] Menu apenas VIP's

more_horiz
Legal cara, este plugin vai ser bem útil para algumas pessoas ^_^

description[VIP] Menu apenas VIP's EmptyRe: [VIP] Menu apenas VIP's

more_horiz
Rrsrs', eu apenas vou pegar o menu de kickar e melhorar :D

description[VIP] Menu apenas VIP's EmptyRe: [VIP] Menu apenas VIP's

more_horiz
Vou postar mais coisas jaja :)

description[VIP] Menu apenas VIP's EmptyRe: [VIP] Menu apenas VIP's

more_horiz
privacy_tip Permissões neste sub-fórum
Não podes responder a tópicos
power_settings_newInicie sessão para responder