Profis müssen dran !

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey Leute,


    ich habe eine Frage und zwar, was ist hierdran falsch:


    forward IsAOR(playerid);
    forward IsAORCar(carid);


    if(IsAORCar(newcar))
    {
    if(IsAOR(playerid))
    {
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist kein Oil-Förderer !");
    RemovePlayerFromVehicle(playerid);
    }
    }


    public IsAOR(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    new job = PlayerInfo[playerid][pJob];
    if(job==11)
    {
    return 1;
    }
    }
    return 0;
    }


    public IsAORCar(carid)
    {
    if(carid == orcar1 || carid == orcar2 || carid == orcar3 || carid == orcar4)
    {
    return 1;
    }
    return 0;
    }



    Es kommen keine Warnings keine Errors, trotzdem wird keiner aus dem fahrzeug geschmissen noch kann ich /oil machen dann steht da du bist kein Oillieferant obwohl es bei /stats da steht oO ich bitte um dringender Hilfe !


    achja hier nioch die cars:


    AddStaticVehicle(453,4596.1074,-1864.5994,0.1405,90.1071,13,13); // Bohrinsel !
    AddStaticVehicle(417,4553.4082,-1853.9502,33.6467,90.0457,13,13); // Bohrinsel 2
    AddStaticVehicle(417,4590.1484,-1858.0293,33.6451,177.7031,13,13); // Bohrinsel 3
    AddStaticVehicle(453,2962.4509,-1488.9917,-0.3171,172.9653,13,13); // Bohrinsel 4



    Siehe unten !


    100% Selfmade Reallife Loading ...



    2 Mal editiert, zuletzt von Poseidon ()

  • So fängst du schon richtig an:
    forward IsAOR(playerid);
    forward IsAORCar(carid);
    Ich denke, das hast du bei den ganzen anderen Car-Abfragen?

    if(IsAORCar(newcar) && IsAOR(playerid)) // Beides in einer Abfrage spart Zeit
    {
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist kein Oil-Förderer !");
    RemovePlayerFromVehicle(playerid);
    }

    Dann deine Funktionen:

    public IsAOR(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pJob]==11) //Das spart ebenso Zeit, wie Recourcen
    {
    return 1;
    }
    }
    return 0;
    }


    public IsAORCar(carid)
    {
    if(carid == orcar1 || carid == orcar2 || carid == orcar3 || carid == orcar4)
    {
    return 1;
    }
    return 0;
    }


    Einfacher ist es allerdings den Autos einen Namen zu geben:

    new car[5] //6 Neue "Plätze" für Autos

    Dort hinmachen, wo die Autos erstellt werden sollen:

    car[1] = CreateVehicle....
    car[2] = CreateVehicle....
    car[3] = CreateVehicle....
    car[4] = CreateVehicle....


    public IsAORCar(carid)
    {
    if(for(new autoid=0; autoid<car; autoid++) //"schleift" alle Arrays ab
    {
    if(carid == car[autiod])
    {
    return 1;
    }
    }
    return 0;
    }


    Das ist jetzt schnell im Forum geschrieben, also wenn Fehler drinne sind: Sorry ;)


    Gruß Hauke
    Gruß Hauke

    PAWNit gratis nutzen?
    Geschenkcode: 2017VQXPKB8V3KA

    Hier könnte Ihre Werbung stehen.

  • Grex ich machs ja nicht nach ;) so definiert eig. jeder seine Cars :) ich habe kein einziges mal Godfather aufgemacht seit dem ich am scripten bin also am selfmade ;) ja wooow das meinst du mit pJob etc xD du wirst es mir nicht glauben aber ich weiß nicht wie ich sie sonst definieren soll hahaha kb zu gehabt mir was einfallen zu lassen so ok


    new orcar1,orcar2,orcar3,orcar4;


    100% Selfmade Reallife Loading ...



  • Es geht eigentlich um
    if(IsAORCar(newcar) && IsAOR(playerid)) // Beides in einer Abfrage spart Zeit
    {
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist kein Oil-Förderer !");
    RemovePlayerFromVehicle(playerid);
    }
    Warum if .... {} else { ... } und nicht if ..... return true; else return false; ?


    Für mich ist das genau das gleiche wie im GF,... aber naja ist ja hier nicht die Diskussion.



    new orcar1,orcar2,orcar3,orcar4;


    Ja und wo steht orcar =

  • habe ich doch gepostet xD außerdem so wie ich diese cars definiert habe habe ich alle anderen auch, es klappt bei allen einwandfrei nur bei diesem kack nicht xD


    die cars


    orcar1 = Addstatic...


    sind im Ongamemodeinit hier:


    Ich depp xD ich hatte vergessen die auch zu definieren ups ich dummer junge hahaha
    also das klappt jetzt, habe aber immernoch das Problem mit dem /oil


    100% Selfmade Reallife Loading ...



  • Hier, sagt der mir das ich kein Oillieferant bin obwohl es so ist ?


    if(strcmp(cmd,"/oil",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pOil] == 1)return SendClientMessage(playerid,COLOR_LIGHTRED,"Du hast die Oilfässer schon geladen !");
    if (!(IsAOR(playerid) && PlayerInfo[playerid][pOil] == 1))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Oillieferant!");
    return 1;
    }
    SetPlayerCheckpoint(playerid, 4568.1059570313,-1866.4818115234,33.555366516113,3.0);
    if(PlayerToPoint(250.0,playerid,4568.1059570313,-1866.4818115234,33.555366516113))
    {
    PlayerInfo[playerid][pOil] = 1;
    GivePlayerMoney(playerid, -2500);
    SetPlayerCheckpoint(playerid, 2782.4309,-2350.3171,13.6328,3.0);
    SendClientMessage(playerid, COLOR_GREEN,"Das Oil wurde aufgeladen Transportiere es zum LS-Hafen");
    }
    else
    {
    SendClientMessage(playerid, COLOR_LIGHTRED,"Du bist nicht an der Bohrinsel folge der Roten Makierung");
    return 1;
    }
    }
    return 1;
    }


    if(strcmp(cmd,"/deliver",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    if (!(IsAOR(playerid) && PlayerInfo[playerid][pOil] == 1))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Oillieferant!");
    return 1;
    }
    if(PlayerInfo[playerid][pOil] == 0)return SendClientMessage(playerid,COLOR_LIGHTRED,"Du hast noch kein Oil geladen !");
    if(PlayerToPoint(10.0,playerid,2782.4309,-2350.3171,13.6328))
    {
    PlayerInfo[playerid][pOil] = 0;
    GivePlayerMoney(playerid, 7500);
    SendClientMessage(playerid, COLOR_GREEN,"Das Oil wurde abgeladen und gelagert gute Arbeit");
    }
    else
    {
    SendClientMessage(playerid, COLOR_LIGHTRED,"Du bist nicht an dem Los Santos Hafen");
    return 1;
    }
    }
    return 1;
    }



    und nochwas, was ist heirdran falsch ?


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(IsALF(playerid) && IsALFCar(vehicleid))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Alles klar, es kann losgehen, folge der roten Makierung !");
    SetPlayerCheckpoint(playerid, -1945.7650,146.6759,25.2855,10.0);
    }
    else if(PlayerToPoint(10.0,playerid,-1945.7650,146.6759,25.2855))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das erste Ziel wurde erreicht, ab zum nächsten !");
    SetPlayerCheckpoint(playerid, 583.2600,1274.0646,11.8498,10.0);
    GivePlayerMoney(playerid, 2500);
    return 1;
    }
    else if(PlayerToPoint(10.0,playerid,583.2600,1274.0646,11.8498))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das zweite Ziel wurde erreicht, ab zum nächsten !");
    SetPlayerCheckpoint(playerid, 2073.6641,-1953.7427,13.1117,10.0);
    GivePlayerMoney(playerid, 2500);
    return 1;
    }
    else if(PlayerToPoint(10.0,playerid,2073.6641,-1953.7427,13.1117))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das letzte Ziel wurde erreicht, ab zum nächsten !");
    GivePlayerMoney(playerid, 2500);
    SendClientMessage(playerid, COLOR_GREEN,"Wenn du erneut anfangen möchtest steige kurz aus dem Zug und wieder ein !");
    return 1;
    }
    return 1;
    }


    Ich möchte mit nem Zug 3 Checkpoints abfahren, wenn ich in nem Zug einsteige steht auch alles da, aber sobald ich den ersten chekpoint abgefahren habe gehts nicht weiter ? Eig. müsste ja der andere dann angezigt werden ?


    100% Selfmade Reallife Loading ...



    3 Mal editiert, zuletzt von Poseidon ()

  • Geil danke, klappt nun einwandfrei, jetzt fehlt nur noch das mit den Checkpoints da :/





    und nochwas, was ist heirdran falsch ?


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(IsALF(playerid) && IsALFCar(vehicleid))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Alles klar, es kann losgehen, folge der roten Makierung !");
    SetPlayerCheckpoint(playerid, -1945.7650,146.6759,25.2855,10.0);
    }
    else if(PlayerToPoint(10.0,playerid,-1945.7650,146.6759,25.2855))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das erste Ziel wurde erreicht, ab zum nächsten !");
    SetPlayerCheckpoint(playerid, 583.2600,1274.0646,11.8498,10.0);
    GivePlayerMoney(playerid, 2500);
    return 1;
    }
    else if(PlayerToPoint(10.0,playerid,583.2600,1274.0646,11.8498))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das zweite Ziel wurde erreicht, ab zum nächsten !");
    SetPlayerCheckpoint(playerid, 2073.6641,-1953.7427,13.1117,10.0);
    GivePlayerMoney(playerid, 2500);
    return 1;
    }
    else if(PlayerToPoint(10.0,playerid,2073.6641,-1953.7427,13.1117))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das letzte Ziel wurde erreicht, ab zum nächsten !");
    GivePlayerMoney(playerid, 2500);
    SendClientMessage(playerid, COLOR_GREEN,"Wenn du erneut anfangen möchtest steige kurz aus dem Zug und wieder ein !");
    return 1;
    }
    return 1;
    }


    Ich möchte mit nem Zug 3 Checkpoints abfahren, wenn ich in nem Zug einsteige steht auch alles da, aber sobald ich den ersten chekpoint abgefahren habe gehts nicht weiter ? Eig. müsste ja der andere dann angezigt werden ?


    100% Selfmade Reallife Loading ...



  • Wie meinst du das ?


    so würde es funzen ?


    public OnPlayerEnterCheckpoint(playerid)
    {
    DisablePlayerCheckpoint(playerid);
    SendClientMessage(playerid, COLOR_RED, "Du hast dein Ziel erreicht!");

    new vehicleid = GetPlayerVehicleID(playerid);
    if(IsALF(playerid) && IsALFCar(vehicleid))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Alles klar, es kann losgehen, folge der roten Makierung !");
    SetPlayerCheckpoint(playerid, -1945.7650,146.6759,25.2855,10.0);
    return 1;
    }
    else if(PlayerToPoint(10.0,playerid,-1945.7650,146.6759,25.2855))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das erste Ziel wurde erreicht, ab zum nächsten !");
    SetPlayerCheckpoint(playerid, 583.2600,1274.0646,11.8498,10.0);
    GivePlayerMoney(playerid, 2500);
    return 1;
    }
    else if(PlayerToPoint(10.0,playerid,583.2600,1274.0646,11.8498))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das zweite Ziel wurde erreicht, ab zum nächsten !");
    SetPlayerCheckpoint(playerid, 2073.6641,-1953.7427,13.1117,10.0);
    GivePlayerMoney(playerid, 2500);
    return 1;
    }
    else if(PlayerToPoint(10.0,playerid,2073.6641,-1953.7427,13.1117))
    {
    SendClientMessage(playerid, COLOR_GREEN,"Das letzte Ziel wurde erreicht, ab zum nächsten !");
    GivePlayerMoney(playerid, 2500);
    SendClientMessage(playerid, COLOR_GREEN,"Wenn du erneut anfangen möchtest steige kurz aus dem Zug und wieder ein !");
    return 1;
    }
    return 1;
    }


    100% Selfmade Reallife Loading ...



    Einmal editiert, zuletzt von Poseidon ()