Beiträge von MarvinJoke12

    Also wenn ich mienen Server starte kommt jedesmal "Run time error 20: "Invalid index paramter(bad entry point)" in der Konsole.
    Jedoch kommen keine errors im Scipt. Den Server kann man betreten aber nichts von dem gescripteten funkt.
    Warum?


    Script:
    http://pastebin.com/JtfZG95E



    Server config:
    echo Executing Server Config...
    lanmode 1
    rcon_password lol
    maxplayers 50
    port 7777
    hostname SA-MP 0.3 Server
    gamemode0 Anfang 1
    filterscripts gl_actions gl_realtime gl_property gl_mapicon ls_mall attachments skinchanger vspawner
    announce 0
    query 1
    chatlogging 0
    weburl http://www.sa-mp.com
    onfoot_rate 40
    incar_rate 40
    weapon_rate 40
    stream_distance 300.0
    stream_rate 1000
    maxnpc 0
    logtimeformat [%H:%M:%S]
    plugins sscanf mysql

    if(listitem == 0)
    {
    //if(IstBeamter(Verbrecher[playerid])) return SendClientMessage(playerid,Rot,"Du kannst Beamten keine Wanteds geben.");
    if(!IstBeamter(Verbrecher[playerid]))//StVO
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(Verbrecher[playerid], name, sizeof(name));
    dini_IntSet(name,"Wanted", dini_Int(name,"Wanted") + 1);
    }
    }


    was ist der fehler? also bei mir in der spieler datei wird nie wanted erhöht

    also ich will in der Spieler datei die ein cop voher ausgewählt hatte den wanted +1 amchen bis jetzt habe ich
    if(dialogid == WantedKatalog)
    {
    if(response == 1)
    {
    if(listitem == 0)
    {
    //if(IstBeamter(Verbrecher[playerid])) return SendClientMessage(playerid,Rot,"Du kannst Beamten keine Wanteds geben.");
    if(!IstBeamter(Verbrecher[playerid]))//StVO
    {

    }
    }
    if(listitem == 1)
    {


    }
    if(listitem == 2)
    {


    }
    if(listitem == 3)
    {


    }
    if(listitem == 4)
    {


    }
    if(listitem == 5)
    {


    }
    }

    }


    und


    if(IstBeamter(playerid))
    {
    ShowPlayerDialog(playerid, WantedKatalog, DIALOG_STYLE_LIST, "Wanteds geben:","StVO\nBeamten/Zivi-Beschuss\nBeamtenangriff\nBeamtenbeleidigung\nBankrob \nKidnap\nFlucht\nMord\nPresidentenMord\nPresidentenKidnap\nBeihilfe zur Flucht", "Geben", "Abbrechen");
    Verbrecher[playerid] = clickedplayerid;
    }

    wie mache ich das richtig?


    if(response == 1)
    {
    if(listitem == 0)
    {
    if(IstBeamter(Verbrecher[playerid])) return SendClientMessage(playerid,Rot,"Du kannst Beamten keine Wanteds geben.");
    if(!IstBeamter(Verbrecher[playerid]))//StVO
    {
    new Spieler[64];
    new Sname[MAX_PLAYER_NAME];
    GetPlayerName(Verbrecher[playerid],Sname,sizeof(Sname));
    format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
    dini_IntSet(Spieler,"Wanted", + 1);
    }
    }

    also ich habe diese fehler:
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(183) : warning 203: symbol is never used: "params"
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(431) : error 033: array must be indexed (variable "Verbrecher")
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(796) : warning 203: symbol is never used: "lspdcars"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    scriptstellen
    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    if(IstBeamter(playerid))
    {
    ShowPlayerDialog(playerid, WantedKatalog, DIALOG_STYLE_LIST, "Wanteds geben:","StVO\nBeamten/Zivi-Beschuss\nBeamtenangriff\nBeamtenbeleidigung\nBankrob \nKidnap\nFlucht\nMord\nPresidentenMord\nPresidentenKidnap\nBeihilfe zur Flucht", "Geben", "Abbrechen");
    Verbrecher = clickedplayerid;
    }
    return 1;
    }


    new Verbrecher[MAX_PLAYERS];

    Also ich habe ein einfaches login/register system undwenn einer in fraktion 0,1,2 ist soll er da und da gespawnt werden und jetzt ist mien problem ich setze mich in meiner spieler datei
    frak 2 aber bekomme nicht die nachricht die bekommen sollte wenn ich frak 2 bin


    //====INCLUDES===//
    #include <a_samp>
    #include <Dini>
    #include <MD5>


    #pragma tabsize 0
    //====DIALOGE====//
    //REGISTER
    #define DIALOG_REGISTER 1
    #define DIALOG_LOGIN 2
    //FARBEN
    #define GRÜN 0x00FF00FF
    #define ROT 0xF50000FF
    //====FRAKTION===//


    //====STOCKS====//
    //LOGIN&REGISTER//
    //SPIELERNAME//
    stock SpielerName(playerid)
    {
    new GetName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,GetName,sizeof(GetName));
    return GetName;
    }
    //REGISTER//
    stock Register(playerid,key[])
    {
    new Spielerdatei[64];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid,GRÜN,"Erfolgreich registriert.");
    dini_IntSet(Spielerdatei,"Level",0);
    dini_IntSet(Spielerdatei,"Banned",0);
    dini_IntSet(Spielerdatei,"Adminlevel",0);
    dini_IntSet(Spielerdatei,"Fraktion",0);
    dini_IntSet(Spielerdatei,"Geld",0);
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }
    //SpielerLaden//
    stock SpielerLaden(playerid)
    {
    new Spielerdatei[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"loggedin",1);
    SetPVarInt(playerid,"Banned",dini_Int(Spielerdatei,"Banned"));
    if(GetPVarInt(playerid,"Banned")==1)
    {
    SendClientMessage(playerid,ROT,"Du kannst mit diesem Account nicht spielen, da du gebannt bist.\nBei Fragen oder Einwänden melde dich bei einem Admin");
    Kick(playerid);
    return 1;
    }
    return 1;
    }
    //SpielerSpeichern//
    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Banned",GetPVarInt(playerid,"Banned"));
    return 1;
    }
    return 1;
    }
    //LOGIN//
    stock Login(playerid,key[])
    {
    new Spielerdatei[128];
    new string2[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    SpielerLaden(playerid);
    SendClientMessage(playerid,GRÜN,"Du hast dich erfolgreich eingeloggt.");
    format(string2,sizeof(string2),"[Join] %s hat den Server betreten",SpielerName(playerid));
    SendClientMessageToAll(GRÜN,string2);
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login Vorgang", "Das angegebene Passwort war leider falsch!\nBitte gib nun unten dein richtiges Passwort ein!", "LogIn", "Abbrechen");
    }
    return 1;
    }
    //FraktionsAbfrage
    stock IsPlayerInFrak(playerid,fraktid)
    {
    if(GetPVarInt(playerid,"Fraktion")==fraktid)return 1;
    return 0;
    }
    //LOGGED
    stock IsPlayerLogged(playerid,fraktid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)return 1;
    return 0;
    }




    main()
    {
    print("\n----------------------------------");
    print(" Roleplay MJ");
    print("----------------------------------\n");
    }


    public OnGameModeInit()
    {
    SetGameModeText("MJ Roleplay");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    return 1;
    }


    public OnGameModeExit()
    {
    return 1;
    }


    public OnPlayerRequestClass(playerid, classid)
    {
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    if(IsPlayerNPC(playerid))return 1;
    new Spielerdatei[128],string[128],string2[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    if(dini_Exists(Spielerdatei))
    {
    format(string, sizeof(string), "{FFFFFF}Herzlich Willkommen zurück auf meinem Server {FFFA00}%s.\n{FFFFFF}Gib unten bitte dein Passwort ein!", SpielerName(playerid));
    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Login Vorgang", string, "Einloggen", "Abbrechen");
    }
    else
    {
    format(string2,sizeof(string2),"{FFFFFF}Herzlich willkommen {FFFA00}%s.\n{FFFFFF}Da dies dein erster Besuch hier ist musst du dich erst registrieren.\nBitte gib unten dein gewünschtes Passwort ein!",SpielerName(playerid)); //String 2
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrierungs Vorgang",string2,"Register","Abbrechen");
    }
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    if(GetPVarInt(playerid,"loggedin") == 1)
    {
    SpielerSpeichern(playerid);
    }
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    //====SPAWN-ABFRAGEN====//
    if(IsPlayerInFrak(playerid,0))
    {
    SetPlayerPos(playerid,1958.3783, 1343.1572, 15.3746);
    SendClientMessage(playerid,ROT,"Du bist als Zivilist gespawnt.");
    return 1;
    }
    if(IsPlayerInFrak(playerid,1))
    {
    SetPlayerPos(playerid,1958.3783, 1343.1572, 15.3746);
    SendClientMessage(playerid,ROT,"Du bist als LSPD Mitglied gespawnt.");
    return 1;
    }
    if(IsPlayerInFrak(playerid,2))
    {
    SetPlayerPos(playerid,1958.3783, 1343.1572, 15.3746);
    SendClientMessage(playerid,ROT,"Du bist als FBI Mitglied gespawnt.");
    return 1;
    }
    if(IsPlayerInFrak(playerid,3))
    {
    SetPlayerPos(playerid,1958.3783, 1343.1572, 15.3746);
    SendClientMessage(playerid,ROT,"Du bist als ARMY Mitglied gespawnt.");
    return 1;
    }
    if(IsPlayerInFrak(playerid,4))
    {
    SetPlayerPos(playerid,1958.3783, 1343.1572, 15.3746);
    SendClientMessage(playerid,ROT,"Du bist als Ballas Mitglied gespawnt.");
    return 1;
    }
    if(IsPlayerInFrak(playerid,5))
    {
    SetPlayerPos(playerid,1958.3783, 1343.1572, 15.3746);
    SendClientMessage(playerid,ROT,"Du bist als Red Soldier Mitglied gespawnt.");
    return 1;
    }
    if(IsPlayerInFrak(playerid,6))
    {
    SetPlayerPos(playerid,1958.3783, 1343.1572, 15.3746);
    SendClientMessage(playerid,ROT,"Du bist als LCN Mitglied gespawnt.");
    return 1;
    }
    return 1;
    }


    public OnPlayerDeath(playerid, killerid, reason)
    {
    return 1;
    }


    public OnVehicleSpawn(vehicleid)
    {
    return 1;
    }


    public OnVehicleDeath(vehicleid, killerid)
    {
    return 1;
    }


    public OnPlayerText(playerid, text[])
    {
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/mycommand", cmdtext, true, 10) == 0)
    {
    // Do something here
    return 1;
    }
    return 0;
    }


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    return 1;
    }


    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    return 1;
    }


    public OnPlayerEnterCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerEnterRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnRconCommand(cmd[])
    {
    return 1;
    }


    public OnPlayerRequestSpawn(playerid)
    {
    return 1;
    }


    public OnObjectMoved(objectid)
    {
    return 1;
    }


    public OnPlayerObjectMoved(playerid, objectid)
    {
    return 1;
    }


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    return 1;
    }


    public OnVehicleMod(playerid, vehicleid, componentid)
    {
    return 1;
    }


    public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
    {
    return 1;
    }


    public OnVehicleRespray(playerid, vehicleid, color1, color2)
    {
    return 1;
    }


    public OnPlayerSelectedMenuRow(playerid, row)
    {
    return 1;
    }


    public OnPlayerExitedMenu(playerid)
    {
    return 1;
    }


    public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
    {
    return 1;
    }


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    return 1;
    }


    public OnRconLoginAttempt(ip[], password[], success)
    {
    return 1;
    }


    public OnPlayerUpdate(playerid)
    {
    return 1;
    }


    public OnPlayerStreamIn(playerid, forplayerid)
    {
    return 1;
    }


    public OnPlayerStreamOut(playerid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamIn(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamOut(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,ROT,"Du hast den Login Vorgang abgebrochen und wirst deshalb vom Server gekickt!");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    SendClientMessage(playerid,ROT,"Dein angegebenes Passwort war nicht lang genug!");
    return 1;
    }
    else
    {
    Login(playerid,(inputtext));
    return 1;
    }
    }
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,ROT,"Du hast den Registrierungs Vorgang abgebrochen und wirst deshalb vom Server gekickt!"); //Nachricht
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,GRÜN,"Dein eingegebenes Passwort war nicht lang genug!"); //Wenn er wieder nichts eingibt
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrierung","Willkommen auf meinem Server\n bitte gib nun dein gewünschtes Passwort ein","Register","Abbrechen"); //Dann Dialog erneut anzeigen....
    return 1;
    }
    else
    {
    Register(playerid,(inputtext));
    }
    }
    }
    return 1;
    }


    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    return 1;
    }

    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login Vorgang","Das angegebene Passwort war leider falsch!\nBitte gib nun unten dein richtiges Passwort ein! ","LogIn", "Abbrechen");
    }
    das { unten wegdenken

    //LOGIN//
    stock Login(playerid,key[])
    {
    new Spielerdatei[128];
    new string2[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    SpielerLaden(playerid);
    SendClientMessage(playerid,GRÜN,"Du hast dich erfolgreich eingeloggt.");
    format(string2,sizeof(string2),"[Join] %s hat den Server betreten",SpielerName(playerid));
    SendClientMessageToAll(GRÜN,string2);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login Vorgang","Das angegebene Passwort war leider falsch!\nBitte gib nun unten dein richtiges Passwort ein! ","LogIn", "Abbrechen");
    }
    return 1;
    }

    hier die scriptstelle
    //LOGIN//
    stock Login(playerid,key[])
    {
    new Spielerdatei[128];
    new string2[128];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    SpielerLaden(playerid);
    SendClientMessage(playerid,GRÜN,"Du hast dich erfolgreich eingeloggt.");
    format(string2,sizeof(string2),"[Join] %s hat den Server betreten",SpielerName(playerid));
    SendClientMessageToAll(GRÜN,string2);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login Vorgang","Das angegebene Passwort war leider falsch!\nBitte gib nun unten dein richtiges Passwort ein! ","LogIn", "Abbrechen");
    }
    return 1;
    }



    Fehler:


    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : error 029: invalid expression, assumed zero
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : warning 215: expression has no effect
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : warning 215: expression has no effect
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : warning 215: expression has no effect
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : warning 215: expression has no effect
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : warning 215: expression has no effect
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : error 001: expected token: ";", but found ")"
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : error 029: invalid expression, assumed zero
    C:\Users\Marvin\Desktop\samp03e_svr_R2_win32\gamemodes\Roleplay.pwn(52) : fatal error 107: too many error messages on one line



    Frage:
    Warum?

    if (strcmp("/wanteds", cmdtext , true, 10) == 0)
    {
    new string[64];
    if(sSpieler[playerid][WantedLevel]==0) return SendClientMessage(playerid, Rot,"Du hast keine Wanteds");
    sSpieler[playerid][WantedLevel] = WantedLevels;
    format(string, sizeof(string), "Dein aktuelles WantedLevel beträgt %i", WantedLevels);
    SendClientMessage(playerid, Rot, string);
    }


    Ich habs jetzt so geregelt

    so?
    if (strcmp("/wanteds", cmdtext , true, 10) == 0)
    {
    new string[64];
    format(string, sizeof(string), "Dein aktuelles WantedLevel beträgt %s", sSpieler[playerid][WantedLevel]);
    SendClientMessage(playerid, Rot, string);
    }

    also hier will ich das %s zur aktuellen wantedlevel Anzahl machen.
    if (strcmp("/wanteds", cmdtext , true, 10) == 0)
    {
    SendClientMessage(playerid, Rot,"Dein aktuelles WantedLevel beträgt %s
    }


    also er soll aus der Spieler datei WantedLevel = "Anzahl" ausgeben

    stock SpielerSpeichern(playerid)
    {
    new Spieler[64];
    new Sname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Sname,sizeof(Sname));
    format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
    if(dini_Exists(Spieler))
    {
    dini_IntSet(Spieler,"Adminlevel",sSpieler[playerid][Adminlevel]);
    dini_IntSet(Spieler,"Level",sSpieler[playerid][Level]);
    dini_IntSet(Spieler,"Fraktion",sSpieler[playerid][Fraktion]);
    dini_IntSet(Spieler,"Team",sSpieler[playerid][Team]);
    dini_IntSet(Spieler,"WantedLevel",sSpieler[playerid][WantedLevel]);
    }
    return 1;
    }



    und hier will ich jetzt weitermachen
    if(listitem == 0)//Nitro
    {
    if(!IsPlayerConnected(pVerbrecher[playerid])) return SendClientMessage(playerid, Rot,"Der Spieler ist nicht Online");
    if(sSpieler[pVerbrecher[playerid]][Fraktion] == 1) return SendClientMessage(playerid, Rot,"Der Spieler ist Beamter");
    if(sSpieler[pVerbrecher[playerid]][Fraktion] == 2) return SendClientMessage(playerid, Rot,"Der Spieler ist Beamter");
    if(sSpieler[pVerbrecher[playerid]][Fraktion] == 3) return SendClientMessage(playerid, Rot,"Der Spieler ist Beamter");
    if
    }



    geht es dann irgentwie so?
    sSpieler[pVerbrecher[playerid]][WantedLevel] = +1;

    wie könnte ich am beten wanteds speichern ?
    ich dachte mir einfach eine txt datei wo jeder name und wanted anzahl rein kommt
    gibt es noch etwas besseres oder einfacheres?