Cześć,
nawiązując do tematu Benia: http://amxx.pl/topic...ci/#entry548985
a dokładniej: http://benio.me/#!DeathIcon
Jak by wyglądał kod, aby dla osób z określoną flagą, ikonka zabicia (czaszka, broń, głowa) była zielona?
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Napisano 11.06.2013 00:47
Cześć,
nawiązując do tematu Benia: http://amxx.pl/topic...ci/#entry548985
a dokładniej: http://benio.me/#!DeathIcon
Jak by wyglądał kod, aby dla osób z określoną flagą, ikonka zabicia (czaszka, broń, głowa) była zielona?
Napisano 11.06.2013 01:59
Jak pisałem na blogu, kolor zielony jest wyjątkiem i występuje tylko w przypadku podania jako argument "teammate".
A ponieważ "d_teammate" nie widnieje w hud.txt, zostanie zawsze wyświetlona czaszka, nie ma możliwości wyświetlenia zielonej broni.
Zielona może być tylko czaszka (ryc. 5 pkt. 2), bądź czaszka z przebitą głową (ryc. 5 pkt. 3).
Możnaby co najwyżej kolorować jedynie czaszkę, bądź zmieniać każdą broń na zieloną czaszkę, ale nie wiem, czy jest sens.
Użytkownik Benio101 edytował ten post 11.06.2013 02:02
+odwołanie
Napisano 11.06.2013 12:01
Racja, w takim razie nie ma sensu, jednak nadal interesowałby mnie kod, tak z czystej ciekawości, włącznie z podmianą innych broni
Napisano 11.06.2013 14:51
Wersja, która zmienia wszystkie ikony zabójstwa VIPa na zielone czaszki:
#include <amxmodx> #include <messages> #define IsPlayer(%1) (1<=%1<=maxPlayers) #define VIP_FLAG ADMIN_LEVEL_H new maxPlayers; public plugin_init(){ register_plugin("VIP green skull", "1.0", "benio101"); } public plugin_cfg(){ // pobieramy liczbę slotów maxPlayers=get_maxplayers(); // rejestrujemy DeathMsg register_message(get_user_msgid("DeathMsg"), "DeathMsg"); } public DeathMsg(){ new kid=get_msg_arg_int(1); // zabojca if(IsPlayer(kid) && get_user_flags(kid) & VIP_FLAG){ // zmieniamy ikonę na zieloną czaszkę set_msg_arg_string(4, "teammate"); } }
Wersja, która jedynie koloruje czaszki vipa na zielono:
#include <amxmodx> #include <messages> #define IsPlayer(%1) (1<=%1<=maxPlayers) #define VIP_FLAG ADMIN_LEVEL_H new icons[29][32]={ "knife", "ak47", "awp", "deagle", "famas", "fiveseven", "flashbang", "g3sg1", "galil", "glock18", "grenade", "m249", "m3", "m4a1", "mp5navy", "p228", "p90", "scout", "sg550", "sg552", "ump45", "usp", "tmp", "xm1014", "tracktrain", "aug", "mac10", "elite", "headshot" } new maxPlayers; public plugin_init(){ register_plugin("VIP green skull", "1.0", "benio101"); } public plugin_cfg(){ // pobieramy liczbę slotów maxPlayers=get_maxplayers(); // rejestrujemy DeathMsg register_message(get_user_msgid("DeathMsg"), "DeathMsg"); } public DeathMsg(){ new kid=get_msg_arg_int(1); // zabojca new bool:skull=true; // czy ikona to czaszka new icon[32]; // nazwa ikony get_msg_arg_string(4, icon, 31); for(new i=0; i<29; ++i){ if(equal(icons[i], icon)){ skull=false; break; } } if(skull && IsPlayer(kid) && get_user_flags(kid) & VIP_FLAG){ // zmieniamy ikonę na zieloną czaszkę set_msg_arg_string(4, "teammate"); } }
Użytkownik Benio101 edytował ten post 11.06.2013 15:02
Dodanie drugiej wersji
Napisano 11.06.2013 18:17
Na podstawie 1 kodu, nie trzeba już sprawdzać czy dana osoba została zabita strzałem w głowę, bo ikonka i tak będzie zielona (ikonka smierci + glowa), tak?
Jeśli tak, to można zamknąć, nowa rzecz poznana
Użytkownik Filip1512 edytował ten post 11.06.2013 18:17
Napisano 11.06.2013 18:26
0 użytkowników, 0 gości, 0 anonimowych