Beiträge von Eddy

    Versuch es mal mit einem Timer der jede 2-3 Minuten die Anzeige resettet.


    //Edit 1.


    Wenn du den Code richtig einrücken willst, mache es als Quellcode und dann Pwn ^^

    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;
    }