←  Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

Warunek if - funkcja kill

Zablokowany

Gość__* 15.03.2009

Witam,

Jak należy zrobić warunek if na komendę kill ?

if ( ?? ) {

}

Odpowiedz

  • +
  • -
R3X - zdjęcie R3X 15.03.2009

jeśli chodzi Ci czy gracz jest żywy to:
if( is_user_alive(id))
jeśli chcesz przechwycić komendę kill, czyli zrobić coś gdy gracz chce się zabić to w plugin_init()
register_clcmd("kill","cmd_playerKill");
i gdzieś dalej:
public cmd_playerKill(id){
//tu kod
}
Odpowiedz

Gość__* 15.03.2009

Chciałbym np. Jeżeli gracz wpisze kill, to na HUD pojawi się napis.
Odpowiedz

  • +
  • -
R3X - zdjęcie R3X 15.03.2009

To drugie rozwiązanie, np:
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_clcmd("kill","cmd_playerKill");
}
public cmd_playerKill(id){
	new szName[33];
	get_user_name(id,szName,32);
	set_hudmessage(255, 0, 0, 0.03, 0.46, 0, 6.0, 5.0)
	show_hudmessage(id, "%s sie zabil",szName)
	return PLUGIN_CONTINUE;
}
Odpowiedz

Gość__* 15.03.2009

A na warunku da się to zrobić?

Bo chodzi mi np. o to żeby mógł dać

if ( ?? ) {

}
elseif {

}


Chyba, że... Hmm, był wykorzystał tablicę :)
Odpowiedz

  • +
  • -
R3X - zdjęcie R3X 15.03.2009

Możesz łapać wszystkie komendy gracza
public client_command(id){
new szCmd[10];
read_argv(0,szCmd,9);
if(equali(szCmd,"KILL")){
//kill
}else
{
//inna komenda
}
return PLUGIN_CONTINUE;
}


[ Dodano: 15-03-2009, 14:10 ]
Najlepiej napisz do czego Ci to potrzebne.
Odpowiedz

Gość__* 15.03.2009

Yyy, Chciałem dodać losowy napis jak ktoś się sam zabije (wpisze kill)

a czy to jest dobrze:

#include <amxmodx>

#define MSG 4

new samobojstwo[MSG][] = {
"%s wbil sobie noz prosto w serce!",
"%s sam sobie strzelil HeadShota!",
"%s strzelil sobie w leb!",
"%s uznal, ze nie ma po co zyc!"}

public plugin_init()
{
    register_plugin("Samobojstwo", "1.1", "deLL")
    register_event("DeathMsg", "knife_kill", "a", "4&kni")
}

public knife_kill(id)
{
    new name[18]
    get_user_name(id, name, 17)
    set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
    show_hudmessage(0, samobojstwo[ random_num(0, MSG-1) ], name)
    }
}

?
Odpowiedz

  • +
  • -
kam821 - zdjęcie kam821 15.03.2009

Tak lepiej: :]
#include <amxmodx>

new samobojstwo[][] =
{
	"%s wbil sobie noz prosto w serce!",
	"%s sam sobie strzelil HeadShota!",
	"%s strzelil sobie w leb!",
	"%s uznal, ze nie ma po co zyc!"
}

public plugin_init()
{
	register_plugin("Samobojstwo", "1.1", "deLL")
	register_event("DeathMsg", "knife_kill", "a", "4&kni")
}

public client_death(killer,victim)
{
	if(killer != victim)
	   return;
	   
	new name[32]
	get_user_name(killer, name, 31)
	set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
	show_hudmessage(0, samobojstwo[random(sizeof samobojstwo)], name)
}
Odpowiedz

Gość__* 15.03.2009

Działa idealnie, wielkie dzięki.

#include <amxmodx>

new samobojstwo[][] =
{
    "%s wbil sobie noz prosto w serce!",
    "%s sam sobie strzelil HeadShota!",
    "%s strzelil sobie w leb!",
    "%s uznal, ze nie ma po co zyc!"
}

public plugin_init()
{
    register_plugin("Samobojstwo", "1.1", "deLL, Help: kam821, R3X - AMXX.pl")
    register_event("DeathMsg", "knife_kill", "a", "4&kni")
}

public client_death(killer,victim)
{
    if(killer != victim)
       return;
       
    new name[32]
    get_user_name(killer, name, 31)
    set_hudmessage(200, 100, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 1)
    show_hudmessage(0, samobojstwo[random(sizeof samobojstwo)], name)
}
Odpowiedz
Zablokowany