Beiträge von Dr_Ned

    Geht immer nochnicht. Hier der CMD um Team 4 zu werden:
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/Admin", cmdtext, true, 10) == 0)
    {
    if(IsPlayerAdmin(playerid))SetPlayerTeam(playerid,4);
    SendClientMessage(playerid,0xFFFFFFAA,"Du bist Admin, benimm dich");
    return 1;
    }
    return 1;
    }

    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/hunter", cmdtext, true, 10) == 0)
    {
    GetPlayerPos(playerid, x, y, z);
    if(GetPlayerTeam(playerid) == 4) CreateVehicle(425,x ,y ,z, 82, 0, 1, 50000);
    return 1;
    }
    return 1;
    }



    Ich hab ein CMD ertsllt das an meiner Position einen Hunter spawnen lässt, wenn ich das CMD eingebe kommt weder eine Fehlermeldung noch irgend was anderes, der Hunter wird auch nicht gespawnt.
    In Team 4 bin ich auch.

    Ok, jetzt funkt alles nur jetzt saved der meine Waffen und das Team nicht und nachdem ich eingeloggt bin würde ich gerne sofort spawnen und nicht erst auf den Skinauswahlbildschirm kommen, nur funkt das nicht egal wo ich das SpawnPlayer stehen habe :S




    #include <a_samp>
    #include <dini>
    #define DIALOG_LOGIN 3
    #define DIALOG_REG 4
    enum spieler_daten
    {
    wanted,
    skin,
    Float:lastx,Float:lasty,Float:lastz,
    eingeloggt,
    team,
    }
    new Spieler[MAX_PLAYERS][spieler_daten];


    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" Login-System");
    print("--------------------------------------\n");
    return 1;
    }
    public OnPlayerRequestClass(playerid, classid)
    {
    SpawnPlayer(playerid);
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    SpawnPlayer(playerid);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    SpawnPlayer(playerid);
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"/Accounts/%s.ini",pname);
    if(fexist(accFormat))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","LogIn","Abbrechen");
    SpawnPlayer(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Registrieren","Abbrechen");
    SpawnPlayer(playerid);
    }
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"/Accounts/%s.ini",pname);
    if(fexist(accFormat) && Spieler[playerid][eingeloggt])
    {
    dini_IntSet(accFormat,"wanted",Spieler[playerid][wanted]);
    dini_FloatSet(accFormat,"skin",Spieler[playerid][skin]);
    dini_FloatSet(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));
    dini_IntSet(accFormat,"Team",GetPlayerTeam(playerid));
    dini_IntSet(accFormat,"Waffen",GetPlayerWeapon(playerid));
    }
    Spieler[playerid][eingeloggt] = 0;
    Spieler[playerid][wanted] = 0;
    Spieler[playerid][skin] = 0;
    Spieler[playerid][lastx] = (0.0);
    Spieler[playerid][lasty] = (0.0);
    Spieler[playerid][lastz] = (0.0);
    Spieler[playerid][team] = 0;
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"/Accounts/%s.ini",pname);
    if(dini_Isset(accFormat,"lastx"))
    {
    SetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
    SetPlayerSkin(playerid,Spieler[playerid][skin]);SetPlayerTeam(playerid,Spieler[playerid][team]);
    }
    return 1;
    }
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    SpawnPlayer(playerid);
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"/Accounts/%s.ini",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","LogIn","Abbrechen");
    return SendClientMessage(playerid,0xFF6347AA,"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][skin] = 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"));
    SetPlayerSkin(playerid,dini_Int(accFormat,"skin"));
    SetPlayerTeam(playerid,dini_Int(accFormat,"team"));
    GivePlayerWeapon(playerid,dini_Int(accFormat,"Waffen"));

    Spieler[playerid][eingeloggt] = 1;
    SpawnPlayer(playerid); // Spieler ist nun erfolgreich eingeloggt
    SendClientMessage(playerid,0x33AA33AA,"Du wurdest erfolgreich eingeloggt.");
    SpawnPlayer(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","LogIn","Abbrechen");
    SendClientMessage(playerid,0xFF6347AA,"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","Registrieren","Abbrechen");
    return SendClientMessage(playerid,840510,"Das Passwort ist zu kurz!");
    }
    dini_Create(accFormat);
    dini_Set(accFormat,"Passwort",inputtext);
    Spieler[playerid][eingeloggt] = 1;
    SpawnPlayer(playerid);
    SendClientMessage(playerid,0x33AA33AA,"Account wurde angelegt und du wurdest eingeloggt.");
    SpawnPlayer(playerid);
    }
    }
    }
    else
    {
    switch(dialogid)
    {
    case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","LogIn","Abbrechen");
    case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Registrieren","Abbrechen");
    }
    }
    return 1;
    }

    #include <a_samp>
    #include <dini>
    #define DIALOG_LOGIN 3
    #define DIALOG_REG 4
    enum spieler_daten
    {
    wanted,
    skin,
    Float:lastx,Float:lasty,Float:lastz,
    eingeloggt
    }
    new Spieler[MAX_PLAYERS][spieler_daten];


    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" Login-System");
    print("--------------------------------------\n");
    return 1;
    }
    public OnPlayerRequestClass(playerid, classid)
    {
    SpawnPlayer(playerid);
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    SpawnPlayer(playerid);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    SpawnPlayer(playerid);
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    if(fexist(accFormat))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","LogIn","Abbrechen");
    SpawnPlayer(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Registrieren","Abbrechen");
    SpawnPlayer(playerid);
    }
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    if(fexist(accFormat) && Spieler[playerid][eingeloggt])
    {
    dini_IntSet(accFormat,"wanted",Spieler[playerid][wanted]);
    dini_FloatSet(accFormat,"skin",Spieler[playerid][skin]);
    dini_FloatSet(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][eingeloggt] = 0;
    Spieler[playerid][wanted] = 0;
    Spieler[playerid][skin] = 0;
    Spieler[playerid][lastx] = (0.0);
    Spieler[playerid][lasty] = (0.0);
    Spieler[playerid][lastz] = (0.0);
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    if(dini_Isset(accFormat,"lastx"))
    {
    SetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
    SetPlayerSkin(playerid,Spieler[playerid][skin]);
    }
    return 1;
    }
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    SpawnPlayer(playerid);
    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","LogIn","Abbrechen");
    return SendClientMessage(playerid,0xFF6347AA,"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][skin] = 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"));
    SetPlayerSkin(playerid,dini_Int(accFormat,"skin"));
    Spieler[playerid][eingeloggt] = 1;
    SpawnPlayer(playerid); // Spieler ist nun erfolgreich eingeloggt
    SendClientMessage(playerid,0x33AA33AA,"Du wurdest erfolgreich eingeloggt.");
    SpawnPlayer(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","LogIn","Abbrechen");
    SendClientMessage(playerid,0xFF6347AA,"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","Registrieren","Abbrechen");
    return SendClientMessage(playerid,840510,"Das Passwort ist zu kurz!");
    }
    dini_Create(accFormat);
    dini_Set(accFormat,"Passwort",inputtext);
    Spieler[playerid][eingeloggt] = 1;
    SendClientMessage(playerid,0x33AA33AA,"Account wurde angelegt und du wurdest eingeloggt.");
    SpawnPlayer(playerid);
    }
    }
    }
    else
    {
    switch(dialogid)
    {
    case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","LogIn","Abbrechen");
    case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Registrieren","Abbrechen");
    }
    }
    return 1;
    }


    Mein Problem ist das keine Player.datei erstellt wird wie es eigentlich sein müsste.
    Hoffe ihr könnt mir helfen.
    Dr_Ned

    Hi,
    ich hab nen Login system und wenn ich mich einlogge soll ich sofort spawnen ohne dieses Menü da am Anfang.
    Hab was gefunden das man das mit SpawnPlayer machen kann.
    Hab aber keine Ahnung wo ich das im Script reinpacken soll.


    Mein Script:
    #include <a_samp>
    #include <dini>
    #define DIALOG_LOGIN 3
    #define DIALOG_REG 4
    enum spieler_daten
    {
    wanted,
    skin,
    Float:lastx,Float:lasty,Float:lastz,
    eingeloggt
    }
    new Spieler[MAX_PLAYERS][spieler_daten];


    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" Blank Filterscript by your name here");
    print("--------------------------------------\n");
    return 1;
    }
    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    if(fexist(accFormat))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Abbrechen","Weiter");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Abbrechen","Weiter");
    }
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    if(fexist(accFormat) && Spieler[playerid][eingeloggt])
    {
    dini_IntSet(accFormat,"wanted",Spieler[playerid][wanted]);
    dini_IntSet(accFormat,"skin",Spieler[playerid][skin]);
    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][eingeloggt] = 0;
    Spieler[playerid][wanted] = 0;
    Spieler[playerid][skin] = 0;
    Spieler[playerid][lastx] = (0.0);
    Spieler[playerid][lasty] = (0.0);
    Spieler[playerid][lastz] = (0.0);
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    if(dini_Isset(accFormat,"lastx"))
    {
    SetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
    }
    return 1;
    }
    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","Abbrechen","Weiter");
    return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
    }
    if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0) // Passwort Direkt aus der Datei Laden
    {
    SpawnPlayer(playerid);
    Spieler[playerid][wanted] = dini_Int(accFormat,"wanted");
    Spieler[playerid][skin] = 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;
    SpawnPlayer(playerid); // Spieler ist nun erfolgreich eingeloggt
    SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Abbrechen","Weiter");
    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","Abbrechen","Weiter");
    return SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort ist zu kurz!");
    }
    dini_Create(accFormat);
    dini_Set(accFormat,"Passwort",inputtext);
    Spieler[playerid][eingeloggt] = 1;
    SendClientMessage(playerid,0xFFFFFFFF,"Account wurde angelegt und du wurdest eingeloggt.");
    SpawnPlayer(playerid);
    }
    }
    }
    else
    {
    switch(dialogid)
    {
    case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Abbrechen","Weiter");
    case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Abbrechen","Weiter");
    }
    }
    return 1;
    }


    Könnt ihr evtl. mal sagen wo das im Script hin muss?


    Dr_Ned

    Hi,
    ich hab mir nen script geschrieben für nen Menü
    #include <a_samp>


    #define TEST_MENU_ITEMS 6


    new Menu:Profil;
    new TestMenuStrings[6][16] = {"Geld", "Waffen", "Auto", "Test4", "Test5", "Test6"};


    HandleTestMenuSelection(playerid, row)
    {
    new s[256];


    if(row < TEST_MENU_ITEMS) {
    format(s,256,"You selected item %s",TestMenuStrings[row]);
    SendClientMessage(playerid,0xFFFFFFFF,s);
    }
    }


    InitTestMenu()
    {
    Profil = CreateMenu("Profil", 1, 200.0, 150.0, 200.0, 200.0);


    for(new x=0; x < TEST_MENU_ITEMS; x++) {
    AddMenuItem(Profil, 0, TestMenuStrings[x]);
    }
    }


    public OnFilterScriptInit()
    {
    InitTestMenu();
    }


    public OnPlayerSelectedMenuRow(playerid, row)
    {
    new Menu:PlayerMenu = GetPlayerMenu(playerid);


    if(PlayerMenu == Profil) {
    HandleTestMenuSelection(playerid, row);
    }
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(!strcmp(cmdtext, "/profil", true)) {
    ShowMenuForPlayer(Profil, playerid);
    return 1;
    }
    return 0;
    }


    So, jetzt geht das ingame aber nicht.
    Im Serverfenster steht es wäre alles geladen und im Kompiler ist auch alles ok.
    Hoffe ihr könnt mir helfen.
    Dr_Ned