Witam!
Szukam pluginu lub funkcji dzięki, której mógłbym ograniczyć podwójne skoki dla SVIPa na serwerze - dokładniej chodzi mi o to, aby gracz X posiadający SVIP'a mógł skoczyć podwójnie naprzykład tylko 3 razy.
Z góry dzięki za pomoc!
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.
|
Najlepsza odpowiedź KoRrNiK, 22.02.2021 23:42
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#pragma semicolon 1
new const PLUGIN[] = "Limit skokow";
new const VERSION[] = "v1.0";
new const AUTHOR[] = "KoRrNiK";
new userJump[33];
new userLimitJump[33];
new const additionalJump = 1; // Ilość dodatkowych skoków
new const limitJump = 3; // Ilość powtórzeń
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
register_forward(FM_CmdStart, "cmdStart");
RegisterHam(Ham_Spawn, "player", "spawnHam", 1);
}
public spawnHam(id){
if(!is_user_alive(id)) return;
userLimitJump[id] = limitJump;
userJump[id] = additionalJump;
}
public cmdStart(id, uc_handle){
if (!is_user_alive(id)) return FMRES_IGNORED;
static Float:velocity[3], button, oldButton, flags;
button = get_uc(uc_handle, UC_Buttons);
oldButton = pev(id, pev_oldbuttons);
flags = pev(id, pev_flags);
if ((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldButton & IN_JUMP) && userJump[id]) {
if(userLimitJump[id] >= 0){
userJump[id]--;
pev(id, pev_velocity, velocity);
velocity[2] = random_float(265.0, 285.0);
set_pev(id, pev_velocity, velocity);
}
} else {
if (flags & FL_ONGROUND){
if(!userJump[id]) userLimitJump[id]--;
userJump[id] = additionalJump;
}
}
return FMRES_IGNORED;
}
Trzymaj
Napisano 22.02.2021 22:41
Witam!
Szukam pluginu lub funkcji dzięki, której mógłbym ograniczyć podwójne skoki dla SVIPa na serwerze - dokładniej chodzi mi o to, aby gracz X posiadający SVIP'a mógł skoczyć podwójnie naprzykład tylko 3 razy.
Z góry dzięki za pomoc!
Napisano 22.02.2021 23:42 Najlepsza odpowiedź
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#pragma semicolon 1
new const PLUGIN[] = "Limit skokow";
new const VERSION[] = "v1.0";
new const AUTHOR[] = "KoRrNiK";
new userJump[33];
new userLimitJump[33];
new const additionalJump = 1; // Ilość dodatkowych skoków
new const limitJump = 3; // Ilość powtórzeń
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
register_forward(FM_CmdStart, "cmdStart");
RegisterHam(Ham_Spawn, "player", "spawnHam", 1);
}
public spawnHam(id){
if(!is_user_alive(id)) return;
userLimitJump[id] = limitJump;
userJump[id] = additionalJump;
}
public cmdStart(id, uc_handle){
if (!is_user_alive(id)) return FMRES_IGNORED;
static Float:velocity[3], button, oldButton, flags;
button = get_uc(uc_handle, UC_Buttons);
oldButton = pev(id, pev_oldbuttons);
flags = pev(id, pev_flags);
if ((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldButton & IN_JUMP) && userJump[id]) {
if(userLimitJump[id] >= 0){
userJump[id]--;
pev(id, pev_velocity, velocity);
velocity[2] = random_float(265.0, 285.0);
set_pev(id, pev_velocity, velocity);
}
} else {
if (flags & FL_ONGROUND){
if(!userJump[id]) userLimitJump[id]--;
userJump[id] = additionalJump;
}
}
return FMRES_IGNORED;
}
Trzymaj - Na wiadomości typu "siema, mam sprawę" nie odpisuję pisz od razu o co Ci chodzi.
- Jeśli masz zlecenie pisz śmiało ![]()
- Nie pomagam na PW za darmo ![]()
0 użytkowników, 1 gości, 0 anonimowych