Beiträge von zombie.modder

    Hi Brotfischer,


    hier habe ich ein Problem


    Spoiler anzeigen
    if (!strcmp("/givefs",cmd,true,7)) {
    new tmp1[255];
    tmp1 = strtok(cmdtext, index);
    {
    if(gTeam[playerid] == TEAM_FAHRSCHULE || gLeader[playerid] == TEAM_FAHRSCHULE)
    {
    if(!strlen(tmp1) || !IsNumeric(tmp))
    {
    return SendClientMessage(playerid,COLOR_RED,"Benutze: /givefs [playerid]");
    }
    if(!IsPlayerConnected(ziel))
    {
    return SendClientMessage(playerid,COLOR_RED,"Der Spieler ist nicht online!");
    }
    else {

    PlayerInfo[ziel][autoschein] = 1;
    dini_IntSet(save,"Führerschein",PlayerInfo[ziel][autoschein]);
    GivePlayerMoney(ziel, -1000);
    GivePlayerMoney(playerid, 1000);
    format(string2, sizeof(string2),"Herzlichen Glückwunsch %s, %s hat ihnen einen Führerschein verliehen ", ziel,spieler);
    SendClientMessage(ziel,Hellblau,string2);
    }
    }
    }
    else //Hier^^
    {
    SendClientMessage(playerid, Rot, "Du bist kein Fahrlehrer!");
    }

    Spoiler anzeigen
    return 1;
    }


    Uns war dieses:


    F:\IMACZE~1\ROCKST~1\GRANDT~1\GAMEMO~1\REALRE~1.PWN(570) : error 029: invalid expression, assumed zero
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Ich kapiere es net, habe es auch versucht zu verschieben^^ Geht nicht


    MfG

    Hi,


    bei meinem Register System habe ich ein problem. Wenn ich mich registriere ist alles ok. Aber dann wenn ich gta aus und dann wieder an mach und dann mein PW eingebe kommt.
    Falsches Password


    Hier ist der Code


    [hide]public OnPlayerLogin(playerid,const string[])
    {
    new pname2[MAX_PLAYER_NAME];
    new pname3[MAX_PLAYER_NAME];
    new string2[64];
    new string3[128];
    GetPlayerName(playerid, pname2, sizeof(pname2));
    format(string2, sizeof(string2), "/Spieler/%s.cer", pname2);
    new File: UserFile = fopen(string2, io_read);


    if (UserFile)
    {
    new valtmp[128];
    fread(UserFile, valtmp);strmid(PlayerInfo[playerid][Passwort], valtmp, 0, strlen(valtmp)-1, 255);


    if ((strcmp(PlayerInfo[playerid][Passwort], string, true, strlen(valtmp)-1) == 0))
    {
    new key[128],val[128];
    new Data[128];
    while(fread(UserFile,Data,sizeof(Data)))
    {
    key = ini_GetKey(Data);
    if( strcmp( key , "Morde" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][morde] = strval( val ); }
    if( strcmp( key , "Tode" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][tode] = strval( val ); }
    if( strcmp( key , "Geld" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][geld] = strval( val ); }
    if( strcmp( key , "Führerschein" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][autoschein] = strval( val ); }
    if( strcmp( key , "Leader" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][leader] = strval( val ); }
    if( strcmp( key , "SkinID" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][skin] = strval( val ); }
    if( strcmp( key , "Adminlevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][alevel] = strval( val ); }
    GivePlayerMoney(playerid,PlayerInfo[playerid][geld]);


    SpawnPlayer(playerid);
    }
    fclose(UserFile);
    gPlayerLogged[playerid] = 1;
    gPlayerAccount[playerid] = 1;
    new kills = PlayerInfo[playerid][morde];
    SetPlayerScore(playerid, kills);
    GetPlayerName(playerid, pname3, sizeof(pname3));
    format(string3, sizeof(string3), "Willkommen %s, du hast dich erfolgreich eingeloggt!", pname3);
    SendClientMessage(playerid, Grün,string3);
    }
    else
    {
    SendClientMessage(playerid, Grau, "Das Password stimmt nicht mit dem Password des Users überein!");
    fclose(UserFile);
    }
    }
    return 1;
    }[/hide]


    Danke



    MfG


    zombie_modder

    new Spawn[200];
    new InMinigun[200];
    new Float:gRandomPlayerSpawns[7][3] = {
    {2604.7588,2706.6716,36.5471},
    {2631.5474,2707.4336,36.3413},
    {2647.6382,2731.1760,10.8203},
    {2667.6221,2757.2063,10.8203},
    {2719.3918,2773.1499,77.3594},
    {2631.6228,2833.0386,127.5781},
    {2604.2908,2806.3577,27.8203}
    };
    forward SetPlayerRandomSpawn(playerid);
    public OnPlayerSpawn(playerid)
    {
    if(InMinigun[playerid] ==1)
    {
    print("Es klappt nicht !");
    SetPlayerRandomSpawn(playerid);
    SetPlayerArmour(playerid,100);
    GivePlayerWeapon(playerid,38,1000000);
    }
    else
    {

    }
    return 1;
    }
    public OnPlayerCommandText(playerid, cmdtext[])
    if (strcmp("/minigun",cmdtext, true, 10) == 0)
    {
    GameTextForPlayer(playerid,"~r~ Minigun-Arena, baller sie weg !",2500,3);
    SetPlayerRandomSpawn(playerid)


    InMinigun[playerid]=true;


    return 1;
    }

    mein Invite sieht so aus:


    //```````````````/invite````````````````
    if(!strcmp(strget(cmdtext,0),"/invite")) //Hier wird wieder beschrieben das wenn man den /makeleader befehl eingibt
    {
    if(gLeader[playerid] == 1)
    {
    if(!strlen(strget(cmdtext,1))) // wenn der cmd falsch ist
    {
    SendClientMessage(playerid,Hellblau,"Benutze: /invite [id] [id der fraktion] "); // Nachricht senden
    SendClientMessage(playerid,Hellblau,"Für die ID´s benutze: /frakid"); // Nachricht senden
    }
    if(!strlen(strget(cmdtext,2)))// wenn der cmd falsch ist
    {
    SendClientMessage(playerid,Hellblau,"Benutze: /invite [id] [id der fraktion] ");
    SendClientMessage(playerid,Hellblau,"Für die ID´s benutze: /frakid");
    }
    else
    {
    new ziele = strval(strget(cmdtext,1));
    new sav[128];
    new teamid = strval(strget(cmdtext,2));
    {
    if(IsPlayerConnected(ziele))
    {
    gLeader[ziele] = teamid;
    if(teamid==1) { SetPlayerSkin(ziele,264);gTeam[playerid] = TEAM_NOOBS; }
    if(teamid==2) { SetPlayerSkin(ziele,147);gTeam[playerid] = TEAM_FAHRSCHULE; }
    if(teamid==3) { SetPlayerSkin(ziele,283);gTeam[playerid] = TEAM_COPS; }
    format(string, sizeof(string),"Herzlichen Glückwunsch %s ", ziele);
    format(str, sizeof(str),"Sie wurden in die Fraktion %d eingeladen", teamid);
    SendClientMessage(ziele,Grün,string);
    SendClientMessage(ziele,Grün,str);
    dini_IntSet(sav,"Team",gTeam[playerid]);
    }
    else if(!IsPlayerConnected(ziele))
    {
    SendClientMessage(playerid, Rot, "Der Spieler ist nicht Online!");
    }
    }
    }
    }
    else if(gLeader[playerid] == 0)
    {
    SendClientMessage(playerid, Rot, "Du bist kein Leader einer Fraktion!");
    }
    return 1;
    }

    Hi,
    wie kann ich machen das ich in meinen Server bei der Registration nach dem ich Geschlecht und Woher komme im Menü eingegeben habe mein Alter eingeben muss wie in GF (dd/mm/yyyy)


    So sieht es bei mir aus:
    enum pInfo
    {
    Passwort[128],
    morde,
    tode,
    geld,
    autoschein,
    rank,
    leader,
    skin,
    alevel,
    gesch,
    land,
    alter, //<<<daa
    };



    Und hier die Menüs:


    else if(GetPlayerMenu(playerid) == geschlecht)
    {
    switch(row)
    {
    case 0:
    {
    SendClientMessage(playerid, COLOR_RED, "Sind sind also Männlich");
    format(var, 32, "Geschlecht=Männlich\n",PlayerInfo[playerid][gesch]);fwrite(hFile, var);
    SendClientMessage(playerid, Rot, "Bitte geben sie ihr alter an /dd/mm/yyyy/");
    HideMenuForPlayer(geschlecht, playerid);
    TogglePlayerControllable(playerid, true);
    }


    case 1:
    {
    SendClientMessage(playerid, COLOR_RED, "Sie sind also weiblich");
    format(var, 32, "Geschlecht=Weiblich\n",PlayerInfo[playerid][gesch]);fwrite(hFile, var);
    SendClientMessage(playerid, Rot, "Bitte geben sie ihr alter an /dd/mm/yyyy/");
    HideMenuForPlayer(geschlecht, playerid);
    TogglePlayerControllable(playerid, true);
    }


    }


    }
    Aber das weis ich dann halt net mit dem Alter^^



    MfG

    if (strcmp(cmd, "/register", true)==0) //wenn der Spieler /register eingibt
    {
    new string[128];
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) //Wenn er z.B /registre eingibt
    {
    SendClientMessage(playerid, farbe, "Benutze: /register [password]"); //sendet eine Nachricht
    return 1;
    }
    if (gPlayerAccount[playerid] == 1) //Wenn er bereits einen Account hat
    {
    SendClientMessage(playerid, farbe, "Dieser Username ist schon registriert!"); //Sendet eine Nachricht
    return 1;
    }


    strmid(PlayerInfo[playerid][pPassword], tmp, 0, strlen(cmdtext), 255);
    Encrypt(PlayerInfo[playerid][pPassword]);
    GetPlayerName(playerid, playername, sizeof(playername)); //kriegt den Spielernamen
    format(string, sizeof(string), "/Spieler/%s.ini", playername); //Da<<<<<<<<<<<<<<<<<<<
    new File: file = fopen(string, io_read); //erstellt eine Datei mit den Spielernamen z.B. zombie.modder.ini im Ordner Scriptfiles
    if (file) //wenn es bereits eine Datei mit diesem Namen gibt
    {
    SendClientMessage(playerid, farbe, "Diesen Benutzernamen gibt es schon"); //sendet eine Nachricht
    fclose(file);
    return 1;
    }
    new File:hFile; //erstellt eine Datei
    hFile = fopen(string, io_append); //öffnet sie
    new var[32];//
    format(var, 32, "%s\n", PlayerInfo[playerid][passwort]);fwrite(hFile, var); //schreibt das Passwort in die Datei
    format(var, 32, "Morde=%d\n",PlayerInfo[playerid][morde]);fwrite(hFile, var);//schreibt die Anzahl derKills in die Datei
    format(var, 32, "Tode=%d\n",PlayerInfo[playerid][tode]);fwrite(hFile, var);//schreibt die Anzahl der Tode in die Datei
    PlayerInfo[playerid][geld] = GetPlayerMoney(playerid);//findet heraus wie viel Geld der Spieler hat
    format(var, 32, "Geld=%d\n",PlayerInfo[playerid][geld]);fwrite(hFile, var);//schreibt das Geld in die Datei
    PlayerInfo[playerid][skin] = GetPlayerMoney(playerid);//findet heraus welche Skin ID der Spieler hat
    format(var, 32, "SkinID=%d\n",PlayerInfo[playerid][skin]);fwrite(hFile, var);//schreibt die Skin iD in die Datei
    fclose(hFile);
    SendClientMessage(playerid, farbe, "Erfolgreich registriert!!");
    SendClientMessage(playerid, farbe, "Benutze beim nächsten Besuch /login (passwort).");
    OnPlayerLogin(playerid,PlayerInfo[playerid][passwort]);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    new spielername[MAX_PLAYER_NAME]; //für den Spielernamem
    new connect[128];
    GetPlayerName(playerid, spielername, sizeof(spielername)); //findet den Namen des Spielers raus
    format(connect, sizeof(connect), "/Spieler/%s.ini", spielername); //<<<<<<<<<<<<<<<<<<<<<<da
    if(fexist(connect)) //Wenn die Datei des Spielers existiert
    {
    gPlayerAccount[playerid] = 1; //Er hat einen Account
    SendClientMessage(playerid, COLOR_YELLOW, "Du bist bereits registriert. Benutze /login [password]"); // Sendet ihm eine Bestätigung das er bereits registriert ist
    return 1;
    }
    else //wenn er keinen account hat{
    gPlayerAccount[playerid] = 0; //er hat keinen Account
    SendClientMessage(playerid, COLOR_YELLOW, "Du bist neu hier. Bitte benutze /register [password] um dich zu registrieren"); //sendet ihm eine Nachricht das sein Account fehlt
    }
    return 1;
    }
    public OnPlayerLogin(playerid,const string[])
    {
    new pname2[MAX_PLAYER_NAME];
    new pname3[MAX_PLAYER_NAME];
    new string2[64];
    new string3[128];
    GetPlayerName(playerid, pname2, sizeof(pname2)); //kriegt den Namen
    format(string2, sizeof(string2), "/Spieler/%s.ini", pname2); //<<<<<<<<<<<<<<<<<<da
    new File: UserFile = fopen(string2, io_read); //"öffnet" die datei des spielers


    if (UserFile)
    {
    new valtmp[128];
    fread(UserFile, valtmp);strmid(PlayerInfo[playerid][password], valtmp, 0, strlen(valtmp)-1, 255);


    if ((strcmp(PlayerInfo[playerid][password], string, true, strlen(valtmp)-1) == 0)) //Wenn das passwort richtig is (?)
    {
    new key[128],val[128];
    new Data[128];
    while(fread(UserFile,Data,sizeof(Data)))
    {
    key = ini_GetKey(Data);
    if( strcmp( key , "Morde" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][morde] = strval( val ); } //weis net xD
    if( strcmp( key , "Tode" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][tode] = strval( val ); }
    if( strcmp( key , "Geld" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][geld] = strval( val ); }
    if( strcmp( key , "SkinID" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][tode] = strval( val ); }
    GivePlayerMoney(playerid,PlayerInfo[playerid][geld]); //gibt ihm das Geld was er beim Leaven hatte
    SetPlayerSkin(playerid,PlayerInfo[playerid][skin]); //gibt ihm den Skin den er beim leaven hatte
    }
    fclose(UserFile);
    gPlayerLogged[playerid] = 1; //er ist absofort eingeloggt
    gPlayerAccount[playerid] = 1; //er hat einen account
    new kills = PlayerInfo[playerid][morde];
    SetPlayerScore(playerid, kills); //gibt dem Spieler den Score den er beim verlassen hatte
    GetPlayerName(playerid, pname3, sizeof(pname3)); //kriegt den Spielernamen
    format(string3, sizeof(string3), "Willkommen %s, ydu hast dich erfolgreich eingeloggt!", pname3);
    SendClientMessage(playerid, farbe,string3);
    }
    else
    {
    SendClientMessage(playerid, farbe, "Das Password ist falsch!"); //Wenn das Password falsch ist
    fclose(UserFile);
    }
    }
    return 1;
    }



    public OnPlayerUpdate(playerid)
    {
    if(IsPlayerConnected(playerid)) //wenn der spieler online ist
    {
    if(gPlayerLogged[playerid]) //Wenn er eingeloggt ist
    {
    new string3[32];
    new pname3[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pname3, sizeof(pname3)); //kriegt den namen des spielers
    format(string3, sizeof(string3), "%s.ini", pname3);
    new File: pFile = fopen(string3, io_write);
    if (pFile)
    {
    new var[32];
    format(var, 32, "/Spieler/%s\n", PlayerInfo[playerid][password]);fwrite(pFile, var); //<<<<<<<<<<<<<<<da
    fclose(pFile);
    new File: hFile = fopen(string3, io_append);
    PlayerInfo[playerid][geld] = GetPlayerMoney(playerid);
    format(var, 32, "Morde=%d\n",PlayerInfo[playerid][morde]);fwrite(hFile, var); //Weis net^^
    format(var, 32, "Tode=%d\n",PlayerInfo[playerid][tode]);fwrite(hFile, var);
    format(var, 32, "Geld=%d\n",PlayerInfo[playerid][geld]);fwrite(hFile, var);
    format(var, 32, "SkinID=%d\n",PlayerInfo[playerid][skin]);fwrite(hFile, var);
    fclose(hFile);
    }
    }
    }
    return 1;
    }


    MfG