CMD:nyit(playerid){ if(!IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)) { if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(!IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(!IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\"); return 1;}
if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1)
if(PlayerInfo[playerid][pLeader] == 1 && PlayerInfo[playerid][pMember] == 1)
CMD:nyit(playerid){ if(!IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)) { if(PlayerInfo[playerid][pLeader] == 1 && PlayerInfo[playerid][pMember] == 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(!IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] == 9 && PlayerInfo[playerid][pMember] == 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(!IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] == 9 && PlayerInfo[playerid][pMember] == 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\"); return 1;}
Ugyan úgy bugos. Csak most a probléma a következõ : akárhol beírom hogy nyit kiirja a /me-t.Ha Area 51-nél írom be a /nyit parancsot a rendõrségen nyitja ki. Ha a Rnedõrséágen írom be az Area 51-nél nyitja ki. Holott a kordináták hibátlanok
CMD:nyit(playerid){ if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)) { if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\"); return 1;}
CMD:nyit(playerid){ if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)) { if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\"); return 1;} Jó volt úgy ahogy írtad, csak a felkiáltójelek nem kellettek volna az IsPlayerInRangeOfPoint elé.A pLeader és a pMember ellenõrzés pedig azért volt helyes, mert akkor megállt a parancs ha az adott frakciónak nem a leadere és nem is a tagja.Amit elõttem leírtak az akkor állítja meg, hogyha a pLeader és a pMember is egyenlõ a megadott számmal.
CMD:nyit(playerid){ if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)) { if(PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] == 9 || PlayerInfo[playerid][pMember] == 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else if(IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] == 9 || PlayerInfo[playerid][pMember] == 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); { MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1; } } else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\"); return 1;}
CMD:nyit(playerid){if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)){ if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(!IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\");return 1;}
a helyes kód valahogy így néz ki: CMD:nyit(playerid){if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)){ if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(!IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\");return 1;}
a helyes kód valahogy így néz ki: CMD:nyit(playerid){if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)){ if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(!IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\");return 1;} Hááááááááááááááááát, nem^^ Az a jó, amit én írtam. A tiedben mind a három hiba is szerepel: csak akkor teljesül a parancs, ha leader és tag is egyben, ráadásul nem a megadott frakcióhoz tartozik, illetve csak akkor, ha nincs a pont közelében... Gyakorlatilag lemásoltad az alap kódot, és levettél belõle ! jelet, ami kb. 1/10-ed megoldás, úgy, hogy elõtted már rég leírtam, magyarázattal a helyes kódot.A nevedet látva beugrott, hogy páran tisztelnek téged, akkor szerintem ezen tisztelethez képest segíts is, ne pedig rosszul, mikor már a helyes megoldás is ki lett posztolva. [/quote]Nem akarok rosszat mondani de jót írt le. kell a felkiáltó jel a leader elé. Tehát:PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9Mûködik így rendesen.
a helyes kód valahogy így néz ki: CMD:nyit(playerid){if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)){ if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); SetObjectRot(pdajto,0.00, 0.00, 90.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(IsPlayerInRangeOfPoint(playerid,10,135.2556,1946.8518,19.3614)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51bejarat, 121.00, 1941.54, 21.67, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else if(!IsPlayerInRangeOfPoint(playerid,10,286.9180,1821.3264,18.0773)) { if(PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); MoveObject(area51repterbejarat, 285.99, 1834.00, 19.95, 2.00); cmd_me(playerid,\"lehúzza a kártyáját, és kinyitja az ajtót.\"); return 1;}else SendClientMessage(playerid, COLOR_RED, \"Nem vagy kapu közelében!\");return 1;} Hááááááááááááááááát, nem^^ Az a jó, amit én írtam. A tiedben mind a három hiba is szerepel: csak akkor teljesül a parancs, ha leader és tag is egyben, ráadásul nem a megadott frakcióhoz tartozik, illetve csak akkor, ha nincs a pont közelében... Gyakorlatilag lemásoltad az alap kódot, és levettél belõle ! jelet, ami kb. 1/10-ed megoldás, úgy, hogy elõtted már rég leírtam, magyarázattal a helyes kódot.A nevedet látva beugrott, hogy páran tisztelnek téged, akkor szerintem ezen tisztelethez képest segíts is, ne pedig rosszul, mikor már a helyes megoldás is ki lett posztolva. [/quote]Nem akarok rosszat mondani de jót írt le. kell a felkiáltó jel a leader elé. Tehát:PlayerInfo[playerid][pLeader] != 9 && PlayerInfo[playerid][pMember] != 9Mûködik így rendesen. [/quote]Ezek szerint te azt szeretnéd, hogy csak akkor nyíljon a kapu, ha nincs a kapu közelében, leader és member is egyben, illetve nem tartozik a 9-es frakcióhoz, vagy mi?Ha persze mûködik, akkor örülök veled.
A nevedet látva beugrott, hogy páran tisztelnek téged, akkor szerintem ezen tisztelethez képest segíts is, ne pedig rosszul, mikor már a helyes megoldás is ki lett posztolva.[/quote]nézd meg mit is írtam ki.....az eredeti kódból indultam ki if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859)) if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\"); Ha a játékos XYZ pozíciótól 5.0-s távolságon belül vanHa a játékos nem rendõr és nem tag akkor írja ki az üzenetet és visszatérés miatt nem fut le az alatta levõ kód !Szerintem van elég tapasztalatom hogy megtudjak oldani egy ilyen hibát de azért kösz hogy kioktatsz :Dmost nem taglalnám mi volt elb*szva mert láttam egy olyan hibát amit senki nem vett észre és attól volt ekkora gond ! ( vagy ha észre is vette valaki akkor nem javította )
if(IsPlayerInRangeOfPoint(playerid,5.0,1554.1825,-1253.1516,8606.0859))
if(PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 1) return HU(playerid, HPIROS, \"Nincs kulcsod az ajtóhoz\");
Akárhol írom be a parancsot azt írja ki hogy nincs kulcsom hozzá. Holott kikéne nyitnia a kaput ha ottvagyok elötte de mindenhol azt írja hogy nincs kulcs. hol rontottam el?[/quote]Nos erre sok féle kód megoldás lehet, csak egy példa: csak a 9-es frakciójú nyithassa, vagy csak az ne, vagy csak leader és tag együtt, stb. Az alap kérdésben errõl egy szó sem volt, tehát az én kódom is jó. Ha leírta volna, mi kell neki, a szerint írom meg.És pont azért, mert nem írta le, mi is kéne neki, csak azt, hogy mindenhová azt írja, hogy nincs kártyája, logikusnak tartottam, hogy ||-t írok a && helyére, a 9-es frakciónak engedélyezem a parancsot a nem 9-es frakciójú emberek helyett, és a tagadást elveszem az IsPlayerRangeOfPoint függvénybõl.