Zrobiłem sobie taki plugin(nie jest całkowicie mój część znalazłem w necie)
#include #include #include #define PLUGIN "HUD" #define AUTHOR "Marcin" #define VERSION "1.0" enum { BRAK = 0, pierwszy, drugi ,trzeci} new kolor[4][33]; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /hud","zmianahuda") } public pokaz_hud(id) { new stats[8],bodyhits[8],rankpos,rankmax; rankpos = get_user_stats(id, stats, bodyhits) rankmax = get_statsnum() new izStats[ 8 ], izBody[ 8 ]; new szData[10]; get_time( "%X", szData, 9 ); new hp = get_user_health(id) new ar = get_user_armor(id) new rank = get_user_stats( id, izStats, izBody ) new fragi = get_user_frags(id) new dedy = get_user_deaths(id) new czas_mapy = get_timeleft() new name[32] get_user_name(id, name, 31) new kolorpierwszy = kolor[pierwszy][id] new kolordrugi = kolor[drugi][id] new kolortrzeci = kolor[trzeci][id] if(is_user_connected(id)) { set_hudmessage(kolorpierwszy, kolordrugi, kolortrzeci, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0); show_hudmessage(id, "[Nick: %s]^n[Zycie: %i | Armor: %i]^n[Fragi: %i | Zginiecia: %i]^n[Rank: %d/%d]^n[Forum: www-cs-SopliCa.com]",name,hp, ar, fragi, dedy, rankpos, rankmax) } else { remove_task(id) } return PLUGIN_HANDLED } public client_putinserver(id) { set_task(0.04, "pokaz_hud", id,_,_,"b"); } public zmianahuda(id) { new tekst[512] formatex(tekst, 511, "Jaki kolor huda chcialbys miec?"); new menu = menu_create(tekst, "WyborKoloru"); menu_additem(menu, "Standardowy"); menu_additem(menu, "Zielony"); menu_additem(menu, "Czerwony"); menu_additem(menu, "Niebieski"); menu_additem(menu, "Niebieski(jasny)"); menu_display(id, menu); } public WyborKoloru(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_HANDLED; } switch(item) { case 0: { kolor[pierwszy][id] = 255 kolor[drugi][id] = 255 kolor[trzeci][id] = 1 zmianahuda(id) } case 1: { kolor[pierwszy][id] =1 kolor[drugi][id] = 255 kolor[trzeci][id] = 1 zmianahuda(id) } case 2: { kolor[pierwszy][id] = 202 kolor[drugi][id] = 0 kolor[trzeci][id] = 0 zmianahuda(id) } case 3: { kolor[pierwszy][id] = 0 kolor[drugi][id] = 0 kolor[trzeci][id] = 255 zmianahuda(id) } case 4: { kolor[pierwszy][id] = 19 kolor[drugi][id] = 237 kolor[trzeci][id] = 223 zmianahuda(id) } } menu_destroy(menu); return PLUGIN_HANDLED; }
I pięknie ładnie mam zapise w enum wartości odpowiadające za kolor wyświetlanej wiadomości..
Ale teraz jeśli chciałbym zrobić w ten sam sposób MIEJSCE wyświetlanego HUD'a to już w enum go nie zapiszę ponieważ (chyba) enum nie zapisuje wartości zmienno przecinkowych np. 1.0, 0.23 itp.
Więc teraz moje pytanie w jaki (podobny sposó mogę zapisać wartości położenia HUD??
Aby wyglądało to np. tak:
kolor[pierwszy][id] =1 kolor[drugi][id] = 255 kolor[trzeci][id] = 1 miejsce[pierwsze][id] = -1.0 miejsce[drugie][id] = 0.5