Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CoD Nowy

Wybór - gdzie ma się znajdować HUD

cod nowy

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
6 odpowiedzi w tym temacie

#1 fbang

    Wszechwidzący

  • Użytkownik

Reputacja: 82
Zaawansowany

  • Postów:237
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 05.02.2012 20:31

Witam, głowię się nad stworzeniem "Wybierz HUD" w nowym cod modzie.

public PokazInformacje(id)
{
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^nPunkty honoru : %i^nForum : xxx", 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[Punkty honoru : %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;
}


na początku kodu dałem
// Polozenie x / y
new Float:HudType[][3] = {
{0.02, 0.43},
{0.02, 0.43},
{0.02, 0.43}
}

// Red, green, blue
new HudColor[][5] = {
{0, 255, 0},
{255, 0, 0},
{0, 0, 255}
}

a na końcu to:
public Menu_Hud(id)
{
new menu = menu_create("\yWybierz Hud:", "Menu_Hud_Handle")
new formats[100]

menu_additem(menu, "wyłącz Hud");

for(new i; i<sizeof HudType; i++)
{
formatex(formats, charsmax(formats), "Styl Hud \y%i", i+1)
menu_additem(menu, formats);
}
menu_display(id,menu,0)
}

public Menu_Hud_Handle(id, menu, item)
{

client_cmd(id, "spk QTM_CodMod/select");

if(item == MENU_EXIT){
menu_destroy(menu);
return PLUGIN_CONTINUE;
}

if(item == 0){
iPlayerHudType[id]=0;
menu_destroy(menu)
return PLUGIN_HANDLED;
}

iPlayerHudType[id]=item;
Menu_Hud(id);
return PLUGIN_HANDLED;

}

public menu_callback(id, Menu, item){
return ITEM_DISABLED
}


jak widać, chcę aby gracz mógł zmienić sobie położenie napisów "Zdrowie", "Level" itd., ale nie mam pojęcia jak to wszystko zastosować do public PokazInformacje, żeby działało.
proszę o pomoc

ref.

ref
  • +
  • -
  • 0

#2 Goliath

    Godlike

  • Przyjaciel

Reputacja: 1 237
Godlike

  • Postów:2 334
  • GG:
  • Steam:steam
  • Imię:Maciej
  • Lokalizacja:Mońki
Offline

Napisano 05.02.2012 20:41

	set_hudmessage(HudColor[iPlayerHudType[id]][0], HudColor[iPlayerHudType[id]][1], HudColor[iPlayerHudType[id]][2], HudType[iPlayerHudType[id]][0], HudType[iPlayerHudType[id]][1], 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[Punkty honoru : %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));

Spróbuj tak.
  • +
  • -
  • 1

#3 misiek111232

    Profesjonalista

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:213
  • Lokalizacja:Działki
Offline

Napisano 05.02.2012 20:53

Mam ptanie jak ustawić to
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);

Żeby znajdowało się od razu pod samym radarem.
Bawie się już godzinę i nic
  • +
  • -
  • 0

#4 SoPelQ

    Banned

  • Zbanowany

Reputacja: 7
Nowy

  • Postów:121
  • Lokalizacja:Utajnione
Offline

Napisano 06.02.2012 10:50

Albo ustawiasz jedno, albo drugie.
set_hudmessage(xxx, xxx, xxx, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
Za "xxx" podstaw liczbe od 0 - 255

Edit: Nie zauważyłem że wyżej napisałeś to samo. Musi być dobrze, bo mi działa normalnie.

Użytkownik lok301 edytował ten post 06.02.2012 10:51


#5 fbang

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 82
Zaawansowany

  • Postów:237
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 06.02.2012 16:10

Po części działa, tzn.
16:01:46: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 16:01:46: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 16:01:46: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 16:01:46: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 16:01:46: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 16:01:46: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 16:01:46: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 16:01:46: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 16:01:46: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 16:01:46: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 16:01:46: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 16:01:47: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 16:01:47: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 16:01:47: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)


gdzie public PokazInformacje wyglada tak:
public PokazInformacje(id)
{
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(HudColor[iPlayerHudType[id]][0], HudColor[iPlayerHudType[id]][1], HudColor[iPlayerHudType[id]][2], HudType[iPlayerHudType[id]][0], HudType[iPlayerHudType[id]][1], 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nExp : %0.1f%%^nLevel : %i^nPerk : %s^nDrugi perk : %s^nZdrowie : %i^nPunkty honoru : %i^nForum : CS-Error.pl", 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(HudColor[iPlayerHudType[id]][0], HudColor[iPlayerHudType[id]][1], HudColor[iPlayerHudType[id]][2], HudType[iPlayerHudType[id]][0], HudType[iPlayerHudType[id]][1], 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[Punkty honoru : %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;
}


+ jest jeszcze problem z Hud Menu.

Tzn. naciskam "wyłącz HUD" to przenosi napisy gdzie indziej, a nacisne Hud Style 3 to je wylacza calkowicie.

public Menu_Hud(id)
{
new menu = menu_create("\yWybierz HUD:", "Menu_Hud_Handle")
new formats[100]

menu_additem(menu, "Wyłacz HUD");

for(new i; i<sizeof HudType; i++)
{
formatex(formats, charsmax(formats), "Styl HUD \y%i", i+1)
menu_additem(menu, formats);
}
menu_display(id,menu,0)
}

public Menu_Hud_Handle(id, menu, item)
{

client_cmd(id, "spk QTM_CodMod/select");

if(item == MENU_EXIT){
menu_destroy(menu);
return PLUGIN_CONTINUE;
}

if(item == 0){
iPlayerHudType[id]=0;
menu_destroy(menu)
return PLUGIN_HANDLED;
}

iPlayerHudType[id]=item;
Menu_Hud(id);
return PLUGIN_HANDLED;

}

public menu_callback(id, Menu, item){
return ITEM_DISABLED
}


Bardzo proszę o pomoc :)
  • +
  • -
  • 0

#6 Goliath

    Godlike

  • Przyjaciel

Reputacja: 1 237
Godlike

  • Postów:2 334
  • GG:
  • Steam:steam
  • Imię:Maciej
  • Lokalizacja:Mońki
Offline

Napisano 06.02.2012 21:31

Zmień funkcję PokazInformacje na:
public PokazInformacje(id)
{
id -= ZADANIE_POKAZ_INFORMACJE;

if(!is_user_connected(id) || !iPlayerHudType[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(HudColor[iPlayerHudType[id]][0], HudColor[iPlayerHudType[id]][1], HudColor[iPlayerHudType[id]][2], HudType[iPlayerHudType[id]][0], HudType[iPlayerHudType[id]][1], 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nExp : %0.1f%%^nLevel : %i^nPerk : %s^nDrugi perk : %s^nZdrowie : %i^nPunkty honoru : %i^nForum : CS-Error.pl", 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(HudColor[iPlayerHudType[id]-1][0], HudColor[iPlayerHudType[id]-1][1], HudColor[iPlayerHudType[id]-1][2], HudType[iPlayerHudType[id]-1][0], HudType[iPlayerHudType[id]-1][1], 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[Punkty honoru : %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;
}

  • +
  • -
  • 0

#7 fbang

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 82
Zaawansowany

  • Postów:237
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 08.02.2012 15:23

AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 22:08:27: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 22:08:27: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 22:08:27: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 22:08:27: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 22:08:27: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 22:08:27: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 22:08:27: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 22:08:27: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 22:08:27: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 22:08:27: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 22:08:27: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 22:08:27: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 22:08:27: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 22:08:27: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)
L 02/06/2012 - 22:08:27: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 02/06/2012 - 22:08:27: [AMXX] Run time error 4: index out of bounds
L 02/06/2012 - 22:08:27: [AMXX] [0] QTM_CodMod.sma::PokazInformacje (line 1581)



a owa linijka to:
   	 set_hudmessage(HudColor[iPlayerHudType[id]][0], HudColor[iPlayerHudType[id]][1], HudColor[iPlayerHudType[id]][2], HudType[iPlayerHudType[id]][0], HudType[iPlayerHudType[id]][1], 0, 0.0, 0.3, 0.0, 0.0);


ref.

Użytkownik fbang edytował ten post 06.02.2012 22:15

  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: cod nowy

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych