←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Wywołanie funkcji po naciśnięsciu E

Locked

  • +
  • -
DarkGL's Photo DarkGL 30.09.2009

mam funkcje asd i che że by się wykonała gdy gracz naciśnie E czyli (use) jak to zrobić
Quote

  • +
  • -
mgr inż. Pavulon's Photo mgr inż. Pavulon 30.09.2009

DarkGL, looknij to:
#include <amxmodx>
#include <engine>
#include <fakemeta>

#define PLUGIN "USE Test"
#define VERSION "1.0"
#define AUTHOR "Pavulon"

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	register_forward(FM_PlayerPreThink, "PlayerPreThink")
}

public client_PreThink(id)
{
	static button, oldbutton
	button = get_user_button(id)
	oldbutton = get_user_oldbutton(id)

	if (button & IN_USE && !(oldbutton & IN_USE))
	{
		nacisnal_e(id)
	}
}

public nacisnal_e(id)
{
	client_print(0, print_chat, "Gracz #%d nacisnal E(use)", get_user_userid(id))
}
Quote

  • +
  • -
DarkGL's Photo DarkGL 30.09.2009

czy zmienna oldbutton musi być?
Quote

  • +
  • -
mgr inż. Pavulon's Photo mgr inż. Pavulon 30.09.2009

czy zmienna oldbutton musi być?

a chcesz żeby funkcja wywoływana była tylko przy naciśnięciu klawisza czy kilka razy na sekundę kiedy trzymamy klawisz ?
Quote

  • +
  • -
DarkGL's Photo DarkGL 30.09.2009

tylko przy naciśnięciu
Quote

  • +
  • -
mgr inż. Pavulon's Photo mgr inż. Pavulon 30.09.2009

tylko przy naciśnięciu

czyli musi być tak jak dałem na początku.

Można kombinować jeszcze z globalną tablicą w której będzie zapisane czy gracz wcisnął już przycisk czy nie, albo z tablicą w której będzie zapisywany oldbutton danego gracza.

Ale znając życie są jeszcze inne metody.

p.s.
tylko czemu przeszkadza ci oldbutton ?
Quote
Locked