Trotz Abfrage wie viel Geld der Spieler hat, kann er unbegrenzt ins Minus gehen! Warum?

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 hier ein kleines Waffenshopsystem gebastelt.
    Wenn der Spieler jedoch nicht das vorhandene Geld hat, kann er trotzdem die Sachen kaufen ....



    Wieso? :o



    Das System:


    if(dialogid == DIALOG_SBUY)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Scheinkauf abgebrochen...");
    return 1;
    }
    if(listitem == 0)
    {
    if(Spieler[playerid][Geld] < 7000)
    {
    GivePlayerMoney(playerid,-7000);
    GivePlayerWeapon(playerid,30,350);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine AK-47 mit 350 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 1)
    {
    if(Spieler[playerid][Geld] < 5000)
    {
    GivePlayerMoney(playerid,-5000);
    GivePlayerWeapon(playerid,24,150);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine Desert Eagle mit 150 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 2)
    {
    if(Spieler[playerid][Geld] < 6000)
    {
    GivePlayerMoney(playerid,-6000);
    GivePlayerWeapon(playerid,29,325);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine MP5 mit 325 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 3)
    {
    if(Spieler[playerid][Geld] < 8500)
    {
    GivePlayerMoney(playerid,-8500);
    GivePlayerWeapon(playerid,34,90);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast ein Scharfschützengewehr mit 90 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 4)
    {
    if(Spieler[playerid][Geld] < 5500)
    {
    GivePlayerMoney(playerid,-5500);
    GivePlayerWeapon(playerid,26,80);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine Schrotflinte mit 80 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 5)
    {
    if(Spieler[playerid][Geld] < 1000)
    {
    GivePlayerMoney(playerid,-1000);
    GivePlayerWeapon(playerid,4,1);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast ein Messer bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }


    }
    if(listitem == 6)
    {
    if(Spieler[playerid][Geld] < 1000)
    {
    GivePlayerMoney(playerid,-1000);
    GivePlayerWeapon(playerid,5,1);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast einen Baseballschläger bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }


    }
    }

  • if(dialogid == DIALOG_SBUY) {
    if(response == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Scheinkauf abgebrochen...");
    return 1;
    }
    if(listitem == 0)
    {
    if(Spieler[playerid][Geld] > 7000)
    {
    GivePlayerMoney(playerid,-7000);
    GivePlayerWeapon(playerid,30,350);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine AK-47 mit 350 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 1)
    {
    if(Spieler[playerid][Geld] > 5000)
    {
    GivePlayerMoney(playerid,-5000);
    GivePlayerWeapon(playerid,24,150);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine Desert Eagle mit 150 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 2)
    {
    if(Spieler[playerid][Geld] > 6000)
    {
    GivePlayerMoney(playerid,-6000);
    GivePlayerWeapon(playerid,29,325);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine MP5 mit 325 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 3)
    {
    if(Spieler[playerid][Geld] > 8500)
    {
    GivePlayerMoney(playerid,-8500);
    GivePlayerWeapon(playerid,34,90);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast ein Scharfschützengewehr mit 90 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 4)
    {
    if(Spieler[playerid][Geld] > 5500)
    {
    GivePlayerMoney(playerid,-5500);
    GivePlayerWeapon(playerid,26,80);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine Schrotflinte mit 80 Schuss bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }
    }
    if(listitem == 5)
    {
    if(Spieler[playerid][Geld] > 1000)
    {
    GivePlayerMoney(playerid,-1000);
    GivePlayerWeapon(playerid,4,1);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast ein Messer bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }


    }
    if(listitem == 6)
    {
    if(Spieler[playerid][Geld] > 1000)
    {
    GivePlayerMoney(playerid,-1000);
    GivePlayerWeapon(playerid,5,1);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast einen Baseballschläger bekommen!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return 1;
    }


    } }



    sollte so gehen


    MFG

    Mit freundlichen Grüßen
    [color=#696969][i][b]Maxi
    [tabmenu]
    [tab='Signatur!']

    [tab='Mein Computer System']

    • Gehäuse Delux SH891 Midi-Tower (ATX) schwarz
    • Netzteil 650 Watt Corsair VS650
    • Festplatte 1000GB SATA III 7200upm
    • Mainboard AM3 Gigabyte GA-970A-UD3P (Chipsatz:AMD 970/SB950/ATX)
    • NVIDIA Geforce GTX 770 Gainward Phantom
    • 8192MB DDR3 Single Channel 1600MHz
    • Prozessor AM3+ (FX-Serie) AMD FX-8350 8x 4.0 GHz


    [tab='Meine Handys']

    • HTC ONE M8
    • Samsung S3 mini
    • Vll bald HTC ONE M7


    [tab='Mein Steam Account = 1']

  • if(dialogid==DIALOG_SBUY){
    if(!response)return SendClientMessage(playerid,COLOR_RED,"Scheinkauf abgebrochen...");
    switch(listitem){
    case 0:{
    if(GetPlayerMoney(playerid)<7000)return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return GivePlayerMoney(playerid,-7000),GivePlayerWeapon(playerid,30,350),SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine AK-47 mit 350 Schuss bekommen!"),1;
    }
    case 1:{
    if(GetPlayerMoney(playerid)<5000)return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return GivePlayerMoney(playerid,-5000),GivePlayerWeapon(playerid,24,150),SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine Desert Eagle mit 150 Schuss bekommen!"),1;
    }
    case 2:{
    if(GetPlayerMoney(playerid)<6000)return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return GivePlayerMoney(playerid,-6000),GivePlayerWeapon(playerid,29,325),SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine MP5 mit 325 Schuss bekommen!"),1;
    }
    case 3:{
    if(GetPlayerMoney(playerid)<8500)return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return GivePlayerMoney(playerid,-8500),GivePlayerWeapon(playerid,34,90),SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast ein Scharfschützengewehr mit 90 Schuss bekommen!"),1;
    }
    case 4:{
    if(GetPlayerMoney(playerid)<5500)return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return GivePlayerMoney(playerid,-5500),GivePlayerWeapon(playerid,26,80),SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast eine Schrotflinte mit 80 Schuss bekommen!"),1;
    }
    case 5:{
    if(GetPlayerMoney(playerid)<1000)return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return GivePlayerMoney(playerid,-1000),GivePlayerWeapon(playerid,4,1),SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast ein Messer bekommen!"),1;
    }
    case 6:{
    if(GetPlayerMoney(playerid)<1000)return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Bargeld!");
    return GivePlayerMoney(playerid,-1000),GivePlayerWeapon(playerid,5,1),SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast einen Baseballschläger bekommen!"),1;
    }
    }
    return 1;
    }
    So ist es nun kurz gehalten ;)
    Sollte auch einwandfrei klappen.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen