Hallo :).
Ich habe eine Frage, und zwar möchte ich gerne das wenn ein Spieler z.B. in eine Gang eingeladen wird in der Skinauswahl landet, dann aber nurnoch die zur Gang zugehörigen Skins auswählen kann. Könnte mir jemand sagen wie man das macht?
Hallo :).
Ich habe eine Frage, und zwar möchte ich gerne das wenn ein Spieler z.B. in eine Gang eingeladen wird in der Skinauswahl landet, dann aber nurnoch die zur Gang zugehörigen Skins auswählen kann. Könnte mir jemand sagen wie man das macht?
wenn du mit dini arbeitest
enum spieler_daten//oder wie du das halt definiert hast
{
skin,
}
public OnPlayerSpawn(playerid)
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"%s.datei",pname);
SetPlayerSkin(playerid, //skinid));
{
}
if(Spieler[playerid][team] == 1) //team polizei
{
SetPlayerPos(playerid, 199.4538,168.0576,1003.0234 );
SetPlayerInterior(playerid, 3);
}
sollte funken
du kannst dir gerne mal mein tut "fraktion scripten non gf" anschauen
[ SCRIPTING ] Fraktionen Scripten NoN-Gf
Ich glaub du hast mich nicht ganz verstanden :D.
Was ich möchte ist, das wenn der Spieler die Einladung in eine Gang akzeptiert, in der Skinauswahl landet und sich einen Skin raussuchen kann der ihm gefällt.
achso...sorry da kann ich dir leider auch nicht helfen
Erstelle doch einen Befehl, zum Beispiel "/inviteannehmen".
Du prüfst ob ein Invite von einem Leader gesendet wurde und portest den Spieler dann zur Skinauswahl.
Also nochmal :D.
Der springende Punkt ist, das in der Skinauswahl nur die Skins sein sollen die ich der Gang zuordne, in die der Spieler eingeladen worden ist ;). (Gang: Ballas = SKIN1, SKIN2 usw...; Gang: Grove = SKIN3, SKIN4 usw...)
Wie mache ich das?
if team_ballas (setplayerskin, skinid) ????
Was willst du mit den fetzen Script bezwingen?
Wenn du deine Auswahl ändern willst, mache dir deine eigene. Oder ein Klamottenladen/Garderobe, Wo man nachträglich sein Skin je nach Fraktion/Team ändern kann.
if team_ballas (setplayerskin, skinid) ????
Ich rede von einer Skinauswahl, also mehrere Skins zur Auswahl haben.
ZitatWenn du deine Auswahl ändern willst, mache dir deine eigene. Oder ein Klamottenladen/Garderobe, Wo man nachträglich sein Skin je nach Fraktion/Team ändern kann.
Meine Frage ist ja, wie genau ich das mache :D.
Mal paar Tipps :
SetPlayerPos
SetPlayerCameraPos
SetPlayerCameraLookAt
Eine Variable in der du speicherst bei welchem Skin er in der Auswahl ist
OnPlayerKeyStateChange
if(newkeys == Taste)
http://wiki.sa-mp.com/wiki/GetPlayerKeys
if(Variable == 1)
SetPlayerSkin(Skin1...)
Variable++;
else if(Variable == 2)
SetPlayerSkin(Skin2...)
Variable++;
else if(Variable == 3)
SetPlayerSkin(Skin3...)
Variable = 1;
Vielen Dank für das gute Tutorial,jetzt habe sogar ich es verstanden
Hallo,
hast du Godfather. (Die Frage war ernst gemeint da die meisten es immer falch posten)
wenn ja unter OnPlayerText ist nen Abschnitt mit der Skinwahl.
Da einfach bei der jeweiligen Fraktion SetPlayerSkin(playerid, Skinid); drunter schreiben.
ansonsten sollte so gehen.
RottenApple seine Idee benutzen obwohl das auch viel zu viel Code ist das geht einfacher.
Variabel setzen.
Wenn er bei der Skin Wahl nach Links blättert -1 rechnen und bei -1 ist die Variable auf (Die Zahl wieviele Fraktion Skins es gibt) setzen. Und bei Rechts +1 setzen sollte er hier 1 mehr als wieviele Skins es gibt setzen die Variable wieder auf 0 setzen. Am besten mit
if(Variable > sizeof(Die SKins die in einer Variable definiert sind))Variable = 0;
MFG RFT
Ok danke für die Ideenansätze, ich probier mal ein bisschen rum :).
Und nein ich habe kein Godfather ;).
PS:
Zitatif(Variable == 1)
SetPlayerSkin(Skin1...)
Variable++;
else if(Variable == 2)
Geht das ganze nicht auch ohne zichtrilliarden if-Bedingungen?
//Edit
Danke RFT, ich probiers gleich mal
Ich würd auch gern wissen wie das klappt!
Wo ichs gerade so probieren wollte merke ich das mir das fast überhaupt nichts geholfen hat :D.
Kann mir das jemand etwas besser erkären?
Und nochmal zum verständnis, wird ein Spieler ins LSPD eingeladen soll er in eine Skinauswahl kommen in er NUR zwischen verschiedenen LSPD-Skins wechseln kann.
Bis jetzt bin ich hier:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(Skinauswahl[playerid]==1) // Definition das der Spieler in der Auswahl landet
{
if(newkeys==KEY_LEFT)
{
if(AusgewaehlterSkin[playerid]<0) // << Ist die Variabel, die ich erstellen sollte
{
AusgewaehlterSkin[playerid]=2;
}
else
{
AusgewaehlterSkin[playerid]--;
}
}
else if(newkeys==KEY_RIGHT)
{
if(AusgewaehlterSkin[playerid]>sizeof(AusgewaehlterSkin))AusgewaehlterSkin[playerid]=0;
else
{
AusgewaehlterSkin[playerid]++;
}
}
}
return 1;
}
Wie mache ich nun weiter?
KEY_LEFT und KEY_RIGHT
gehen nicht^^
Du musst das unter OnPlayerUpdate prüfen
mit GetPlayerKeys(playerid, &keys, &updown, &leftright) machen
Das war nicht meine Frage aber danke für den Hinweis