Beiträge von Google_Chiller

    Hallo, ich probiere ein Bank-system zu machen:
    if(dialogid==Dialog_Kontoabheben)
    {
    new Geldabheben = strval(inputtext);
    new str[128];
    SetPVarInt(playerid,"BankKonto",GetPVarInt(playerid,"BankKonto")-Geldabheben);
    format(str,sizeof(str),"Sie haben %d$ von ihrem Konto abgehoben",Geldabheben);
    SendClientMessage(playerid,Weiß,str);
    GivePlayerMoney(playerid,GetPlayerMoney(playerid)+Geldabheben);
    }


    Was ist daran falsch?
    Also ich bekomme keine Errors, aber es funktioniert nicht so richtig...

    Hallo, ich wollte mal Fragen ob man ein Banksystem auch mit PVarInt machen kann.
    Ich habe es mal so versucht:
    if(dialogid==Dialog_Kontoabheben)
    {
    new Geldabheben = strval(inputtext);
    new str[128];
    SetPVarInt(playerid, "BankKonto", -= Geldabheben); //Die Fehler Zeile
    format(str,sizeof(str),"Sie haben %d$ von ihrem Konto abgehoben",Geldabheben);
    SendClientMessage(playerid,Blau,str);
    }



    Ich bekam diese Errors:


    error 029: invalid expression, assumed zero
    warning 215: expression has no effect
    error 001: expected token: ";", but found ")"
    error 029: invalid expression, assumed zero
    fatal error 107: too many error messages on one line

    Also das meinste?:
    stock AccountLaden(playerid)


    {
    SetPVarInt(playerid,"Bank-Konto",dini_Int(Spielerdatei,"Bank-Konto"));


    return 1;


    }



    stock AccountSpeichern(playerid)


    {
    dini_IntSet(Spielerdatei,"Bank-Konto",GetPVarInt(playerid,"Bank-Konto"));


    }


    /Edit
    Da sind halt noch mehr Sachen drin, aber die haben ja nichts mit dem Problem zu tun

    Hallo, ich hab mal wieder ein Problem, diesmal beim Bank System Scripten.
    Hier der Script-Teil:
    if(dialogid==Dialog_Bank) {
    if(response==1)
    {
    switch (listitem)
    {
    case 0:
    {
    new kontostand[150];
    format(kontostand,sizeof(kontostand),"Dein Kontostand beträgt %i","Zurück","Abbrechen",GetPVarInt(playerid,"Bank-Konto"));
    ShowPlayerDialog(playerid,Dialog_Kontostand,DIALOG_STYLE_MSGBOX,"Kontostand",kontostand,"Zurück","Abbrechen");
    }
    }
    }
    }
    if(dialogid==Dialog_Kontostand)
    {
    if(response==1)
    {
    ShowPlayerDialog(playerid,Dialog_Bank,DIALOG_STYLE_LIST,"Bank","Kontostand\nAbheben\nEinzahlen\nÜberweisen","Wählen","Abbrechen");
    }
    }
    return 1;
    }



    Also ich bekomme keine warnings oder Erros, aber
    wenn ich nun beim Dialog auf Kontostand drücke kommt: Dein Kontostand beträgt 90$
    Aber das Problem ist: Mein Kontostand beträgt garnicht 90$.
    Er beträgt 0$
    Dann hab ich ihn mal auf 1000$ gemacht und er zeigt immer an das er 90$ beträgt.
    Warum das ???
    Kennt jemand das Problem und kann mir helfen?
    Oder wo hab ich einen Fehler gemacht?

    Na, hat nicht geklappt, weil ich jetzt warnings bekomme ;D


    if(!GetPlayerMoney(playerid) < money) return SendClientMessage(playerid,Rot,"Der Spieler hat nicht genug Geld bei sich!"); // hier der warning: warning 213: tag mismatch
    if(!GetPlayerMoney(pID) < money) return SendClientMessage(playerid,Rot,"Du hast nicht genug Geld bei dir!"); // hier der warning: warning 213: tag mismatch


    Warnings:
    warning 213: tag mismatch
    warning 213: tag mismatch



    //Edit
    aso, ich musste die ! vor GetOkayerMoney wegmachen, jetzt bekomme ich da auch keine warnings mehr, danke schonmal, teste mal obs klappt


    /Edit: Danke jetzt klappt es :)

    ocmd:duell(playerid,params[]){
    new pID, money,string[200];
    if(sscanf(params,"ui",pID,money)) return SendClientMessage(playerid,Gelb,"Befehl: /duell [Name/ID] [Geld]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,Rot,"Der Spieler wurde nicht gefunden!");
    if(!GetPlayerMoney(playerid > money)) return SendClientMessage(playerid,Rot,"Der Spieler hat nicht genug Geld bei sich!");
    if(!GetPlayerMoney(pID > money)) return SendClientMessage(playerid,Rot,"Du hast nicht genug Geld bei dir!");
    else
    format(string,sizeof(string),"Deagle-Duell: {23FF00}%s{FFFFFF} will ein Deagle Duell um {FFF000}%i${FFFFFF} gegen dich machen!",SpielerName(pID),money);
    SendClientMessage(playerid,Gelb,string);
    SendClientMessage(playerid,Weiß,"Um das Deagle Duell anzunehmen schreibe: /acceptduell");
    return 1;}




    Also da kommen keine Erros nur das ganze System was ich mir da ausgedacht hab ist ganz verbuggt, also zB. hab ich 50.000$ und kann trotzdem ein duell um 100.000$ machen.

    Danke dir, aber wir kann ich das nun einsetzten?
    Tut mir leid, aber sowas habe ich noch nie wirklich gemacht und bin eigentlich noch ziemlicher anfänger.
    new Float:Wert;


    Wert = floatround(Wert*0.5);
    GivePlayerMoney(playerid,-GetPlayerMoney(playerid,Wert));


    Oder wie muss ich das jetzt genau machen?
    Kannst du bitte mal ein Beispiel machen?
    /Edit, danke hab etwas rumprobiert und habs nun:


    new Money = floatround(GetPlayerMoney(playerid) * 0.5, floatround_floor);
    GivePlayerMoney(playerid,-Money);


    Danke nochmal :)

    Hallo, kann mir jemand zeigen wie ich von etwas 50% bekomme? Also 1/2.
    Also zB. Wenn ein User /moneyhalb schreibt wird sein Money halbiert.
    Also wenn er zB. 1000$ hatte hat er jetzt nurnoch 500$
    --------------------------------------------------------------------------
    Oder zB. das gleiche mit 20%, also wenn jemand 1000$ hat und dann den Befehl /moneyfünftel macht hat er dann nurnoch 200$.Weiß jemand wie das geht?
    Könnte mir jemand dies vielleicht mit einem Beispiel zeigen?
    Wäre sehr nett.

    Hallo, kann mir jemand ein erklären wie ich Menüs mache, also diese mit CreateMenu.
    Also wie man dann zB. mit Menüs eine Skin Auswahl machen kann oder sonstiges.
    Ich habe schon danach im Internet gesucht, aber nur Seiten auf English gefunden die das sehr kompliziert erklären und wo ich immer errors bekomme.
    Also kennt jemand etwas wo das gut erklärt wird oder erklärt es mir?
    Wäre sehr nett, ich hoffe ich bin im richtigen Bereich.