Wie bekomme ich es hin am zivispawn ein /roller befehl zu machen? Das ein Roller Spawnt alles weitere kan ich selber machen
/roller
- DayNight
- Geschlossen
- Erledigt
In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
-
-
AddStaticVehicleEx(ID, X,Y,Z,A,Color1, Color2, RespawnDelay);
-
if(isplayerinrangeofpoint(playerid,reichweite,x,y,z))
{
CreateVehicle...
}
else
{
SendClientMessage(playerid,FARBE,"Du bist nicht in der nähe vom Zivispawn!");
}...
denke ich mir mal (frei aus dem kopf) -
if(strcmp(cmd, "/roller", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,5.0,xxxxxxxxxxxxxxxxxxxxxxxx))
{
CreateVehicle(462,x,y,z,0,0,1,-1);
}
else
{
SendClientMessage(playerid, COLOR_ORANGE, "Du bist nicht am ZiviSpawn!");
}
}so?
-
Jo, sollte funktionieren brauchst halt noch
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X,Y,Z); -
if(IsPlayerInRangeOfPoint(playerid,5.0,xxxxxxxxxxxxxxxxxxxxxxxx))
Die Abfrage ist da ob er in eine Bestimmte Posion ist! Wenn es nur an eine Posision gehn soll dann Ja, Sonst die weg lassen!//e Frei aus dem Kopf
if(strcmp(cmd, "/roller", true) == 0)
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid,X,Y,Z);
CreateVehicle(FahrzeugID,X,Y+3,Z,1,1,0);
}
Erkläung:
Fahrzeug ID = Das Fahrzeug die Vehicle ID also.
X,Y,Z = Die Posision (Y+3 damit es nicht auf deinem Kopf Landet)
0 = Nie wider Respawnen wenn mann auf den Roller sitz! (Einstellbar in Millisekunden) -
Hi irgendwie bin ich grad zu blöd ;D hat wer was fertieges!
-
Ja, Hier. :=)
Einfach Einfügen bei "OnPlayerCommandText" Fertig. :=)if(strcmp(cmd, "/roller", true) == 0)
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid,X,Y,Z);
CreateVehicle(462,X,Y+3,Z,0,1,1,0);
} -
Aber das soll ja nur in einer bestimmten Region (nämlich beim Newbie-Spawn) funktionieren, darum wird vorher noch mit IsPlayerInRangeOfPoint abfragen, hast du vorhin schon richtig geschrieben, Jeject
if(strcmp(cmd, "/roller", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,5.0,x,y,z))
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid,X,Y,Z);
CreateVehicle(462,X,Y+3,Z,0,1,1,0);
}
}Am besten nach 30 Sekunden respawnen und löschen, sonst kann man damit den Server "zuspammen"
-
Am besten nach 30 Sekunden respawnen und löschen, sonst kann man damit den Server "zuspammen"
Huch tuht mir leid. Habe dann etwas Überlessen Sorry.
Nicht wirklich! Wenn er eine Verialbe auf "1" setz in die SpielerDatei und es aussliest und es noch Überprüft ob es auf EINS steht dann einfach eine Message senden das er schon ein Roller hat... Aber dann wird es wider schwer zu sagen wann und wie er es wider auf die EINS setzen soll. :=) -
schau mal in die sufu. dort git es ein roller tut. mit dem kann man sehr gut arbeiten.
-
PawnFox enfehlung
ocmd:roller(playerid,parms[])
{
if(IsPlayerInRangeOfPoint(playerid,5.0,x,y,z))
{
new roller[1];
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid,X,Y,Z);
roller[0] = CreateVehicle(462,X,Y+3,Z,0,1,1,0);
rollertimer[playerid] = SetTimerEx("roller",1000,1,"d",playerid);
}
return 1;
}
forward roller(playerid);
public roller(playerid)
{
KillTimer(rollertimer[playerid]);
DestroyVehicle(roller);
return 1;
} -
Es ist zwar jetzt vieleicht Spam, aber wenn du den Rest allein kannst wirst du doch wohl die Player-Kordinaten auslesen können und ein Auto Spawn können.
-
breadfish.de
Hat das Thema geschlossen.