Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Jak dodać MultiJump na flagę?


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
2 odpowiedzi w tym temacie

#1 Altairek

    Początkujący

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:10
  • Imię:Kamil
  • Lokalizacja:Poznań
Offline

Napisano 22.08.2012 16:41

Witam was chciałem was zapytać, jak dodać plugin MultiJump na flagę,np X tutaj macie o który plugin mi chodzi. Tam coś pisze o tych Flagach ale nie kminie tego.
http://amxx.pl/topic...120#entry450120
  • +
  • -
  • 0

#2 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 24.08.2012 21:54

Flaga X wynosi 8388608 i aby jej używać, musisz ją zdefiniować, np.
#define ADMIN_FLAG_X 8388608
Aby zweryfikować, czy dany gracz jest uprawniony do wykonywania multijumpu, sprawdzamy, czy posiada flagę "X".
W tym celu pobieramy jego posiadane uprawnienia dla zestawu uprawnień numer 0, a następnie pobieramy iloczyn binarny jego flag z zestawu oraz wartości flagi X, tj.
if(get_user_flags(id) & ADMIN_FLAG_X){
// może używać multijumpu, ma flagę X
} else {
// nie może wykonywać wielu skoków w powietrzu, nie ma flagi X
}


Gotowe rozwiązanie z generatora:
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

new skoki[33], bool:g_Vip[33];

public plugin_init(){
register_plugin("VIP Ultimate", "4.0.0.2", "benio101 & speedkill");
RegisterHam(Ham_Spawn, "player", "SpawnedEventPre", 1);
register_forward(FM_CmdStart, "CmdStartPre");
}

public client_authorized(id){
if(get_user_flags(id) & 8388608){
g_Vip[id]=true;
}
}

public client_disconnect(id){
if(g_Vip[id]){
g_Vip[id]=false;
}
}

public SpawnedEventPre(id){
if(is_user_alive(id) && g_Vip[id])
SpawnedEvent(id);
}

public SpawnedEvent(id){
skoki[id]=1;

return PLUGIN_CONTINUE;
}

public CmdStartPre(id,uc_handle){
if(is_user_alive(id) && g_Vip[id])
CmdStart(id,uc_handle);
}

public CmdStart(id,uc_handle){
new flags = pev(id, pev_flags);
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id]){
--skoki[id];
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id,pev_velocity,velocity);
} else if(flags & FL_ONGROUND)
skoki[id] = 1;
return FMRES_IGNORED;
}


#3 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 24.08.2012 21:55

Automatyczna wiadomość


Ten temat został przeniesiony z forum

AMX Mod XPytania

do

Scripting AMXXPytania




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych