/setskin System

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
  • Mach dir doch ein eigenes..
    Einfach einen Befehl mit "SetPlayerSkin(playerid, skinid)" machen welcher den Skin dann in deinem Account-System speichert..



    |Signatur: |||||||||||||||||||| 25% fertig|

  • ganz genau wie du es willst kann ich es nicht.
    ich kann es nur so:


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp(cmdtext, "/setskin 0", true)==0)
    {
    SetPlayerSkin(playerid,0);
    }
    return 1;
    }


    mit /setskin 0 bekommt man den skin mit der skinid 0. du möchtes aber bestimmt so haben, das man /setskin id macht und dann die gewünschte skin id bekommt. da bin ich etwas überfragt.

  • Da du Godfather nutzt nimm diesen ;) :


    if(strcmp(cmd, "/setskin", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "BENUTZUNG: /setskin [playerid/PartOfName] [SkinID]");
    return 1;
    }
    new playa;
    new skin;
    playa = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    skin = strval(tmp);
    if (PlayerInfo[playerid][pAdmin] >= 1337)
    {
    if(IsPlayerConnected(playa))
    {
    if(playa != INVALID_PLAYER_ID)
    {
    PlayerInfo[playa][pModel] = skin;
    PlayerInfo[playa][pChar] = skin;
    SetPlayerSkin(playa, PlayerInfo[playa][pChar]);
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du darf diesen Command nicht benutzen!");
    }
    }
    return 1;
    }



    |Signatur: |||||||||||||||||||| 25% fertig|

  • Dankeschön habe aber folgendes Problem.
    Ich hab adminlevel net playerinfo..


    Wenn ich PlayerInfo mache kommen diese Errors:
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5085) : error 017: undefined symbol "PlayerInfo"
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5085) : warning 215: expression has no effect
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5085) : error 001: expected token: ";", but found "]"
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5085) : error 029: invalid expression, assumed zero
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5085) : fatal error 107: too many error messages on one line


    Wenn ich adminlevel mache kommen dieser Errors:
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5091) : warning 215: expression has no effect
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5091) : error 001: expected token: ";", but found "["
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5091) : error 029: invalid expression, assumed zero
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5091) : error 017: undefined symbol "pModel"
    C:\Users\mein\Desktop\DM script\CopsVSTerrorists\gamemodes\COD5.pwn(5091) : fatal error 107: too many error messages on one line


    Die Zeilen sehen so aus:
    adminlevel[playa][pModel] = skin;
    adminlevel[playa][pChar] = skin;
    SetPlayerSkin(playa, PlayerInfo[playa][pChar]);

  • if(strcmp(cmd, "/setskin", true) == 0)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_RED, "BENUTZUNG: /setskin [playerid] [skinId]");
    return 1;
    }
    new id = ReturnUser(tmp);
    if(IsPlayerConnected(id))
    {
    tmp = strtok(cmdtext,idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_RED, "BENUTZUNG: /setskin [playerid] [SkinId]");
    return 1;
    }
    new skin = strval(tmp);
    SetPlayerSkin(id, skin);
    SendClientMessage(playerid, COLOR_RED, "Skin wurde geändert!");
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Spieler wurde nicht gefunden!");
    }
    }
    return 1;
    }


    So solte es gehen ;)