Problem mit Skinauswahlsystem

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
  • Hi,


    ich habe ein Problem mit meinem Skinauswahlsystem.
    Alle Skins werden nicht dargestellt außer dem von CJ und The Truth (Hippie), also Skin ID 0 und 1


    Hier ist der Code von dem ich vermute das er den Fehler verursacht:



    new Skinchange[MAX_PLAYERS];


    public OnPlayerConnect(playerid)
    {
    Skinchange[playerid] = 0;
    return 1;
    }


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(newkeys & KEY_SECONDARY_ATTACK)
    {
    if(Skinchange[playerid] == 1)
    {
    Skinchange[playerid]=0;
    SetCameraBehindPlayer(playerid);
    SpawnPlayer(playerid);
    TogglePlayerControllable(playerid, 1);
    }
    }

    if(newkeys == KEY_SPRINT)
    {
    if(Skinchange[playerid] == 1)
    {
    if(GetPlayerSkin(playerid) == 1)
    {
    SetPlayerSkin(playerid,299);
    }
    new Skin[MAX_PLAYERS];
    Skin[playerid]--;
    SetPlayerSkin(playerid, Skin[playerid]);
    GetPlayerSkin(playerid);
    }
    }
    if(newkeys == KEY_JUMP)
    {
    if(Skinchange[playerid] == 1)
    {
    if(GetPlayerSkin(playerid)==299)
    {
    SetPlayerSkin(playerid,1);
    }
    new Skin[MAX_PLAYERS];
    Skin[playerid]++;
    SetPlayerSkin(playerid, Skin[playerid]);
    GetPlayerSkin(playerid);
    }
    }
    return 1;
    }


    Ich hoffe ihr könnt mir weiterhelfen.


    Mit freundlichem Gruß
    Domain

  • Ahh, na dann. :)


    Versuche es so:
    new Skin[MAX_PLAYERS];
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(newkeys & KEY_SECONDARY_ATTACK)
    {
    if(Skinchange[playerid] == 1)
    {
    Skinchange[playerid]=0;
    SetCameraBehindPlayer(playerid);
    SpawnPlayer(playerid);
    TogglePlayerControllable(playerid, 1);
    }
    }

    if(newkeys == KEY_SPRINT)
    {
    if(Skinchange[playerid] == 1)
    {
    if(Skin[playerid] == 0) Skin[playerid] = 299;
    else Skin[playerid]--;
    SetPlayerSkin(playerid, Skin[playerid]);
    }
    }
    if(newkeys == KEY_JUMP)
    {
    if(Skinchange[playerid] == 1)
    {
    if(Skin[playerid] == 299) Skin[playerid] = 0;
    else Skin[playerid]++;
    SetPlayerSkin(playerid, Skin[playerid]);
    }
    }
    return 1;
    }