Frage zu ATM

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
  • if(strcmp(cmd, "/atm", true) == 0)
    {
    if(!AtATM(playerid))
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist an keinem Bankautomat!");
    return 1;
    }
    ShowPlayerDialog(playerid, BANK, DIALOG_STYLE_LIST,"Menü", "Kontostand\nEinzahlen\nAuszahlen\nÜberweisen", "Auswählen", "Beenden");
    return 1;
    }


    Hallo ich wollte fragen wie ich den befehl nur mit eingabe machen kann kann mir da jemand bitte helfen?

  • else if(!AtATM(playerid))
    {
    {
    ShowPlayerDialog(playerid, BANK, DIALOG_STYLE_LIST,"Menü", "Kontostand\nEinzahlen\nAuszahlen\nÜberweisen", "Auswählen", "Beenden");
    }
    }


    Habe es mal so gemacht muss ich da extra wirklick alle angeben ?


    //E:


    Kann man das so auch machen?

  • if(!IsANoTachoVehicle(vehicleid) && ispassenger != 1)
    {
    SendClientMessage(playerid, COLOR_YELLOW, "Du kannst das Fahrzeug mit {FF4500}/motor{F3FF02} starten. Die Scheinwerfer können mit {FF4500}/licht{F3FF02} angeschaltet werden.");
    }


    Klappt Danke,


    Wie mache ich das die nachtricht ab lev 3 nicht mehr kommt?!

  • if(!IsANoTachoVehicle(vehicleid) && ispassenger != 1)
    {
    if(GetPlayerScore(playerid) > 3)
    SendClientMessage(playerid, COLOR_YELLOW, "Du kannst das Fahrzeug mit {FF4500}/motor{F3FF02} starten. Die Scheinwerfer können mit {FF4500}/licht{F3FF02} angeschaltet werden.");
    }


    So :P?


  • if(strcmp(cmd, "/exit", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new i = 0; i < sizeof(HouseInfo); i++)
    {
    //printf("House :%d",i);
    if (IsPlayerInRangeOfPoint(playerid,3.0,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]) && PlayerInfo[playerid][pLocal] == i)
    {
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
    PlayerInfo[playerid][pInt] = 0;
    PlayerInfo[playerid][pLocal] = 255;
    SetPlayerVirtualWorld(playerid,0);
    if(HouseInfo[i][hHel] == 1)
    {
    new Float:tempheal;
    GetPlayerHealth(playerid,tempheal);
    if(tempheal < 100.0)
    {
    SetPlayerHealth(playerid,100.0);
    }
    }
    }
    }
    for(new i = 0; i < sizeof(BizzInfo); i++)
    {
    //printf("Bizz :%d",i);
    if (IsPlayerInRangeOfPoint(playerid,3.0,BizzInfo[i][bExitX], BizzInfo[i][bExitY], BizzInfo[i][bExitZ]))
    {
    SetPlayerInterior(playerid,0);
    PlayerInfo[playerid][pInt] = 0;
    SetPlayerPos(playerid,BizzInfo[i][bEntranceX],BizzInfo[i][bEntranceY],BizzInfo[i][bEntranceZ]);
    PlayerInfo[playerid][pLocal] = 255;
    }
    }
    else if(NoFuel[playerid] == 1)
    {
    UnFreezePlayer(playerid);
    RemovePlayerFromVehicle(playerid);
    NoFuel[playerid] = 0;
    }
    }
    return 1;
    }






    if(strcmp(cmd, "/enter", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new i = 0; i < sizeof(HouseInfo); i++)
    {
    if (IsPlayerInRangeOfPoint(playerid,3.0,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
    {
    //printf("Found House :%d",i);
    if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0)
    {
    SetPlayerInterior(playerid,HouseInfo[i][hInt]);
    SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
    GameTextForPlayer(playerid, "~w~Willkommen zu Hause", 5000, 1);
    PlayerInfo[playerid][pInt] = HouseInfo[i][hInt];
    PlayerInfo[playerid][pLocal] = i;
    SetPlayerVirtualWorld(playerid,i);
    }
    else
    {
    GameTextForPlayer(playerid, "~r~Verschlossen", 5000, 1);
    }
    }
    }


    Wie kann ich das in Eingabe umändern :o?

    Einmal editiert, zuletzt von DerFamer ()

  • So wie @shoxinat0r geschrieben hatte untr OnPlayerKeyStateChange die Tastenbelegung einfügen.

    Klar, dafür musst du den Public OnPlayerKeyStateChange verwenden.
    Hier findest du eine Liste aller verwendbaren Tasten: wiki.sa-mp.com/wiki/Keys


    Ich hab dir mal von letzten geposteten Code fertig geschellt, dass mit dem /exit kannst du dementsprechen von diesem Code ableiten:



    Du musst lediglich nur "if(newkeys & HIER KOMMT DIE TASTENBELEGUNG)" und was passieren soll unter OnPlayerKeyStateChange.


  • if(newkeys & KEY_SECONDARY_ATTACK)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new i = 0; i < sizeof(HouseInfo); i++)
    {
    //printf("House :%d",i);
    if (IsPlayerInRangeOfPoint(playerid,3.0,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]) && PlayerInfo[playerid][pLocal] == i)
    {
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
    PlayerInfo[playerid][pInt] = 0;
    PlayerInfo[playerid][pLocal] = 255;
    SetPlayerVirtualWorld(playerid,0);
    if(HouseInfo[i][hHel] == 1)
    {
    new Float:tempheal;
    GetPlayerHealth(playerid,tempheal);
    if(tempheal < 100.0)
    {
    SetPlayerHealth(playerid,100.0);
    }
    }
    }
    }
    for(new i = 0; i < sizeof(BizzInfo); i++)
    {
    if (IsPlayerInRangeOfPoint(playerid,3.0,BizzInfo[i][bExitX], BizzInfo[i][bExitY], BizzInfo[i][bExitZ]))
    {
    SetPlayerInterior(playerid,0);
    PlayerInfo[playerid][pInt] = 0;
    SetPlayerPos(playerid,BizzInfo[i][bEntranceX],BizzInfo[i][bEntranceY],BizzInfo[i][bEntranceZ]);
    PlayerInfo[playerid][pLocal] = 255;
    }
    }
    else if(NoFuel[playerid] == 1) //7469
    {
    UnFreezePlayer(playerid);
    RemovePlayerFromVehicle(playerid);
    NoFuel[playerid] = 0;
    }
    }
    }




    if(newkeys & KEY_SECONDARY_ATTACK)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new i = 0; i < sizeof(HouseInfo); i++)
    {
    if (IsPlayerInRangeOfPoint(playerid,3.0,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
    {
    //printf("Found House :%d",i);
    if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0)
    {
    SetPlayerInterior(playerid,HouseInfo[i][hInt]);
    SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
    GameTextForPlayer(playerid, "~w~Willkommen zu Hause", 5000, 1);
    PlayerInfo[playerid][pInt] = HouseInfo[i][hInt];
    PlayerInfo[playerid][pLocal] = i;
    SetPlayerVirtualWorld(playerid,i);
    }
    else
    {
    GameTextForPlayer(playerid, "~r~Verschlossen", 5000, 1);
    }
    }
    }
    for(new i = 0; i < sizeof(BizzInfo); i++)
    {
    if (IsPlayerInRangeOfPoint(playerid,3.0,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ]))
    {
    //printf("Found House :%d",i);
    /*if(!IsACop(playerid) && i == 3)
    {
    SendClientMessage(playerid, COLOR_GREY, " Nur für Beamte !");
    return 1;
    }*/
    if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= BizzInfo[i][bEntranceCost])
    {
    if(PlayerInfo[playerid][pPbiskey] != i)
    {
    if(BizzInfo[i][bLocked] == 1)
    {
    GameTextForPlayer(playerid, "~r~Verschlossen", 5000, 1);
    return 1;
    }
    if(BizzInfo[i][bProducts] == 0)
    {
    GameTextForPlayer(playerid, "~r~Ausverkauft", 5000, 1);
    return 1;
    }
    GivePlayerMoney(playerid,-BizzInfo[i][bEntranceCost]);
    format(string, sizeof(string), "~r~-$%d~n~~w~gib /exit ein~n~um das Gebeude zu verlassen.", BizzInfo[i][bEntranceCost]); //7526
    BizzInfo[i][bTill] += BizzInfo[i][bEntranceCost];
    ExtortionBiz(i, BizzInfo[i][bEntranceCost]);
    BizzInfo[i][bProducts]--;
    OnPropUpdate();
    GameTextForPlayer(playerid, string, 5000, 3);
    }
    SetPlayerInterior(playerid,BizzInfo[i][bInterior]);
    SetPlayerPos(playerid,BizzInfo[i][bExitX],BizzInfo[i][bExitY],BizzInfo[i][bExitZ]);
    PlayerInfo[playerid][pInt] = BizzInfo[i][bInterior];
    PlayerInfo[playerid][pLocal] = i+99;
    new dood[MAX_PLAYER_NAME];
    GetPlayerName(playerid, dood, sizeof(dood));
    format(string, sizeof(string), "%s bezahlte $%d um das Gebeude zu betreten %d", dood, BizzInfo[i][bEntranceCost], i);
    printf("%s", string);
    PayLog(string);
    //PlayerInfo[playerid][pLocal] = i;
    }
    else
    {
    GameTextForPlayer(playerid, "~r~Du hast nicht genug Geld", 5000, 1);
    }
    }
    }



    C:\Windows\Vss\German v1.1\German[Scripts]\German-Next-Era-Life---v2.5\German Next Era Life - v2.5\gamemodes\GNE.pwn(7469) : error 029: invalid expression, assumed zero
    C:\Windows\Vss\German v1.1\German[Scripts]\German-Next-Era-Life---v2.5\German Next Era Life - v2.5\gamemodes\GNE.pwn(7469) : warning 215: expression has no effect
    C:\Windows\Vss\German v1.1\German[Scripts]\German-Next-Era-Life---v2.5\German Next Era Life - v2.5\gamemodes\GNE.pwn(7469) : error 001: expected token: ";", but found "if"
    C:\Windows\Vss\German v1.1\German[Scripts]\German-Next-Era-Life---v2.5\German Next Era Life - v2.5\gamemodes\GNE.pwn(7526) : error 017: undefined symbol "string"
    C:\Windows\Vss\German v1.1\German[Scripts]\German-Next-Era-Life---v2.5\German Next Era Life - v2.5\gamemodes\GNE.pwn(7526) : error 017: undefined symbol "string"
    C:\Windows\Vss\German v1.1\German[Scripts]\German-Next-Era-Life---v2.5\German Next Era Life - v2.5\gamemodes\GNE.pwn(7526) : error 029: invalid expression, assumed zero
    C:\Windows\Vss\German v1.1\German[Scripts]\German-Next-Era-Life---v2.5\German Next Era Life - v2.5\gamemodes\GNE.pwn(7526) : fatal error 107: too many error messages on one line