Beiträge von Eddy

    Ich erkläre es dir mal.



    zum Scripting
    Im Script gehen wir zu dem public OnPlayerRequestClass .

    PAWN Quelltext
    1
    2
    3
    4
    public OnPlayerRequestClass(playerid, classid)
    {
    return 1;
    }



    Dort machen wir dann die SpawnInfo mit SetSpawnInfo.

    PAWN Quelltext
    1
    SetSpawnInfo(playerid);



    Dieses Feld muss nun noch Ausgefüllt werden.

    PAWN Quelltext
    1
    SetSpawnInfo(playerid,0,SKIN-ID,X-Koordinate,Y-Koordinate,Z-Koordinate,0,WAFFE1,WAFFE1_AMMO);


    Was bedeutet das Alles ?
    SKIN-ID = Diesen Skin haben die Spieler beim Spawnen.
    X-,Y- & Z-Koordinate = Die X,Y & Z Koordinaten die per /save gesaved wurden.
    WAFFE1 = Welche Waffe soll de Spieler haben ? (WeaponID-List:
    Gunlist ) ist dieser Wert auf 0, so bekommt er keine Waffe.
    WAFFE1_AMMO = Die Munition der Waffe1, falls der Spieler eine bekommt.Ansonst den Wert auf 0 setzen.



    Bei mir sieht das Ganze dann so aus:

    PAWN Quelltext
    1
    SetSpawnInfo(playerid,0,26,1958.3783,1343.1572,15.3746,0,29,999,0,0,0,0);



    Das ganze System kann man auch über ein Random-Skinsystem laufen lassen.
    Dafür ganz oben im Script:

    PAWN Quelltext
    1
    new spawnskins[20] = {26,2,7,18,19,20,21,22,23,24,25,30,47,48,50,51,52,66,67,73};//Spawnskins kann umbenannt werden ! Die Zahl in den eckigen klammern MUSS mit der Anzahl aller Skins übereinstimmten !


    Und bei SetSpawnInfo muss dann Folgendes geändert werden:

    PAWN Quelltext
    1
    SetSpawnInfo(playerid,0,26,1958.3783,1343.1572,15.3746,0,29,999,0,0,0,0);


    zu

    PAWN Quelltext
    1
    SetSpawnInfo(playerid,0,spawnskins[random(sizeof(spawnskins))],1958.3783,1343.1572,15.3746,0,29,999,0,0,0,0);



    am Ende in den Public noch ein

    PAWN Quelltext
    1
    SpawnPlayer(playerid);



    Am Ende würde es so aussehen:
    Mit Random !

    PAWN Quelltext
    1
    2
    3
    4
    5
    6
    public OnPlayerRequestClass(playerid, classid)
    {
    SetSpawnInfo(playerid,0,spawnskins[random(sizeof(spawnskins))],1958.3783,1343.1572,15.3746,0,29,999,0,0,0,0);
    SpawnPlayer(playerid);
    return 1;
    }


    Ohne Random:

    PAWN Quelltext
    1
    2
    3
    4
    5
    6
    public OnPlayerRequestClass(playerid, classid)
    {
    SetSpawnInfo(playerid,0,SKINID,1958.3783,1343.1572,15.3746,0,29,999,0,0,0,0);
    SpawnPlayer(playerid);
    return 1;
    }



    //Edit 1. Verbessert.

    Hey Leute, wie erstelle ich eine Dialog wo mann angeben muss, ob man Männlich oder Weiblich ist?? und außerdem noch wie Alt man ist. Ich arbeite mit enum und habe das so.


    #define DIALOG_SEX 3 // Steht für das Geschlecht.
    #define DIALOG_ALTER 4 // Ist das Alter des Spielers.


    enum pInfo
    {
    Level,
    Adminlevel,
    Fraktion,
    pLeader,
    pMember,
    Sex,
    Alter
    }
    new Spieler[MAX_PLAYERS][pInfo];



    Würde mich echt über eine Hilfreiche antwort freuen.


    MfG: Eddy

    Mach es mal so!!



    if(dialogid==DIALOG_ALTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,GELB,"Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Alters Abfrage","Gib bitte das gewünschte Alter ein:","Register","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;
    }
    }
    }
    return 0;
    }



    //Edit 1. Fehler behoben.

    Übung macht den Meister, ich habe vor 1 Monat auch nicht gewusst wie man ein Register/Login System macht. Dann habe ich mir paar Tutorials angeguckt, jetzt kann ich es auswendig ^^. Das ist so, als würdest du für eine Mathearbeit lernen ^^ einfach alles merken und wiederholen. [ SCRIPTING ] Register/Login System mit PVar Ich empfehle dir das Tutorial ist sehr simple.

    Mach es mal so.



    stock Register(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid,BLAU,"Erfolgreich registriert.");
    SetPlayerScore(playerid,0);
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    stock Login(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    LoadAccount(playerid);
    SendClientMessage(playerid,COLOR_GREEN,"Erfolgreich eingeloggt.");
    return 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Falsches Passwort.");
    ShowPlayerDialog(playerid,DIA_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde in unserer Datenbank gefunden!\nBitte gib nun unten dein PASSWORT ein:","Login","Abbrechen");
    return 1;
    }
    }


    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
    if(GetPVarInt(playerid,"Baned")==1)
    {
    SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    }
    return 1;
    }


    stock SpielerName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;
    }

    Wo bekomme ich die neuen Objecte her?? Ich suche schon die ganze Zeit :pinch: . Wieso kann MTA nicht so ein Hammer update machen und das man auch damit Häuser entfernen kann und auch die neuen Objecte dort sind. :evil:

    Unter OnGamemodeInit


    DisableInteriorEnterExits();

    Was soll das Bringen?? Damit entfernst du nur die Standart eingänge.


    @Mehmet.


    Such mal im Script nach " new LSPDENTER " oder etwas in der Art.
    Weil es ein erstelltes Pickup ist.


    //Edit. 1. Vergessen.
    //Edit 2. Rechtschreibung

    Und wenn du das new lspdenter entfernt hast, schaust du bei OnGameModeInit, nach den selben Namen nur da muss stehen. lspdenter=CreatePickup........
    Danach gehst du unter OnPlayerPickupPickup, und suchst, if(pickupid==lspdenter)und das auch löschen ;) .




    MfG: Eddy

    Kann es sein das dich da jemand Reingelegt hat??.... Er sagt ja das ein Passwort fehlt, und das wurde vielleicht mit einem Filterscript gemacht, halt so wie ein Sicherheitssystem. An deiner Stelle würde ich den Verkäufer nochmal ansprechen das er dir das zum Laufen bringen soll. Wenn er es ablehnt, hat er dich auf gut Deutsch "Verarscht".