Ребят, эсть такая проблема есть джаил сервер точнее 2 сервера (1 сборка и 2 сборка).
На 1 сборке есть хорошое меню привилегий но когда ставлю на 2 сборку джайла оно не работает. Не могу понять почему...
Исходник меню есть:
Код:
#include <amxmodx>
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <WPMGPrintChatColor>
#include <jb_mod>
#include < jb_money >
new MaxPlayers
new bool:PlayerFreeze[33]
new str[33];
new AdminSpawn[33]
new AdminMoney[33]
new AdminGrenade[33]
new AdminNight[33]
new bool:AdminGravity[33]
new bool:AdminSpeed[33]
new bool:AdminRedening[33]
new VipSpawn[33]
new VipMoney[33]
new VipHealth[33]
//new VipWeapon[33]
new VipFreeDay[33]
new VipWantedOff[33]
new VipHealthUP[33]
new Electro[33]
new ChainSaw[33]
new bool:VipGravity[33]
new bool:VipSpeed[33]
new bool:VipHands[33]
new bool:VipRedening[33]
new bool:VipBhop[33]
new round[33]
new cases = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9)
public plugin_init()
{
register_plugin("[JB] Admin System", "1.0", "Ene[r]gy132")
register_dictionary("jb_admin_system.txt")
RegisterHam(Ham_Spawn, "player", "Player_Spawn", 1)
register_logevent("Round_Start", 2, "1=Round_Start")
register_event("CurWeapon", "Event_ResetSpeed", "be", "1=1")
register_message(84, "MessageScoreAttrib")
MaxPlayers = get_maxplayers()
register_clcmd("Amenu", "cmd_adminmenu")
register_clcmd("amxmodmenu", "amxmodmenu")
register_menu("menu_f5", cases, "choice_adminmenu")
register_menu("amxmodmenu", cases, "choice_amxmodmenu")
register_menu("vip_menu", cases, "choice_vip_menu")
register_menu("super_admin_menu", cases, "choice_super_admin_menu")
register_menu("Carb", cases, "carb_menu")
}
public MessageScoreAttrib(iMsgId, iDest, iReceiver)
{
new id = get_msg_arg_int(1)
if((get_user_flags(id) & ADMIN_LEVEL_C) && !get_msg_arg_int(2)) set_msg_arg_int(2,ARG_BYTE,4)
}
public plugin_natives()
{
register_native("jbu_get_user_vip_hands", "native_jbu_get_user_vip_hands", 1)
}
public native_jbu_get_user_vip_hands(id)
{
return VipHands[id]
}
public Event_ResetSpeed(id)
{
if(AdminSpeed[id] || VipSpeed[id])
{
set_user_maxspeed(id, 350.0)
}
}
public Player_Spawn(id)
{
if(!is_user_connected(id))
return HAM_IGNORED
AdminGravity[id] = false
AdminSpeed[id] = false
if(AdminRedening[id])
{
AdminRedening[id] = false
set_rendering(id, kRenderFxNone, 255, 255, 255, kRenderNormal, 16)
}
if(PlayerFreeze[id])
{
PlayerFreeze[id] = false
set_pev(id, pev_flags, pev(id, pev_flags) & ~FL_FROZEN)
set_rendering(id, kRenderFxNone, 255, 255, 255, kRenderNormal, 16)
}
VipGravity[id] = false
VipSpeed[id] = false
VipBhop[id] = false
if(VipRedening[id])
{
VipRedening[id] = false
set_rendering(id, kRenderFxNone, 255, 255, 255, kRenderNormal, 16)
}
return HAM_IGNORED
}
public Round_Start()
{
new id
for(id = 1; id <= MaxPlayers; id++)
{
if(is_user_connected(id))
{
AdminSpawn[id] = 1
AdminGrenade[id] = 1
AdminNight[id] = 1
AdminGravity[id] = false
AdminSpeed[id] = false
VipSpawn[id] = 2
VipHealth[id] = 1
VipWantedOff[id] = 1
VipHealthUP[id] = 1
if(AdminMoney[id]) AdminMoney[id]--
if(VipMoney[id]) VipMoney[id]--
if(VipFreeDay[id]) VipFreeDay[id]--
if(ChainSaw[id]) ChainSaw[id]--
if(Electro[id]) Electro[id]--
VipGravity[id] = false
VipSpeed[id] = false
VipBhop[id] = false
VipRedening[id] = false
round[id] ++
}
}
}
public client_connect(id)
{
AdminSpawn[id] = 1
AdminMoney[id] = false
AdminGrenade[id] = 1
AdminNight[id] = 1
AdminGravity[id] = false
AdminSpeed[id] = false
AdminRedening[id] = false
PlayerFreeze[id] = false
VipSpawn[id] = 2
VipMoney[id] = false
VipHealth[id] = 1
VipFreeDay[id] = 0
VipWantedOff[id] = 1
VipHealthUP[id] = 1
ChainSaw[id] = 6
Electro[id] = 3
VipGravity[id] = false
VipSpeed[id] = false
VipBhop[id] = false
VipRedening[id] = false
VipHands[id] = false
round[id] = 0
}
public cmd_adminmenu(id)
{
new menu[512], len
new szName[32]; get_user_name(id, szName, charsmax(szName)); //Для получения ника игрока
len = 0
if(get_user_flags(id) & ADMIN_IMMUNITY)
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_SZD", szName)
else if(get_user_flags(id) & ADMIN_SLAY)
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_SMT", szName)
else if(get_user_flags(id) & ADMIN_KICK)
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_ADM", szName)
else if(get_user_flags(id) & ADMIN_LEVEL_C)
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_VIP", szName)
else
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_NAME", szName)
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_F5_MENU_1")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_F5_MENU_2")
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_3")
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_4")
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_F5_MENU_5")
len += formatex(menu[len], charsmax(menu) - len, "^n%L^n", LANG_SERVER, "JB_F5_MENU_EXIT")
show_menu(id, cases, menu, -1, "menu_f5")
return PLUGIN_HANDLED
}
public choice_adminmenu(id, key)
{
switch(key)
{
case 0: amxmodmenu(id)
case 1:
{
if (jbu_game())
{
PrintChatColor(id, _, "!g[Сервер] !yНедоступно во время !g[---> ИГР <---]")
return PLUGIN_HANDLED
} else admin_menu(id)
}
case 2:
{
if (jbu_game())
{
PrintChatColor(id, _, "!g[Сервер] !yНедоступно во время !g[---> ИГР <---]")
return PLUGIN_HANDLED
} else open_s_menu(id)
}
case 3: open_give_menu(id)
case 4: client_cmd(id, "say /hook")
}
return PLUGIN_HANDLED
}
public amxmodmenu(id)
{
new szName[32]; get_user_name(id, szName, charsmax(szName)); //Для получения ника игрока
new menu[512], len
len = 0
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_AMXMOD_MENU_NAME", szName)
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_1")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_2")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_3")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_4")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_5")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_6")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_7")
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_AMXMOD_MENU_8")
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_AMXMOD_MENU_9")
len += formatex(menu[len], charsmax(menu) - len, "^n%L^n", LANG_SERVER, "JB_AMXMOD_MENU_EXIT")
show_menu(id, cases, menu, -1, "amxmodmenu")
return PLUGIN_HANDLED
}
public choice_amxmodmenu(id, key)
{
if(!(get_user_flags(id) & ADMIN_BAN))
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_1")
return PLUGIN_HANDLED
}
switch(key)
{
case 0: client_cmd(id, "amx_kickmenu")
case 1: client_cmd(id, "amx_banmenu")
case 2: client_cmd(id, "amx_slapmenu")
case 3: client_cmd(id, "amx_teammenu")
case 4: client_cmd(id, "amx_mapmenu")
case 5: client_cmd(id, "amx_votemapmenu")
case 6: client_cmd(id, "say /block")
case 7: client_cmd(id, "say /unblock")
case 8: client_cmd(id, "say /voice")
}
return PLUGIN_HANDLED
}
public admin_menu(id)
{
if(get_user_flags(id) & ADMIN_LEVEL_C && round[id] < 4)
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_MENU_OFF", 4-round[id])
return PLUGIN_HANDLED
}
new szName[32]; get_user_name(id, szName, charsmax(szName)); //Для получения ника игрока
new menu[512], len
len = 0
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_VIP_MENU_NAME", szName)
if(AdminSpawn[id] == 1 && !is_user_alive(id))
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_1", AdminSpawn[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_1_OFF", AdminSpawn[id])
}
if(!AdminMoney[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_2", AdminMoney[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_2_OFF", AdminMoney[id])
}
if(is_user_alive(id))
{
if(!AdminGravity[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_3")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_3_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_3_OFF_3")
}
if(is_user_alive(id))
{
if(!AdminSpeed[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_4")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_4_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_4_OFF_4")
}
if(AdminGrenade[id] == 1 && is_user_alive(id))
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_5", AdminGrenade[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_5_OFF", AdminGrenade[id])
}
if(AdminNight[id] == 1 && is_user_alive(id))
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_6", AdminNight[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_VIP_MENU_6_OFF", AdminNight[id])
}
if(is_user_alive(id))
{
if(!AdminRedening[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_VIP_MENU_7")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_VIP_MENU_7_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_VIP_MENU_7_OFF_7")
}
if(is_user_alive(id))
{
if(!jbu_get_user_otvertka(id))
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_VIP_MENU_8")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_VIP_MENU_8_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_VIP_MENU_8_OFF_8")
}
len += formatex(menu[len], charsmax(menu) - len, "^n%L^n", LANG_SERVER, "JB_VIP_MENU_EXIT")
show_menu(id, cases, menu, -1, "vip_menu")
return PLUGIN_HANDLED
}
public choice_vip_menu(id, key)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_C))
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_1")
return PLUGIN_HANDLED
}
new Name[32]
get_user_name(id, Name, charsmax(Name))
switch(key)
{
case 0:
{
if(get_user_team(id) != 3)
{
if(!is_user_alive(id))
{
if(AdminSpawn[id] == 1)
{
if(get_user_team(id) == 1 && fnGetAliveNum(1) <= 2) //При онлайне меньше или равному 2
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_OFF_SPAWN")
admin_menu(id)
return PLUGIN_HANDLED;
}
AdminSpawn[id]--
ExecuteHam(Ham_CS_RoundRespawn, id)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_SPAWN", Name)
admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_3")
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_2")
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_6")
}
case 1:
{
if(!AdminMoney[id])
{
AdminMoney[id] = 5
jb_set_user_money(id, jb_get_user_money(id) + random_num(1, 50))
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_MONEY", Name)
admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_5")
}
case 2:
{
if(is_user_alive(id))
{
if(!AdminGravity[id])
{
AdminGravity[id] = true
set_user_gravity(id, 0.4)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_GRAVITY_ON", Name)
admin_menu(id)
}
else
{
AdminGravity[id] = false
set_user_gravity(id, 1.0)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_GRAVITY_OFF", Name)
admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
case 3:
{
if(is_user_alive(id))
{
if(!AdminSpeed[id])
{
AdminSpeed[id] = true
set_user_maxspeed(id, 350.0)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_SPEED_ON", Name)
admin_menu(id)
}
else
{
AdminSpeed[id] = false
set_user_maxspeed(id, 250.0)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_SPEED_OFF", Name)
admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
case 4:
{
if(is_user_alive(id))
{
if(AdminGrenade[id] == 1)
{
AdminGrenade[id]--
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
give_item(id, "weapon_smokegrenade")
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_GRENADE", Name)
admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_3")
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
case 5:
{
if(is_user_alive(id))
{
if(AdminNight[id] == 1)
{
AdminNight[id]--
cs_set_user_nvg(id, 1)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_NIGHT", Name)
admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_3")
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
case 6:
{
if(is_user_alive(id))
{
if(!AdminRedening[id])
{
AdminRedening[id] = true
set_user_rendering(id, kRenderFxGlowShell, random_num(0, 255), random_num(0, 255), random_num(0, 255), kRenderNormal, 100)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_REDENING_ON", Name)
admin_menu(id)
}
else
{
AdminRedening[id] = false
set_rendering(id, kRenderFxNone, 255, 255, 255, kRenderNormal, 16)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_REDENING_OFF", Name)
admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
case 7:
{
if(is_user_alive(id))
{
if(!jbu_get_user_otvertka(id))
{
jbu_set_user_otvertka(id);
jbu_set_user_weapon(id);
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_OTVERTKA_ON", Name)
admin_menu(id)
}
else
{
jbu_unset_user_otvertka(id);
jbu_set_user_weapon(id);
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_OTVERTKA_OFF", Name)
admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
}
return PLUGIN_HANDLED
}
public open_s_menu(id)
{
str[id] = 0;
super_admin_menu(id)
}
public super_admin_menu(id)
{
if(get_user_flags(id) & ADMIN_LEVEL_E && round[id] < 4)
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_MENU_OFF", 4-round[id])
return PLUGIN_HANDLED
}
new szName[32]; get_user_name(id, szName, charsmax(szName)); //Для получения ника игрока
new menu[512], len
len = 0
len += formatex(menu[len], charsmax(menu) - len, "%L^n^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_NAME", szName)
switch(str[id])
{
case 0:
{
if(!is_user_alive(id) && VipSpawn[id] > 0)
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_1_MENU_1", VipSpawn[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_1_MENU_1_OFF", VipSpawn[id])
}
if(!VipMoney[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_2", VipMoney[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_2_OFF", VipMoney[id])
}
if(VipHealth[id] == 1 && is_user_alive(id))
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_3", VipHealth[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_3_OFF", VipHealth[id])
}
if(VipFreeDay[id] == 0 && is_user_alive(id) && !jbu_get_user_wanted(id) && !jbu_get_user_freeday(id) && jbu_day() != 0 && !jbu_freeday() && cs_get_user_team(id) == CS_TEAM_T)
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_4", VipFreeDay[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_4_OFF", VipFreeDay[id])
}
if(VipWantedOff[id] == 1 && is_user_alive(id) && jbu_get_user_wanted(id))
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_5", VipWantedOff[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_5_OFF", VipWantedOff[id])
}
if(VipHealthUP[id] == 1 && is_user_alive(id) && get_user_health(id) < 100)
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_6", VipHealthUP[id])
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_6_OFF", VipHealthUP[id])
}
if(is_user_alive(id))
{
if(!VipGravity[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_7")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_7_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_7_OFF_2")
}
if(is_user_alive(id))
{
if(!VipSpeed[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_8")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_8_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_8_OFF_3")
}
len += formatex(menu[len], charsmax(menu) - len, "^n%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_NEXT")
}
case 1:
{
if(is_user_alive(id))
{
if(!VipBhop[id])
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_9")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_9_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_9_OFF_4")
}
if(is_user_alive(id))
{
if(!jbu_get_user_bayonet(id))
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_10")
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_10_OFF")
}
}
else
{
len += formatex(menu[len], charsmax(menu) - len, "%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_10_OFF_5")
}
len += formatex(menu[len], charsmax(menu) - len, "^n%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_AGO")
}
}
len += formatex(menu[len], charsmax(menu) - len, "^n%L^n", LANG_SERVER, "JB_SUPER_ADMIN_MENU_EXIT")
show_menu(id, cases, menu, -1, "super_admin_menu")
return PLUGIN_HANDLED
}
public choice_super_admin_menu(id, key)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_E))
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_1")
return PLUGIN_HANDLED
}
new Name[32]
get_user_name(id, Name, charsmax(Name))
switch(key)
{
case 0:
{
switch(str[id])
{
case 0:
{
if(get_user_team(id) != 3)
{
if(!is_user_alive(id))
{
if(VipSpawn[id] > 0)
{
if(get_user_team(id) == 1 && fnGetAliveNum(1) <= 2) //При онлайне меньше или равному 2
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_OFF_SPAWN")
super_admin_menu(id)
return PLUGIN_HANDLED;
}
VipSpawn[id]--
ExecuteHam(Ham_CS_RoundRespawn, id)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_SPAWN", Name)
super_admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_5")
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_2")
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_6")
}
case 1:
{
if(is_user_alive(id))
{
if(!VipBhop[id])
{
VipBhop[id] = true
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_BHOP_ON", Name)
super_admin_menu(id)
}
else
{
VipBhop[id] = false
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_BHOP_OFF", Name)
super_admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
}
}
case 1:
{
switch(str[id])
{
case 0:
{
if(!VipMoney[id])
{
VipMoney[id] = 7
jb_set_user_money(id, jb_get_user_money(id) + random_num(1, 100))
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_MONEY", Name)
super_admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_1", Name)
}
case 1:
{
if(is_user_alive(id))
{
if(!jbu_get_user_bayonet(id))
{
jbu_set_user_bayonet(id);
jbu_set_user_weapon(id);
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_BAYONET_ON", Name)
super_admin_menu(id)
}
else
{
jbu_unset_user_bayonet(id);
jbu_set_user_weapon(id);
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_BAYONET_OFF", Name)
super_admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
}
}
case 2:
{
switch(str[id])
{
case 0:
{
if(is_user_alive(id))
{
if(VipHealth[id] == 1)
{
VipHealth[id]--
set_user_health(id, 250)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_HEALTH", Name)
super_admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_1", Name)
}
else PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_2", Name)
}
}
}
case 3:
{
switch(str[id])
{
case 0:
{
if(is_user_alive(id))
{
if(!jbu_get_user_wanted(id) && !jbu_get_user_freeday(id) && jbu_day() != 0 && !jbu_freeday() && cs_get_user_team(id) == CS_TEAM_T)
{
if(VipFreeDay[id] == 0)
{
VipFreeDay[id] = 5
jbu_set_user_freeday(id)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_FREEDAY", Name)
super_admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_1", Name)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_4", Name)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_2", Name)
}
}
}
case 4:
{
switch(str[id])
{
case 0:
{
if(is_user_alive(id))
{
if(jbu_get_user_wanted(id))
{
if(VipWantedOff[id] == 1)
{
VipWantedOff[id]--
jbu_set_user_wanted_off(id)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_WANTED_OFF", Name)
super_admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_1", Name)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_4", Name)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_2", Name)
}
}
}
case 5:
{
switch(str[id])
{
case 0:
{
if(is_user_alive(id))
{
if(get_user_health(id) < 100)
{
if(VipHealthUP[id] == 1)
{
VipHealthUP[id]--
set_user_health(id, 100)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_HEALTH_UP", Name)
super_admin_menu(id)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_1", Name)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_4", Name)
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_VIP_CHAT_2", Name)
}
}
}
case 6:
{
switch(str[id])
{
case 0:
{
if(is_user_alive(id))
{
if(!VipGravity[id])
{
VipGravity[id] = true
set_user_gravity(id, 0.3)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_GRAVITY_ON", Name)
super_admin_menu(id)
}
else
{
VipGravity[id] = false
set_user_gravity(id, 1.0)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_GRAVITY_OFF", Name)
super_admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
}
}
case 7:
{
switch(str[id])
{
case 0:
{
if(is_user_alive(id))
{
if(!VipSpeed[id])
{
VipSpeed[id] = true
set_user_maxspeed(id, 350.0)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_SPEED_ON", Name)
super_admin_menu(id)
}
else
{
VipSpeed[id] = false
set_user_maxspeed(id, 250.0)
PrintChatColor(0, _, "%L", LANG_SERVER, "JB_VIP_CHAT_SPEED_OFF", Name)
super_admin_menu(id)
}
}
else
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_4")
}
}
}
case 8:
{
switch(str[id])
{
case 0: str[id] ++;
case 1: str[id] --;
}
super_admin_menu(id)
}
}
return PLUGIN_HANDLED
}
public carb_menu_id(id)
{
new menu[512], len
len = 0
len += formatex(menu[len], charsmax(menu) - len, "\yВ Разработке! меню \r[New*]^n^n")
len += formatex(menu[len], charsmax(menu) - len, "\y[1]\w Воскресить игрока ^n")
if(is_user_alive(id))
{
if(!ChainSaw[id] && cs_get_user_team(id) == CS_TEAM_T) len += formatex(menu[len], charsmax(menu) - len, "\y[2]\w Бензопила^n")
else if (cs_get_user_team(id) == CS_TEAM_CT) len += formatex(menu[len], charsmax(menu) - len, "\d[2] Бензопила \r(Только для зеков)^n")
else len += formatex(menu[len], charsmax(menu) - len, "\d[2] Бензопила \r[%i]^n", ChainSaw[id])
} else len += formatex(menu[len], charsmax(menu) - len, "\d[2] Бензопила^n")
if(is_user_alive(id))
{
if(!Electro[id] && cs_get_user_team(id) == CS_TEAM_CT) len += formatex(menu[len], charsmax(menu) - len, "\y[3]\w Электрошокер^n")
else if (cs_get_user_team(id) == CS_TEAM_T) len += formatex(menu[len], charsmax(menu) - len, "\d[3] Электрошокер \r(Только для охраны)^n")
else len += formatex(menu[len], charsmax(menu) - len, "\d[3] Электрошокер \r[%i]^n", Electro[id])
} else len += formatex(menu[len], charsmax(menu) - len, "\d[3] Электрошокер ^n")
if(is_user_alive(id))
{
if(!VipHands[id]) len += formatex(menu[len], charsmax(menu) - len, "\y[4] \wПерчатки \r[Выкл]^n")
else len += formatex(menu[len], charsmax(menu) - len, "\y[4] \wПерчатки \r[Вкл]^n")
} else len += formatex(menu[len], charsmax(menu) - len, "\d[4] Перчатки [Выкл]^n")
len += formatex(menu[len], charsmax(menu) - len, "^n\y[0] \wВыход^n")
show_menu(id, cases, menu, -1, "Carb")
return PLUGIN_HANDLED
}
public carb_menu(id, key)
{
if(!(get_user_flags(id) & ADMIN_IMMUNITY))
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_1")
return PLUGIN_HANDLED
}
new Name[32]
get_user_name(id, Name, charsmax(Name))
switch(key)
{
case 0: respawnmenu(id)
case 1:
{
if (jbu_game())
{
PrintChatColor(id, _, "!g[Сервер] !yНедоступно!")
return PLUGIN_HANDLED
}
if(is_user_alive(id))
{
if(cs_get_user_team(id) == CS_TEAM_T)
{
if(!ChainSaw[id])
{
jbu_set_user_benzopila(id)
jbu_set_user_weapon(id)
ChainSaw[id] = 6
return PLUGIN_HANDLED
}
else PrintChatColor(0, _, "!g[Сервер] !yБудет доступно через!g %i!y раундов", ChainSaw[id])
}
}
else PrintChatColor(id, _, "!g[Сервер] !yДоступно только для живых")
}
case 2:
{
if (jbu_game())
{
PrintChatColor(id, _, "!g[Сервер] !yНедоступно!")
return PLUGIN_HANDLED
}
if(is_user_alive(id))
{
if(cs_get_user_team(id) == CS_TEAM_CT)
{
if(!Electro[id])
{
jbu_set_user_electro(id)
jbu_set_user_weapon(id)
Electro[id] = 3
return PLUGIN_HANDLED
}
else PrintChatColor(0, _, "!g[Сервер] !yБудет доступно через!g %i!y раундов", Electro[id])
}
}
else PrintChatColor(id, _, "!g[Сервер] !yДоступно только для живых")
}
case 3:
{
if (jbu_game())
{
PrintChatColor(id, _, "!g[Сервер] !yНедоступно!")
return PLUGIN_HANDLED
}
if(is_user_alive(id))
{
if(!VipHands[id])
{
VipHands[id] = true
jbu_set_user_weapon(id)
PrintChatColor(0, _, "!g[Сервер] !tВ Разработке! !g%s !yвключил !gПерчатки", Name)
}
else
{
VipHands[id] = false
jbu_set_user_weapon(id)
}
}
else PrintChatColor(id, _, "!g[Сервер] !yДоступно только для живых")
}
}
return PLUGIN_HANDLED
}
public respawnmenu(id) {
if(!(get_user_flags(id) & ADMIN_IMMUNITY))
{
PrintChatColor(id, _, "%L", LANG_SERVER, "JB_ADMIN_CHAT_1")
return PLUGIN_HANDLED
}
new s_Players[32], i_Num, i_Player, s_Name[32], s_Player[10], total
get_players(s_Players, i_Num)
new s_menu = menu_create("\yВоскресить игрока", "respawnmenu_handler")
for (new i; i < i_Num; i++) {
i_Player = s_Players[i]
get_user_name(i_Player, s_Name, charsmax(s_Name))
num_to_str(i_Player, s_Player, charsmax(s_Player))
if(!is_user_alive(i_Player)) {
menu_additem(s_menu, s_Name, s_Player, 0)
total++
}
}
if(!total) PrintChatColor(id, _, "!g[Сервер] !yМёртвые игроки отсутствуют")
menu_setprop(s_menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(s_menu, MPROP_NEXTNAME, "Далее")
menu_setprop(s_menu, MPROP_BACKNAME, "Назад")
menu_setprop(s_menu, MPROP_EXITNAME, "Выход")
menu_display(id, s_menu, 0)
return PLUGIN_HANDLED
}
public respawnmenu_handler(id, menu, item) {
if (item == MENU_EXIT) {
menu_destroy(menu)
return PLUGIN_HANDLED
}
new s_Data[6], s_Name[64], i_Access, i_Callback, name[64]
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Player = str_to_num(s_Data)
if(is_user_connected(i_Player) && !is_user_alive(i_Player) && (get_user_team(i_Player) == 1 || get_user_team(i_Player) == 2)){
ExecuteHamB(Ham_CS_RoundRespawn, i_Player)
get_user_name(i_Player, s_Name, charsmax(s_Name))
get_user_name(id, name, charsmax(name))
PrintChatColor(id, _, "!g[Сервер] !tВ Разработке!!g %s !yвоскресил игрока !g%s", name, s_Name)
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public client_PreThink(id)
{
if(!VipBhop[id])
return PLUGIN_CONTINUE
entity_set_float(id, EV_FL_fuser2, 0.0)
if(entity_get_int(id, EV_INT_button) & 2)
{
new flags = entity_get_int(id, EV_INT_flags)
if(flags & FL_WATERJUMP)
return PLUGIN_CONTINUE
if(entity_get_int(id, EV_INT_waterlevel) >= 2)
return PLUGIN_CONTINUE
if(!(flags & FL_ONGROUND))
return PLUGIN_CONTINUE
new Float:vecVelocity[3]
entity_get_vector(id, EV_VEC_velocity, vecVelocity)
vecVelocity[2] += 250.0
entity_set_vector(id, EV_VEC_velocity, vecVelocity)
entity_set_int(id, EV_INT_gaitsequence, 6)
}
return PLUGIN_CONTINUE
}
public fnGetAliveNum(iTeam)
{
new iNum = 0;
for(new id = 1; id <= MaxPlayers; id++)
{
if(is_user_connected(id) && is_user_alive(id))
{
if(get_user_team(id) == iTeam) ++iNum;
}
}
return iNum;
}
| i |
| Уведомление: Неверный раздел, тщательно выбирайте раздел для новых тем + Для оформления кода используйте тег PAWN или CODE SPOILER  |
Отредактировал: iShot, - 15.7.2016, 14:36
Причина: Выдано устное предупреждение!