2 Fragen

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, wie kann ich es machen, dass man den Betrag, der schon auf der "Bank" ist + den Betrag, also den inputtext machen kann?


    if(dialogid==DIALOG_EINZAHLEN)
    {
    if(response==0)
    {
    ShowPlayerDialog(playerid,DIALOG_BANK_HAUPT,DIALOG_STYLE_LIST,"Bankautomat","Einzahlen\nAuszahlen\nÜberweisen\nAktueller Kontostand","Weiter","Abbrechen");
    }
    if(response==1)
    {
    GetPVarInt(playerid,"Bank")
    SetPVarInt(playerid,(GetPVarInt(playerid,"Bank")+inputtext));
    }
    }


    Und....


    wie kann ich z.B. bei diesem Chat:


    ocmd:s(playerid,params[])
    {
    new string[120],text[111];
    if(sscanf(params,"s",text)) return SendClientMessage(playerid,lila,"Benutzung: /s [Text]");
    format(string,sizeof(string),"%s schreit: %s",SpielerName(playerid),text);
    SendClientMessageToAll(weiß,string);
    return 1;
    }


    die Entfernung ändern, wie weit man diesen Chat lesen kann ???


    MfG


    Andre

    Back to the roots!

  • Also bei dem ersten mach das so:


    new preis;
    preis = strval(inputtext);
    un dann halt +preis


    so un bei dem zweiten:



    public ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5){ if(IsPlayerConnected(playerid)) { new Float:posx, Float:posy, Float:posz; new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); //radi = 2.0; //Trigger Radius for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(!BigEar[i]) { GetPlayerPos(i, posx, posy, posz); tempposx = (oldposx -posx); tempposy = (oldposy -posy); tempposz = (oldposz -posz); //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz); if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16))) { SendClientMessage(i, col1, string); } else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8))) { SendClientMessage(i, col2, string); } else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4))) { SendClientMessage(i, col3, string); } else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2))) { SendClientMessage(i, col4, string); } else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { SendClientMessage(i, col5, string); } } else { SendClientMessage(i, col1, string); } } } }//not connected return 1;}



    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Kannst du mir mal bitte dieseSetPVarInt(playerid,(GetPVarInt(playerid,"Bank")+inputtext));
    Zeile umgeschrieben zeigen?


    Bi mir hat es noch 2 Errors:


    C:\Users\Game\Desktop\TestServer\gamemodes\Update.pwn(3729) : error 001: expected token: ";", but found "-identifier-"
    C:\Users\Game\Desktop\TestServer\gamemodes\Update.pwn(3729) : error 035: argument type mismatch (argument 2)
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

    Back to the roots!


  • SetPVarInt(playerid,"Bank",GetPVarInt(playerid,"Bank")+strval(inputtext));


    Du solltest davor aber noch abfragen ob derjenige überhaupt soviel geld auf der Hand hat, wenn ja musst du es ihm zusätzlich zu der obrigen zeile auch noch abziehen.
    Wenn er kein Geld hat musst du die Aktion abbrechen, sonst kannn man sich ja unendlich Geld auf das Konto zahlen


  • if(dialogid == DIALOG_EINZAHLEN)
    {
    if(response == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_BANK_HAUPT,DIALOG_STYLE_LIST,"Bankautomat","Einzahlen\nAuszahlen\nÜberweisen\nAktueller Kontostand","Weiter","Abbrechen");
    }
    if(response == 1)
    {
    if(GetPlayerMoney(playerid) >= strval(inputtext))//wenn geld auf der hand größer oder gleich der eingabe
    {
    SetPVarInt(playerid,"Bank",GetPVarInt(playerid,"Bank")+strval(inputtext));
    GivePlayerMoney(playerid,-strval(inputtext));
    }
    else//ansonsten
    {
    //selben dialog wie bei der auswahl,aber z.B. mit verändertem text z.B.
    ShowPlayerDialog(playerid,DIALOG_EINZAHLEN,DIALOG_STYLE_INPUT,"Auszahlen","FEHLER: Soviel Geld ist nicht auf dem Konto!\nBitte geben Sie einen Betrag ein","Ok","Abbrechen");
    }
    }
    }
    }