[FS] Command?

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
  • Moin leute ^^


    hab ein komisches, unbekanntes Problem ^^


    Folgendes:


    ich hab in einem Filterscript ein Command, um ein Auto zu kaufen. Das Auto wird auch in diesem Filterscript gespawnt (das funzt auch).


    Wenn ich NICHT in dem Auto sitze, funktioniert der Command. Wenn ich aber in diesem Auto sitze, dann kommt Unknown Command, im Filterscript hab ich aber am schluss return 0; (dasselbe im Gamemode). Deshalb komm ich net draus... warum erkennt er den Befehl nicht, wenn ich im Fahrzeug sitze, aber warum dann, wenn ich nicht im Fahrzeug sitze? Alle anderen Befehle gehen auch im Auto... Hoffe jemand kann mir helfen...


    MFG

  • ich habs jetzt so...


    if(strcmp(cmd, "/testcmd", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pCarLic] == 1)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    if(IsABuyCar(vehicleid))
    {
    if(GetPlayerMoney(playerid) >= carcost)
    {
    //aktion
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du kannst dir dieses Auto nicht leisten!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du musst in einem Fahrzeug sitzen, das du kaufen kannst!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du hast keinen Fuehrerschein!");
    return 1;
    }
    }
    return 1;
    }


    also ich denke, ich hab von den returns eigentlich alles korrekt gemacht...


    ps: plöde pawn formatierung xD

  • if(strcmp(cmd, "/testcmd", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pCarLic] == 1)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    if(IsABuyCar(vehicleid))
    {
    if(!GetPlayerMoney(playerid) >= carcost) { return false; } //Oder eine Client Nachricht
    else { return SendClientMessage(playerid, COLOR_RED, "Du kannst dir dieses Auto nicht leisten!"); }
    }
    else { return SendClientMessage(playerid, COLOR_RED, "Du musst in einem Fahrzeug sitzen, das du kaufen kannst!"); }
    }
    else { return SendClientMessage(playerid, COLOR_RED, "Du hast keinen Fuehrerschein!"); }
    }
    return 1;
    }

    [align=center]
    Mta Script Editor - Work in Progress

  • Frage , du nutzt die strtok Methode ? , hast du an strtok auch den Befehl weitergegeben


    cmd = strtok(cmdtext,idx);


    Kürzer


    if(strcmp(cmd, "/testcmd", true) == 0)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    if(!PlayerInfo[playerid][pCarLic])return SendClientMessage(playerid, COLOR_RED, "Du hast keinen Fuehrerschein!");
    if(!IsABuyCar(vehicleid))return SendClientMessage(playerid, COLOR_RED, "Du musst in einem Fahrzeug sitzen, das du kaufen kannst!");
    if(GetPlayerMoney(playerid) < carcost)return SendClientMessage(playerid, COLOR_RED, "Du kannst dir dieses Auto nicht leisten!");
    // Weitere Instruktionen wenn alles stimmt :>
    return 1;
    }

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • jo hab ich... ganz oben:


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new string[128];
    new cmd[128];
    new idx;
    cmd = strtok(cmdtext, idx);


    danke für eure hilfe, aber es funzt immernoch nicht ;(