Chcialbym sie spytac jak moge wywolac funkcje po szybkim kliknieciu klawisza? Czyli np ktos kliknie szybko 2x "W" to funkcja sie wywola a jak pusci klawisz to przestanie byc uzyta.
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.
|
[ROZWIĄZANE] wywolanie funkcji po szybkim kliknieciu 2x klawisza
#2
Posted 10.11.2013 16:21
Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!
Na zlecenie i bez zlecenia zresztą też!
#4
Posted 10.11.2013 17:05
Kick All (administracja) - Wyrzuca graczy nakładając hasło na serwer.
Zlecenie Zabójstwa (4FUN) - Przyjmij zlecenie, wykonaj je, zdobądź punkty, a następnie wydaj je na dodatki, które pozwolą ci skuteczniej i szybciej wykonywać zlecenia.
#6
Posted 10.11.2013 19:16
Kick All (administracja) - Wyrzuca graczy nakładając hasło na serwer.
Zlecenie Zabójstwa (4FUN) - Przyjmij zlecenie, wykonaj je, zdobądź punkty, a następnie wydaj je na dodatki, które pozwolą ci skuteczniej i szybciej wykonywać zlecenia.
#8
Posted 10.11.2013 21:29
Przejrzalem nieco kod i jakby ktos chcial to zamieszczam gotowy kod jak tu uzycie funkcji mniej wiecej powinno wygladac (usunalem to co zbedne wystarczy wklepac swoj kod)
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <hamsandwich> #define PLUGIN "Sprint" #define VERSION "1.0" #define AUTHOR "DarkGL" #define MAX 32 enum sprintState { SPRINT_OFF , SPRINT_FIRST_FORWARD , SPRINT_NOT_FORWARD , SPRINT_ON } new sprintState: ePlayerState[MAX+1]; new Float: fTimePlayer[MAX+1]; new pCvarTimeDelay = 0 public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) pCvarTimeDelay = register_cvar("sprintMinecraft_delay" , "0.5"); register_forward(FM_PlayerPreThink, "fwPreThink"); } public client_connect(id) { cleanInformation(id); } public client_disconnect(id) { cleanInformation(id); } cleanInformation(id) { fTimePlayer[id] = 0.0; ePlayerState[id] = SPRINT_OFF; } bool: checkTime(id) { return(get_gametime() - fTimePlayer[id] <= get_pcvar_float(pCvarTimeDelay)); } public startMove(id) { ePlayerState[id] = SPRINT_ON; fTimePlayer[id] = 0.0; // dalszy kod wlaczonej funkcji } public stopMove(id) { ePlayerState[id] = SPRINT_OFF; fTimePlayer[id] = 0.0; // dalszy kod wylaczonej funkcji } public fwPreThink(id) { if(!is_user_alive(id)) { return PLUGIN_CONTINUE; } new iButton = pev(id , pev_button); new iOldButton = pev(id , pev_oldbuttons); switch(ePlayerState[id]) { case SPRINT_ON: { if(!(iButton & IN_FORWARD)) { stopMove(id) } } case SPRINT_OFF: { if(iButton & IN_FORWARD && !(iOldButton & IN_FORWARD)) { fTimePlayer[id] = get_gametime(); ePlayerState[id] = SPRINT_FIRST_FORWARD; } } case SPRINT_FIRST_FORWARD: { if(!checkTime(id)) { cleanInformation(id); return PLUGIN_CONTINUE; } if(!(iButton & IN_FORWARD)) { ePlayerState[id] = SPRINT_NOT_FORWARD; } } case SPRINT_NOT_FORWARD: { if(!checkTime(id)) { cleanInformation(id); return PLUGIN_CONTINUE; } if(iButton & IN_FORWARD) { startMove(id); } } } return PLUGIN_CONTINUE; }
// mozna zamknac, pomoc udzielona
Edited by window, 10.11.2013 21:42.
#9
Posted 10.11.2013 22:59
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users