←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Vip na flage

Zablokowany

lysy0406 - zdjęcie lysy0406 13.05.2012

[uwaga='benio101']Autor tematu zbanowany[/uwaga]

//isVip[id] = bool:(get_user_flags(id) & ADMIN_LEVEL_G);
if(get_user_flags(id) & ADMIN_LEVEL_G) isVip[id] = false;
else isVip[id] = true;
get_user_name(id, gName[id], 31);


powyżej umieściłem kod który jak mnie mam odpowiada za vip`a na serwerze, mimo to vip`a moze miec kazdy bez flagi .. co poradzicie ?
Użytkownik benio101 edytował ten post 31.10.2012 10:07
Kod w postach (np. źródło pluginu) umieszczaj w odpowiednich tagach (code/php/spoiler itp).
Odpowiedz

  • +
  • -
Universal - zdjęcie Universal 13.05.2012

//isVip[id] = bool:(get_user_flags(id) & ADMIN_LEVEL_G);
if(get_user_flags(id) & ADMIN_LEVEL_G) isVip[id] = true;
else isVip[id] = true;
get_user_name(id, gName[id], 31);


Spróbuj . ;)
Odpowiedz

  • +
  • -
GwynBleidD - zdjęcie GwynBleidD 13.05.2012

Zamieniłeś miejscami true i false w kodzie (albo ktoś to uczynił). Rozwiązanie podane przez universal pomoże tylko w połowie (vipa dalej będą mieli wszyscy, ale teraz włącznie z osobami z flagą, wcześniej tylko oni NIE mieli vipa). Proponuję odkomentować tą pierwszą linię, która jest napisana całkiem poprawnie i wywalenie tych 2ch następnych. Jeśli mimo to dalej nie działa, problem leży w innej części (częściach?) kodu, prawdopodobnie w miejscach przyznawania VIPowi umiejętności na podstawie tablicy isVip. Może by też tablica modyfikowana w innych częściach pluginu, lub nie zadeklarowana jako globalna.

Czyli działające rozwiązanie (jeśli błąd leży tylko tutaj:
isVip[id] = bool:(get_user_flags(id) & ADMIN_LEVEL_G);
get_user_name(id, gName[id], 31);
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 13.05.2012

Automatyczna wiadomość


Ten temat został przeniesiony z forum:
AMX Mod XProblemy
do
Scripting AMXXProblemy

Odpowiedz

Gość_21977_* 13.05.2012

//isVip[id] = bool:(get_user_flags(id) & ADMIN_LEVEL_G);
if(get_user_flags(id) & ADMIN_LEVEL_G) isVip[id] = true;
else isVip[id] = true;
get_user_name(id, gName[id], 31);


Spróbuj . ;)

Nawet nie myśl o posłuchaniu tej "rady".


BTW.
new isVip[id] = bool:(get_user_flags(id) & ADMIN_LEVEL_G);
get_user_name(id, gName[id], 31);
// bez new, o ile zmienna była już deklarowana.
Odpowiedz

lysy0406 - zdjęcie lysy0406 14.05.2012

Robilem tak jak pisałem Gwym i benio mimo to dalej klasy ma kazdy ..
Odpowiedz

  • +
  • -
Universal - zdjęcie Universal 14.05.2012

Daj całe .sma albo każdy kod, w którym widzisz
ADMIN_LEVEL_G ;)
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 14.05.2012

if(get_user_flags(id) & ADMIN_LEVEL_G)

        isVip[id] = true;

else 

         isVip[id] = false;



get_user_name(id, gName[id], 31);
Odpowiedz

  • +
  • -
GwynBleidD - zdjęcie GwynBleidD 14.05.2012

Podaj całe SMA pluginu, błąd musi leżeć w innym miejscu.
Odpowiedz
Zablokowany