←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
[ROZWIĄZANE] Zespojenie HUD'u systemu...

Zablokowany

  • +
  • -
fbang - zdjęcie fbang 24.01.2012

Siema,
tak wygląda HUD z systemu monet - http://amxx.pl/topic...3-system-monet/
public PokazMonety(id)
{
id -= ZADANIE_POKAZ_MONETY;

if(!is_user_alive(id))
{
remove_task(id+ZADANIE_POKAZ_MONETY);
return;
}

set_hudmessage(108, 83, 213, -1.0, 0.102, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "^n[Monety: %i]", monety[id]);
}

public ResetHUD(id)
{
if(!task_exists(id+ZADANIE_POKAZ_MONETY))
set_task(0.1, "PokazMonety", id+ZADANIE_POKAZ_MONETY, _, _, "b");
}


a tak HUD z codmoda
    id -= ZADANIE_POKAZ_INFORMACJE;

if(!is_user_connected(id))
{
remove_task(id+ZADANIE_POKAZ_INFORMACJE);
return PLUGIN_CONTINUE;
}
if(!is_user_alive(id))
{
new target = pev(id, pev_iuser2);

if(!target)
return PLUGIN_CONTINUE;
new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1)
new Float:fProcent = 0.0;
fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;

set_hudmessage(108, 83, 213, 0.01, 0.19, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nExp : %0.1f%%^nLevel : %i^nPerk : %s^nDrugi perk : %s^nZdrowie : %i^nForum : xxxxyyy", nazwy_klas[klasa_gracza[target]], fProcent, poziom_gracza[target], nazwy_perkow[perk_gracza[0][target]], nazwy_perkow[perk_gracza[1][target]], get_user_health(target));
return PLUGIN_CONTINUE;
}
new ileMa = doswiadczenie_gracza[id],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[id]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[id]-1)
new Float:fProcent = 0.0;
fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;


set_hudmessage(108, 83, 213, -1.0, 0.01, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Exp : %0.1f%%]^n[Level : %i]^n[Perk : %s]^n[Drugi perk : %s]^n[Zdrowie : %i]", nazwy_klas[klasa_gracza[id]], fProcent, poziom_gracza[id], nazwy_perkow[perk_gracza[0][id]], nazwy_perkow[perk_gracza[1][id]], get_user_health(id));

return PLUGIN_CONTINUE;


problem polega na tym, że jak ktoś gra na mniejszych rozdzielczościach (mniejszych niż 1920 na chyba 1600) to napis Monety: zlewa mu się z napisami Zdrowie, Perk itp.
Jak zrobić, żeby Monety były pod napisami z coda? i nie nakładały się na siebie?

proszę o pomoc

ref.
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 24.01.2012

Wywal z pluginu monet ten kod, który podałeś wyżej, a także wywal z plugin_init to:
register_event("ResetHUD", "ResetHUD", "abe");

Na początku pluginu CoD'a, dopisz:
native cod_get_user_coins(id)

I zmień funkcję wywołującą HUD w CoD'zie na:
	id -= ZADANIE_POKAZ_INFORMACJE;

if(!is_user_connected(id))
{
remove_task(id+ZADANIE_POKAZ_INFORMACJE);
return PLUGIN_CONTINUE;
}
if(!is_user_alive(id))
{
new target = pev(id, pev_iuser2);

if(!target)
return PLUGIN_CONTINUE;
new ileMa = doswiadczenie_gracza[target],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[target]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[target]-1)
new Float:fProcent = 0.0;
fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;

set_hudmessage(108, 83, 213, 0.01, 0.19, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nExp : %0.1f%%^nLevel : %i^nPerk : %s^nDrugi perk : %s^nZdrowie : %i^nMonety : %i^nForum : xxxxyyy", nazwy_klas[klasa_gracza[target]], fProcent, poziom_gracza[target], nazwy_perkow[perk_gracza[0][target]], nazwy_perkow[perk_gracza[1][target]], get_user_health(target), cod_get_user_coins(target));
return PLUGIN_CONTINUE;
}
new ileMa = doswiadczenie_gracza[id],ilePotrzeba = PobierzDoswiadczeniePoziomu(poziom_gracza[id]),ilePotrzebaBylo = PobierzDoswiadczeniePoziomu(poziom_gracza[id]-1)
new Float:fProcent = 0.0;
fProcent = (float((ileMa - ilePotrzebaBylo)) / float((ilePotrzeba - ilePotrzebaBylo))) * 100.0;


set_hudmessage(108, 83, 213, -1.0, 0.01, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Exp : %0.1f%%]^n[Level : %i]^n[Perk : %s]^n[Drugi perk : %s]^n[Zdrowie : %i]^n[Monety : %i]", nazwy_klas[klasa_gracza[id]], fProcent, poziom_gracza[id], nazwy_perkow[perk_gracza[0][id]], nazwy_perkow[perk_gracza[1][id]], get_user_health(id), cod_get_user_coins(id));

return PLUGIN_CONTINUE;
Odpowiedz

  • +
  • -
fbang - zdjęcie fbang 24.01.2012

Dzięki wielkie, działa.
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 24.01.2012

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
Odpowiedz
Zablokowany