Mam pytanie czy da sie zrobic HUD w kilku barwach czy np moze byc tylko zielony
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
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.
|

#1
Napisano 25.12.2024 00:13
#2
Napisano 25.12.2024 11:50
#3
Napisano 25.12.2024 14:00
{
id -= 1000;
if(!is_user_connected(id))
{
return;
}
if(is_user_alive(id))
{
new hudzik[526];
new hud_len;
const hud_lenik = sizeof hudzik;
new name[33];
get_user_name(id, name, charsmax(name));
new class_name[30];
cod_get_user_class_name(id, class_name, charsmax(class_name));
new perk_name[30];
cod_get_user_perk_name(cod_get_user_perk(id), perk_name, charsmax(perk_name));
new klan_name[30];
cod_get_user_clan(id, klan_name, charsmax(klan_name));
hud_len = formatex(hudzik[hud_len], hud_lenik - hud_len, "[NICK]: %s^n", name);
if(cod_get_user_class_id(id))
{
hud_len += formatex(hudzik[hud_len], hud_lenik - hud_len, "[KLASA]: %s^n", class_name);
hud_len += formatex(hudzik[hud_len], hud_lenik - hud_len, "[PERK]: %s^n", perk_name);
}
hud_len += formatex(hudzik[hud_len], hud_lenik - hud_len, "[MONETY]: %i^n", zwrot_monet(id));
if(cod_get_user_class_id(id))
{
new Float:fProcent = float(((cod_get_user_next_exp(id) - cod_get_user_exp(id)) * 100) / cod_get_roznica_levele(id));
hud_len += formatex(hudzik[hud_len], hud_lenik - hud_len, "[POZIOM]: %i (%0.1f%%)^n", cod_get_user_lvl(id), 100 - fProcent);
}
hud_len += formatex(hudzik[hud_len], hud_lenik - hud_len, "[HP]: %i^n", get_user_health(id));
hud_len += formatex(hudzik[hud_len], hud_lenik - hud_len, "[KLAN]: %s^n", klan_name);
new czas[30]
zwrot_czas(id, czas, charsmax(czas));
hud_len += formatex(hudzik[hud_len], hud_lenik - hud_len, "[CZAS]: %s", czas);
set_hudmessage(0, 255, 0, 0.01, 0.20, 0, 6.0, 12.0);
ShowSyncHudMsg(id,hud, "%s", hudzik);
}
else
{
new target = pev(id, pev_iuser2);
if(!target)
{
return;
}
new thudzik[526];
new thud_len;
const thud_lenik = sizeof hudzik;
new name[33];
get_user_name(target, name, charsmax(name));
new class_name[30];
cod_get_user_class_name(target, class_name, charsmax(class_name));
new perk_name[30];
cod_get_user_perk_name(cod_get_user_perk(target), perk_name, charsmax(perk_name));
new klan_name[30];
cod_get_user_clan(target, klan_name, charsmax(klan_name));
thud_len = formatex(thudzik[thud_len], thud_lenik - thud_len, "[NICK]: %s^n", name);
if(cod_get_user_class_id(target))
{
thud_len += formatex(thudzik[thud_len], thud_lenik - thud_len, "[KLASA]: %s^n", class_name);
thud_len += formatex(thudzik[thud_len], thud_lenik - thud_len, "[PERK]: %s^n", perk_name);
}
thud_len += formatex(thudzik[thud_len], thud_lenik - thud_len, "[MONETY]: %i^n", zwrot_monet(target));
if(cod_get_user_class_id(target))
{
new Float:fProcent = float(((cod_get_user_next_exp(target) - cod_get_user_exp(target)) * 100) / cod_get_roznica_levele(target));
thud_len += formatex(thudzik[thud_len], thud_lenik - thud_len, "[POZIOM]: %i (%0.1f%%)^n", cod_get_user_lvl(target), 100 - fProcent);
}
thud_len += formatex(thudzik[thud_len], thud_lenik - thud_len, "[HP]: %i^n", get_user_health(target));
thud_len += formatex(thudzik[thud_len], thud_lenik - thud_len, "[KLAN]: %s^n", klan_name);
new czas[30]
zwrot_czas(target, czas, charsmax(czas));
thud_len += formatex(thudzik[thud_len], thud_lenik - thud_len, "[CZAS]: %s", czas);
set_hudmessage(0, 255, 0, 0.01, 0.20, 0, 6.0, 12.0);
ShowSyncHudMsg(id,hud, "%s", thudzik);
}
}
#4
Napisano 25.12.2024 14:02
chcialbym zeby [KLASA] ;[PERK] byl w innym kolorze
#5
Napisano 25.12.2024 15:43
Nie ma takiej możliwości
#6
Napisano 25.12.2024 17:02
- Na wiadomości typu "siema, mam sprawę" nie odpisuję pisz od razu o co Ci chodzi.
- Jeśli masz zlecenie pisz śmiało
- Nie pomagam na PW za darmo
#7
Napisano 25.12.2024 22:29
ale w praktyce, jeśli ktoś ruszy głową i dobrze pomyśli, to można to obejść
no i po co ludzi w błąd wprowadzasz? Boski napisał, że się nie da, to się nie da. Jak dla mnie temat wyczerpany.
Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.
#8
Napisano 25.12.2024 23:36
ale w praktyce, jeśli ktoś ruszy głową i dobrze pomyśli, to można to obejśćno i po co ludzi w błąd wprowadzasz? Boski napisał, że się nie da, to się nie da. Jak dla mnie temat wyczerpany.
no taaak mój błąd głupoty gadam.. czasem mam takie schizy, że nie wiem co się dzieje
Boski jest ten świat ukłony dla PANA
Użytkownik KoRrNiK edytował ten post 25.12.2024 23:38
- Na wiadomości typu "siema, mam sprawę" nie odpisuję pisz od razu o co Ci chodzi.
- Jeśli masz zlecenie pisz śmiało
- Nie pomagam na PW za darmo
#9
Napisano 27.12.2024 10:54
Teoretycznie HUDu nie da się zrobić w kilku kolorach, ale w praktyce, jeśli ktoś ruszy głową i dobrze pomyśli, to można to obejść. Można osiągnąć efekt wielu kolorów poprzez użycie kilku osobnych HUDów. Maksymalnie na ekranie można wyświetlić 4 HUDy przy użyciu funkcji show_hudmessage.
Praktycznie i teoretycznie nie da się zrobić żeby jeden obiekt hud był w kilku kolorach, a co do dzielenia na kilka obiektów hud. Powodzenia w zarządzaniu czymś takim. W typowych pluginach typu hud zajmujesz cały czas kanały, więc przy większych modach (więcej obiektów hud) po prostu wiadomości nie będą się wyświetlać czy w inny sposób będą się bugować.
Tutaj trzymaj na szybko coś wykombinowane oraz z wyczyszczonym kodem, nie wiem nawet czy działa bo dawno już w amxxie nie pisałem i nie miałem gdzie tego spradzić ale sama logika działania powinna być git nawet jakbyś chciał coś po swojemu pokombinować to już masz rozpisane jak to zrobić.
Nie będzie to działać. W tym przypadku class_perk_message będzie nadpisywać hud_message w przypadku, gdy cod_get_user_class_id będzie prawdą, więc będzie tylko pokazywać się jedna rzecz.
#include <amxmodx> #include <amxmisc> #define PLUGIN "Multi HUD" #define VERSION "1.0.0" #define AUTHOR "Boski Z Polski" new hud1, hud2, hud3, hud4, hud5; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); hud1 = CreateHudSyncObj(); hud2 = CreateHudSyncObj(); hud3 = CreateHudSyncObj(); hud4 = CreateHudSyncObj(); hud5 = CreateHudSyncObj(); } public client_putinserver(index) { set_task(1.0, "showHud", index, .flags="b"); } public client_disconnected(index) { remove_task(index); } public showHud(index) { new name[33]; get_user_name(index, name, 32); set_hudmessage(255, 0, 0, 0.01, 0.20, 0, 6.0, 12.0); ShowSyncHudMsg(index, hud1, "NAME1: %s", name); set_hudmessage(0, 255, 0, 0.01, 0.20, 0, 6.0, 12.0); ShowSyncHudMsg(index, hud2, "^nNAME2: %s", name); set_hudmessage(0, 0, 255, 0.01, 0.20, 0, 6.0, 12.0); ShowSyncHudMsg(index, hud3, "^n^nNAME3: %s", name); set_hudmessage(255, 255, 0, 0.01, 0.20, 0, 6.0, 12.0); ShowSyncHudMsg(index, hud4, "^n^n^nNAME4: %s", name); set_hudmessage(0, 255, 255, 0.01, 0.20, 0, 6.0, 12.0); ShowSyncHudMsg(index, hud5, "^n^n^n^nNAME5: %s", name); }
Rezultat:
jeden obiekt HUD się nie będzie wyświetlać bo wszystkie kanały zajęte czytaj rzeczy takie jak wiadomości z immesage, pokazywanie obrażeń (standard plugin abd) nie będą po prostu działać (nie będą się wyświetlać albo tak jak na powyższym przykładzie, coś sobie zniknie). Jeżeli kogoś będzie satysfakcjonować takie rozwiązanie to tak, w pierwszym poście źle napisałem.
Boski jest ten świat ukłony dla PANA
Robię ukłon do podłogi
Również z jednym lub większą ilością słów kluczowych: cod nowy
Paczka perkow.perki Napisany przez NAVIK, 24.03.2025 ![]() |
|
![]() |
|||
CoD Nowy
Plugin na małe mapy.Napisany przez NAVIK, 16.02.2025 ![]() |
|
![]() |
|||
CoD Nowy
Dodatkowe, osobne trzy linie opisu klasNapisany przez Rafii, 27.01.2025 ![]() |
|
![]() |
|||
CoD Nowy
problem z kompilacjaNapisany przez Anonimowy09, 21.01.2025 ![]() |
|
![]() |
|||
CoD Nowy
problem z HUDNapisany przez Anonimowy09, 10.01.2025 ![]() |
|
![]() |
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych