Hallo alle zusammen
Ich wollte den Befehl /Roller einfügen damit man sich bis Level 2 einen Roller spawnen kann,
jetzt wollte ich euch fragen wie geht das?
Den Befehl /Roller machen bis Level 2
- Smile325
- Geschlossen
- Erledigt
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
-
-
Du fragst ab ob der Spieler unter Level 2 ist ( bei Standartgodfather über "PlayerInfo[playerid][pLevel]" )
Dann spawnst du einen Roller über CreateVehicle ( oder andere Varianten ) - und viel Spaß würde ich sagen..
Das machst du halt an deiner PosiJe nachdem würde ich noch empfehlen den Roller zu löschen wenn man den Server verlässt.
Mal ganz grob wie der Befehl aussehen könnte...
BEFEHL
{
if(PlayerInfo[playerid][pLevel] > 2) return SendClientMessage(); // über lvl 2
GetPlayerPos(playerid,x,y,z);
MeinRoller[playerid] = CreateVehicle(RollerVehicleModel, x,y,z .. );
return 1;
}//connect:
MeinRoller[playerid] = INVALID_VEHICLE_ID;//disconnect:
if(MeinRoller[playerid] != INVALID_VEHICLE_ID) {
DestroyVehicle(MeinRoller[playerid]);
} -
Und wenn er /Roller eingibt kann er den Roller wieder lösche, ich habe es schon versucht leider mit Errors die ich nicht wieder weg bekommen habe
-
Naja dann schicke mal was du hast dann kann man dir besser helfen.
-
Einfach eine Variable auf 1 setzten, wenn er einen Roller gemietet hat.
//ungetesteter Code
new Roller[MAX_PLAYERS];public OnPlayerConnect(playerid)
{
Roller[playerid] = 0; //Die Variable Roller wird auf 0 gesetzt, damit sich der Spieler einen Roller mieten kann
return 1;
}
Im Befehl sobald er den Roller mietet, es auf 1 setzten und mit folgendem Code abfragen.
if(Roller[playerid] == 0) //Spieler hat kein Roller aber mietet sich gerade einen
{
Roller[playerid] = 1; //Variable Roller wird auf 1 gesetzt und Spieler bekommt den Roller
SendClientMessage(playerid,-1,"Du hast dir einen Roller gemietet.");
}
else //Wenn Spieler schon einen Roller hat
{
SendClientMessage(playerid,-1,"Du hast bereits einen Roller.");
} -
@Shain™: unnötig
BEFEHL
{
if(PlayerInfo[playerid][pLevel] > 2) return SendClientMessage(); // über lvl 2
GetPlayerPos(playerid,x,y,z);
if(MeinRoller[playerid] != INVALID_VEHICLE_ID)DestroyVehicle(MeinRoller[playerid]);
else MeinRoller[playerid] = CreateVehicle(RollerVehicleModel, x,y,z .. );
return 1;
} -
-
H4rd_B4se: Lesen bildet, er kann sich mit deinem Code immer einen neuen Roller erstellen.
Lesen muss wohl eher du
Er hat gesagt wenn er bereits einen Roller hat, soll dieser gelöscht werden.mfg HB
-
Und wenn er /Roller eingibt kann er den Roller wieder lösche, ich habe es schon versucht leider mit Errors die ich nicht wieder weg bekommen habe
H4rd_B4se: Du verstehst eher nicht. -
@Shain™: unnötig
BEFEHL
{
if(PlayerInfo[playerid][pLevel] > 2) return SendClientMessage(); // über lvl 2
GetPlayerPos(playerid,x,y,z);
if(MeinRoller[playerid] != INVALID_VEHICLE_ID)DestroyVehicle(MeinRoller[playerid]);
else MeinRoller[playerid] = CreateVehicle(RollerVehicleModel, x,y,z .. );
return 1;
}
@Shain™: Lies es dir durch. Das was der hard base dort gemacht hat ist mein Befehl verändert. Damit sollte es nach logik funktionieren.. -
Ich habs mit ihm schon per Skype geklärt
-
Danke
-
breadfish.de
Hat das Thema geschlossen.