Beiträge von Sebastian.

    Nabend.
    Ich wollte mal fragen warum dies nicht klappt:
    Wenn die Variable pFahrstunde auf 0 ist, und ich in ein Fahrschulauto einsteigen will, kommt die Nachrricht, das ich kein Schlüssel besitze. Wenn ich jetzt jedoch in ein ganz normales auto einsteigen möchte, geht dies ohne komplikationen, obwohl ich kein Führerschein besitze!
    Auch wenn die Variable pFahrstunde auf 1 ist, kann ich trotzdem in ein Auto einsteigen sowie in das Fahrschulauto (was auch so sein soll)

    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    new Float:Pos[3];
    if(pInfo[playerid][pFahrstunde] == 0){
    if(!ispassenger){
    if(FSCar(vehicleid)){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Schlüssel!");
    }
    else{
    if(IstAuto(vehicleid) && pInfo[playerid][pAutoschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Autoschein!");
    }
    else if(IstBike(vehicleid) && pInfo[playerid][pMotorradschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Motorradschein!");
    }
    else if(IstTruck(vehicleid) && pInfo[playerid][pTruckerschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Truckerschein!");
    }
    else if(IstBoot(vehicleid) && pInfo[playerid][pBootschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Bootschein!");
    }
    else if(IstPlane(vehicleid) && pInfo[playerid][pFlugschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Flugschein!");
    }
    }
    }
    }
    else{
    if(!FSCar(vehicleid)){
    if(IstAuto(vehicleid) && pInfo[playerid][pAutoschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Autoschein!");
    }
    if(IstBike(vehicleid) && pInfo[playerid][pMotorradschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Motorradschein!");
    }
    if(IstTruck(vehicleid) && pInfo[playerid][pTruckerschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Truckerschein!");
    }
    if(IstBoot(vehicleid) && pInfo[playerid][pBootschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Bootschein!");
    }
    if(IstPlane(vehicleid) && pInfo[playerid][pFlugschein] == 0){
    GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Flugschein!");
    }
    }
    }
    return 1;
    }

    Hatte es vorher schon so:
    Er hat mir zwar angezeigt, wenn die Fahrstunde auf 0 ist, das ich kein Schlüssel habe, aber wenn ich dem Spieler die Varibale auf 1 gesetzt habe, hat er gesagt Sie besitzen kein Autoschein, Truckerschein oder jenachdem welches Fahrzeug es war:

    if(pInfo[playerid][pFahrstunde] == 0 && pInfo[playerid][pAutoschein] == 0 || pInfo[playerid][pAutoschein] == 1 && pInfo[playerid][pMotorradschein] == 0 || pInfo[playerid][pMotorradschein] == 1 && pInfo[playerid][pTruckerschein] == 0 || pInfo[playerid][pTruckerschein] == 1
    && pInfo[playerid][pFlugschein] == 0 || pInfo[playerid][pFlugschein] == 1 && !ispassenger){
    if(FSCar(vehicleid)){
    ToggePlayerControllable(playerid,0);
    ToggePlayerControllable(playerid,1);
    return SendClientMessage(playerid,COLOR_DUNKELROT,"Sie besitzen kein Schlüssel!");
    }
    }

    Nabend.
    Habe gerade ein kleines Problemchen.
    Und zwar geht es um die Fahrschule.
    Wie mache ich es am besten, wenn z.B die Varibale "Fahrstunde" auf 1 ist, aber ich keinen Autoschein besitze (Autoschein Variable auf 0) ich trotzdem die Fahrschul autos fahren kann, ohne das mit "Sie haben kein Autoschein" angezeigt wird?
    Ich hoffe man versteht was ich meine ;)
    Mfg
    - Sebastian

    Also wenn ich den richtigen gedanken habe (falls nicht verbessern pls) musst du jedes Object neu erstellen. Diese dann beispiels weise in ein array tuen. Dann einen Raketen Timer machen, der die ganze Zeit abfragt, ob die Rakete in der nähe eines punktes ist. Da IsPlayerInRangeOfPoint ja in diesem Falle nicht klappen wird. musst du halt die Koordinaten mit ner Formel vergleichen und gucken wie viel differenz ist. Wenn die differenz sehr klein ist, lässt du die Rakete explodieren.

    Ich release eher weniger Maps das stimmt, ich behalte gute Sachen gerne in der Hinterhand...


    Ich glaube so geht es vielen Mappern hier, man will zwar, für seine Arbeit "gelobt" werden und man will auch wissen, ob die Map der Com gefällt, jedoch will man auch nicht, das man ne geile Map macht, die irgendwer dann "nach mappt" und das es dann nichts mehr besonderes ist.

    danke dir.
    Naja, was heißt kleine funktion. Ist halt für einen Nebenjob. Ich erstelle mit hilfe eines array halt jedesmal einen zufalls Checkpoint, wenn ich diesen betrete wird dieser auf true gesetzt, und dieser wird mir dann nicht mehr angezeigt. sprich also jeder Checkpoint ist nur 1x da


    //Edit:
    Wird OnPlayerPickupPickUp auch aufgerufen, wenn man in einem Auto sitzt?
    Und wenn nicht, wie kann ich dies dann umgehen außer mit OnPlayerUpdate?