Restricted Skins

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


    Ich habe mir vor einiger Zeit eine Skinauswahl erbastelt. Nun möchte ich für diese Auswahl einige Skins "restricten", also verbieten.
    Die Skins habe ich in folgendem Array gespeichert:

    Klickstdu hier!
    new GangSkins[105] = {11,30,46,47,48,59,68,70,71,80,81,91,93,98,100,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,141,142,147,150,
    155,163,164,165,166,167,171,172,173,174,175,185,186,187,189,194,203,204,205,209,220,221,222,223,233,240,247,248,253,254,255,265,266,267,268,269,270,271,272,273,274,275,276,277,278,
    279,280,281,282,283,284,285,286,287,288,292,293,294,295,297,299};


    Hier ist mein OnPlayerClickTextDraw-Code:
    public OnPlayerClickTextDraw(playerid,Text:clickedid)
    {
    if(clickedid == Skinselect1) {
    if(GetPlayerSkin(playerid) == 1){
    SetPlayerSkin(playerid,299);
    } else {
    SetPlayerSkin(playerid,GetPlayerSkin(playerid)-1);
    }
    }
    if(clickedid == Skinselect2) {
    if(GetPlayerSkin(playerid) == 299){
    SetPlayerSkin(playerid,1);
    } else {
    SetPlayerSkin(playerid,GetPlayerSkin(playerid)+1);
    }
    }
    if(clickedid == Skinselect3) {
    CancelSelectTextDraw(playerid);
    SpawnPlayer(playerid);
    }
    return 1;
    }


    Wie kann ich dies nun tun?


    lg
    Deagle.

  • if(clickedid == Skinselect3) {
    new skin = GetPlayerSkin(playerid);
    for(new i=0; i<sizeof(GangSkins); i++)
    {
    if(skin == GangSkins[i])
    {
    SendClientMessage(playerid, 0xFF0000FF, "Diesen Skin darfst du nicht nehmen.");
    return 1;
    }
    }
    CancelSelectTextDraw(playerid);
    SpawnPlayer(playerid);
    }


    Oder wilst du, dass man sie erst gar nicht sehen kann?

  • public OnPlayerClickTextDraw(playerid,Text:clickedid)
    {
    if(clickedid == Skinselect1)
    {
    if(GetPlayerSkin(playerid) == 1)
    {
    SetPlayerSkin(playerid,299);
    }
    else
    {
    new skin = GetPlayerSkin(playerid)-1;
    for(new i=0; i<sizeof(GangSkins); i++)
    {
    if(GangSkins[i] == skin)
    {
    skin--;
    if(skin < 1) skin = 299;
    i = 0;
    }
    }
    SetPlayerSkin(playerid,skin);
    }
    }
    if(clickedid == Skinselect2)
    {
    if(GetPlayerSkin(playerid) == 299)
    {
    SetPlayerSkin(playerid,1);
    }
    else
    {
    new skin = GetPlayerSkin(playerid)+1;
    for(new i=0; i<sizeof(GangSkins); i++)
    {
    if(GangSkins[i] == skin)
    {
    skin++;
    if(skin > 299) skin = 1;
    i = 0;
    }
    }
    SetPlayerSkin(playerid,skin);
    }
    }
    if(clickedid == Skinselect3)
    {
    CancelSelectTextDraw(playerid);
    SpawnPlayer(playerid);
    }
    return 1;
    }


    Versuch es mal so.