[Frage] Zufalls Spawnpunkte f. Player

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
  • Hi Leute,
    ich weiß man sollte vorher die Suchfunktion oben rechts nutzen oder http://www.gidf.de aber ich find irgendwie nichts...


    Und zwar geht es um folgendes:


    Ich erstelle einen Freeroamserver, darin wollte ich eine DM Zone einbauen (ihr kennt ja das Schiff nordöstlich von San Fierro). Nun die Frage:


    Da es blöde ist alle DM'ler auf einem Spawn landen zu lassen möchte ich das es zufalls Spawns gibt. D.h. Man gibt den Befehl "/XYZ" ein und man landet mal da, beim nächsten mal da, usw.


    Kann mir jemand sagen wie der PWN Code dafür aussehen muss? Die Coords hab ich schon aber wie soll ich die in Gottes Namen da einbauen? Danke euch schon jetzt für die Lösung :D

  • nimm doch die Random Funktion ^^


    Erstmal ne Variable mit deinen Coords
    new Float:SpielerSpawns[1][3] = {
    {x,y,z},
    }


    Dann die Funktion hier
    new rando = random(sizeof(SpielerSpawns));
    SetPlayerPos(playerid, SpielerSpawns[rando][0], SpielerSpawns[rando][1], SpielerSpawns[rando][2]);

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Genau das hab ich gesucht


    Danke!


    //Edit:


    Ich bekomm hier eine Fehlermeldung für folgende Zeile:


    Fehlermeldung:
    error 018: initialization data exceeds declared size


    Zeile:
    new Float:SpielerSpawns[1][3] = {-1407.8982,1480.2750,3.8289},{-1423.0426,1489.3402,1.8672},{-1376.8541,1493.6626,11.2031},{-1407.8499,1497.6594,7.1016},{-1479.2252,1489.1050,8.2501},{-1441.4288,1480.7146,11.8084},{-1390.7145,1495.9755,11.8084},{-1381.3331,1489.3417,19.0547};


    Wie bekomm ich das richtig? Aus der Fehlermeldung schieße ich das die Zeile zulang ist...

    BSC - Black Strike Clan
    http://www.bsc-rl.de


    SA:MP: 188.40.101.10:7777
    TeamSpeak3: 188.40.101.10:9987

    Einmal editiert, zuletzt von wutschkooo ()

  • new Float:SpielerSpawns[][3] =
    {-1407.8982,1480.2750,3.8289},
    {-1423.0426,1489.3402,1.8672},
    {-1376.8541,1493.6626,11.2031},
    {-1407.8499,1497.6594,7.1016},
    {-1479.2252,1489.1050,8.2501},
    {-1441.4288,1480.7146,11.8084},
    {-1390.7145,1495.9755,11.8084},
    {-1381.3331,1489.3417,19.0547}
    };

  • Ich hab ein weiteres Problem - Benutze das Random diesmal für Bomben:


    Fehlermeldung
    C:\Users\Matthias.HP-Compaq-6820s\Desktop\Script\SA-MP\__SCRIPTING__\Wutschroam\Los SANTOS IN BEARBEITUNG\Wutschroam.pwn(652) : error 032: array index out of bounds (variable "Bomben")
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    // Bombenrandom
    new Float:Bomben[23][3] = {
    {-1010.5989,1092.9081,1341.362},
    {-1008.3573,1068.1189,1341.2721},
    {-1006.8845,1055.9606,1340.6204},
    {-1010.3340,1045.6569,1340.4780},
    {-1010.9713,1033.8107,1341.0078},
    {-1009.3530,1025.0192,1341.0078},
    {-1023.7034,1037.5320,1341.3516},
    {-1043.0164,1041.1870,1341.3516},
    {-1048.4670,1049.6110,1341.3516},
    {-1053.2356,1058.2456,1341.3516},
    {-1057.3831,1068.4331,1341.3586},
    {-1064.1538,1077.6669,1341.3516},
    {-1072.9191,1081.7413,1341.3516},
    {-1081.5496,1079.0944,1341.3516},
    {-1086.4911,1070.3624,1341.3516},
    {-1092.8636,1058.9535,1341.3516},
    {-1099.8163,1045.7759,1341.3516},
    {-1101.5486,1034.5375,1342.1011},
    {-1101.8379,1023.0480,1342.0938},
    {-1044.7004,1096.1283,1346.2086},
    {-1041.6300,1071.3032,1347.4685},
    {-1042.3958,1052.7378,1345.4994},
    {-985.5182,1080.1730,1343.4331}
    };


    if(strcmp("/boom",cmdtext,true) == 0)
    {
    new Bombs = random(sizeof(Bomben));
    xXx CreateExplosion((Float:Bomben[Bombs][23], Float:Bomben[Bombs][6]),1,4.5);
    SendClientMessageToAll(rot, "ACHTUNG: BOMBENALARM IM BATTLEFIELD!!!");
    return 1;
    }


    Fehlermeldung ist für die mit xXx markierte Zeile...


    Bitte um Hilfe - Danke!


  • if(strcmp("/boom",cmdtext,true) == 0)
    {
    new Bombs = random(sizeof(Bomben));
    xXx CreateExplosion((Bomben[Bombs][0], Bomben[Bombs][1]),1,4.5);
    SendClientMessageToAll(rot, "ACHTUNG: BOMBENALARM IM BATTLEFIELD!!!");
    return 1;
    }





    Villeicht Ohne Float: in der xXx Zeile und mit 0 statt 23 und 1 statt 6


    Bitte keine Scriptanfragen via ICQ!


    _________________________________________________________________