hay wie mache ich nen random spawn für eine deathmatch zone ??
ich habe 4 coordinaten für die spawns
976.9768,-2721.4541,0.4680,90.0996
956.2406,-2635.7588,0.6201,268.6547
958.7787,-2642.1858,3.5054,270.5579
975.8067,-2715.1592,4.0143,84.7819
teleport commando mit random spawn (für dm)
- [PRT]Zerorapper
- 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
-
-
if(strcmp(cmdtext, "/dm", true) == 0)
{
SetPlayerPos(playerid, 976.9768,-2721.4541,0.4680,90.0996);
GivePlayerWeapon(playerid, 33, 80); //änder die id wenn du eine andere waffe willst
return 1;
}if(strcmp(cmdtext, "/dm1", true) == 0)
{
SetPlayerPos(playerid, 956.2406,-2635.7588,0.6201,268.6547);
GivePlayerWeapon(playerid, 33, 80); //änder die id wenn du eine andere waffe willst
return 1;
}if(strcmp(cmdtext, "/dm2", true) == 0)
{
SetPlayerPos(playerid, 958.7787,-2642.1858,3.5054,270.5579);
GivePlayerWeapon(playerid, 33, 80); //änder die id wenn du eine andere waffe willst
return 1;
}if(strcmp(cmdtext, "/dm3", true) == 0)
{
SetPlayerPos(playerid, 975.8067,-2715.1592,4.0143,84.7819);
GivePlayerWeapon(playerid, 33, 80); //änder die id wenn du eine andere waffe willst
return 1;
}
Das sollte gehen ;D
//edit sorry kein radom spawn -
bei OnPlayerSpawn
new spawns = random(4);
switch(spawns)
{
case 0: SetPlayerPos(playerid,976.9768,-2721.4541,0.4680);
case 1: SetPlayerPos(playerid,956.2406,-2635.7588,0.6201);
case 2: SetPlayerPos(playerid,958.7787,-2642.1858,3.5054);
case 3: SetPlayerPos(playerid,975.8067,-2715.1592,4.0143);
}//oder als command: Unter OnPlayerCommandText
if(strcmp(cmdtext, "/dm", true) == 0)
{
new spawns = random(4);
switch(spawns)
{
case 0: SetPlayerPos(playerid,976.9768,-2721.4541,0.4680);
case 1: SetPlayerPos(playerid,956.2406,-2635.7588,0.6201);
case 2: SetPlayerPos(playerid,958.7787,-2642.1858,3.5054);
case 3: SetPlayerPos(playerid,975.8067,-2715.1592,4.0143);
}
return 1;
}
ungetestet -
vlt ein bisschen netter so:
enum RSpawn
{
Float:rX,
Float:rY,
Float:rZ,
Float:rRotation,
};
new DMspawn[4][RSpawn] = {
{976.9768,-2721.4541,0.4680,90.0996},
{956.2406,-2635.7588,0.6201,268.6547},
{958.7787,-2642.1858,3.5054,270.5579},
{975.8067,-2715.1592,4.0143,84.7819}
};forward SendPlayerToDM(playerid);
public SendPlayerToDM(playerid)
{
new rand = random(sizeof(DMspawn));
SetPlayerPos(playerid,DMspawn[rand][rX],DMspawn[rand][rY],DMspawn[rand][rZ]);
SetPlayerFacingAngle(playerid,DMspawn[rand][rRotation]);
}mit SendPlayerToDM(playerid) nen spieler zufällig in einen der 4 zufallspunkte schicken, falls du es per cmd willst einfach unter den cmd setzen
-
cool danke ich werds gleich mal testen
PS: so wie du es gemacht hast TokyoDrift ist es ja irgendwie schon ein wenig doof weil man dan ja weiß wo man gepawnt werden soll aber trozdem dane
-
ja
hab das mit random spawn ned gesehen und erst nacher gsehenen -
Bei Flag und mir ist zufallbasierend.
Wobei seine Version, optisch besser ist und meine eben auf geringeren Code -
wozu das
enum RSpawn
{
Float:rX,
Float:rY,
Float:rZ,
Float:rRotation,
};new Float:DMspawn[][] = {
{976.9768,-2721.4541,0.4680,90.0996},
{956.2406,-2635.7588,0.6201,268.6547},
{958.7787,-2642.1858,3.5054,270.5579},
{975.8067,-2715.1592,4.0143,84.7819}
};forward SendPlayerToDM(playerid);
public SendPlayerToDM(playerid)
{
new rand = random(sizeof(DMspawn));
SetPlayerPos(playerid,DMspawn[rand][0],DMspawn[rand][1],DMspawn[rand][2]);
SetPlayerFacingAngle(playerid,DMspawn[rand][3]);
}Spart dir wieder etwas
-
stimmt jo ist nur sinnvoll wenn du gemischte variablen hast wie floats, integer usw.
-
wie mache ich es jetzt das man alle waffen verliert außer die die man bekommt ??
-
breadfish.de
Hat das Thema geschlossen.