Skin beim Spawnen

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo,
    Ich möchte es so machen das Weibliche Spieler Einen Weiblichen skin am Spawn bekommen also beim Reallife Server und die Männlichen einen Männlichen das Login/Register System hab ich fertig und dort wird abgefragt ob der Spieler Männlich oder Weiblich ist. Wie kann ich nun den Skin setzen denn mit:
    public OnPlayerConnect(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pGeschlecht] == 0)
    {
    SetPlayerSkin(playerid,1);
    }
    else
    {
    SetPlayerSkin(playerid,10);
    }
    }
    }
    hat es nicht Funktioniert.

  • public OnPlayerConnect(playerid)
    {
    if(IsPlayerConnected(playerid))
    Das ist nicht dein ernst, oder? :|


    Wahrscheinlich ist bei OnPlayerConnect noch nichts in der Variable geschrieben worden, daher solltest du den Skin nach dem Spielerladen erst setzen. ;)

  • Ich würde es so machen:


    public OnPlayerSpawn(playerid)
    {
    if(PlayerInfo[playerid][pGeschlecht] == 0)
    {
    SetPlayerSkin(playerid,23);
    }
    else
    {
    SetPlayerSkin(playerid,40);
    }
    return 1;
    }


    So müsste es klappen :)


    #Ungetestet
    ________________________________________________________


    Zitat

    Wie kann ich abfragen ob er bereits eingeloggt ist ?


    Ganz einfach, wenn das passwort richtig eingegeben wurde, machst du einfach eine Variable z.B:

    PlayerInfo[playerid][pEingeloggt] = 1;


    Und so kannst du dann immer abfragen ob der spieler eingeloggt ist:



    if(PlayerInfo[playerid][pEingeloggt] !=1)return 1;




    MfG :thumbup:


    Mit freundlichen Grüßen
    German_ScripterHD

    Einmal editiert, zuletzt von German_ScripterHD ()

  • public OnPlayerDisconnect(playerid, reason)
    {
    new pname[MAX_PLAYER_NAME], path[200];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(path, sizeof(path), "/spieler/%s.ini", pname);


    dini_IntSet(path, "pGeschlecht", PlayerInfo[playerid][pGeschlecht]);
    dini_IntSet(path, "pAlter", PlayerInfo[playerid][pAlter]);


    PlayerInfo[playerid][pEingeloggt] = 0;
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    new pname[MAX_PLAYER_NAME], path[200];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(path, sizeof(path), "/spieler/%s.ini", pname);


    switch(dialogid)
    {
    case DIALOG_REGISTER1:
    {
    if(!response)
    {
    Kick(playerid);
    }
    else
    {
    new pwlength = strlen(inputtext);
    if(pwlength > 0)
    {


    dini_Create(path); //i
    dini_Set(path, "passwort", inputtext);
    ShowPlayerDialog(playerid, DIALOG_REGISTER2, DIALOG_STYLE_LIST, "(2/4)Geschlecht", "Männlich\nWeiblich", "Weiter", "Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_NOPW1, DIALOG_STYLE_MSGBOX, "(1/4)Registrierung", "Du Musst ein Passwort eingeben!", "Einloggen", "Abbrechen");
    }
    }
    }
    case DIALOG_REGISTER2:
    {
    if(!response)
    {
    dini_Remove(path);
    Kick(playerid);
    }
    else
    {
    dini_IntSet(path, "pGeschlecht", listitem);
    ShowPlayerDialog(playerid, DIALOG_REGISTER3, DIALOG_STYLE_INPUT, "(3/4)Dein Alter", "Gebe hier dein reales Alter ein!", "Weiter", "Abbrechen");
    }
    }
    case DIALOG_REGISTER3:
    {
    if(!response)
    {
    dini_Remove(path);
    Kick(playerid);
    }
    else
    {
    dini_Set(path, "pAlter", inputtext);
    ShowPlayerDialog(playerid, DIALOG_REGISTER4, DIALOG_STYLE_MSGBOX, "(4/4)Abgeschlossen!", "Deine Registrierung ist abgeschlossen!", "Spielen", "Tutorial");
    }
    }
    case DIALOG_REGISTER4:
    {
    if(!response)
    {
    PlayerInfo[playerid][pGeschlecht] = dini_Int(path, "pGeschlecht");
    PlayerInfo[playerid][pAlter] = dini_Int(path, "pAlter");
    PlayerInfo[playerid][pEingeloggt] = 1;
    SpawnPlayer(playerid);
    ShowPlayerDialog(playerid, DIALOG_TUT1, DIALOG_STYLE_MSGBOX,"Wilkommen zum Tutorial!","Wilklommen auf dem HashtagReallife Server!\nHier siehst du die Stadthalle. Dort kanst du zum Beispiel deinen Personalausweiß beantragen.\nDas wird aber eine weile dauern, bis er fertig ist. Also solltest du das als erstes tun.","Ok","Abbrechen");
    TogglePlayerControllable(playerid, 1);
    SetPlayerCameraPos(playerid, 1412.8979,-1669.1360,39.5469);
    SetPlayerCameraLookAt(playerid, 1412.8979,-1669.1360,39.5469);
    SetPlayerInterior(playerid, 0);
    SetPlayerVirtualWorld(playerid, 0);
    }
    else
    {
    PlayerInfo[playerid][pGeschlecht] = dini_Int(path, "pGeschlecht");
    PlayerInfo[playerid][pAlter] = dini_Int(path, "pAlter");
    PlayerInfo[playerid][pEingeloggt] = 1;
    SpawnPlayer(playerid);
    }
    }
    case DIALOG_LOGIN1:
    {
    if(!response)
    {
    Kick(playerid);
    }
    else
    {
    new pwlength = strlen(inputtext);
    if(pwlength > 0)
    {
    new pw[50];
    format(pw, sizeof(pw), "%s", dini_Get(path, "passwort"));
    if(strcmp(inputtext, pw) == 0)
    {
    PlayerInfo[playerid][pGeschlecht] = dini_Int(path, "pGeschlecht");
    PlayerInfo[playerid][pAlter] = dini_Int(path, "pAlter");
    SetSpawnInfo(playerid, 0, -1,369.6736,-2045.5717,7.6719,359.4333, 0, 0, 0, 0, 0 ,0);
    SpawnPlayer(playerid);
    PlayerInfo[playerid][pEingeloggt] = 1;
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_WRONGPW, DIALOG_STYLE_MSGBOX, "Login", "Falsches Passwort!", "Wiederholen", "Abbrechen");
    }
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_NOPW2, DIALOG_STYLE_MSGBOX, "Login", "Du musst dein Passwort eingeben!", "Einloggen", "Abbrechen");
    }
    }
    }
    case DIALOG_NOPW1:
    {
    if(!response)
    {
    Kick(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_REGISTER1, DIALOG_STYLE_INPUT, "(1/4)Registrierung", "Dein gewünschtes Passwort", "Erstellen", "Abbrechen");
    }
    }
    case DIALOG_NOPW2:
    {
    if(!response)
    {
    Kick(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_LOGIN1, DIALOG_STYLE_INPUT, "Login", "Dein Passwort:", "Einloggen", "Abbrechen");
    }
    }
    case DIALOG_WRONGPW:
    {
    if(!response)
    {
    Kick(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_LOGIN1, DIALOG_STYLE_INPUT, "Login", "Dein Passwort:", "Einloggen", "Abbrechen");
    }
    }
    }

  • Und dann muss ich eine Zeile daunter SpawnPlayer machen oder was ? Hab ich gemacht und nun bekommt man zwar nach dem Spawn Button Drücken den Skin den ich will aber warum muss ich jetz den Spawn Button Drücken ?