Beiträge von Optiimal

    hmm danke erstmal für deine antwort
    aber der zeigt mir in den scriptfiles bei bank immer soviel an was ich eigentlich cash in der hand habe


    Passwort=
    wanted=0
    skin=280
    Geld=2400
    Score=3
    aFuhrerschein=1
    Admin=4
    team=2
    leader=2
    pduty=0
    perso=1
    harziv=0
    job=0
    versicherung=0
    grab=0
    tot=0
    jail=0
    jailtime=0
    ArrestZeit=0
    bank=2400


    Muss ich das vill so speichern


    dini_IntSet(accFormat,"bank",Spieler[playerid][bank]);


    Statt so


    dini_IntSet(accFormat,"bank",GetPlayerMoney(playerid));


    MFG Mipu

    Also ich habe das jetzt so


    if(!strcmp(cmd,"/einzahlen",true))
    {
    new lform[128];
    tmp = strtok(cmdtext,idx);
    if(!tmp[0])return SendClientMessage(playerid,0xFF0000FF,"Nutze /einzahlen [Geld]");
    new lamoney = strval(tmp);
    if(lamoney > GetPlayerMoney(playerid))return SendClientMessage(playerid,0xFF0000FF,"Du hast nicht so viel Geld !");
    if(lamoney < 1)return SendClientMessage(playerid,0xFF0000FF,"Der Betrag muss über 0$ liegen!");
    Spieler[playerid][bank]+=lamoney;
    GivePlayerMoney(playerid,-lamoney);
    format(lform,sizeof lform,"Du hast %d$ auf dein Konto eingezahlt.",lamoney);
    SendClientMessage(playerid,0x00FF00FF,lform);
    format(lform,sizeof lform,"Gesamtbetrag : %d$",Spieler[playerid][bank]);
    return SendClientMessage(playerid,0x00FF00FF,lform);
    }
    if(!strcmp(cmd,"/abheben",true))
    {
    new lform[128];
    tmp = strtok(cmdtext,idx);
    if(!tmp[0])return SendClientMessage(playerid,0xFF0000FF,"Nutze /abheben[Geld]");
    new lamoney = strval(tmp);
    if(lamoney > player_money[playerid])return SendClientMessage(playerid,0xFF0000FF,"Du hast nicht so viel Geld auf dein Konto!");
    if(lamoney < 1)return SendClientMessage(playerid,0xFF0000FF,"Der Betrag muss über 0$ liegen!");
    Spieler[playerid][bank]-=lamoney;
    GivePlayerMoney(playerid,lamoney);
    format(lform,sizeof lform,"Du hast %d$ von deinem Konto abgehoben",lamoney);
    SendClientMessage(playerid,0x00FF00FF,lform);
    format(lform,sizeof lform,"Kontostand : %d$",Spieler[playerid][bank]);
    return SendClientMessage(playerid,0x00FF00FF,lform);
    }


    Einzahlen funkt ja aber abheben nicht da kommt immer du hast nicht so viel geld auf dein Konto !?!?


    Edit: in der Scriptfile wird es aber gespeichert

    enum spieler_daten
    {
    wanted,
    skin,
    Float:lastx,Float:lasty,Float:lastz,
    eingeloggt,
    Admin,
    leader,
    job,
    tot,
    team,
    versicherung,
    pduty,
    grab,
    perso,
    bank,
    jail,
    jailtime,
    Geld,
    aFuhrerschein,
    harziv,
    }


    new Spieler[MAX_PLAYERS][spieler_daten];

    Aber Geld wird gespeichert ??
    habe gerade gesehen hab das ausgelassen in der ini sry


    und danke


    Edit: da bekomme ich diese fehler


    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(780) : warning 217: loose indentation
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(830) : warning 217: loose indentation
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1158) : warning 217: loose indentation
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1692) : warning 217: loose indentation
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1700) : error 028: invalid subscript (not an array or too many subscripts): "bank"
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1700) : warning 215: expression has no effect
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1700) : error 001: expected token: ";", but found "]"
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1700) : error 029: invalid expression, assumed zero
    C:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(1700) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


    bank[playerid]+=lamoney;


    das ist zeile ^1700 ??

    Ja genau
    enum spieler_daten
    {
    wanted,
    skin,
    Float:lastx,Float:lasty,Float:lastz,
    eingeloggt,
    Admin,
    leader,
    job,
    tot,
    team,
    versicherung,
    pduty,
    grab,
    perso,
    bank,
    jail,
    jailtime,
    aFuhrerschein,
    harziv,
    }


    Speicher via dini

    Ja habe ich hier
    public OnPlayerConnect(playerid)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    SetPlayerSkin(playerid, dini_Int(accFormat,"skin"));
    SetPlayerWantedLevel(playerid,dini_Int(accFormat,"wanted"));
    SpawnPlayer(playerid);
    if(fexist(accFormat))


    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Weiter","Abbrechen");


    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Weiter","Abbrechen");
    }
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    if(response)
    {
    switch(dialogid) // dialogid auswählen
    {
    case DIALOG_LOGIN: // ID Login
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Weiter","Abbrechen");

    return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
    }
    if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0) // Passwort Direkt aus der Datei Laden
    {
    Spieler[playerid][Admin] = dini_Int(accFormat,"Admin");
    Spieler[playerid][grab] = dini_Int(accFormat,"grab");
    Spieler[playerid][jail] = dini_Int(accFormat,"jail");
    Spieler[playerid][jailtime] = dini_Int(accFormat,"jailtime");
    Spieler[playerid][tot] = dini_Int(accFormat,"tot");
    Spieler[playerid][job] = dini_Int(accFormat,"job");
    Spieler[playerid][team] = dini_Int(accFormat,"team");
    Spieler[playerid][versicherung] = dini_Int(accFormat,"versicherung");
    Spieler[playerid][leader] = dini_Int(accFormat,"leader");
    Spieler[playerid][wanted] = dini_Int(accFormat,"wanted");
    Spieler[playerid][aFuhrerschein] = dini_Int(accFormat,"aFuhrerschein");
    Spieler[playerid][harziv] = dini_Int(accFormat,"harziv");
    Spieler[playerid][perso] = dini_Int(accFormat,"perso");
    Spieler[playerid][pduty] = dini_Int(accFormat,"pduty");
    Spieler[playerid][skin] =SetPlayerSkin(playerid, dini_Int(accFormat,"skin"));
    Spieler[playerid][lastx] = dini_Float(accFormat,"lastx");
    Spieler[playerid][lasty] = dini_Float(accFormat,"lasty");
    Spieler[playerid][lastz] = dini_Float(accFormat,"lastz");
    GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
    GivePlayerMoney(playerid,dini_Int(accFormat,"bank"));
    SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
    Spieler[playerid][eingeloggt] = 1; // Spieler ist nun erfolgreich eingeloggt
    SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Weiter","Abbrechen");
    SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war Falsch!");
    }
    }
    case DIALOG_REG: // ID Registrieren
    {
    if(!strlen(inputtext)) // Text darf nicht = Null sein Null im Sinne von nichts
    {
    ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Weiter","Abbrechen");
    return SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort ist zu kurz!");
    }
    dini_Create(accFormat);
    dini_Set(accFormat,"Passwort",inputtext);
    Spieler[playerid][eingeloggt] = 1;
    SetPlayerSkin(playerid, dini_Int(accFormat,"skin"));
    SendClientMessage(playerid,0xFFFFFFFF,"Account wurde angelegt und du wurdest eingeloggt.");
    }
    }
    }
    else
    {
    switch(dialogid)
    {
    case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Weiter","Abbrechen");
    case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Weiter","Abbrechen");
    }
    }


    Wie kann ich das denn einbauen ??


    MFG Mipu

    new player_money[MAX_PLAYERS];


    Speichern tu ich über dini


    und hier die commands /abheben /einzahlen


    if(!strcmp(cmd,"/einzahlen",true))
    {
    new lform[128];
    tmp = strtok(cmdtext,idx);
    if(!tmp[0])return SendClientMessage(playerid,0xFF0000FF,"Nutze /einzahlen [Geld]");
    new lamoney = strval(tmp);
    if(lamoney > GetPlayerMoney(playerid))return SendClientMessage(playerid,0xFF0000FF,"Du hast nicht so viel Geld !");
    if(lamoney < 1)return SendClientMessage(playerid,0xFF0000FF,"Der Betrag muss über 0$ liegen!");
    player_money[playerid]+=lamoney;
    GivePlayerMoney(playerid,-lamoney);
    format(lform,sizeof lform,"Du hast %d$ auf dein Konto eingezahlt.",lamoney);
    SendClientMessage(playerid,0x00FF00FF,lform);
    format(lform,sizeof lform,"Gesamtbetrag : %d$",player_money[playerid]);
    return SendClientMessage(playerid,0x00FF00FF,lform);
    }
    if(!strcmp(cmd,"/abheben",true))
    {
    new lform[128];
    tmp = strtok(cmdtext,idx);
    if(!tmp[0])return SendClientMessage(playerid,0xFF0000FF,"Nutze /abheben[Geld]");
    new lamoney = strval(tmp);
    if(lamoney > player_money[playerid])return SendClientMessage(playerid,0xFF0000FF,"Du hast nicht so viel Geld auf dein Konto!");
    if(lamoney < 1)return SendClientMessage(playerid,0xFF0000FF,"Der Betrag muss über 0$ liegen!");
    player_money[playerid]-=lamoney;
    GivePlayerMoney(playerid,lamoney);
    format(lform,sizeof lform,"Du hast %d$ von deinem Konto abgehoben",lamoney);
    SendClientMessage(playerid,0x00FF00FF,lform);
    format(lform,sizeof lform,"Kontostand : %d$",player_money[playerid]);
    return SendClientMessage(playerid,0x00FF00FF,lform);
    }


    Wie mache ich das das gespeichert wird
    MFG Mipu

    Also erstmal danke für deine Hilfe soweit so gut funkt das ja kann einbezahlen und abheben aber entweder er speichert nicht oder er ladet das nicht also wenn ich neu starte ist das Geld nicht mehr auf meinen Konto
    public OnPlayerConnect(playerid)
    {


    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    SetPlayerSkin(playerid, dini_Int(accFormat,"skin"));
    GetPlayerMoney(playerid,dini_Int(accFormat,"bank"));
    SetPlayerWantedLevel(playerid,dini_Int(accFormat,"wanted"));
    SpawnPlayer(playerid);
    if(fexist(accFormat))



    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Weiter","Abbrechen");


    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Weiter","Abbrechen");
    }
    {
    player_money[playerid] = ReadIntKey("bank");
    CloseINI();
    }
    public OnPlayerDisconnect(playerid, reason)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    dini_IntSet(accFormat, "skin", GetPlayerSkin(playerid));
    dini_IntSet(accFormat, "bank", GetPlayerMoney(playerid));


    if(fexist(accFormat) && Spieler[playerid][eingeloggt])
    {
    dini_IntSet(accFormat,"Admin",Spieler[playerid][Admin]);
    dini_IntSet(accFormat,"grab",Spieler[playerid][grab]);
    dini_IntSet(accFormat,"jail",Spieler[playerid][jail]);
    dini_IntSet(accFormat,"jailtime",Spieler[playerid][jailtime]);
    dini_IntSet(accFormat,"tot",Spieler[playerid][tot]);
    dini_IntSet(accFormat,"job",Spieler[playerid][job]);
    dini_IntSet(accFormat,"bank",Spieler[playerid][bank]);
    dini_IntSet(accFormat,"team",Spieler[playerid][team]);
    dini_IntSet(accFormat,"versicherung",Spieler[playerid][versicherung]);
    dini_IntSet(accFormat,"leader",Spieler[playerid][leader]);
    dini_IntSet(accFormat,"aFuhrerschein",Spieler[playerid][aFuhrerschein]);
    dini_IntSet(accFormat,"harziv",Spieler[playerid][harziv]);
    dini_IntSet(accFormat,"perso",Spieler[playerid][perso]);
    dini_IntSet(accFormat,"wanted",Spieler[playerid][wanted]);
    dini_IntSet(accFormat, "skin", GetPlayerSkin(playerid));
    dini_FloatSet(accFormat,"lastx",Spieler[playerid][lastx]);
    dini_FloatSet(accFormat,"lasty",Spieler[playerid][lasty]);
    dini_FloatSet(accFormat,"lastz",Spieler[playerid][lastz]);
    dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
    }
    Spieler[playerid][Admin] = 0;
    Spieler[playerid][grab] = 0;
    Spieler[playerid][jail] = 0;
    Spieler[playerid][jailtime] = 0;
    Spieler[playerid][bank] = 0;
    Spieler[playerid][tot] = 0;
    Spieler[playerid][job] = 0;
    Spieler[playerid][team] = 0;
    Spieler[playerid][versicherung] = 0;
    Spieler[playerid][leader] = 0;
    Spieler[playerid][eingeloggt] = 0;
    Spieler[playerid][aFuhrerschein] = 0;
    Spieler[playerid][harziv] = 0;
    Spieler[playerid][perso] = 0;
    Spieler[playerid][wanted] = 0;
    Spieler[playerid][skin] = GetPlayerSkin(playerid);
    Spieler[playerid][lastx] = (0.0);
    Spieler[playerid][lasty] = (0.0);
    Spieler[playerid][lastz] = (0.0);
    {
    SetKeyInt("bank",player_money[playerid]);
    SaveINI();
    CloseINI();
    }


    if(!strcmp(cmd,"/einzahlen",true))
    {
    new lform[128];
    tmp = strtok(cmdtext,idx);
    if(!tmp[0])return SendClientMessage(playerid,0xFF0000FF,"Nutze /einzahlen [Geld]");
    new lamoney = strval(tmp);
    if(lamoney > GetPlayerMoney(playerid))return SendClientMessage(playerid,0xFF0000FF,"Du hast nicht so viel Geld !");
    if(lamoney < 1)return SendClientMessage(playerid,0xFF0000FF,"Der Betrag muss über 0$ liegen!");
    player_money[playerid]+=lamoney;
    GivePlayerMoney(playerid,-lamoney);
    format(lform,sizeof lform,"Du hast %d$ auf dein Konto eingezahlt.",lamoney);
    SendClientMessage(playerid,0x00FF00FF,lform);
    format(lform,sizeof lform,"Gesamtbetrag : %d$",player_money[playerid]);
    return SendClientMessage(playerid,0x00FF00FF,lform);
    }
    if(!strcmp(cmd,"/abheben",true))
    {
    new lform[128];
    tmp = strtok(cmdtext,idx);
    if(!tmp[0])return SendClientMessage(playerid,0xFF0000FF,"Nutze /abheben[Geld]");
    new lamoney = strval(tmp);
    if(lamoney > player_money[playerid])return SendClientMessage(playerid,0xFF0000FF,"Du hast nicht so viel Geld auf dein Konto!");
    if(lamoney < 1)return SendClientMessage(playerid,0xFF0000FF,"Der Betrag muss über 0$ liegen!");
    player_money[playerid]-=lamoney;
    GivePlayerMoney(playerid,lamoney);
    format(lform,sizeof lform,"Du hast %d$ von deinem Konto abgehoben",lamoney);
    SendClientMessage(playerid,0x00FF00FF,lform);
    format(lform,sizeof lform,"Kontostand : %d$",player_money[playerid]);
    return SendClientMessage(playerid,0x00FF00FF,lform);
    }

    Hey ich würde jetzt gerne ein Bank system einbauen in mein script aber wie mache ich das dass Geld auf das Konto gespeichert wird
    und wenn ich dann Bankomaten einbaue wie mache ich das mit die Kords also das ich nicht 1000 zeilen brauche oder vill könnt ihr mir halt sagen wie das geht


    MFG Mipu

    if(strcmp(cmdtext,"/oldcar",true)==0) {
    format(string,sizeof(string),"Dein altes Fahrzeug hatte die FahrzeugID %d und die ModellID %d",altauto[playerid],altmod[playerid]);
    SendClientMessage(playerid,blau,string);
    return 1;
    }


    Hier bitte einfach unter OnPlayerCommandText Einfügen


    MFG Mipu (=


    Edit das braucht man glaube ich auch
    if(strcmp(cmdtext,"/altesauto",true)==0) {
    if(da[playerid]==true) {
    if(!IsPlayerInAnyVehicle(playerid)) {
    DestroyVehicle(neualt[playerid]);
    new gla, Float:x, Float:y, Float:z, Float:za;
    GetPlayerPos(playerid,x,y,z); GetPlayerFacingAngle(playerid,za);
    gla=CreateVehicle(altmod[playerid],x,y,z,za,0,0,-1); LinkVehicleToInterior(gla,GetPlayerInterior(playerid)); PutPlayerInVehicle(playerid,gla,0);
    neualt[playerid]=gla; }
    else { SendClientMessage(playerid,rot,"Du kannst nicht mit 2 Autos auf einmal fahren"); }}
    else { SendClientMessage(playerid,rot,"Du hast kein altes Auto"); }
    return 1;
    }


    weis ich aber jetzt nicht ^^