Как сделать ВКЛ ВЫКЛ в плагине?)

Статус
В этой теме нельзя размещать новые ответы.

pro100coder

Пользователь
Регистрация
8 Янв 2018
Сообщения
3
Симпатии
0
Написал плагин который делает игрокам бесшумные шаги, как сделать чтобы при нажатии включалась,и выключалась эта функция без выхода в начальное меню? И писало возле ника ВКЛ И ВЫКЛ (помогите пж)
Вот мой код,знаю не идеален:D
C++:
#include <amxmodx>//

#include <fun>//

#include <cstrike>//

#include <engine>//

#include <fakemeta>//

#include <hamsandwich>//

#define PLUGIN"XDXD"

#define AUTHOR"PRO100S"

#define VERSION"2.0"



#define ACCESSFLAG ADMIN_BAN



new typeImg[33]

new footsteps[33]

public plugin_init()

{

register_plugin(PLUGIN, VERSION, AUTHOR)



register_clcmd("say /lolmenu", "dysplay_menu")

register_clcmd("dysplay_menu000", "dysplay_menu2")

}



public cmdMotd1(id)

{



return PLUGIN_HANDLED

}



public dysplay_menu(id)

{

if(!(get_user_flags(id) & ACCESSFLAG))

return PLUGIN_CONTINUE



new Menu = menu_create("\yLoL Menu \r:D", "menu_handler2")



menu_additem(Menu, "Бесшумные шаги", "1", 0)

menu_display(id, Menu, 0)



return PLUGIN_HANDLED

}



public menu_handler2(id,menu,item)

{

if(item == MENU_EXIT)

{

menu_destroy(menu)

return PLUGIN_HANDLED

}



new data[6], iName[64], access, callback

menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)



new key = str_to_num(data)

switch(key)

{

case 1:

{

if(footsteps[id])

{

set_user_footsteps(id,0)

client_cmd(id,"Nekitzor");

footsteps[id]=0

}

else



{

set_user_footsteps(id,1)

client_cmd(id,"NekitZor");

footsteps[id]=1

}



}



}

client_cmd ( id,"dysplay_menu000")

new oldmenu, newmenu, menupage

player_menu_info(id, oldmenu, newmenu, menupage)

return PLUGIN_CONTINUE

}

public dysplay_menu2(id)

{

if(!(get_user_flags(id) & ACCESSFLAG))

return PLUGIN_CONTINUE



new Menu = menu_create("\yLoL Menu \r:D", "menu_handler")



new Player

new sPlayerName[128]

new sPlayerId[11]



new playersList[32]

new playersnum

get_players(playersList, playersnum, "c")



for(new i; i<playersnum; i++)

{

Player = playersList

get_user_name(Player, sPlayerName, charsmax(sPlayerName))

num_to_str(Player, sPlayerId, charsmax(sPlayerId))

menu_additem(Menu, sPlayerName, sPlayerId, 0)

}



menu_display(id, Menu, 0)



return PLUGIN_HANDLED

}



public menu_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

menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)



new Player = str_to_num(s_Data)



if(!is_user_connected(Player))

{

print_col_chat(id, "!g[%s] !yНе удалось найти игрока. Возможно он уже вышел", PLUGIN)

dysplay_menu(id)

return PLUGIN_HANDLED

}



dysplay_menu(id)



switch(typeImg[id])

{

case 1: set_task(0.5, "cmdMotd1", Player)



}



return PLUGIN_CONTINUE

}



stock print_col_chat(const id, const input[], any:...)

{

new count = 1, players[32]

static msg[191]

vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4") // Green Color

replace_all(msg, 190, "!y", "^1") // Default Color

replace_all(msg, 190, "!t", "^3") // Team Color



if (id)

players[0] = id

else

get_players(players, count, "ch")



{

for ( new i = 0; i < count; i++ )

{

if (is_user_connected(players))

{

message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players)

write_byte(players)

write_string(msg)

message_end()

}

}

}

}
 

Aki_Lucky

Пользователь
Регистрация
5 Июл 2017
Сообщения
100
Симпатии
56
Пол
Мужской
вставляйте код путём спец тегов, а то читать невозможно, да еще с выравниванием по центру
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу