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

Problem z HUD'em


  • Zamknięty Temat jest zamknięty
9 odpowiedzi w tym temacie

#1 Złotówka

    Wszechwidzący

  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:244
  • Imię:Adam
  • Lokalizacja:Łódź
Offline

Napisano 16.09.2010 16:29

Witam,

Problem polega na tym, że dodałem taki HUD ( Jeśli można to tak nazwać xD ) jak w BF2, czy Diablo.

Chciałem dodać coś takiego

Dodałem coś takiego w tym Hudzie

Exp: %d / %d, xp_gracza[id], xp_potrzeba[id]

Chodzi o to, że funkcja xp_potrzba ma być funkcją która pokazuje ile Expa trzeba na następnym poziom.

Posłużyłem się Diablo Modem, ale coś mi nie wyszło :D
Zdefiniowałem tak:
public WyswietlHUD(id)  
{ 
	if(is_user_alive(id))
{	
		new Float:xp_potrzeba
		new HUD[128]
			
		if (Poziom[id] == 0)
		{
			xp_potrzeba = float(LEVELS[Poziom[id]])
		}
		else
		{
			xp_potrzeba = float(LEVELS[Poziom[id]])-float(LEVELS[Poziom[id]-1])
		}

LEVELS = Tablica Leveli jakie posiadam w sma,
Poziom = Poziom Gracza
xp_gracza = Exp Gracza

Proszę o pomoc, dam +

[warn=DarkGL]Refersh po kilku godzinach czyżby brak cierpliwości ?[/warn]
  • +
  • -
  • 0

#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 17.09.2010 13:05

  xp_potrzeba = float(LEVELS[Poziom[id]])-float(LEVELS[Poziom[id]-1])
:lol:
na

  xp_potrzeba = float(LEVELS[Poziom[id]])-float(LEVELS[Poziom[id]+1])

  • +
  • -
  • 1

#3 Złotówka

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:244
  • Imię:Adam
  • Lokalizacja:Łódź
Offline

Napisano 17.09.2010 14:19

Nie działa,

Wyświetla się
Exp: 0 / 0 na Serwerze a na 1 lvl jest 200 Exp ;d

[warn=DarkGL]Dużo jeszcze tych refreshy ?[/warn]
  • +
  • -
  • 0

#4 Pawex

    Wszechpomocny

  • Użytkownik

Reputacja: 94
Zaawansowany

  • Postów:381
  • Lokalizacja:Polska
Offline

Napisano 23.09.2010 14:35

Skoro w hudzie dales exp jaki masz i exp do zdobycia, a nie na nastepny poziom to sproboj tak:
xp_potrzeba = float(LEVELS[Poziom[id]+1])

Zrobiles tak:
xp_potrzeba = float(LEVELS[Poziom[id]])-float(LEVELS[Poziom[id]+1])
Czyli: Exp potrzebny to zmienia expa na twoj poziom minus zmienna na nastepny poziom co daje, ze do zdobycia masz mniej expa niz masz(xp_gracza) :o

Albo Zrob zeby wyswietlalo sam exp do zdobycia, bez tego ile jeszcze masz i wtedy uzyj tego kodu:
xp_potrzeba = float(LEVELS[Poziom[id]])-float(LEVELS[Poziom[id]+1])

A w Hudzie:
Potrzebny Exp: %d, xp_potrzeba[id]


P.S. Skoro Ci wyswietala: Exp: 0 / 0
To znaczy, ze xp_gracza w ogole nie dziala? :o Albo dales gdzies tam ogranicznik, ze nie moze byc wiekszy od xp_potrzeba i nie dziala.

Użytkownik Pawex edytował ten post 23.09.2010 14:44

  • +
  • -
  • 0

#5 Złotówka

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:244
  • Imię:Adam
  • Lokalizacja:Łódź
Offline

Napisano 24.09.2010 16:35

Pawex, niestety dalej nie działa nadal wyświetla się 0 / 0. Wie ktoś jak zrobić? Może inaczej trzeba zdefiniować xp_potrzeba? Proszę o pomoc.
  • +
  • -
  • 0

#6 Złotówka

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:244
  • Imię:Adam
  • Lokalizacja:Łódź
Offline

Napisano 04.10.2010 10:55

Refresh
  • +
  • -
  • 0

#7 hardbot

    Banned

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:3 049
Offline

Napisano 04.10.2010 13:56

Zamiast %d daj %i

#8 Złotówka

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:244
  • Imię:Adam
  • Lokalizacja:Łódź
Offline

Napisano 09.10.2010 15:58

hardbot tak też nie działa.
  • +
  • -
  • 0

#9 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 09.10.2010 16:16

Pokaż jak samego HUD wyświetlasz, znaczy kod naokoło. Tablica poziomów graczy działa dobrze? I gdzie wywołujesz funkcję WyswietlHUD? może ID jest niewłaściwe?
  • +
  • -
  • 0

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#10 Złotówka

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:244
  • Imię:Adam
  • Lokalizacja:Łódź
Offline

Napisano 09.10.2010 18:50

HUD:

public WyswietlHUD(id)  
{ 
	if(is_user_alive(id))
{	
		new Float:xp_potrzeba
		new HUD[128]
			
		if (Poziom[id] == 0)
		{
			xp_potrzeba = float(LEVELS[Poziom[id]])
		}
		else
		{
			xp_potrzeba = float(LEVELS[Poziom[id]])-float(LEVELS[Poziom[id]-1])
		}

		format(HUD, 127,"Poziom: %d || Exp: %i / %i", Poziom[id], xp_gracza[id], xp_potrzeba)
		message_begin(MSG_ONE, msgtext, {0,0,0}, id)
		write_byte(0)
		write_string(HUD)
		message_end()
		return PLUGIN_CONTINUE

	}
	return PLUGIN_CONTINUE
}

A tutaj tablica lleveli

new const LEVELS[30] = 
{   
	200,        		// 1 level
	400,         		// 2 level
	700,       		 // 3 level
	1050,      		// 4 level
	1450,     		 // 5 level
	2000,     		 // 6 level
	2700,     		 // 7 level
	3550,     		 // 8 level
	4900,  		 // 9 level
	5800, 		// 10 level
	7000,		// 11 level
	9000,		// 12 level
	12000,		// 13 level
	15500,		//14 level
	18100, 		// 15 level
	20000,		 // 16 level
	23000,		 // 17 Level
	27500,		 // 18 Level
	32000,		// 19 Level
	36300, 		// 20 Level
	41200, 		// 21 Level
	47000, 		// 22 Level
	53300, 		// 23 Level
	60000, 		// 24 Level
	66300, 		// 25 Level
	73200,		 // 26 Level
	81000, 		// 27 Level
	88000, 		// 28 Level
	99000, 		// 29 Level 
	150000, 		// 30 Level

  • +
  • -
  • 0




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

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