CIRKAS KVIECIAMI VISI

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
Tetusis

CIRKAS KVIECIAMI VISI

Post by Tetusis »

Code: Select all

get_user_authid(id, AUTH, charsmax(AUTH))

Code: Select all

            if (!equal("STEAM_ID_LAN",AUTH)            || !equal("VALVE_ID_LAN", AUTH)            || !equal("STEAM_ID_PENDING", AUTH)            || !equal("VALVE_ID_PENDING", AUTH)) {
tarkim noriu neleisti siems auth pakliuti i mano sistema, bet jie vistiek mistiskai pakliuna O_o nors yra tikrinimas, bandziau taip pat su containi, equali, keista, bet nieko nesigauna, any suggestions?
Last edited by Tetusis on 2013 Mar 25 21:42, edited 1 time in total.

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: auth tikrinimas

Post by hleV »

|| → &&
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

Tetusis

Re: auth tikrinimas

Post by Tetusis »

hleV wrote:|| → &&
nelogiska, nes operatorius || reiskia arba O_o

User avatar
beast
AMX Mod X ekspertai
Posts: 509
Joined: 2011 Jan 08 18:44
Skype: thefurious4
Contact:

Re: auth tikrinimas

Post by beast »

Kad logiška. Jei atrodo nelogiška, pakeisk visus simbolius žodžiais ir skaityk visą sąlygą kaip sakinį kol daeis.

Tetusis

Re: auth tikrinimas

Post by Tetusis »

beast wrote:Kad logiška. Jei atrodo nelogiška, pakeisk visus simbolius žodžiais ir skaityk visą sąlygą kaip sakinį kol daeis.
pagal hlev:

tarkim client'o auth yra VALVE_ID_LAN, o mes turim tikrinima: jei STEAM_ID_LAN nelygus VALVE_ID_LAN ir VALVE_ID_LAN nelygus VALVE_ID_LAN ir STEAM_ID_PENDING nelygus VALVE_ID_LAN ir VALVE_ID_PENDING nelygus VALVE_ID_LAN kazkas ivyksta tik tada kai VALVE_ID_LAN yra nelygus nurodytoms salygoms

pagal mane:

client'o auth yra VALVE_ID_LAN, turim tikrinima: jei STEAM_ID_LAN nelygus VALVE_ID_LAN arba VALVE_ID_LAN nelygus VALVE_ID_LAN arba STEAM_ID_PENDING nelygus VALVE_ID_LAN arba VALVE_ID_PENDING nelygus VALVE_ID_LAN kazkas ivyksta tik tada kai VALVE_ID_LAN yra nelygus vienai is siu nurodytu salygu


.... fuck logic

User avatar
beast
AMX Mod X ekspertai
Posts: 509
Joined: 2011 Jan 08 18:44
Skype: thefurious4
Contact:

Re: auth tikrinimas

Post by beast »

Pagal hlev sąlygą, dėl to kad valve_id_lan bus lygu authid (valve_id_lan), tolesni veiksmai po { nebus vykdomi, nes sąlyga reikalauja, kad authid būtų nelygu visiems nurodytiems stringams. Kur problema?

Tetusis

Re: auth tikrinimas

Post by Tetusis »

beast wrote:Pagal hlev sąlygą, dėl to kad valve_id_lan bus lygu authid (valve_id_lan), tolesni veiksmai po { nebus vykdomi, nes sąlyga reikalauja, kad authid būtų nelygu visiems nurodytiems stringams. Kur problema?
pagal hlev salyga VALVE_ID_LAN turi buti nelygus visiems nurodytiems, nes yra operatorius

Code: Select all

&&

User avatar
beast
AMX Mod X ekspertai
Posts: 509
Joined: 2011 Jan 08 18:44
Skype: thefurious4
Contact:

Re: auth tikrinimas

Post by beast »

Ne valve_id_lan, o authid, kad ir koks jis bebūtų. Tarkim jei bus steam:0 kažkos ten, tai bus vykdoma tai, kas eina po {. O jei bus bent vienas iš nurodytų sąlygoje, iš kart tolesni tikrinimai ir veiksmai tai sąlygai bus nutraukti. Tikiuosi aišku dabar bus :D...

Tetusis

Re: auth tikrinimas

Post by Tetusis »

beast wrote:Ne valve_id_lan, o authid, kad ir koks jis bebūtų. Tarkim jei bus steam:0 kažkos ten, tai bus vykdoma tai, kas eina po {. O jei bus bent vienas iš nurodytų sąlygoje, iš kart tolesni tikrinimai ir veiksmai tai sąlygai bus nutraukti. Tikiuosi aišku dabar bus :D...
VALVE_ID_LAN buvo pateiktas kaip pavizdys, o su && to padaryti negalima.

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: auth tikrinimas

Post by hleV »

Aš nežinau kaip tu darai. Ar tu vykdai kažką jei ta sąlyga teisinga, ar darai return? Nes dabar pagal tave yra taip:

Code: Select all

new skaicius = random(1337); if (skaicius != 1 || skaicius != 2){    // Pagauni? Salyga visada teisinga, nes skaicius negali atitikt ir 1 ir 2.}
O pagal mano:

Code: Select all

new skaicius = random(1337); if (skaicius != 1 && skaicius != 2){    // Salyga teisinga tik tada, jei skaicius nera nei 1, nei 2.}
Jei darai tiesiog return, tai gali papraščiausiai pašalint šauktukus prieš equal.

Jei po šito nedašus, reiškia esi susipykęs su logika ir gali mest visą šitą reikalą.
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

Locked

Who is online

Users browsing this forum: No registered users and 4 guests