Hallo,
Ich habe eine Frage: Und zwar wenn ich auf Weiter klicke,
wechselt er nur einmal den Skin, dann kann ich so oft auf Weiter
klicken wie ich will und es kommt immer wieder der gleiche Skin.
Das selbe gilt auch für den Zurück Textdraw. Das heißt ich kann nur zwischen
2 Skins auswählen, auf den 3. komme ich gar nicht und ich kann wie gesagt
nur einmal auf Weiter klicken und einmal auf Zurück, dann bleiben die Skins gleich.
Der Code
new Terrorskins[3][1] =
{
{220},
{221},
{222}
};
new LSPDskins[3][1] =
{
{265},
{266},
{267}
};
new Text:SkinauswahlWeiter;
new Text:SkinauswahlZurueck;
new Text:SkinauswahlFertig;
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
//Skinauswahl
if(clickedid == SkinauswahlWeiter)
{
// Zivilist
if(Spieler[playerid][g_TEAM] == 900)
{
if(GetPlayerSkin(playerid) == 0){ SetPlayerSkin(playerid,0);}
}
// Ls Polizei
if(Spieler[playerid][g_TEAM] == 901)
{
if(GetPlayerSkin(playerid) == LSPDskins[0][0]){ SetPlayerSkin(playerid,LSPDskins[1][0]);}
if(GetPlayerSkin(playerid) == LSPDskins[1][0]){ SetPlayerSkin(playerid,LSPDskins[2][0]);}
if(GetPlayerSkin(playerid) == LSPDskins[2][0]){ SetPlayerSkin(playerid,LSPDskins[0][0]);}
}
// Terroristen
if(Spieler[playerid][g_TEAM] == 902)
{
if(GetPlayerSkin(playerid) == Terrorskins[0][0]){ SetPlayerSkin(playerid,Terrorskins[1][0]);}
if(GetPlayerSkin(playerid) == Terrorskins[1][0]){ SetPlayerSkin(playerid,Terrorskins[2][0]);}
if(GetPlayerSkin(playerid) == Terrorskins[2][0]){ SetPlayerSkin(playerid,Terrorskins[0][0]);}
}
}
if(clickedid == SkinauswahlZurueck)
{
// Zivilist
if(Spieler[playerid][g_TEAM] == 900)
{
if(GetPlayerSkin(playerid) == 0){ SetPlayerSkin(playerid,0);}
}
// Ls Polizei
if(Spieler[playerid][g_TEAM] == 901)
{
if(GetPlayerSkin(playerid) == LSPDskins[2][0]){ SetPlayerSkin(playerid,LSPDskins[1][0]);}
if(GetPlayerSkin(playerid) == LSPDskins[1][0]){ SetPlayerSkin(playerid,LSPDskins[0][0]);}
if(GetPlayerSkin(playerid) == LSPDskins[0][0]){ SetPlayerSkin(playerid,LSPDskins[2][0]);}
}
// Terroristen
if(Spieler[playerid][g_TEAM] == 902)
{
if(GetPlayerSkin(playerid) == Terrorskins[2][0]){ SetPlayerSkin(playerid,Terrorskins[1][0]);}
if(GetPlayerSkin(playerid) == Terrorskins[1][0]){ SetPlayerSkin(playerid,Terrorskins[0][0]);}
if(GetPlayerSkin(playerid) == Terrorskins[0][0]){ SetPlayerSkin(playerid,Terrorskins[2][0]);}
}
}
if(clickedid == SkinauswahlFertig)
{
if(Spieler[playerid][inFraktionSkinauswahl] == 1)
{
Spieler[playerid][inFraktionSkinauswahl] = 0;
TogglePlayerControllable(playerid,1);
TextDrawHideForPlayer(playerid,SkinauswahlWeiter);
TextDrawHideForPlayer(playerid,SkinauswahlZurueck);
TextDrawHideForPlayer(playerid,SkinauswahlFertig);
SpawnPlayerToBase(playerid);
CancelSelectTextDraw(playerid);
}
else
{
TogglePlayerControllable(playerid,1);
TextDrawHideForPlayer(playerid,SkinauswahlWeiter);
TextDrawHideForPlayer(playerid,SkinauswahlZurueck);
TextDrawHideForPlayer(playerid,SkinauswahlFertig);
CancelSelectTextDraw(playerid);
SetCameraBehindPlayer(playerid);
}
}
return 1;
}
//////////////Skinauswahl
stock Skinauswahl(playerid)
{
// Zivilist
if(Spieler[playerid][g_TEAM] == 900) SetPlayerSkin(playerid,0);
// Ls Polizei
if(Spieler[playerid][g_TEAM] == 901) SetPlayerSkin(playerid,LSPDskins[0][0]);
// Terroristen
if(Spieler[playerid][g_TEAM] == 902) SetPlayerSkin(playerid,Terrorskins[0][0]);
SetPlayerPos(playerid,209.7163,-33.8716,1001.9297);
SetPlayerFacingAngle(playerid,144.5372);
SetPlayerInterior(playerid,1);
SetPlayerVirtualWorld(playerid,playerid);
SetPlayerCameraPos(playerid,206.3390045166,-37.773719787598,1003.9444580078);
SetPlayerCameraLookAt(playerid,209.7163,-33.8716,1001.9297);
TogglePlayerControllable(playerid,0);
TextDrawShowForPlayer(playerid,SkinauswahlWeiter);
TextDrawShowForPlayer(playerid,SkinauswahlZurueck);
TextDrawShowForPlayer(playerid,SkinauswahlFertig);
SelectTextDraw(playerid,0x505050FF);
return 1;
}