Hey Leute,
also ich bin noch eher neu im "scripten" und habe eine Frage die den Befehl "/forceskin ID" betrifft, der im Godfather bereits vorhanden ist. Also ich habe den Befehl etwas verändert damit er auch als Leader einer Fraktion verwendet werden kann und wenn ich nun "/forceskin ID"(mit meiner ID) komme ich zwar zur Skin Auswahl (Dürfte jeder kennen, da wo man hinkommt wenn man jemanden /invitet) aber dort sind immer die selben 5 Skins, die nebenbei zur Yakuza (FraktionsID = 6) gehören. Das Problem ist deshalb dass ich immer zu den 5 besagten Skins komme, egal bei welcher Fraktion ich Leader bin. (La Cosa Nostra, FBI, Army, LSPD etc.)
Es sind die folgenden 5 Skins.
1.) 122 | 2.) 123 | 3.) 169 | 4.) 186 | 5.) 228
Und zu guter Letzt noch der Code von dem Befehl:
if(strcmp(cmd, "/forceskin", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /forceskin [playerid/PartOfName]");
return 1;
}
new para1;
para1 = ReturnUser(tmp);
if (PlayerInfo[playerid][pAdmin] >= 4)
{
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
if(PlayerInfo[para1][pMember] < 1 || PlayerInfo[para1][pLeader] < 1)
{
SendClientMessage(playerid, COLOR_GREY, " That player is not in a Family / Force !");
return 1;
}
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* You are forced to Change your Skin by Admin %s.", sendername);
SendClientMessage(para1, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* You have forced %s To change his Skin.", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
if(PlayerInfo[para1][pMember] == 1) { PlayerInfo[para1][pTeam] = 5; ChosenSkin[para1] = 59; }
else if(PlayerInfo[para1][pMember] == 2) { PlayerInfo[para1][pTeam] = 6; ChosenSkin[para1] = 121; }
else if(PlayerInfo[para1][pMember] == 3) { PlayerInfo[para1][pTeam] = 7; ChosenSkin[para1] = 98; }
else if(PlayerInfo[para1][pMember] == 4) { PlayerInfo[para1][pTeam] = 8; ChosenSkin[para1] = 46; }
else if(PlayerInfo[para1][pMember] == 5) { PlayerInfo[para1][pTeam] = 9; ChosenSkin[para1] = 290; }
else if(PlayerInfo[para1][pMember] == 6) { PlayerInfo[para1][pTeam] = 2; ChosenSkin[para1] = 280; }
else if(PlayerInfo[para1][pMember] == 7) { PlayerInfo[para1][pTeam] = 4; ChosenSkin[para1] = 164; }
else if(PlayerInfo[para1][pMember] == 8) { PlayerInfo[para1][pTeam] = 10; ChosenSkin[para1] = 186; }
else { return 1; }
SetPlayerInterior(para1,0);
new rand = random(sizeof(gInviteSpawns));
SetPlayerPos(para1, gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]); // Warp the player
SetPlayerFacingAngle(para1, gInviteSpawns[rand][3]);
SetPlayerCameraPos(para1,gInviteSpawns[rand][0] + 3, gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
SetPlayerCameraLookAt(para1,gInviteSpawns[rand][0], gInviteSpawns[rand][1], gInviteSpawns[rand][2]);
TogglePlayerControllable(para1, 0);
SelectChar[para1] = 255;
SelectCharID[para1] = PlayerInfo[para1][pMember];
SelectCharPlace[para1] = 1;
PlayerInfo[para1][pModel] = ChosenSkin[para1];
PlayerInfo[para1][pChar] = ChosenSkin[para1];
SendClientMessage(para1, COLOR_LIGHTRED, "* Use 'next' to Select the char you want to use.");
SendClientMessage(para1, COLOR_LIGHTRED, "* If you've found the Char you want to use, type 'done'.");
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
}
return 1;
}
PS: Ich hoffe das mir einer helfen kann das Problem zu lösen. Die SuFu habe ich benutzt und leider nichts brauchbares gefunden.
Mfg