Witam, mam do was pytanie jak mogę zmienić wyświetlanie hud z pluginu do silnika?
Chciałbym dodać hud tego plugu do silnika co muszę dodać/zmienić w plugu silniku?
Spoiler
#include <amxmodx> #include <amxmisc> #include <hamsandwich> #include <fakemeta> #include <engine> #include <cstrike> #include <fun> #include <nvault> #include <ColorChat> #define NAZWA "Punkty Chwaly" #define WERSJA "1.3.1" #define AUTOR "MAGNET" //Pomagali: Vasto_Lorde, G[o]Q i d0naciak #define PREFIX "Punkty Chwaly" #define ILE_POTRZEBA 100 ///ile punktow potrzeba do wbicia 1 punktu w statystyke #define SZANSA 5///Szansa na zgubienie 1 punktu po smierci #define POKAZ_HUD 1234 #define ZADANIE_WSKRZES 6240 #define ACCESS_FLAG ADMIN_IMMUNITY new CT_Skins[4][] = {"sas","gsg9","urban","gign"}; new Terro_Skins[4][] = {"arctic","leet","guerilla","terror"}; new punkty_chwaly[33]; new zdrowie[33]; new obrazenia[33]; new wyrzucenie[33]; new resp[33]; new respawn[33]; new niesmiertelnosc[33]; new msg_bartime; new noclip[33]; new bool:uzyl[33]; new bool:uzyl2[33]; new g_Vault; public plugin_init() { register_plugin(NAZWA, WERSJA, AUTOR); g_Vault=nvault_open("PunktyChwaly") register_event("DeathMsg", "DeathMsg", "a") RegisterHam(Ham_TakeDamage, "player", "Statystyka_Obrazenia"); RegisterHam(Ham_TakeDamage, "player", "Statystyka_Wyrzucenie"); RegisterHam(Ham_Killed, "player", "Statystyka_Respawn", 1); RegisterHam(Ham_Spawn, "player", "Respawn", 1); RegisterHam(Ham_Spawn, "player", "Statystyka_Resp", 1); register_clcmd("say /pch", "Przydziel_Punkty_Chwaly"); register_clcmd("say /sprawdz", "Sprawdz_Staty"); register_clcmd("say /reset", "Resetuj_Punkty_Chwaly"); register_clcmd("say /sklepik", "Sklepik"); register_concmd("dodaj_punkty", "Dodaj_Punkty_Chwaly", ACCESS_FLAG, "<nick> <ilosc>"); register_concmd("ustaw_punkty", "Ustaw_Punkty_Chwaly", ACCESS_FLAG, "<nick> <ilosc>"); register_concmd("odejmij_punkty", "Odejmij_Punkty_Chwaly", ACCESS_FLAG, "<nick> <ilosc>"); msg_bartime = get_user_msgid("BarTime"); register_event("ResetHUD", "ResetHUD", "abe"); } public Respawn(id) { if(!task_exists(id+POKAZ_HUD)) set_task(0.1, "PokazInformacje", id+POKAZ_HUD, _, _, "b"); set_task(0.1, "Statystyka_Zdrowie",id) set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255); if(punkty_chwaly[id] > ILE_POTRZEBA - 1) Przydziel_Punkty_Chwaly(id); Sklepik_Ubranie(id, 1) return PLUGIN_CONTINUE; } public Statystyka_Resp(id) { if(!is_user_alive(id) || !is_user_connected(id)) return PLUGIN_HANDLED; if(resp[id]<1) return PLUGIN_HANDLED; if(random_num(1,30-resp[id]) == 1) { new CsTeams:team = cs_get_user_team(id); cs_set_user_team(id, (team == CS_TEAM_CT)? CS_TEAM_T: CS_TEAM_CT); ExecuteHam(Ham_CS_RoundRespawn, id); cs_set_user_team(id, team); } return PLUGIN_CONTINUE; } public DeathMsg() { new kid = read_data(1) //zabojca new vid = read_data(2) // ofiara punkty_chwaly[kid]++; if(random_num(1,SZANSA) == 1 && punkty_chwaly[vid] > 0) { ColorChat(vid, GREEN, "[%s]^x03 Utraciles jeden Punkt Chwaly!", PREFIX); punkty_chwaly[vid]--; } } public client_authorized(id) { WczytajDane(id); set_task(180.0, "PokazInfo", id, _, _, "b") } public client_connect(id) { set_task(0.1, "Statystyka_Resp", id) } public client_disconnect(id) { new entRakiety = find_ent_by_class(0, "rocket"); while(entRakiety > 0) { if(entity_get_edict(entRakiety, EV_ENT_owner) == id) remove_entity(entRakiety); entRakiety = find_ent_by_class(entRakiety, "rocket"); } ZapiszDane(id); UsunUmiejetnosci(id); } public UsunUmiejetnosci(id) { punkty_chwaly[id] = 0; obrazenia[id] = 0; zdrowie[id] = 0; wyrzucenie[id] = 0; resp[id] = 0; respawn[id] = 0; } public ZapiszDane(id) { new name[64]; get_user_name(id,name,32); new vaultkey[128], vaultdata[256]; formatex(vaultkey, 63, "%s-PunktyChwaly", name); formatex(vaultdata, 255, "%i#%i#%i#%i#%i#%i", punkty_chwaly[id], obrazenia[id], zdrowie[id], wyrzucenie[id], resp[id], respawn[id]); nvault_set(g_Vault, vaultkey, vaultdata); return PLUGIN_CONTINUE; } public WczytajDane(id) { new name[64]; get_user_name(id,name,32); new vaultkey[128], vaultdata[256]; formatex(vaultkey, 63, "%s-PunktyChwaly", name); formatex(vaultdata, 255, "%i#%i#%i#%i#%i#%i", punkty_chwaly[id], obrazenia[id], zdrowie[id], wyrzucenie[id], resp[id], respawn[id]); nvault_get(g_Vault, vaultkey, vaultdata, 255); replace_all(vaultdata, 255, "#", " "); new punkty_chwaly_vault[33], obrazenia_vault[33], zdrowie_vault[33], wyrzucenie_vault[33], resp_vault[33], respawn_vault[33]; parse(vaultdata, punkty_chwaly_vault, 31, obrazenia_vault, 31, zdrowie_vault, 31, wyrzucenie_vault, 31, resp_vault, 31, respawn_vault, 31); punkty_chwaly[id] = str_to_num(punkty_chwaly_vault); obrazenia[id]= str_to_num(obrazenia_vault); zdrowie[id] = str_to_num(zdrowie_vault); wyrzucenie[id]= str_to_num(wyrzucenie_vault); resp[id]= str_to_num(resp_vault); respawn[id]= str_to_num(respawn_vault); return PLUGIN_CONTINUE; } public Statystyka_Obrazenia(victim, inflictor, attacker, Float:dmg, dmgbits) { if(!is_user_connected(victim) || !is_user_alive(attacker)) return HAM_IGNORED; SetHamParamFloat(4, dmg + obrazenia[attacker]); return HAM_IGNORED; } public Statystyka_Zdrowie(id) { set_user_health(id, get_user_health(id) + (zdrowie[id]*2)) } public Statystyka_Wyrzucenie(id, idinflictor, idattacker, Float:damage, damagebits) { if(wyrzucenie[id] < 1 || !is_user_alive(idattacker)) return HAM_IGNORED; if(random_num(0, 40-wyrzucenie[idattacker])==0) { client_cmd(id, "drop"); } return HAM_IGNORED; } public Statystyka_Respawn(id) { if (respawn[id] < 1) return PLUGIN_HANDLED; if(random_num(1, 30 - respawn[id]) == 1) { set_task(0.1, "Wskrzes", id+ZADANIE_WSKRZES); } return PLUGIN_CONTINUE; } public Resetuj_Punkty_Chwaly(id) { punkty_chwaly[id] = punkty_chwaly[id] + obrazenia[id]*ILE_POTRZEBA + zdrowie[id]*ILE_POTRZEBA + wyrzucenie[id]*ILE_POTRZEBA + resp[id]*ILE_POTRZEBA + respawn[id]*ILE_POTRZEBA, obrazenia[id] = 0, zdrowie[id] = 0, wyrzucenie[id] = 0, resp[id] = 0, respawn[id] = 0; ColorChat(id, GREEN, "[%s]^x01 Umiejetnosci zostaly zresetowane", PREFIX); } public Przydziel_Punkty_Chwaly(id) { new tytul[25]; formatex(tytul, charsmax(tytul), "Twoje Punkty Chwaly(%i)", punkty_chwaly[id]); new menu = menu_create(tytul, "Przydziel_Punkty_Chwaly_Handler"); menu_additem(menu, "Obrazenia \r[Zwieksza obrazenia]"); menu_additem(menu, "Zdrowie \r[Zwieksza zdrowie]"); menu_additem(menu, "Wyrzucenie \r[Szansa na drop broni wroga]"); menu_additem(menu, "Szpieg \r[Szansa na resp u wroga]"); menu_additem(menu, "Respawn \r[Szansa na odrodzenie sie]^n^n\wPunkty Chwaly by \rMAGNET"); menu_setprop(menu, MPROP_EXIT, 0); menu_display(id, menu); } public Przydziel_Punkty_Chwaly_Handler(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_HANDLED; } if (punkty_chwaly[id] < ILE_POTRZEBA) { ColorChat(id, GREEN, "[%s]^x01 Masz za malo Punktow Chwaly!", PREFIX); return PLUGIN_HANDLED } switch(item) { case 0: { if(obrazenia[id] < 10) { obrazenia[id]++; punkty_chwaly[id]-=ILE_POTRZEBA; client_print(id, print_center, "Statystyka Obrazenia rozwinieta (%i/10)", obrazenia[id]); } else ColorChat(id, GREEN, "[%s]^x01 Statystyka Obrazenia rozwinieta maksymalnie", PREFIX); } case 1: { if(zdrowie[id] < 10) { zdrowie[id]++; punkty_chwaly[id]-=ILE_POTRZEBA; client_print(id, print_center, "Statystyka Zdrowie rozwinieta (%i/10)", zdrowie[id]); } else ColorChat(id, GREEN, "[%s]^x01 Statystyka Zdrowie rozwinieta maksymalnie", PREFIX); } case 2: { if(wyrzucenie[id] < 10) { wyrzucenie[id]++; punkty_chwaly[id]-=ILE_POTRZEBA; client_print(id, print_center, "Statystyka wyrzucenie rozwinieta (%i/10)", wyrzucenie[id]); } else ColorChat(id, GREEN, "[%s]^x01 Statystyka Wyrzucenie rozwinieta maksymalnie", PREFIX); } case 3: { if(resp[id] < 10) { resp[id]++; punkty_chwaly[id]-=ILE_POTRZEBA; client_print(id, print_center, "Statystyka Szpieg rozwinieta (%i/10)", resp[id]); } else ColorChat(id, GREEN, "[%s]^x01 Statystyka Szpieg rozwinieta maksymalnie", PREFIX); } case 4: { if(respawn[id] < 10) { respawn[id]++; punkty_chwaly[id]-=ILE_POTRZEBA; client_print(id, print_center, "Statystyka Respawn rozwinieta (%i/10)", respawn[id]); } else ColorChat(id, GREEN, "[%s]^x01 Statystyka Respawn rozwinieta maksymalnie", PREFIX); } } if(punkty_chwaly[id] >= ILE_POTRZEBA) Przydziel_Punkty_Chwaly(id); return PLUGIN_CONTINUE; } public PokazInformacje(id) { id -= POKAZ_HUD; if(!is_user_connected(id) || !is_user_alive(id)) { remove_task(id+POKAZ_HUD); return PLUGIN_CONTINUE; } set_hudmessage(0, 255, 0, 1.0, 1.5, 0, 0.0, 0.3, 0.0, 0.0); show_hudmessage(id, "[Punkty Chwaly - %i]", punkty_chwaly[id]) return PLUGIN_CONTINUE; } public Dodaj_Punkty_Chwaly(id, level, cid) { if(!cmd_access(id, level, cid, 2)) return PLUGIN_CONTINUE; new arg[33]; read_argv(1, arg, 32); new target = cmd_target(id, arg, CMDTARGET_ALLOW_SELF); if(!is_user_connected(target)) return PLUGIN_CONTINUE; read_argv(2, arg, 32); remove_quotes(arg); new ilosc = str_to_num(arg); punkty_chwaly[target]+=ilosc-1 return PLUGIN_CONTINUE; } public Ustaw_Punkty_Chwaly(id, level, cid) { if(!cmd_access(id, level, cid, 2)) return PLUGIN_CONTINUE; new arg[33]; read_argv(1, arg, 32); new target = cmd_target(id, arg, CMDTARGET_ALLOW_SELF); if(!is_user_connected(target)) return PLUGIN_CONTINUE; read_argv(2, arg, 32); remove_quotes(arg); new ilosc = str_to_num(arg); punkty_chwaly[target]=ilosc-1 return PLUGIN_CONTINUE; } public Odejmij_Punkty_Chwaly(id, level, cid) { if(!cmd_access(id, level, cid, 2)) return PLUGIN_CONTINUE; new arg[33]; read_argv(1, arg, 32); new target = cmd_target(id, arg, CMDTARGET_ALLOW_SELF); if(!is_user_connected(target)) return PLUGIN_CONTINUE; read_argv(2, arg, 32); remove_quotes(arg); new ilosc = str_to_num(arg); punkty_chwaly[target]-=ilosc-1 return PLUGIN_CONTINUE; } public Sklepik(id) { new tytul[25]; formatex(tytul, 24, "Sklepik (Punkty Chwaly: %i)", punkty_chwaly[id]); new menu = menu_create(tytul, "Sklepik_Handler"); menu_additem(menu, "Granat Wybuchowy \yKoszt: \r3 P.Ch.");//1 menu_additem(menu, "Flash \yKoszt: \r3 P.Ch.");//2 menu_additem(menu, "Smoke \yKoszt: \r3P.Ch.");//3 menu_additem(menu, "Ciche Kroki do konca mapy \yKoszt: \r30 P.Ch.");//4 menu_additem(menu, "Leczy HP do maximum \yKoszt: \r5 P.Ch.");//5 menu_additem(menu, "Mniejsza Grawitacja \yKoszt: \r6P.Ch.");//6 menu_additem(menu, "16000$ \yKoszt: \r3P.Ch.");//7 menu_additem(menu, "+300 HP \yKoszt: \r30 P.Ch.");//8 menu_additem(menu, "Ubranie Wroga \yKoszt: \r15 P.Ch.");//9 menu_additem(menu, "5s niesmiertelnosci(E) \yKoszt: \r15 P.Ch.");//10 menu_additem(menu, "Niewidka \yKoszt: \r10 P.Ch.");//11 menu_additem(menu, "NoClip (przechodzenie przez sciany) \yKoszt: \r10 P.Ch.");//12 menu_additem(menu, "150 Armora \yKoszt: \r5 P.Ch.");//12 menu_additem(menu, "AWP + AK \yKoszt: \r10 P.Ch.");//12 menu_setprop(menu, MPROP_BACKNAME, "\yWstecz"); menu_setprop(menu, MPROP_NEXTNAME, "\yDalej"); menu_display(id, menu); } public Sklepik_Handler(id, menu, item) { if(!is_user_alive(id) || !is_user_connected(id)) return PLUGIN_CONTINUE; if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_CONTINUE; } switch(item) { case 0: { if (punkty_chwaly[id] >=3) { give_item(id, "weapon_hegrenade") punkty_chwaly[id] -=3 ColorChat(id, GREEN, "[%s]^x01 Zakupiles HE", PREFIX); } } case 1: { if(punkty_chwaly[id] >=3) { give_item(id, "weapon_flashbang") punkty_chwaly[id] -=3 ColorChat(id, GREEN, "[%s]^x01 Zakupiles Flasha", PREFIX); } } case 2: { if(punkty_chwaly[id] >=3) { give_item(id, "weapon_smokegrenade") punkty_chwaly[id] -=3 ColorChat(id, GREEN, "[%s]^x01 Zakupiles Smoke'a", PREFIX); } } case 3: { if(punkty_chwaly[id] >=30) { set_user_footsteps(id, 1) punkty_chwaly[id] -=30 ColorChat(id, GREEN, "[%s]^x01 Zakupiles Ciche Kroki", PREFIX); } } case 4: { if(punkty_chwaly[id] >=5) { new hp = 100 + (zdrowie[id]*2) set_user_health(id, hp) punkty_chwaly[id] -=5 ColorChat(id, GREEN, "[%s]^x01 Zostales w pelni uleczony", PREFIX); } } case 5: { if(punkty_chwaly[id] >=6) { set_user_gravity(id, 0.5) punkty_chwaly[id] -=6 ColorChat(id, GREEN, "[%s]^x01 Zakupiles zmniejszona grawitacje", PREFIX); } } case 6: { if(punkty_chwaly[id] >=3) { cs_set_user_money(id, 16000) punkty_chwaly[id] -=3 ColorChat(id, GREEN, "[%s]^x01 Zakupiles 16000$", PREFIX); } } case 7: { if(punkty_chwaly[id] >=30) { set_user_health(id, get_user_health(id) + 300) punkty_chwaly[id] -=30 ColorChat(id, GREEN, "[%s]^x01 ZAKUPILES 300 ZDROWIA!!!", PREFIX); } } case 8: { if(punkty_chwaly[id] >=15) { Sklepik_Ubranie(id, 0) punkty_chwaly[id] -=15 ColorChat(id, GREEN, "[%s]^x01 Zakupiles Ubranie Wroga", PREFIX); } } case 9: { if(punkty_chwaly[id] >=15 && !uzyl[id]) { niesmiertelnosc[id]++ punkty_chwaly[id] -=15 ColorChat(id, GREEN, "[%s]^x01 Zakupiles niesmiertelnosc", PREFIX); } } case 10: { if(punkty_chwaly[id] >=10) { set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 45); punkty_chwaly[id] -=10 ColorChat(id, GREEN, "[%s]^x01 Zakupiles niewidke", PREFIX); } } case 11: { if(punkty_chwaly[id] >=10 && !uzyl2[id]) { noclip[id]++ punkty_chwaly[id] -=10 ColorChat(id, GREEN, "[%s]^x01 Zakupiles NoClip'a", PREFIX); } } case 12: { if(punkty_chwaly[id] >=5) { set_user_armor(id, 150) punkty_chwaly[id] -=5 ColorChat(id, GREEN, "[%s]^x01 Zakupiles armor'a", PREFIX); } } case 13: { if(punkty_chwaly[id] >=10) { give_item(id, "weapon_awp") give_item(id, "weapon_ak47") give_item(id,"ammo_762nato") give_item(id,"ammo_338magnum") punkty_chwaly[id] -=10 ColorChat(id, GREEN, "[%s]^x01 Zakupiles AK + AWP", PREFIX); } } } return PLUGIN_CONTINUE; } public client_PreThink(id) { new button = get_user_button(id) new oldbutton = get_user_oldbutton(id) if(niesmiertelnosc[id] && button & IN_USE && !(oldbutton & IN_USE)) { Sklepik_Niesmiertelnosc(id) } else if(noclip[id] && button & IN_USE && !(oldbutton & IN_USE)) { Sklepik_NoClip(id) } } public Sklepik_Ubranie(id,reset) { if (!is_user_connected(id)) return PLUGIN_CONTINUE; if (reset) cs_reset_user_model(id); else { new num = random_num(0,3); cs_set_user_model(id, (get_user_team(id) == 1)? CT_Skins[num]: Terro_Skins[num]); } return PLUGIN_CONTINUE; } public Sklepik_Niesmiertelnosc(id) { if(!is_user_alive(id)) return PLUGIN_HANDLED; if(!uzyl[id] && !niesmiertelnosc[id]) { return PLUGIN_HANDLED; } uzyl[id] = true; niesmiertelnosc[id]-- set_user_godmode(id, 1); set_user_rendering(id, kRenderFxGlowShell, 0, 255, 0); set_task(5.0, "WylaczGod", id); message_begin(MSG_ONE, msg_bartime, _, id) write_short(5) message_end() return PLUGIN_CONTINUE; } public WylaczGod(id) { if(!is_user_connected(id)) return; set_user_godmode(id, 0); set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0); } public Sklepik_NoClip(id) { if(!is_user_alive(id)) return PLUGIN_HANDLED; if(!uzyl2[id] && !noclip[id]) { return PLUGIN_HANDLED; } uzyl2[id] = true; noclip[id]-- set_user_noclip(id, 1); set_task(10.0, "WylaczNoClip", id); message_begin(MSG_ONE, msg_bartime, _, id) write_short(10) message_end() return PLUGIN_CONTINUE; } public WylaczNoClip(id) { if(!is_user_connected(id)) return; set_user_noclip(id, 0); } public PokazInfo(id) { if(!is_user_connected(id)) return PLUGIN_HANDLED; ColorChat(id, GREEN, "[%s]^x01 Aby sprawdzic stan twoich statystyk, wpisz ^x03/sprawdz", PREFIX); return PLUGIN_CONTINUE; } public Sprawdz_Staty(id) { client_print(id, print_chat, "Twoje aktualne statystyki: Obrazenia - %i/10, Zdrowie - %i/10, Wyrzucenie - %i/10, Szpieg - %i/10, Respawn - %i/10", PREFIX, obrazenia[id], zdrowie[id], wyrzucenie[id], resp[id], respawn[id]) } public Wskrzes(id) { ExecuteHamB(Ham_CS_RoundRespawn, id-ZADANIE_WSKRZES); } public ResetHUD(id) { uzyl[id] = false; uzyl2[id] = false; }