hlmod.hu
https://hlmod.hu/

Addolas Beleirasa!!
https://hlmod.hu/viewtopic.php?f=10&t=31377
Oldal: 1 / 1

Szerző:  KillerHepy [ 2022.10.26. 22:33 ]
Hozzászólás témája:  Addolas Beleirasa!!

Sziasztok.. Hijaba Bele van irva az addolas nem mukodik valaki ki javitana nekem megy a pacsi akinek sikerul koszonom elore is :)

Csatolmányok:
Magyarázat: Sziasztok.. Hijaba Bele van irva az addolas nem mukodik valaki ki javitana nekem megy a pacsi akinek sikerul koszonom elore is :)
exodus_global_offensive_regi.sma [58.31 KiB]
Letöltve 44 alkalommal.

Szerző:  ✪ BeNiCh' [ 2022.11.11. 12:03 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

KillerHepy írta:
Sziasztok.. Hijaba Bele van irva az addolas nem mukodik valaki ki javitana nekem megy a pacsi akinek sikerul koszonom elore is :)


Adatbázisból próbáltad?

Szerző:  exodus [ 2023.03.28. 10:06 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

  1. register_clcmd("say /add", "Addolas");


  1. register_clcmd("say /addolas", "Addolas");


Így próbáld

Szerző:  John Wick [ 2023.03.28. 16:11 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

Bro, hogyha nem működne esetleg próbáld így, azt hiszem nekem így működött:

  1. public Addolas(id)
  2. {
  3. if(get_user_flags(id) == TULAJ)
  4. {
  5.     for(new i;i < MAX; i++)
  6.     OsszesSkin[i][id]++;
  7.     for(new i;i < LADA; i++)
  8.     Lada[i][id] += 10;
  9.     Kulcs[id] += 60;
  10.     SMS[id] += 2032;
  11. }
  12. else
  13. {
  14.     ColorChat(id, GREEN, "%s ^1Nincs jogod ehhez", C_Prefix);
  15. }
  16. }


  1. public Addolas(id)
  2. {
  3. if(get_user_flags(id) & TULAJ)
  4. {
  5.     for(new i;i < MAX; i++)
  6.     OsszesSkin[i][id]++;
  7.     for(new i;i < LADA; i++)
  8.     Lada[i][id] += 10;
  9.     Kulcs[id] += 60;
  10.     SMS[id] += 2032;
  11.     ColorChat(id, GREEN, "%s ^1Addoltál magadnak!", C_Prefix);
  12. }
  13. else
  14. {
  15.     ColorChat(id, GREEN, "%s ^1Nincs jogod ehhez", C_Prefix);
  16. }
  17. }

Szerző:  exodus [ 2023.04.01. 19:25 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

John Wick írta:
Bro, hogyha nem működne esetleg próbáld így, azt hiszem nekem így működött:

  1. public Addolas(id)
  2. {
  3. if(get_user_flags(id) == TULAJ)
  4. {
  5.     for(new i;i < MAX; i++)
  6.     OsszesSkin[i][id]++;
  7.     for(new i;i < LADA; i++)
  8.     Lada[i][id] += 10;
  9.     Kulcs[id] += 60;
  10.     SMS[id] += 2032;
  11. }
  12. else
  13. {
  14.     ColorChat(id, GREEN, "%s ^1Nincs jogod ehhez", C_Prefix);
  15. }
  16. }


  1. public Addolas(id)
  2. {
  3. if(get_user_flags(id) & TULAJ)
  4. {
  5.     for(new i;i < MAX; i++)
  6.     OsszesSkin[i][id]++;
  7.     for(new i;i < LADA; i++)
  8.     Lada[i][id] += 10;
  9.     Kulcs[id] += 60;
  10.     SMS[id] += 2032;
  11.     ColorChat(id, GREEN, "%s ^1Addoltál magadnak!", C_Prefix);
  12. }
  13. else
  14. {
  15.     ColorChat(id, GREEN, "%s ^1Nincs jogod ehhez", C_Prefix);
  16. }
  17. }


Ez teljesen ugyan az csak van egy chat üzenet pluszba :D

Szerző:  HellEnergY [ 2023.04.03. 15:36 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

Nem, nem ugyan az.. Lehet hülyének fognak nézni... de az egyik egy bitenkénti ÉS.
A másik pedig sima matematikai összehasonlítás, ami a lekért bitflag sumot magával a definiált értékkel fogja összehasonlítani, azaz ADMIN_IMMUNITY-val. (nem tudom melyik a sorszáma pawnban).

Magát a függvényt is bitként kell kezelni..
Returns the client's admin flags as a bitflag sum.

https://www.amxmodx.org/api/amxmodx/get_user_flags

tehát amit írt John Wick a jó.

if(get_user_flags(id) & TULAJ)...stb.
nem pedig
if(get_user_flags(id) == TULAJ)...stb.

Szerző:  DexoN [ 2023.04.03. 16:00 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

HellEnergY írta:
Nem, nem ugyan az.. Lehet hülyének fognak nézni... de az egyik egy bitenkénti ÉS.
A másik pedig sima matematikai összehasonlítás, ami a lekért bitflag sumot magával a definiált értékkel fogja összehasonlítani, azaz ADMIN_IMMUNITY-val. (nem tudom melyik a sorszáma pawnban).

Magát a függvényt is bitként kell kezelni..
Returns the client's admin flags as a bitflag sum.

https://www.amxmodx.org/api/amxmodx/get_user_flags

tehát amit írt John Wick a jó.

if(get_user_flags(id) & TULAJ)...stb.
nem pedig
if(get_user_flags(id) == TULAJ)...stb.

Jaja, valóban nem ugyanaz, viszont mivel bitflag sumot ad vissza, ezért magyarul számot ad vissza, ugyanúgy mint az admin jogok (pl. ADMIN_IMMUNITY).
Ha a játékosnak a flagjei az ADMIN_BAN (1<<3 = 8) akkor a get_user_flags(játékos) 8-t fog visszaadni számként.
Tehát helyes az utóbbi is, annyi eltéréssel hogy az megnézni hogy pontosan x az adott flagek vannak-e a játékosnál.
Példa:
Kód:
enum _:RankProps {permissionName[32], permissionColor[4], permissionFlag[32]}
new const g_cRanks[][RankProps] = {
    {"L_CHAT_OWNER", "^3", "abcdefghijklpqrstuvy"},
    {"L_CHAT_HEAD_ADMIN", "^4", "abcdefghijklpqrstuvy"},
    {"L_CHAT_ADMIN", "^4", "cdefju"},
    {"L_CHAT_MINI_ADMIN", "^1", "cefj"},
    {"L_CHAT_SUPPORT_PLUS", "^1", "m"},
    {"L_CHAT_YOUTUBER", "^1", "n"},
    {"L_CHAT_VIP", "^1", VIP_FLAG},
}

if(!(get_user_flags(INDEX) == read_flags(g_cRanks[UPDATE_FLAG][permissionFlag])))
      //Nincsenek meg a pontos flagek...

Szerző:  exodus [ 2023.04.03. 17:59 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

  1. if(get_user_flags(id) & TULAJ)


Így is megfelelő.

Nálam a /add parancsal volt a probléma amit átírtam /addolas-ra és működött a dolog

Szerző:  HellEnergY [ 2023.04.30. 15:58 ]
Hozzászólás témája:  Re: Addolas Beleirasa!!

exodus írta:
  1. if(get_user_flags(id) & TULAJ)


Így is megfelelő.

Nálam a /add parancsal volt a probléma amit átírtam /addolas-ra és működött a dolog


Tehát akkor

Az if(get_user_flags(id) == ADMIN_IMMUNITY) feltétel akkor lesz igaz, ha a játékos azonosítójához rendelt jogosultságok (flags) éppen megegyeznek az ADMIN_IMMUNITY értékkel.

Másrészt, az if(get_user_flags(id) & ADMIN_IMMUNITY) feltétel azt teszteli, hogy a játékos jogosultságainak ADMIN_IMMUNITY bitje be van-e állítva (1), vagy nincs (0). Ez a bitenkénti "és" művelet (& operátor) arra utal, hogy a két érték (a játékos jogosultságai és az ADMIN_IMMUNITY érték) bitjeit összeveti, és csak akkor ad igaz értéket, ha mindkettőnél adott bit be van állítva.

Tehát az első feltétel csak akkor lesz igaz, ha a játékos jogosultságai pontosan az ADMIN_IMMUNITY értékkel egyeznek meg. A második feltétel azonban akkor is igaz lehet, ha a játékosnak más jogosultságai is vannak az ADMIN_IMMUNITY biten kívül, de az ADMIN_IMMUNITY bit be van állítva a jogosultságai között.

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/