#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <fakemeta>
// Definiujemy odpowiednie funkcje
#define PLUGIN "Ozywianie graczy"
#define VERSION "1.0"
#define AUTHOR "Kanter Strajk"
// Informacje o autorze i pluginie
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /ulecz", "pokaz_menu", ADMIN_KICK);
register_clcmd("say_team /ulecz", "pokaz_menu", ADMIN_KICK);
}
// rejestrujemy plugin i mowimy mu ze jak ktos wpisz /ulecz to ma pokazac menu, flaga do leczenia ADMIN_KICK
public pokaz_menu(id)
{
if(!is_user_connected(id) || !(get_user_flags(id) & ADMIN_KICK))
{
return PLUGIN_HANDLED;
}
new players[32], plnum, admin_name[32], sid [32], zycie[32];
get_user_name(id,admin_name,31);
get_user_authid(id, sid, 31);
get_players(players, plnum, "ach");
new key[128], info[8], name[64];
new menu = menu_create("Wybierz gracza do wyleczenia", "menu_click"); // pokazujemy menu
for(new i = 0; i < plnum; i++) // menu dziala w petli i znajduje graczy ktorzy zyja
{
new id=players[i];
get_user_name(players[i], name, 63); //pobieramy nicki graczy
zycie[id] = get_user_health(id); // pobieramy hp graczy
if(zycie[id] < 100) // jesli gracz ma 100hp to po co go leczyc ?
{
formatex(info, 7, "%d", id);
formatex(key, 127, "\w%s\y\R[%s HP]", name, zycie[id]); // wyswielamy nick, i losc hp
menu_additem(menu, key, info);
log_amx("ADMIN %s <%s> wyleczyl %s.",admin_name,sid,name); //zapisujemy logi czynnosci admina
}
}
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona"); // Polska nazwa przycisku zamiast Back
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona"); // Polska nazwa przycisku zamiast Next
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); // Polska nazwa przycisku zamiast Exit
menu_display(id, menu);
return PLUGIN_HANDLED;
}
//Pokazujemy menu z lista graczy i iloscia hp
// Ponizej przywracanie menu po uleczeniu i leczenie gracza
public menu_click(id, menu, item)
{
new access, info[8], name[63], callback;
menu_item_getinfo(menu, item, access, info, 7, name, 63, callback);
menu_destroy(menu);
new kogo = str_to_num(info);
if(item != MENU_EXIT && item != MENU_BACK && item != MENU_MORE)
{
if(is_user_alive(kogo)) // sprawdzamy jeszcze raz czy gracz zyje
{
set_user_health(kogo,100); // leczymy gracza
}
pokaz_menu(id);
}
}
Załączone pliki
Użytkownik Maestro edytował ten post 27.07.2010 18:50