←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Parametr DeathMsg ? (nie read...


Najlepsza odpowiedź BlackPerfum 25.07.2014 19:27

mozna tak?

Tak ale totalnie nic ci to nie da jedynie pamięć zmarnujesz

I dlaczego tak mozna?

Bo nigdzie w pluginie nie wykonujesz tej funkcji bezpośrednio a amxx przesyła argumenty pośrednio

To:
public DeathMsg(id)
nie różni sie niczym od:
public DeathMsg(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,r,s,t,u,w,x,y,z)
...


Mały dowód:
#include <amxmodx>

public plugin_init()
{
	new name[100]
	for(new i=1;i<200;i++)	if(get_user_msgname(i, name, charsmax(name)))
	{
		register_event(name,"Test","")
		register_event(name,"Test","a")
		register_event(name,"Test","b")
		register_event(name,"Test","c")
		register_event(name,"Test","d")
		register_event(name,"Test","e")
		register_event(name,"Test","ab")
		register_event(name,"Test","ac")
		register_event(name,"Test","ad")
		register_event(name,"Test","bc")
		register_event(name,"Test","bd")
		register_event(name,"Test","cd")
		register_event(name,"Test","abc")
		register_event(name,"Test","abd")
		register_event(name,"Test","bcd")
		register_event(name,"Test","acd")
		register_event(name,"Test","abcd")
	}
}

public Test(id)
{
	if(id) client_print(0,print_chat,"id == %i",id)
}
Przejdź do postu
Zablokowany

  • +
  • -
Rivit - zdjęcie Rivit 25.07.2014

Witam.
Spotkalem sie z takim czyms:
public DeathMsg(id)
mozna tak? Dlaczego? I co to jest to id?
Odpowiedz

  • +
  • -
Wielkie Jol - zdjęcie Wielkie Jol 25.07.2014

można. w nawiasie podaje się parametr, w tym przypadku id to parametr. Można, ale to wtedy sprawdzasz, czy np. read_data(2) == id, czyli tak samo mógłbyś zrobić warunkiem if(read_data(2));

 

Odpowiedz

  • +
  • -
Rivit - zdjęcie Rivit 25.07.2014

Dobra. Ale kogo oznacza to id? To jest pierwszy parametr? I dlaczego tak mozna?
Odpowiedz

  • +
  • -
Najlepsza odpowiedź BlackPerfum - zdjęcie BlackPerfum 25.07.2014

mozna tak?

Tak ale totalnie nic ci to nie da jedynie pamięć zmarnujesz

I dlaczego tak mozna?

Bo nigdzie w pluginie nie wykonujesz tej funkcji bezpośrednio a amxx przesyła argumenty pośrednio

To:
public DeathMsg(id)
nie różni sie niczym od:
public DeathMsg(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,r,s,t,u,w,x,y,z)
...


Mały dowód:
#include <amxmodx>

public plugin_init()
{
	new name[100]
	for(new i=1;i<200;i++)	if(get_user_msgname(i, name, charsmax(name)))
	{
		register_event(name,"Test","")
		register_event(name,"Test","a")
		register_event(name,"Test","b")
		register_event(name,"Test","c")
		register_event(name,"Test","d")
		register_event(name,"Test","e")
		register_event(name,"Test","ab")
		register_event(name,"Test","ac")
		register_event(name,"Test","ad")
		register_event(name,"Test","bc")
		register_event(name,"Test","bd")
		register_event(name,"Test","cd")
		register_event(name,"Test","abc")
		register_event(name,"Test","abd")
		register_event(name,"Test","bcd")
		register_event(name,"Test","acd")
		register_event(name,"Test","abcd")
	}
}

public Test(id)
{
	if(id) client_print(0,print_chat,"id == %i",id)
}
Odpowiedz

  • +
  • -
Rivit - zdjęcie Rivit 25.07.2014

Czyli argumenty z eventów mam pobierać przez read_data()?
Widzialem juz kilkanascie pluginów ktore maja DeathMsg(id) i potem get_user_attacker(id).
I to działa, chociaż ta funkcja nie jest wywoływana bezpośrednio.
Odpowiedz

  • +
  • -
BlackPerfum - zdjęcie BlackPerfum 25.07.2014

Czyli argumenty z eventów mam pobierać przez read_data()?

tak

Widzialem juz kilkanascie pluginów ktore maja DeathMsg(id) i potem get_user_attacker(id).

Pewnie gdzieś jest
id = read_data(x)
Odpowiedz
Zablokowany