Ingame Commands gehen nicht mehr wegen FS

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
  • Guten Abend,
    ich habe ein problem mit meinem FS.


    Bevor ich das FS eingefügt habe ging alles super, als ich es jedoch einfügte geht zwar das FS aber alle anderen Commands fallen aus.
    Bitte um Hilfe.
    Vielen Dank im Voraus!


    Filterscript:


    //#define FILTERSCRIPT


    /* Dieses Filterscript wurde von magnussoft aus dem Breadfish Forum entworfen.


    Credits an magnussoft.


    Wer nett ist lässt die Credits drinne aber wenn ihr meint es rauszunehmen könnt ihr das gerne tuhen.
    Wenn ihr Verbesserungsvorschläge habt könnt ihr sie gerne im Thread posten.
    Nun wünsche ich euch viel Spaß mit dem Filterscript


    euer magnussoft.*/


    #include <a_samp>



    #define FILTERSCRIPT
    #define DIALOG_Essen 1
    #define ROT 0xE10000FF
    forward IstErAnEinemDrivein(playerid);
    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" magnussofts Drivein Script Version 0.1");
    print("--------------------------------------\n");
    return 1;
    }


    public OnFilterScriptExit()
    {
    return 1;
    }





    public OnGameModeInit()
    {
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,2375.014, 2021.186, 10.8203,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,2409.651, -1488.65, 23.8281,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,2377.733, -1909.27, 13.3828,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,1859.496, 2084.797, 10.8203,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,-2349.49, -152.182, 35.3203,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,-2341.86, 1021.184, 50.6953,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,2485.291, 2022.611, 10.8203,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,801.5522, -1628.91, 13.3828,15.0,0,0);
    Create3DTextLabel("Willkommen am Drivein\nUm ihre Bestellung aufnehmen zu können benutzen sie\n /drivein!",0xFFFF00AA,1209.958,-896.7405, 42.9259,15.0,0,0);



    CreatePickup(1240,1,2375.014,2021.186,10);//Drivein Pickup
    CreatePickup(1240,1,2377.733,-1909.27,13.3828);//Drivein Pickup
    CreatePickup(1240,1,1859.496,2084.797,10.8203);//Drivein Pickup
    CreatePickup(1240,1,-2349.49,-152.182,35);//Drivein Pickup
    CreatePickup(1240,1,-2341.86,1021.184,50.6953);//Drivein Pickup
    CreatePickup(1240,1,2485.291, 2022.611,10.8203);//Drivein Pickup
    CreatePickup(1240,1,801.5522,-1628.91, 13.3828);//Drivein Pickup
    CreatePickup(1240,1,1209.958,-896.7405,42.9259);//Drivein Pickup
    // Don't use these lines if it's a filterscript
    return 1;
    }


    public OnGameModeExit()
    {
    return 1;
    }


    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    return 1;
    }


    public OnPlayerDeath(playerid, killerid, reason)
    {
    return 1;
    }


    public OnVehicleSpawn(vehicleid)
    {
    return 1;
    }


    public OnVehicleDeath(vehicleid, killerid)
    {
    return 1;
    }


    public OnPlayerText(playerid, text[])
    {
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp(cmdtext, "/Drivein", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IstErAnEinemDrivein(playerid))
    {
    ShowPlayerDialog(playerid,DIALOG_Essen, DIALOG_STYLE_LIST, "Willkommen im Drivein\n Bitte geben sie ihre Bestellung auf", "Cheesburger\nMcWraps\n Big Mac", "Weiter", "Schließen");
    }
    else
    {
    SendClientMessage(playerid, ROT, "Du bist an keinem Drivein !");
    return 1;
    }
    }
    return 0;
    }
    return 1;
    }



    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    return 1;
    }


    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    return 1;
    }


    public OnPlayerEnterCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerEnterRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnRconCommand(cmd[])
    {
    return 1;
    }


    public OnPlayerRequestSpawn(playerid)
    {
    return 1;
    }


    public OnObjectMoved(objectid)
    {
    return 1;
    }


    public OnPlayerObjectMoved(playerid, objectid)
    {
    return 1;
    }


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    return 1;
    }


    public OnVehicleMod(playerid, vehicleid, componentid)
    {
    return 1;
    }


    public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
    {
    return 1;
    }


    public OnVehicleRespray(playerid, vehicleid, color1, color2)
    {
    return 1;
    }


    public OnPlayerSelectedMenuRow(playerid, row)
    {
    return 1;
    }


    public OnPlayerExitedMenu(playerid)
    {
    return 1;
    }


    public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
    {
    return 1;
    }


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    return 1;
    }


    public OnRconLoginAttempt(ip[], password[], success)
    {
    return 1;
    }


    public OnPlayerUpdate(playerid)
    {
    return 1;
    }


    public OnPlayerStreamIn(playerid, forplayerid)
    {
    return 1;
    }


    public OnPlayerStreamOut(playerid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamIn(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamOut(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_Essen)
    {
    if(response)
    switch(listitem)
    {
    case 0:
    {
    if(GetPlayerMoney(playerid)<200) return SendClientMessage(playerid,ROT,"Du hast zu wenig Geld dabei!");
    {
    new Float:Leben;
    GetPlayerHealth(playerid,Leben);
    SetPlayerHealth(playerid,Leben +50);
    SendClientMessage(playerid, ROT, "Du hast den Cheesburger genommen!.");
    GivePlayerMoney(playerid,-200);
    GameTextForPlayer(playerid, "~r~ -200$", 3000, 1);
    }
    }
    case 1:
    {
    if(GetPlayerMoney(playerid)<300) return SendClientMessage(playerid,ROT,"Du hast zu wenig Geld dabei!");
    {
    new Float:Leben;
    GetPlayerHealth(playerid,Leben);
    SetPlayerHealth(playerid,Leben +80);
    SendClientMessage(playerid, ROT, "Du hast den McWrap genommen!.");
    GivePlayerMoney(playerid,-300);
    GameTextForPlayer(playerid, "~r~ -300$", 3000, 1);
    }
    }
    case 2:
    {
    if(GetPlayerMoney(playerid)<400) return SendClientMessage(playerid,ROT,"Du hast zu wenig Geld dabei!");
    {
    new Float:Leben;
    GetPlayerHealth(playerid,Leben);
    SetPlayerHealth(playerid,Leben +100);
    SendClientMessage(playerid, ROT, "Du hast den Big Mac genommen!.");
    GivePlayerMoney(playerid,-400);
    GameTextForPlayer(playerid, "~r~ -400$", 3000, 1);
    }
    }
    }
    return 1;
    }
    return 1;
    }


    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    return 1;
    }
    public IstErAnEinemDrivein(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInRangeOfPoint(playerid,10.0,801.5522, -1628.91, 13.3828) || IsPlayerInRangeOfPoint(playerid,10.0,1209.958,-896.7405, 42.9259))
    {
    return 1;
    }
    else if(IsPlayerInRangeOfPoint(playerid,10.0,-2341.86, 1021.184, 50.6953) || IsPlayerInRangeOfPoint(playerid,10.0,2485.291, 2022.611, 10.8203))
    {
    return 1;
    }
    else if(IsPlayerInRangeOfPoint(playerid,10.0,1859.496, 2084.797, 10.8203) || IsPlayerInRangeOfPoint(playerid,10.0,-2349.49, -152.182, 35.3203))
    {
    return 1;
    }
    else if(IsPlayerInRangeOfPoint(playerid,10.0,2409.651, -1488.65, 23.8281) || IsPlayerInRangeOfPoint(playerid,10.0,2377.733, -1909.27, 13.3828))
    {
    return 1;
    }
    else if(IsPlayerInRangeOfPoint(playerid,10.0,2375.014, 2021.186, 10.8203))
    {
    return 1;
    }
    }
    return 0;
    }

  • OnPlayerCommandText muss 0 zurück geben, damit es in den nächsten Code weiter geht.
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp(cmdtext, "/Drivein", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IstErAnEinemDrivein(playerid))
    {
    ShowPlayerDialog(playerid,DIALOG_Essen, DIALOG_STYLE_LIST, "Willkommen im Drivein\n Bitte geben sie ihre Bestellung auf", "Cheesburger\nMcWraps\n Big Mac", "Weiter", "Schließen");
    }
    else
    {
    SendClientMessage(playerid, ROT, "Du bist an keinem Drivein !");
    return 1;
    }
    }
    return 1;
    }
    return 0;
    }

    Du hattest die beiden letzten returns vertauscht. So passt es.



    Für OnPlayerCommandText gilt:
    return 1 -> Ende.
    return 0 -> Ende des aktuellen OnPlayerCommandText, nächster Code in dem OnPlayerCommandText vorhanden ist wird genommen.