Info w HUD(Życie i Kasa)
Niquit
08.05.2012
Nie będę się rozpisywał, nie działa plugin.
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#define PLUGIN "Massage HUD"
#define VERSION "1.0"
#define AUTHOR "Niquit"
new SyncHudObj
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
set_task(0.1, "Message_Hud", 0, "", 0, "b")
}
public Message_Hud(id)
{
new iHealth = get_user_health(id);
new iMoney = cs_get_user_money(id);
set_hudmessage(0, 255, 0, 0.0, 0.15, 0, 6.0, 12.0);
ShowSyncHudMsg(id, SyncHudObj, "Health: %s^nMoney: %s", iHealth,iMoney);
}
dasiek
08.05.2012
#include <amxmodx> #include <amxmisc> #include <cstrike> #define PLUGIN "Massage HUD" #define VERSION "1.0" #define AUTHOR "Niquit" #define ZADANIE_HUD 98211 new SyncHudObj public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) SyncHudObj = CreateHudSyncObj(); } public client_authorized(id) { set_task(6.0,"Message_Hud",id + ZADANIE_HUD) } public Message_Hud(id) { id-= ZADANIE_HUD; new iHealth = get_user_health(id); new iMoney = cs_get_user_money(id); set_hudmessage(0, 255, 0, 0.0, 0.15, 0, 6.0, 12.0); ShowSyncHudMsg(id, SyncHudObj, "Health: %s^nMoney: %s", iHealth,iMoney); set_task(0.1,"Message_Hud",id + ZADANIE_HUD) }
plugin_init nie zwraca ID do Message_Hud trzeba znaleść taki forward który zwróci
i SyncHudObj musisz zadeklarować jako obiekt HUDa.
Jak nie będzie działać - napisz.
ogieR8
08.05.2012
A nie koliduję Ci z innym pluginem co wywołuje HUD ? Bo jeśli tak to wystarczy zmienić kanał w set_hudmessage, a jeśli nie wiesz to sprawdź czy Ci coś nie wyskakuje podczas gry
Spr zamienić :
na to:
A.. mnie znów CheQ wyprzedził, jednakże z inną metodą ; d
ps: na taska z id nawet nie zwróciłem uwagi, przyznam.
Edited by ogieR-, 08.05.2012 10:44.
Spr zamienić :
set_hudmessage(0, 255, 0, 0.0, 0.15, 0, 6.0, 12.0);
ShowSyncHudMsg(id, SyncHudObj, "Health: %s^nMoney: %s", iHealth,iMoney);
na to:
set_hudmessage(0, 255, 0, 0.0, 0.15, 0, 6.0, 12.0, 3);
show_hudmessage(id,"Health: %s^nMoney: %s", iHealth,iMoney);
A.. mnie znów CheQ wyprzedził, jednakże z inną metodą ; d
ps: na taska z id nawet nie zwróciłem uwagi, przyznam.
Edited by ogieR-, 08.05.2012 10:44.
Niquit
08.05.2012
Niby wyświetla, tylko zamiast ilości HP i Kasy pokazuje "@", "d" "Ld". Takie coś.
Oba sposoby próbowałem.
Edited by Niquit, 08.05.2012 11:07.
Oba sposoby próbowałem.
Edited by Niquit, 08.05.2012 11:07.
dasiek
08.05.2012
#include <amxmodx> #include <amxmisc> #include <cstrike> #define PLUGIN "Massage HUD" #define VERSION "1.0" #define AUTHOR "Niquit" #define ZADANIE_HUD 98211 new SyncHudObj public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) SyncHudObj = CreateHudSyncObj(); } public client_authorized(id) { set_task(6.0,"Message_Hud",id + ZADANIE_HUD) } public Message_Hud(id) { id-= ZADANIE_HUD; new iHealth = get_user_health(id); new iMoney = cs_get_user_money(id); set_hudmessage(0, 255, 0, 0.0, 0.15, 0, 6.0, 12.0); ShowSyncHudMsg(id, SyncHudObj, "Health: %i^nMoney: %i", iHealth,iMoney); set_task(0.1,"Message_Hud",id + ZADANIE_HUD) }
hp i kasa to są cyfry potrzebują %i a nie %s (jak do tekstu) Spróbój to z góry.
Niquit
08.05.2012
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#define PLUGIN "Massage HUD"
#define VERSION "1.0"
#define AUTHOR "Niquit"
#define ZADANIE_HUD 98211
new g_HudSyncObj
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
g_HudSyncObj = CreateHudSyncObj();
}
public client_authorized(id)
{
set_task(6.0,"Message_Hud",id + ZADANIE_HUD)
}
public Message_Hud(id)
{
id-= ZADANIE_HUD;
new iHealth = get_user_health(id);
new iMoney = cs_get_user_money(id);
set_hudmessage(0, 255, 0, 0.0, 0.15, 0, 6.0, 12.0);
ShowSyncHudMsg(id, g_HudSyncObj, "Health: %d^nMoney: %d", iHealth,iMoney);
set_task(0.1,"Message_Hud",id + ZADANIE_HUD)
}
Działający kod.
Teraz mogę dodać do niego więcej bajerów.
Edited by Niquit, 08.05.2012 12:25.
dasiek
08.05.2012
btw - Message_hud mozesz skrócić bez przypisywania wartości. o tak
id -= ZADANIE_HUD set_hudmessage(0, 255, 255, 0.07, 0.40, 0, 0.0, 0.3, 0.0, 0.0); ShowSyncHudMsg(id,HUDa,"HP: %i ^nKasa: %i",get_user_health(id),cs_get_user_money(id)) set_task(0.1,"PokazHud",id+ZADANIE_HUD)
shoote 01.08.2012
a jak zrobic zeby jak jest po lewej "Klasa, Poziom, Perk, Dośw" zeby nizej pisalo "Zycie : "
Nenczoks 02.08.2012
btw - Message_hud mozesz skrócić bez przypisywania wartości. o tak
id -= ZADANIE_HUD set_hudmessage(0, 255, 255, 0.07, 0.40, 0, 0.0, 0.3, 0.0, 0.0); ShowSyncHudMsg(id,HUDa,"HP: %i ^nKasa: %i",get_user_health(id),cs_get_user_money(id)) set_task(0.1,"PokazHud",id+ZADANIE_HUD)
Nieoptymalne. Lepiej zrobić static health; health = get_user_health(id)
Edited by Nenczoks, 02.08.2012 07:08.
shoote 02.08.2012
Po
Dośw
dodaj ^n i przechodzi do nowej lini
Ale jak dokladnie mam to zrobic, aby pisalo "zycie : " po dosw
Po
Dośw
dodaj ^n i przechodzi do nowej lini
Ale jak dokladnie mam to zrobic, aby pisalo "zycie : " po dosw
glut
02.08.2012
Jak masz te linijke
Dodaj kilka razy ^n aby przejść do kolejnej lini. I sprawdzaj sobie w grze czy już jest ok ustawione
przykład z dwoma ^n
Edited by glut1997, 02.08.2012 09:02.
ShowSyncHudMsg(id,HUDa,"HP: %i ^nKasa: %i",get_user_health(id),cs_get_user_money(id))
Dodaj kilka razy ^n aby przejść do kolejnej lini. I sprawdzaj sobie w grze czy już jest ok ustawione
przykład z dwoma ^n
ShowSyncHudMsg(id,HUDa,"^n^nHP: %i ^nKasa: %i",get_user_health(id),cs_get_user_money(id))
Edited by glut1997, 02.08.2012 09:02.
dasiek
02.08.2012
btw - Message_hud mozesz skrócić bez przypisywania wartości. o tak
id -= ZADANIE_HUD set_hudmessage(0, 255, 255, 0.07, 0.40, 0, 0.0, 0.3, 0.0, 0.0); ShowSyncHudMsg(id,HUDa,"HP: %i ^nKasa: %i",get_user_health(id),cs_get_user_money(id)) set_task(0.1,"PokazHud",id+ZADANIE_HUD)
Nieoptymalne. Lepiej zrobić static health; health = get_user_health(id)
Czemu? skoro i tak i tak zadziała a mój kod jest krótszy?
Damiano1x
02.08.2012
A nie łatwiej edytować to w silniku coda?
Trzeba tylko dopisać to w odpowiednim miejscu:
a na końcu te dwie rzeczy:
Edited by Damiano1x, 02.08.2012 10:47.
Trzeba tylko dopisać to w odpowiednim miejscu:
^n[HP: %i] ^n[Kasa: %i]
a na końcu te dwie rzeczy:
get_user_health(id),cs_get_user_money(id)
Edited by Damiano1x, 02.08.2012 10:47.
speedkill
02.08.2012
Głupoty gadasz ...btw - Message_hud mozesz skrócić bez przypisywania wartości. o tak
id -= ZADANIE_HUD set_hudmessage(0, 255, 255, 0.07, 0.40, 0, 0.0, 0.3, 0.0, 0.0); ShowSyncHudMsg(id,HUDa,"HP: %i ^nKasa: %i",get_user_health(id),cs_get_user_money(id)) set_task(0.1,"PokazHud",id+ZADANIE_HUD)
Nieoptymalne. Lepiej zrobić static health; health = get_user_health(id)
Co do tematu troche za dużo kombinujecie, nie lepiej po prostu gdy gracz wbija ( authorized ) stworzyć taska z flagą "b" co sekundę i pokazywać ile ma on hp ? A gdy wychodzi usunąć tego taska ?
Do pokazywania ile gracz ma hp spokojnie możecie użyć %d
Nenczoks 09.08.2012
btw - Message_hud mozesz skrócić bez przypisywania wartości. o tak
id -= ZADANIE_HUD set_hudmessage(0, 255, 255, 0.07, 0.40, 0, 0.0, 0.3, 0.0, 0.0); ShowSyncHudMsg(id,HUDa,"HP: %i ^nKasa: %i",get_user_health(id),cs_get_user_money(id)) set_task(0.1,"PokazHud",id+ZADANIE_HUD)
Nieoptymalne. Lepiej zrobić static health; health = get_user_health(id)
Czemu? skoro i tak i tak zadziała a mój kod jest krótszy?
A co Ty za bzdury gadasz. Nie ma znaczenia czy krótszy czy dłuższy.
Lepiej jest:
new zycie = get_user_health;
set_user_health(id, zycie + xx) lub [...] HP: %d [...], zycie, aniżeli HP: %d, get_user_health(id). Poczytaj sobie na wiki odnośnie optymalizacji pluginów.
Głupoty gadasz ...Nieoptymalne. Lepiej zrobić static health; health = get_user_health(id)
Może i nie static, ale new i wtedy nie będą głupoty!
+ to samo co wyżej.
Edited by Nenczoks, 09.08.2012 01:12.