Member
Join Date: May 2015
Location: AL-Houceïma, Morroco
|
07-27-2015
, 09:15
[REQ] VIP Menu - Error
|
#1
|
I Have 5 Error On This Plugin
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <colorchat>
#include <fakemeta>
#pragma tabsize 0
new const szPREFIX[] = "^4[R#G]^1"
new bool:Mic[33]
new szInfo1[][] = {
"sv_voiceenable",
"sv_alltalk"
}
new AdminName[33], PlayerName[33]
new g_menuPosition[33]
new g_menuSelect[33][64]
new g_menuUnBanType[33]
new g_menuUnBanLine[33][2]
new g_menuUnBanText[33][8][32]
new g_bannedCfgFile[2][] = {"banned.cfg","listip.cfg"}
new g_coloredMenus
#if cellbits == 32
const OFFSET_CLIPAMMO = 51
#else
const OFFSET_CLIPAMMO = 65
#endif
const OFFSET_LINUX_WEAPONS = 4
new const MAXCLIP[] = { -1, 13, -1, 10, 1, 7, -1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 }
new g_has_unlimited_clip[33], bool:has_clip[33]
public plugin_init( )
{
register_plugin( "\r[R#G] \yVIP Menu", "1.0", "BooHLaaL" )
register_clcmd( "/vmenu", "VIP_Menu", ADMIN_SLAY, "\r[R#G] \yVIP Menu")
RegisterHam(Ham_Spawn, "player", "clips_off", 1)
register_message(get_user_msgid("CurWeapon"), "message_cur_weapon")
register_menucmd(register_menuid("UnBan STEAMID Or IP?"),(1<<0|1<<1|1<<9),"actionUnBanMenuType")
register_menucmd(register_menuid("UnBan Menu"),1023,"actionUnBanMenu")
g_coloredMenus = colored_menus()
}
public VIP_Menu( id )
{
new menu = menu_create( "\r[R#G] \yVIP Menu", "Menu_Handler" );
menu_additem( menu, "\yUnBan Menu^n");
menu_additem( menu, "\wRespawn Player^n");
menu_additem( menu, "\rGet Unlimited Clip^n");
menu_additem( menu, "\wMic For All %s^n", Mic[id] ? "\r[ON]":"\d[OFF]");
menu_additem( menu, "\ySlay Player^n");
menu_additem( menu, "\wRestart Round^n");
menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
menu_display( id, menu, 0);
}
public Menu_Handler( id, menu, item )
{
case 0: UnBan(id)
case 1: ReviveMenu(id)
case 2: client_cmd(id,"Get_Clip")
case 3 {
Mic[id] = !Mic[id];
if(!Mic[id])
Mic_OFF(id)
else
Mic_ON(id)
}
case 4: Slay(id)
case 5: Rs(id)
}
return PLUGIN_HANDLED;
}
/*---------------------------------------------| Slay Menu |--------------------------------------*/
public Slay(id)
{
new playermenu = menu_create( "\r[R#G] \ySlay Menu", "PlayerMenu_Handler" );
new Players[ 32 ], AdminName[ 32 ], szSteamid[ 35 ]
new Player, pnum;
get_players( Players, pnum )
for( new i = 0; i < pnum; i++ )
{
Player = Players[ i ]
get_user_name( Player, AdminName, charsmax( AdminName ))
formatex( szSteamid, charsmax( szSteamid ), "%d", get_user_userid( Player ) );
menu_additem( playermenu, AdminName, szSteamid, 0 );
}
menu_display( id, playermenu, 0 );
}
public PlayerMenu_Handler( id, menu, item )
{
}
new szData[ 6 ], AdminName[ 64 ]
new access, callback;
menu_item_getinfo( menu, item, access, szData, charsmax(szData), AdminName, charsmax(AdminName), callback );
new Steamid = str_to_num( szData );
new Player = find_player( "k", Steamid );
if ( Player )
{
get_user_name( Player, PlayerName, charsmax( PlayerName ) )
get_user_name( id, AdminName, charsmax( AdminName ) )
if( Slay == true )
{
ColorChat( 0, GREEN, "%s VIP ^4%s ^1Slay Player ^4%s ^1!", szPREFIX, AdminName, PlayerName)
server_cmd( "slay #%d",get_user_name )
}
}
return PLUGIN_HANDLED;
}
/*---------------------------------------------| Restart Round |----------------------------------*/
public Rs(id)
{
static AdminName[32];
get_user_name(id, AdminName , 33)
server_cmd("sv_restartround 1")
ColorChat(id,GREEN,"%s ^1VIP ^4%s ^1Restart The Round ^4!", szPREFIX, AdminName)
}
/*---------------------------------------------| Mic [ON] |---------------------------------------*/
public Mic_ON(id)
{
if (get_user_flags(id) & ADMIN_KICK )
{
get_user_name(id, AdminName, 32)
for ( new i = 0; i < sizeof ( szInfo1 ); i++ )
set_cvar_num(szInfo1[i],1)
ColorChat(0, GREEN, "^4[R#G] ^1VIP ^4%s ^1Turned The Mic ^4[ON]^1 For All Players ^4!",AdminName)
set_cvar_num("sv_voicequality", 5)
}
VIP_Menu(id)
}
/*---------------------------------------------| Mic [OFF] |--------------------------------------*/
public Mic_OFF(id)
{
if (get_user_flags(id) & ADMIN_KICK )
{
get_user_name(id, AdminName, 32)
for ( new i = 0; i < sizeof ( szInfo1 ); i++ )
set_cvar_num(szInfo1[i],0)
ColorChat(0, GREEN, "^4[R#G] ^1VIP ^4%s ^1Turned The Mic ^4[OFF]^1 For All Players ^4!",AdminName)
}
VIP_Menu(id)
}
/*--------------------------------------------| UnBan Menu |--------------------------------------*/
public UnBan(id,key) {
switch(key) {
case 8: {
displayUnBanMenu(id, ++g_menuPosition[id])
}
case 9: {
g_menuUnBanLine[id][0] = g_menuUnBanLine[id][0] - (8 + g_menuUnBanLine[id][1])
if(g_menuUnBanLine[id][0] < 0) g_menuUnBanLine[id][0] = 0
displayUnBanMenu(id, --g_menuPosition[id])
}
default: {
new name[32], authid[32], ipaddress[24]
get_user_authid(id, authid, 31)
get_user_name(id, name, 31)
get_user_ip(id, ipaddress, 23, 1)
log_amx("UnBan: ^"%s<%d><%s><%s>^" unban ^"%s^"", name,get_user_userid(id),authid,ipaddress,g_menuUnBanText[id][key])
switch (get_cvar_num("amx_show_activity"))
{
case 2: ColorChat(0, GREEN, "%s Admin ^4%s ^1: UnBan ^4%s ^1!", szPREFIX, name, g_menuUnBanText[id][key])
case 1: ColorChat(0, GREEN, "%s Admin : UnBan ^4%s ^1!", szPREFIX, g_menuUnBanText[id][key])
}
if(g_menuUnBanType[id] == 1) {
server_cmd("removeip ^"%s^"; writeip", g_menuUnBanText[id][key])
server_exec()
console_print(id, "IP ^"%s^" Removed From Ban List", g_menuUnBanText[id][key])
}
else {
server_cmd("removeid %s; writeid", g_menuUnBanText[id][key])
console_print(id, "Authid ^"%s^" Removed From Ban List", g_menuUnBanText[id][key])
}
g_menuUnBanLine[id][0] = g_menuUnBanLine[id][1] = 0
displayUnBanMenu(id, g_menuPosition[id] = 0)
}
}
return PLUGIN_HANDLED
}
checkSTEAMID(steamid[]) {
new len = strlen(steamid)
if(len > 10 && equali(steamid, "STEAM_", 6) && steamid[7] == ':' && steamid[9] == ':' && str_to_num(steamid[10])) {
return 1
}
return 0
}
checkIP(ip[]) {
new len = strlen(ip)
new dots = 0, i = 0
while(isdigit(ip[i]) || ip[i]=='.')
if(ip[i++] == '.')
++dots
if(i == len && dots == 3) {
return 1
}
return 0
}
displayUnBanMenu(id,pos) {
if(pos < 0)
return
new menuBody[512]
new b = 0
new len = format(menuBody, 511, g_coloredMenus ? "\r[R#G] \yUnBan Menu\R%d^n\w^n" : "\r[R#G] \yUnBan Menu %d^n^n", pos + 1)
new keys = (1<<9)
new textlen, line
new type = g_menuUnBanType[id]
new temp[32], banTime[32], disable
if(file_exists(g_bannedCfgFile[type])) {
line = g_menuUnBanLine[id][0]
while((line = read_file(g_bannedCfgFile[type], line, g_menuSelect[id], 63, textlen))) {
temp[0] = '^0'
banTime[0] = '^0'
g_menuUnBanText[id][b][0] = '^0'
disable = 0
if(textlen < 9)
disable = 1
else if(parse(g_menuSelect[id], temp, 31, banTime, 31, g_menuUnBanText[id][b], 31) != 3)
disable = 1
else if((type == 1 && !checkIP(g_menuUnBanText[id][b])) || (type == 0 && !checkSTEAMID(g_menuUnBanText[id][b])))
disable = 1
if(disable == 0) {
keys |= (1<<b)
if(g_coloredMenus)
len += format(menuBody[len], 511-len, "%d. %s\R\r%s^n\w", b, g_menuUnBanText[id][b++], banTime)
else
len += format(menuBody[len], 511-len, "%d. %s ( %s )^n", b, g_menuUnBanText[id][b++], banTime)
}
else {
if(g_coloredMenus)
len += format(menuBody[len], 511-len, "\d%d. %s^n\w", b, g_menuUnBanText[id][b++])
else
len += format(menuBody[len], 511-len, "#. %s^n", b, g_menuUnBanText[id][b++])
}
if(b == 8) break
}
if(b == 8 && read_file(g_bannedCfgFile[type], line, g_menuSelect[id], 63, textlen) > 0) {
format(menuBody[len], 511-len, "^n9. More...^n0. %s",id, pos ? "Back" : "Exit",id)
keys |= (1<<8)
}
else
format(menuBody[len], 511-len, "^n0. %s", pos ? "Back" : "Exit",id)
g_menuUnBanLine[id][1] = line - g_menuUnBanLine[id][0]
g_menuUnBanLine[id][0] = line
show_menu(id, keys, menuBody, -1, "UnBan Menu")
}
return
}
public actionUnBanMenuType(id,key) {
switch(key) {
case 9: return PLUGIN_HANDLED
default: {
g_menuUnBanType[id] = key // 0 = STEAMID, 1 = IP
g_menuUnBanLine[id][0] = g_menuUnBanLine[id][1] = 0
displayUnBanMenu(id, g_menuPosition[id] = 0)
}
}
return PLUGIN_HANDLED
}
displayUnBanMenuType(id) {
new menuBody[512]
new len = format(menuBody, 511, g_coloredMenus ? "\r[R#G] \yUnBan Steam-ID Or IP ?^n\w^n" :"\r[R#G] \yUnBan Steam-ID Or IP ?^n^n",id)
new keys = (1<<0)|(1<<1)|(1<<9)
len += format(menuBody[len], 511-len, "1. STEAMID^n",id)
len += format(menuBody[len], 511-len, "2. IP^n",id)
format(menuBody[len], 511-len, "^n0. Exit",id)
show_menu(id, keys, menuBody, -1, "UnBan STEAMID Or IP?")
}
public UnBan(id,level,cid) {
if(!cmd_access(id,level,cid,1))
return PLUGIN_HANDLED
g_menuUnBanType[id] = -1
displayUnBanMenuType(id)
return PLUGIN_HANDLED
}
/*---------------------------------------------| Respawn Menu |-----------------------------------*/
public ReviveMenu(id)
{
new RevivePlayer = menu_create ("\r[R#G] \wRespawn Menu", "HandleRevive")
new num, players[32], tempid, szTempID [10], tempname [32]
get_players (players, num, "cb")
for (new i = 0; i < num; i++)
{
tempid = players [ i ]
get_user_name (tempid, tempname, 31)
num_to_str (tempid, szTempID, 9)
menu_additem (RevivePlayer, tempname, szTempID, 0)
}
menu_display (id, RevivePlayer)
return PLUGIN_HANDLED
}
public HandleRevive(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], name[64]
new access, callback
menu_item_getinfo (menu, item, access, data, 5, name, 63, callback)
new tempid = str_to_num (data)
get_user_name(id, AdminName, 32)
get_user_name(tempid, PlayerName, 32)
ExecuteHamB(Ham_CS_RoundRespawn, tempid)
ColorChat(0, GREEN, "%s Admin ^4%s ^1Respawn Player ^4%s ^1!",szPREFIX, AdminName, PlayerName)
ReviveMenu(id)
return PLUGIN_CONTINUE
}
/*---------------------------------------------| Get Unlimited Clip |-----------------------------*/
public client_connect(id)
{
if(get_user_flags(id) & ADMIN_KICK || has_clip[id])
{
has_clip[id]=true
}
}
public client_PreThink(id)
{
if(get_user_flags(id) & ADMIN_KICK || has_clip[id])
{
g_has_unlimited_clip[id] = true
}
}
public clips_off(id)
{
for (new id; id <= 32; id++) g_has_unlimited_clip[id] = false;
}
// Unlimited clip code
public message_cur_weapon(msg_id, msg_dest, msg_entity)
{
// Player doesn't have the unlimited clip upgrade
if (!g_has_unlimited_clip[msg_entity])
return;
// Player not alive or not an active weapon
if (!is_user_alive(msg_entity) || get_msg_arg_int(1) != 1)
return;
static weapon, clip
weapon = get_msg_arg_int(2) // get weapon ID
clip = get_msg_arg_int(3) // get weapon clip
// Unlimited Clip Ammo
if (MAXCLIP[weapon] > 2) // skip grenades
{
set_msg_arg_int(3, get_msg_argtype(3), MAXCLIP[weapon])
if (clip < 2)
{
// Get the weapon entity
static wname[32], weapon_ent
get_weaponname(weapon, wname, sizeof wname - 1)
weapon_ent = fm_find_ent_by_owner(-1, wname, msg_entity)
// Set max clip on weapon
fm_set_weapon_ammo(weapon_ent, MAXCLIP[weapon])
}
}
}
stock fm_find_ent_by_owner(entity, const classname[], owner)
{
while ((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {}
return entity;
}
stock fm_set_weapon_ammo(entity, amount)
{
set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS);
}
public plugin_natives() {
register_native("Get_Clip", "native_set_user_clip", 1);
}
public native_set_user_clip(id, amount)
{
g_has_unlimited_clip[id] = amount;
}
Error :
Code:
VIP_Menu.sma(71) : error 014: invalid statement; not in switch
VIP_Menu.sma(71) : warning 215: expression has no effect
VIP_Menu.sma(71) : error 001: expected token: ";", but found ":"
VIP_Menu.sma(71) : error 029: invalid expression, assumed zero
VIP_Menu.sma(71) : fatal error 107: too many error messages on one line
__________________
AL-Houceïma
[RiF#GanG] - [RiF#BoYs] - [Bario#Briro] - [Morroco]
|
|