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

Ucina ;<


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

#1 Vertricus

    Godlike

  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 01.09.2009 21:37

public write_hud(id)
{
	if (player_lvl[id] == 0)
		player_lvl[id] = 1
			
	new tpstring[2048] 
	
	new Float:<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_now
	new Float:<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_need
	new Float:perc
	
	if (last_update_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />[id] == player_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />[id])
	{
		perc = last_update_perc[id]
	}
	else
	{
		//Calculate percentage of <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' /> required to level
		if (player_lvl[id] == 1)
		{
			<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_now = float(player_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />[id])
			<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_need = float(LevelXP[player_lvl[id]])
			perc = <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_now*100.0/<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_need
		}
		else
		{
			<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_now = float(player_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />[id])-float( LevelXP[player_lvl[id]-1])
			<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_need = float(LevelXP[player_lvl[id]])-float(LevelXP[player_lvl[id]-1])
			perc = <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_now*100.0/<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />_need
		}
	}
	
	last_update_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />[id] = player_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue2.gif' class='bbc_emoticon' alt='xP' />[id]
	last_update_perc[id] = perc
	
	if(player_class[id]!=Paladyn)
		format(tpstring,2047,"Klasa: %s | Level: %i (%0.0f%s) | Item: %s", Race[player_class[id]], player_lvl[id], perc,"%%",player_item_name[id])
	else
		format(tpstring,2047,"Klasa: %s | Level: %i (%0.0f%s) | Item: %s | Skoki: %i/%i", Race[player_class[id]], player_lvl[id], perc,"%%",player_item_name[id],JumpsLeft[id],JumpsMax[id])
		
	message_begin(MSG_ONE,gmsgStatusText,{0,0,0}, id) 
	write_byte(0) 
	write_string(tpstring) 
	message_end() 
}


Co zrobić w tym szanownym kodzie aby nie ucinało go gdy item ma długą nazwę?!
  • +
  • -
  • 0

#2 naven

    Hero

  • Power User

Reputacja: 204
Profesjonalista

  • Postów:1 088
  • GG:
  • Imię:Adam
  • Lokalizacja:Cieszyn
Offline

Napisano 02.09.2009 08:53

Jeśli dajesz " w "" to musisz dać tak:
client_print(id, print_chat,  "jakis tekst ^"%s^" ", string)

  • +
  • -
  • 0

#3 Vertricus

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 02.09.2009 13:09

Nie jest używane tutaj client_print i pozatym tekst jest w ""
  • +
  • -
  • 0

#4 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 02.09.2009 15:21

Co zrobić w tym szanownym kodzie aby nie ucinało go gdy item ma długą nazwę?!

w tym kodzie to raczej nic, lepiej sprawdź jaki rozmiar ma tablica player_item_name

p.s.
do jakiej długości ucina ?
  • +
  • -
  • 0

#5 Vertricus

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 02.09.2009 15:47

Z tym że nie ucina samej nazwy itemka a skoki też ;)
Źle !
http://img10.imagesh...edust20018b.png
Dobrze:
http://img212.images... ... 20017z.png
  • +
  • -
  • 0

#6 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 05.09.2009 19:56

Najwyraźniej taki jest limit długości Statusu, spróbuj użyć 2 linijek

http://wiki.amxmodx.... ... StatusText
  • +
  • -
  • 0

#7 Vertricus

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 06.09.2009 10:38

Jak w takim razie przenieść status wyżej?

[ Dodano: 06-09-2009, 12:10 ]
if(player_class[id] != Paladyn)
		format(tpstring,2047,"Item: %s",player_item_name[id]);
		format(tpstringsec,2047,"Klasa: %s | Level: %i (%0.0f%s)", Race[player_class[id]], player_lvl[id], perc,"%%");
	if(player_class[id] == Paladyn)
		format(tpstring,2047,"Item: %s | Skoki: %i/%i", player_item_name[id],JumpsLeft[id],JumpsMax[id]);
		format(tpstringsec,2047,"Klasa: %s | Level: %i (%0.0f%s)", Race[player_class[id]], player_lvl[id], perc,"%%");
		
	message_begin(MSG_ONE,gmsgStatusText,{0,0,0}, id) 
	write_byte(0) 
	write_string(tpstring) 
	message_end() 
	
	message_begin(MSG_ONE,gmsgStatusText,{-1,0,0}, id) 
	write_byte(0) 
	write_string(tpstring) 
	message_end()


Coś w ten deseń? Tylko że tak mi błędy wywala.
  • +
  • -
  • 0

#8 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 06.09.2009 11:54

Próbowałem z pierwszy argumentem, ale u mnie pokazuje tylko przy == 0. Może przy wyższej rozdzielczości, tylko wtedy nie ma sensu takie pokazywanie :P musisz skrócić zapis
  • +
  • -
  • 0

#9 Vertricus

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 426
Wszechobecny

  • Postów:1 549
  • Lokalizacja:.
Offline

Napisano 06.09.2009 12:29

Tak ale jak?!:D Wszystko jest potrzebne.

[ Dodano: 06-09-2009, 22:36 ]
Dobra jak R3X że nie da rady to close ;)
  • +
  • -
  • 0




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

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