Hi Leute,
Ich hab mal eine Frage, könnt ihr mir zeigen, wie ich es machen kann, wenn sich einer zu /Dm1 teleportiert, das er, wenn er auch dort stirb dort wieder spawnt? Und wenn er verlassen will, das er zu seiner alten Stelle teleportiert wird?
Beim Teleport bleiben
- Eichelking
- 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
-
-
dann musst du beim Spawn seine Position verändern:
public OnPlayerSpawn(playerid)
{
if(DM[playerid] == 1) //Musst auch machen, dass wenn der Spieler /dm1 eingibt die Variabel "DM" für den Spieler auf 1 gesetzt wird
{
SetPlayerPos(playerid,x,z,z); //Deine Koordinaten
}
return 1;
}
new DM[MAX_PLAYERS];if(strcmp(cmdtext, "/dm1", true) == 0)
{
if(DM[playerid] == 0)
{
SetPlayerPos(playerid,x,y,z); //deine Koordinaten einfügen
DM[playerid] = 1;
}
else if(DM[playerid] == 1)
{
SetPlayerPos(playerid,x,y,z); //Koords vom normalen Spawnpunkt
ResetPlayerWeapons(playerid); //Waffenreset
DM[playerid] = 0;
}
return 1;
}//edit /dm1 Befhel
-
Was meinst du mit:
//Musst auch machen, dass wenn der Spieler /dm1 eingibt die Variabel "DM" für den Spieler auf 1 gesetzt wirdUnd wie mach ich den Verlassen Befehl
Bin noch ein Noobi :l/edit Verlass Befehl
-
Ich meine Damit:
- Spieler gibt /dm1 ein (Erst ist nun in der DM Zone (hier DM[playerid] = 1))
- Wenn er nun stirbt und wieder Spawn, dann wird abgefragt, ob er vorher DM was (ob DM[playerid] == 1 ist)
Aber das habe ich schon in den Befehl eingefügt (siehe Post davor)
Musst bloß noch die Waffen hinzufügen.
//edit Hab das jetzt so gemacht das beim ersten eingeben von /dm1 der Spieler in die DM Zone geht und beim Zweiten eingeben er sie verlässt
-
Also:
Wenn er rein geht:
/dm1
Er wird gekillt spawnt er wieder in DM1
Wenn er nun wieder /dm1 eingibt, wird er vor den Teleport /dm1 zurück geportet zur Posi?
-
Wenn er wieder DM1 eingiebt, verlässt er die DM Zone.
-
/edit
Und bei einem /Dm2 befehl? Wie mach ich das?
Damit ich das weiß
-
/push nach 24H
Wie mach ich den Befehl /dm2 dann? -
dann musst du beim Spawn seine Position verändern:
public OnPlayerSpawn(playerid)
{
if(DM[playerid] == 2) //Musst auch machen, dass wenn der Spieler /dm1 eingibt die Variabel "DM" für den Spieler auf 1 gesetzt wird
{
SetPlayerPos(playerid,x2,z2,z2); //Deine Koordinaten
}
return 1;
}
new DM[MAX_PLAYERS];if(strcmp(cmdtext, "/dm2", true) == 0)
{
if(DM[playerid] == 0)
{
SetPlayerPos(playerid,x2,y2,z2); //deine Koordinaten einfügen
DM[playerid] = 2;
}
else if(DM[playerid] == 2)
{
SetPlayerPos(playerid,x2,y2,z2); //Koords vom normalen Spawnpunkt
ResetPlayerWeapons(playerid); //Waffenreset
DM[playerid] = 0;
}
return 1;
}ganz einfach wie er es gesagt hat nur eben zählen sollte man können dann geht das
-
Ich hab jetzt alles in einem Dialog gescirptet:
Aber ohne die Posis noch:if (dialogid == Deathmatches)
{
if (response)
{
if(listitem == 0) // Minigun
{
GivePlayerWeapon(playerid, 38, 9999);
SendClientMessage(playerid, COLOR_GREEN, "[INFO]: Die Schlacht beginnt! Viel Spaß mit der Minigun");
}
if(listitem == 1) // Desert
{
GivePlayerWeapon(playerid, 24, 200);
SendClientMessage(playerid, COLOR_GREEN, "[INFO]: Die Schlacht beginnt! Viel Spaß mit der Desert");
}
if(listitem == 2) // Shotgun
{
GivePlayerWeapon(playerid, 25, 1000);
SendClientMessage(playerid, COLOR_GREEN, "[INFO]: Die Schlacht beginnt! Viel Spaß mit der Shotgun");
}
if(listitem == 3) // Faust
{
SendClientMessage(playerid, COLOR_GREEN, "[INFO]: Die Schlacht beginnt! Viel Spaß");
}
if(listitem == 4) // Kettensäge
{
GivePlayerWeapon(playerid, 9, 9999);
SendClientMessage(playerid, COLOR_GREEN, "[INFO]: Die Schlacht beginnt! Viel Spaß mit der Kettensäge");
}
if(listitem == 5) // Abgesägte Shotgun
{
GivePlayerWeapon(playerid, 26, 1000);
SendClientMessage(playerid, COLOR_GREEN, "[INFO]: Die Schlacht beginnt! Viel Spaß mit der Abgesägten Shotgun");
}
}
}
return 0;
}Wie kann ich das dann da zb. bei Minigun einfügen?
Weil bei Minigun stirb man jede 10 Sekunden... -
kannst du dic hbitte besser ausdrücken?
wenn du meinst das man dann geportet werden sioll mach:
SetPlayerPos(playerid,x2,y2,z2); -
Ja ich hab da oben ja mein Dialog. Ich hab bewusst noch niergend Positionen eingefügt, da ich nicht an meinem Rechner bin. Ich woll jetzt nur kurz wissen, wie ich
new DM[MAX_PLAYERS];if(strcmp(cmdtext, "/dm2", true) == 0)
{
if(DM[playerid] == 0)
{
SetPlayerPos(playerid,x2,y2,z2); //deine Koordinaten einfügen
DM[playerid] = 2;
}
else if(DM[playerid] == 2)
{
SetPlayerPos(playerid,x2,y2,z2); //Koords vom normalen Spawnpunkt
ResetPlayerWeapons(playerid); //Waffenreset
DM[playerid] = 0;
}
return 1;
}
Dort einfüge. Es ist ja in einem Dialog. Wie geht das? -
breadfish.de
Hat das Thema geschlossen.