Beiträge von Optiimal

    enum spieler_daten
    {
    skin,
    // usw...


    public OnPlayerConnect(playerid)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    SetPlayerSkin(playerid, dini_Int(accFormat,"skin"));


    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));
    if(fexist(accFormat) && Spieler[playerid][eingeloggt])
    {
    dini_IntSet(accFormat,"wanted",Spieler[playerid][wanted]);
    dini_IntSet(accFormat,"jail",Spieler[playerid][jail]);
    dini_IntSet(accFormat,"jailtime",Spieler[playerid][jailtime]);
    dini_IntSet(accFormat,"pduty",Spieler[playerid][pduty]);
    dini_IntSet(accFormat,"leader",Spieler[playerid][leader]);
    dini_IntSet(accFormat,"team",Spieler[playerid][team]);
    dini_IntSet(accFormat,"skin",Spieler[playerid][skin]);
    dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
    dini_IntSet(accFormat,"Admin",Spieler[playerid][Admin]);
    }
    Spieler[playerid][eingeloggt] = 0;
    Spieler[playerid][wanted] = 0;
    Spieler[playerid][jail] = 0;
    Spieler[playerid][jailtime] = 0;
    Spieler[playerid][pduty] = 0;
    Spieler[playerid][leader] = 0;
    Spieler[playerid][team] = 0;
    Spieler[playerid][skin] = 0;
    Spieler[playerid][Admin] = 0;
    return 1;
    }


    public OnPlayerSpawn(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"));
    {
    if(Spieler[playerid][team] == 0) //team zivi
    {
    SetPlayerPos(playerid, 1219.0143,-1812.4454,16.5938);
    SetPlayerColor(playerid, COLOR_WHITE);
    }
    if(Spieler[playerid][team] == 1) //team ninjas
    {
    SetPlayerPos(playerid, 864.0807,-1642.5531,13.8480 );
    GivePlayerWeapon(playerid, 4, 1); GivePlayerWeapon(playerid, 24, 50);
    SetPlayerColor(playerid, COLOR_LIGHTBLUE);
    }
    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][wanted] = dini_Int(accFormat,"wanted");
    Spieler[playerid][jail] = dini_Int(accFormat,"jail");
    Spieler[playerid][jailtime] = dini_Int(accFormat,"jailtime");
    Spieler[playerid][pduty] = dini_Int(accFormat,"pduty");
    Spieler[playerid][leader] = dini_Int(accFormat,"leader");
    Spieler[playerid][team] = dini_Int(accFormat,"team");
    Spieler[playerid][skin] = dini_Int(accFormat,"skin");
    GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
    SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
    Spieler[playerid][Admin] = dini_Int(accFormat,"Admin");
    Spieler[playerid][eingeloggt] = 1; // Spieler ist nun erfolgreich eingeloggt
    SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
    SpawnPlayer(playerid);
    }
    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");
    }
    }
    return 1;
    }


    so speichere ich ;)

    Hallo (=


    Habe folgendes Problem, (ich Speichere mit dini)
    bei meinen /makeleader befehl wird der skin nicht gespeichert )=


    if(!strcmp(strget(cmdtext,0),"/makeleader"))
    {
    if(Spieler[playerid][Admin] >= 4 )
    {
    if(!strlen(strget(cmdtext,1)))
    return
    SendClientMessage(playerid,COLOR_GREY,"Benutze: /makeleader [Spielerid] [FraktionsID]");
    //new string[128];
    new id3 = strval(strget(cmdtext,1));
    new admin3[MAX_PLAYER_NAME];
    new gang = strval(strget(cmdtext,2));
    GetPlayerName(id3,admin3,sizeof(admin3));
    format(string, sizeof(string), "*** Du wurdest von Admin %s zum Leader der Fraktionsnummer %d gemacht.", admin3, gang);
    SendClientMessage(id3, COLOR_LIGHTRED, string);
    format(string, sizeof(string), "*** Du hast %s zum Leader der Fraktionsnummer %d gemacht.", id3, gang);
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    if(gang==0) { SetPlayerSkin(id3,0);Spieler[playerid][leader] = 0; }
    if(gang==1) { SetPlayerSkin(id3,116);Spieler[playerid][leader]= 1; }
    if(gang==2) { SetPlayerSkin(id3,288);Spieler[playerid][leader]= 2; }
    if(gang==3) { SetPlayerSkin(id3,126);Spieler[playerid][leader]= 3; }
    if(gang==4) { SetPlayerSkin(id3,70);Spieler[playerid][leader]= 4;}
    if(gang==5) { SetPlayerSkin(id3,255);Spieler[playerid][leader]= 5;}
    if(gang==6) { SetPlayerSkin(id3,217);Spieler[playerid][leader]= 6;}
    Spieler[id3][leader] = gang;
    Spieler[id3][team] = gang;
    }
    else
    {
    SendClientMessage(playerid, COLOR_LIGHTRED,"Du darfst diesen Befehl nicht benutzen !");
    }
    return 1;
    }


    Ich bekomme ingame zwar den skin, aber wenn ich das spiel dann runterlege und in den scriptfiles schaue steht bei skin trozdem noch Skin=0 und deshalb wird bei einen restart der skin nicht wiederaufgenommen

    ist vill hier irgendwas falsch weil es connectet ja noch aber bevor es zum login kommt stürzt er ab


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    new pname[MAX_PLAYERS],accFormat[400];
    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][reg] = dini_Int(accFormat,"reg");
    Spieler[playerid][grab] = dini_Int(accFormat,"grab");
    Spieler[playerid][bank] = dini_Int(accFormat,"bank");
    Spieler[playerid][eccard] = dini_Int(accFormat,"eccard");
    Spieler[playerid][tut] = dini_Int(accFormat,"tut");
    Spieler[playerid][handygut] = dini_Int(accFormat,"handygut");
    Spieler[playerid][handyver] = dini_Int(accFormat,"handyver");
    Spieler[playerid][telef] = dini_Int(accFormat,"telef");
    Spieler[playerid][handy] = dini_Int(accFormat,"handy");
    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"));
    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.");

    SetTimerEx("tutorial",1000,0,"i",playerid);
    GivePlayerMoney(playerid,1000);
    Spieler[playerid][reg] = 1;
    SpawnPlayer(playerid);
    }
    }
    }
    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");
    }
    }
    if(dialogid == SHmenu) // Name des Menüs, das wir als ID 0 definiert haben
    {
    if(response)
    {
    if(listitem == 0) // Fuehrerschein
    {
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");
    if(Spieler[playerid][aFuhrerschein] >= 1 )return SendClientMessage(playerid,0xFFFFFFFF,"Du hast bereits den führerschein.");
    GivePlayerMoney(playerid, -1300);
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dir den Führerschein Gekauft");
    Spieler[playerid][aFuhrerschein] = 1;
    }
    if(listitem == 1) // Perso
    {
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");
    if(Spieler[playerid][perso] >= 1 )return SendClientMessage(playerid,0xFFFFFFFF,"Du hast bereits den Personalausweis.");
    GivePlayerMoney(playerid, -70);
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dir den Personalausweis Gekauft");
    Spieler[playerid][perso] = 1;
    }
    if(listitem == 2) // harziv
    {
    if(Spieler[playerid][harziv] == 1 )return SendClientMessage(playerid,0xFFFFFFFF,"Du empfängst bereits harziv.");
    SendClientMessage(playerid,0xFFFFFFFF,"Du bekommst jetzt harziv");
    Spieler[playerid][harziv] = 1;
    }
    if(listitem == 3) // harziv Kündigen
    {
    if(Spieler[playerid][harziv] == 0 )return SendClientMessage(playerid,0xFFFFFFFF,"Du empfängst kein harziv.");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dein harziv Gekündigt");
    Spieler[playerid][harziv] = 0;
    }
    if(listitem == 4) // Versicherung
    {
    if(GetPlayerMoney(playerid) < preise[listitem])return SendClientMessage(playerid,0xFFFFFFFF,"Du hast nicht genug Geld.");
    if(Spieler[playerid][versicherung] >= 1 )return SendClientMessage(playerid,0xFFFFFFFF,"Du hast schon eine Versicherung.");
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dich versichern lassen");
    GivePlayerMoney(playerid, -2000);
    Spieler[playerid][versicherung] = 1;
    }

    Also erstmal danke für deine Hilfe :thumbup:
    aber jetzt besteht dieses Problem


    public OnVehicleMod(playerid,vehicleid,componentid)
    {
    if (playerid!=GetPlayerFromCarlistCar(vehicleid)) {return 1;}
    if(playerid!=-1)
    {
    new modxx=GetModType(componentid); //Das ist die error zeile
    switch (modxx)
    {
    case 1: { Carlist[playerid][modxx1]=componentid; }
    case 2: { Carlist[playerid][modxx2]=componentid; }
    case 3: { Carlist[playerid][modxx3]=componentid; }
    case 4: { Carlist[playerid][modxx4]=componentid; }
    case 5: { Carlist[playerid][modxx5]=componentid; }
    case 6: { Carlist[playerid][modxx6]=componentid; }
    case 7: { Carlist[playerid][modxx7]=componentid; }
    case 8: { Carlist[playerid][modxx8]=componentid; }
    case 9: { Carlist[playerid][modxx9]=componentid; }
    case 10: { Carlist[playerid][modxx10]=componentid; }
    case 11: { Carlist[playerid][modxx11]=componentid; }
    case 12: { Carlist[playerid][modxx12]=componentid; }
    case 13: { Carlist[playerid][modxx13]=componentid; }
    case 14: { Carlist[playerid][modxx14]=componentid; }
    case 15: { Carlist[playerid][modxx15]=componentid; }
    case 16: { Carlist[playerid][modxx16]=componentid; }
    case 17: { Carlist[playerid][modxx17]=componentid; }
    default: { new string[128]; format(string,128,"Unbekannte Komponentenid: %i",componentid); print(string); }
    }
    }
    return 1;
    }



    xD

    Zitat

    warning 204: symbol is assigned a value that is never used: "zeitrechnen"


    if (strcmp("/zahltag", cmdtext, true, 10) == 0)
    {
    new zeitrechnen = pSincePayday[playerid]-60; // das ist die errorzeile
    format(string, sizeof(string), "Zeit seit Payday: %d Spielzeit insgesamt:%d ",pSincePayday[playerid],pPlaytime[playerid] );
    SendClientMessage(playerid, 0xFFFFFFAA,string);// sendet Playerid in der Farbe Weiß String das ist das was wir eine ZEile obendrüber definiert haben.
    return 1;
    }


    Zitat

    warning 219: local variable "mod" shadows a variable at a preceding level


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new typ;
    typ=IsAutohausCar(vehicleid);
    if(typ!=-1)
    {
    new string[128];
    TogglePlayerControllable(playerid,0);
    Spectating[playerid][0]=typ;
    SetVehicleParamsForAll(vehicleid,0,1);
    SendClientMessage(playerid, COLOR_YELLOW, "~*~ Autohaus ~*~");
    format(string,128,"Name: %s",Kaufliste[typ][Name]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string,128,"Preis: $%i",Kaufliste[typ][Preis]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    format(string,128,"Reparaturkosten: $%i",Kaufliste[typ][Reparatur]);
    SendClientMessage(playerid, COLOR_YELLOW, string);
    SendClientMessage(playerid, COLOR_GREEN, "Dieses Fahrzeug ist zu verkaufen. Um es zu kaufen, benutze: /Autokaufen");
    SendClientMessage(playerid, COLOR_GREEN, "Um das Fahrzeug zu verlassen, benutze: /exitcar");
    }
    }
    if(Spieler[playerid][aFuhrerschein] < 1 )
    RemovePlayerFromVehicle(playerid);
    if(newstate==PLAYER_STATE_DRIVER) {
    da[playerid]=true;
    new aid=GetPlayerVehicleID(playerid), mod; //Das ist die Errorzeile
    altauto[playerid]=aid;
    mod=GetVehicleModel(aid);
    altmod[playerid]=mod; }
    if(newstate == PLAYER_STATE_DRIVER && !DeActiveSpeedometer[playerid])
    {


    Zitat

    warning 219: local variable "mod" shadows a variable at a preceding level


    public OnVehicleMod(playerid,vehicleid,componentid)
    {
    if (playerid!=GetPlayerFromCarlistCar(vehicleid)) {return 1;}
    if(playerid!=-1)
    {
    new mod=GetModType(componentid); //Das ist die error zeile
    switch (mod)
    {
    case 1: { Carlist[playerid][mod1]=componentid; }
    case 2: { Carlist[playerid][mod2]=componentid; }
    case 3: { Carlist[playerid][mod3]=componentid; }
    case 4: { Carlist[playerid][mod4]=componentid; }
    case 5: { Carlist[playerid][mod5]=componentid; }
    case 6: { Carlist[playerid][mod6]=componentid; }
    case 7: { Carlist[playerid][mod7]=componentid; }
    case 8: { Carlist[playerid][mod8]=componentid; }
    case 9: { Carlist[playerid][mod9]=componentid; }
    case 10: { Carlist[playerid][mod10]=componentid; }
    case 11: { Carlist[playerid][mod11]=componentid; }
    case 12: { Carlist[playerid][mod12]=componentid; }
    case 13: { Carlist[playerid][mod13]=componentid; }
    case 14: { Carlist[playerid][mod14]=componentid; }
    case 15: { Carlist[playerid][mod15]=componentid; }
    case 16: { Carlist[playerid][mod16]=componentid; }
    case 17: { Carlist[playerid][mod17]=componentid; }
    default: { new string[128]; format(string,128,"Unbekannte Komponentenid: %i",componentid); print(string); }
    }
    }
    return 1;
    }


    So das waren alle

    warnings sind diese hier..nix besonderes


    D:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(750) : warning 217: loose indentation
    D:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(758) : warning 217: loose indentation
    D:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(2094) : warning 204: symbol is assigned a value that is never used: "zeitrechnen"
    D:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(4293) : warning 219: local variable "mod" shadows a variable at a preceding level
    D:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(4421) : warning 219: local variable "mod" shadows a variable at a preceding level
    D:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(4509) : warning 217: loose indentation
    D:\PROGRA~1\ROCKST~1\GTASAN~1\GAMEMO~1\myrl.pwn(5089) : warning 203: symbol is never used: "Typen"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    7 Warnings.


    scriptfiles sind alle da

    Ja das ist es ja da steht nix drinnen )=