Yashaka, оно?
Код:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <engine>
#include <fun>
#define Keysmenu_1 (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9)
#define Keysmenu_2 (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9)
#define ADMIN_ACCESS ADMIN_RCON
#define ADMIN_ACCESS_S ADMIN_RCON
new bool:restart_event = false;
new invisibility[33], chameleon[33], footsteps[33], speed[33], grv[33];
new g_pLog, g_pNumRev; // Cvars
new g_NumSpawn[33];
new g_maxplayers;
public plugin_init() {
register_plugin("Admin Nice Menu", "1.3.1", "quckly")
g_pLog = register_cvar("an_write_log_file","1");
g_pNumRev = register_cvar("an_numberrevive","0");
g_maxplayers = get_maxplayers()+1;
register_dictionary("adminnice.txt")
register_concmd("glow", "RandGlow", ADMIN_ACCESS, "All Player Random Glow.")
register_concmd("adminnice", "ShowAdminMenu", ADMIN_ACCESS, "Open admin nice #1")
register_concmd("adminnice2", "ShowAdminMenu2", ADMIN_ACCESS, "Open admin nice #2")
register_menucmd(register_menuid("menu_1"), Keysmenu_1, "Pressedmenu_1")
register_menucmd(register_menuid("menu_2"), Keysmenu_2, "Pressedmenu_2")
register_logevent("EventRoundStart", 2, "1=Round_Start" );
RegisterHam(Ham_Spawn, "player", "FwdHamPlayerSpawn", 1 );
register_event("DeathMsg","EventDeath", "a");
register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
}
public client_putinserver(id)
{
if(is_user_bot(id) || is_user_hltv(id))
return PLUGIN_HANDLED;
invisibility[id] = 0;
footsteps[id] = 0;
chameleon[id] = 0;
speed[id] = 0;
grv[id] = 0;
g_NumSpawn[id] = get_pcvar_num(g_pNumRev);
set_user_rendering(id,kRenderFxNone,255,255,255, kRenderNormal,16);
return PLUGIN_CONTINUE;
}
public client_disconnect(id)
{
if(is_user_bot(id) || is_user_hltv(id))
return PLUGIN_HANDLED;
invisibility[id] = 0;
footsteps[id] = 0;
chameleon[id] = 0;
speed[id] = 0;
grv[id] = 0;
g_NumSpawn[id] = get_pcvar_num(g_pNumRev);
return PLUGIN_CONTINUE;
}
public ShowAdminMenu(id) {
if (get_user_flags(id) & ADMIN_ACCESS)
{
static TextMenu1[ 1400 char ];
if(get_pcvar_num(g_pNumRev) != 0) {
formatex( TextMenu1, charsmax( TextMenu1 ), "%L", id, "MENU1_COUNT", g_NumSpawn[id]);
show_menu(id, Keysmenu_1, TextMenu1, -1, "menu_1") // Display menu
}
else {
formatex( TextMenu1, charsmax( TextMenu1 ), "%L", id, "MENU1_NO_CO");
show_menu(id, Keysmenu_1, TextMenu1, -1, "menu_1") // Display menu
}
return PLUGIN_CONTINUE
}
else
{
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public Pressedmenu_1(id, key) {
static team[32], User[32];
get_user_team(id,team,32);
get_user_name(id,User,32);
switch (key) {
case 0: { // M4A1
if(is_user_alive(id))
{
give_item(id,"weapon_m4a1")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"ammo_556nato")
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"weapon_knife")
cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM);
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Weapon(M4a1)", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice")
}
case 1: { // AK47
if(is_user_alive(id))
{
give_item(id,"weapon_ak47")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"ammo_762nato")
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"weapon_knife")
cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM);
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Weapon(AK47)", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice")
}
case 2: { // AWP
if(is_user_alive(id))
{
give_item(id,"weapon_awp")
give_item(id,"ammo_338magnum")
give_item(id,"ammo_338magnum")
give_item(id,"ammo_338magnum")
give_item(id,"weapon_deagle")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"ammo_50ae")
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_flashbang")
give_item(id,"weapon_smokegrenade")
give_item(id,"weapon_knife")
cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM);
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Weapon(AWP)", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice")
}
case 3: { // Respawn
if((get_user_flags(id) & ADMIN_ACCESS_S) == 0)
{
client_print(id, print_chat, "%L", id, "NO_ACCESS")
client_cmd(id, "adminnice")
}
else
{
if(get_pcvar_num(g_pNumRev) != 0) {
if( g_NumSpawn[id] > 0) {
g_NumSpawn[id]--;
}
else {
client_print(id,print_chat, "%L", id, "NO_RESPAWN")
return PLUGIN_HANDLED;
}
}
ExecuteHam(Ham_CS_RoundRespawn, id);
set_user_godmode(id, 1)
set_task(3.0,"respawn", id)
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Revive", User);
client_cmd(id, "adminnice")
}
}
case 4: { // Money: $16000
new money = cs_get_user_money(id);
if(money < 16000)
{
cs_set_user_money(id, 16000);
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: $16000", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice")
}
case 5: { // Health & Armor
if((get_user_flags(id) & ADMIN_ACCESS_S) == 0)
{
client_print(id, print_chat, "%L", id, "NO_ACCESS")
client_cmd(id, "adminnice")
}
else
{
if(is_user_alive(id))
{
cs_set_user_armor(id, 255, CS_ARMOR_VESTHELM)
set_user_health(id, 255)
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Health & Armor", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice")
}
}
case 6: { // Godmode
if((get_user_flags(id) & ADMIN_ACCESS_S) == 0)
{
client_print(id, print_chat, "%L", id, "NO_ACCESS")
client_cmd(id, "adminnice")
}
else
{
if(!get_user_godmode(id))
{
set_user_godmode(id, 1)
}
else
{
set_user_godmode(id, 0)
}
client_cmd(id, "adminnice")
}
}
case 7: { // Noclip
if((get_user_flags(id) & ADMIN_ACCESS_S) == 0)
{
client_print(id, print_chat, "%L", id, "NO_ACCESS")
client_cmd(id, "adminnice")
}
else
{
if(is_user_alive(id))
{
if(!get_user_noclip(id)) {
set_user_noclip(id, 1);
}else {
set_user_noclip(id, 0);
}
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Noclip", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice")
}
}
case 8: { // Next menu
client_cmd(id, "adminnice2")
}
case 9: { // Exit
return PLUGIN_HANDLED;
}
}
return PLUGIN_HANDLED
}
public ShowAdminMenu2(id) {
if (get_user_flags(id) & ADMIN_ACCESS)
{
static TextMenu2[ 1500 char ];
static m_foot[4], m_grv[4], m_speed[4], m_cham[4], m_invis[4];
if(footsteps[id] == 1) {
m_foot = "ON";
}
else {
m_foot = "OFF";
}
if(grv[id] == 1) {
m_grv = "ON";
}
else {
m_grv = "OFF";
}
if(speed[id] == 1) {
m_speed = "ON";
}
else {
m_speed = "OFF";
}
if(chameleon[id] == 1) {
m_cham = "ON";
}
else {
m_cham = "OFF";
}
if(invisibility[id] == 1) {
m_invis = "ON";
}
else {
m_invis = "OFF";
}
formatex( TextMenu2, charsmax( TextMenu2 ), "%L", id, "MENU2", m_cham, m_speed, m_invis, m_grv, m_foot);
show_menu(id, Keysmenu_2, TextMenu2, -1, "menu_2") // Display menu
return PLUGIN_CONTINUE
}
else
{
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE
}
public Pressedmenu_2(id, key) {
static team[32], User[32];
get_user_team(id,team,32);
get_user_name(id,User,32);
switch (key) {
case 0: { // 1 C4/Defusekit
if(is_user_alive(id))
{
if(equal(team,"T", 1))
{
give_item(id,"weapon_c4")
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Weapon(C4)", User)
}
else
{
cs_set_user_defuse(id)
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Weapon(Defusekit)", User)
}
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice2")
}
case 1: { // 2 Chameleon
if(is_user_alive(id))
{
if(chameleon[id] == 0)
{
if(equal(team,"T", 1))
{
cs_set_user_model(id, "gign")
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Chameleon(CT)", User)
}
else
{
cs_set_user_model(id, "leet")
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Chameleon(TE)", User)
}
chameleon[id] = 1;
}
else
{
cs_reset_user_model(id);
chameleon[id] = 0;
}
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice2")
}
case 2: { // 3 Speed
if(is_user_alive(id))
{
if(speed[id] == 0)
{
set_cvar_string("sv_maxspeed", "500");
client_cmd(id, "cl_forwardspeed ^"500^"");
client_cmd(id, "cl_backspeed ^"500^"");
client_cmd(id, "cl_sidespeed ^"500^"");
set_user_maxspeed(id,500.0);
speed[id] = 1;
}
else
{
set_cvar_string("sv_maxspeed", "320");
client_cmd(id, "cl_forwardspeed ^"400^"");
client_cmd(id, "cl_backspeed ^"400^"");
client_cmd(id, "cl_sidespeed ^"400^"");
set_user_maxspeed(id,250.0)
speed[id] = 0;
}
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice2")
}
case 3: { // 4 Terminator
if((get_user_flags(id) & ADMIN_ACCESS_S) == 0)
{
client_print(id, print_chat, "%L", id, "NO_ACCESS")
client_cmd(id, "adminnice")
}
else
{
if(is_user_alive(id))
{
give_item( id, "weapon_m249" );
cs_set_user_bpammo( id, CSW_M249, 200 );
cs_set_user_armor(id, 1000, CS_ARMOR_VESTHELM);
set_user_health(id, 800);
if(invisibility[id] == 0)
{
set_user_rendering(id,kRenderFxNone, 0,0,0, kRenderTransAdd,3);
invisibility[id] = 1;
}
if(footsteps[id] == 0)
{
set_user_footsteps(id, 1);
footsteps[id] = 1;
}
if(grv[id] == 0)
{
set_user_gravity(id,0.5)
grv[id] = 1;
}
if(speed[id] == 0)
{
set_cvar_string("sv_maxspeed", "500");
client_cmd(id, "cl_forwardspeed ^"500^"");
client_cmd(id, "cl_backspeed ^"500^"");
client_cmd(id, "cl_sidespeed ^"500^"");
set_user_maxspeed(id,500.0)
speed[id] = 1;
}
}
else
{
return PLUGIN_HANDLED;
}
}
client_cmd(id, "adminnice2")
}
case 4: { // 5 Invisibility
if(is_user_alive(id))
{
if(invisibility[id] == 0)
{
set_user_rendering(id,kRenderFxNone, 0,0,0, kRenderTransAdd,3);
invisibility[id] = 1;
}
else if(invisibility[id] == 1)
{
set_user_rendering(id,kRenderFxNone,255,255,255, kRenderNormal,16);
invisibility[id] = 0;
}
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Invisibility", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice2")
}
case 5: { // 6 Gravity
if(is_user_alive(id))
{
if(grv[id] == 0)
{
set_user_gravity(id,0.5)
grv[id] = 1;
}
else
{
set_user_gravity(id,1.0)
grv[id] = 0;
}
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice2")
}
case 6: { // 7 Footsteps
if(is_user_alive(id))
{
if(footsteps[id] == 0)
{
set_user_footsteps(id, 1);
footsteps[id] = 1;
}
else
{
set_user_footsteps(id, 0);
footsteps[id] = 0;
}
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Footsteps (On/Off)", User)
}
else
{
return PLUGIN_HANDLED;
}
client_cmd(id, "adminnice2")
}
case 7: { // 8 Cd Eject
new i, players[32], inum, player
get_players(players, inum)
if(inum == 0)
{
return PLUGIN_HANDLED
}
for(i = 0; i < inum; ++i)
{
player = players[i]
client_cmd(player, "cd eject")
}
client_cmd(id, "adminnice2")
}
case 8: { // 9 Restart
if(restart_event == false)
{
restart_event = true;
set_task(0.1, "restart", 60);
if(get_pcvar_num(g_pLog) == 1)
log_amx("%s use a Admin Cheats: Round Restart", User)
}
else
{
restart_event = false;
}
client_cmd(id, "adminnice2")
}
case 9: { // 0 Menu 1
client_cmd(id, "adminnice")
}
}
return PLUGIN_HANDLED;
}
/*---------------------------------------------!!!!!!---------------------------------------------*/
public respawn(id) {
set_user_godmode(id, 0);
set_user_rendering(id,kRenderFxNone,255,255,255, kRenderNormal,16);
return PLUGIN_CONTINUE;
}
public FwdHamPlayerSpawn( id )
{
set_task(0.1, "GiveItem", id);
return HAM_IGNORED;
}
public GiveItem(id)
{
if(footsteps[id] == 1)
{
set_user_footsteps(id, 1);
}
if(grv[id] == 1)
{
set_user_gravity(id,0.5)
}
if(speed[id] == 1)
{
set_cvar_string("sv_maxspeed", "500")
client_cmd(id, "cl_forwardspeed ^"500^"")
client_cmd(id, "cl_backspeed ^"500^"")
client_cmd(id, "cl_sidespeed ^"500^"")
set_user_maxspeed(id,500.0)
}
return;
}
public EventDeath( )
{
new id = read_data(2);
if(0 < id < 33)
{
invisibility[id] = 0
chameleon[id] = 0
}
}
public EventRoundStart() {
if(get_pcvar_num(g_pNumRev) < 0)
set_pcvar_num(g_pNumRev, 0);
if(get_pcvar_num(g_pNumRev) == 0)
return PLUGIN_CONTINUE
new g_NumRevive = get_pcvar_num(g_pNumRev);
for(new id = 1; id < g_maxplayers; id++)
{
g_NumSpawn[id] = g_NumRevive;
}
return PLUGIN_CONTINUE
}
public Event_Change_Weapon(id)
{
if(speed[id] == 1)
{
set_user_maxspeed(id,500.0)
}
return PLUGIN_CONTINUE
}
public restart(count)
{
set_hudmessage(_, _, _, -1.0, 0.85, 1)
show_hudmessage(0,"Рестар раунда через %d секунд!", count)
if((count <= 10) || (count % 10 == 0))
{
new szNum[32]
num_to_word(count, szNum, 31)
client_cmd(0, "spk ^"fvox/%s^"", szNum)
}
count--;
if(count != 0)
{
if(restart_event == false)
return PLUGIN_HANDLED
set_task(1.0, "restart", count)
}
else
{
set_hudmessage(_, _, _, -1.0, -1.0, 1)
show_hudmessage(0,"Рестар раунда!!!")
server_cmd("sv_restart 1"); // Restart
restart_event = false;
}
return PLUGIN_CONTINUE;
}
public RandGlow()
{
static Red = 0;
static Green = 0;
static Blue = 0;
static players[32], num, player;
get_players(players, num, "ah")
for(new i = 0; i < num; i++)
{
Red = random(255);
Green = random(255);
Blue = random(255);
player = players[i];
set_user_rendering(player, kRenderFxGlowShell, Red, Green, Blue, kRenderNormal,30)
}
}