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 wyświetlaniem wiadomości w hud


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

#1 rzeznik9871

    Wszechwidzący

  • Użytkownik

Reputacja: 80
Zaawansowany

  • Postów:260
Offline

Napisano 03.04.2016 22:00

Zacząłem sobie pisać prosty plugin w którym miały być monety i miały one razem z hp pokazywac sie na hudzie calosc wyglada tak

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <core>
#include <fakemeta_util>
#include <colorchat>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

#define MONETY_RUNDA 5

new monety[33]

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_clcmd("say test" , "test")
	register_clcmd("say test2" , "test2")
	
	register_logevent("Koniec_Rundy", 2, "1=Round_End")
}
public client_putinserver()
{
	set_task(1.0,"hud",_,_,_,"b")
}
public Koniec_Rundy(id)
{
	monety[id]=monety[id]+MONETY_RUNDA
	ColorChat(id,GREEN,"^x01 Dostales ^x03%d^x04 Monet",MONETY_RUNDA)
}
public hud(id)
{
	set_hudmessage(255, 0, 0, 0.05, 0.90)
	show_hudmessage(id, "HP: %d Monety: %d",get_user_health(id),monety[id])
}
public test(id)
{
	client_print(id,3,"hp %d monety %d ",get_user_health(id),monety[id])
}
public test2(id)
{
	set_hudmessage(255, 0, 0, 0.2, 0.90,_,_,_,_,_,2)
	show_hudmessage(id, "HP: %d monety: %d",get_user_health(id),monety[id])

}

problem polega na tym ze wiadomosc hud odświeżana przez taska pokazuje caly czas 0hp wpisujac test2 wiadomosc poprawnie wyswietla hp drugi problem jest taki ze po skonczeniu rundy dostajemy monety i caly czas jest problem z hudem na hudzie gdzie jest wyswietlane 0hp monety pokazuje sie normalnie z kazda kolejna runda +5 monet i sie wyswietlaja 5,10,15 itp ale jak wpisze test2 aby wyswietlil sie hud gdzie jest popranie pokazywane hp monety sa rowne 0 nie mam pojecia co moze nie dzialac w tak prostym kodzie ktos ma jakies pomysly?


Użytkownik rzeznik9871 edytował ten post 03.04.2016 22:01

  • +
  • -
  • 0

Cześć


#2 Robiin

    Godlike

  • Support Team

Reputacja: 1 106
Super Hero

  • Postów:2 048
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 03.04.2016 22:25

new hp[33]

get_user_health(id)

 

    set_hudmessage(255, 0, 0, 0.05, 0.90)
    show_hudmessage(id, "HP: %i Monety: %d", hp ,monety[id])


  • +
  • -
  • 0

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#3 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 04.04.2016 03:14

Bo w funkcji tasku zmienna id ma wartość 0, po czym próbujesz pobrać hp z id 0, które zwraca 0 i dodatkowo sra błędami (zerknij do error logów).

Ustawiając taska nie nadałeś mu żadnego id przecież.


  • +
  • -
  • 1

#4 rzeznik9871

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 80
Zaawansowany

  • Postów:260
Offline

Napisano 04.04.2016 15:53

patrzyłem wszedzie tylko nie tam gdzie trzeba dzięki grankee ale jeszcze jedno jak mam dodac monety poprzez event konca rundy bo tak jak jest aktualnie nie dziala monety dodawane sa do serweraa nie do gracza


  • +
  • -
  • 0

Cześć


#5 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 04.04.2016 22:09

Bo event konca rundy nie ma id.

musisz uzyc petli 

for(new i=1;i<33;i++)
{
if(!is_user_connected(i)) continue
if(costam)
{
 monety[i]+=MONETY
client_print(i,print_chat,"dostales %d monet",MONETY)
}
}

Zwróć uwagę, że po prawej stronie postu są takie strzałeczki, zielona i czerwona. Jak jakiś post Ci pomógł, to klikasz przy nim tą zieloną. Analogicznie postępujesz z każdym pomocnym postem. 


Użytkownik grankee edytował ten post 04.04.2016 22:10

  • +
  • -
  • 1




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

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