Problem mit SetPlayerPos

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
  • jo hallo...


    also ich habe ein Problem....
    Ich wollte das auf einer der beiden Positionen jemand geportet wird...also zufallsprinzip....

    if (strcmp("/fdm", cmdtext, true, 10) == 0)
    {
    SetPlayerPos(playerid,-32.2588,153.5684,2.6629) || SetPlayerPos(playerid,-112.6102,-108.5393,3.1094);
    SendClientMessage(playerid, WEISS,"Willkommen im Farm Deathmatch!!");
    ResetPlayerWeapons(playerid);
    return 1;
    }

    aber ich werde immer zur gleichen Position geportet!
    was mache ich falsch??
    Ich würde gerne ein Zufallsprinzip haben...also wenn ichs zweimal eingebe dann komme ich auchmal zur anderen Stelle...

  • Das kann auch nicht funktionieren, weil der Oder-Operator ( || ), den du verwendest, nur bei Bedingungen verwendet werden kann, also zum Beispiel bei if, for oder while. Dein Code müsste so aussehen:


    if (strcmp("/fdm", cmdtext, true) == 0) {
    new Float:randomPos[][3] =
    {
    {-32.2588,153.5684,2.6629},
    {-112.6102,-108.5393,3.1094}
    };
    new randomID = random(2);

    SetPlayerPos(playerid, randomPos[randomID][0], randomPos[randomID][1], randomPos[randomID][2]);
    SendClientMessage(playerid, WEISS,"Willkommen im Farm Deathmatch!!");
    ResetPlayerWeapons(playerid);
    return 1;
    }

    Intel Xeon W3690 Hexacore @ 4.5 GHz - 48GB Triple Channel DDR3 - GeForce RTX 2070 Super - Asus P6T Deluxe V1 @ P6T WS Pro BIOS

    Mainboard 12 Jahre, CPU 10 Jahre alt - old but gold!

  • Also ich hab das in meinem Fun Script So Gemacht!


    Bei NEW:

    new Float:spawns[3][4] ={
    { 2964.1448,-1830.8132,2.5620,340.1525 },
    { 2970.1682,-1796.6158,2.5606,168.1542 },
    { 2978.1375,-1762.3909,2.5606,177.2177 }
    };


    Und das bei OnPlayerCommandText:

    if (strcmp("/dm", cmdtext, true, 10) == 0)
    {
    new rand = random(3);
    SetPlayerPos(playerid, spawns[rand][0], spawns[rand][1], spawns[rand][2]);
    GivePlayerWeapon(playerid,31, 500);

    new tmp[256];
    GetPlayerName(playerid, tmp, MAX_PLAYER_NAME);
    format(tmp, sizeof(tmp), "*** %s ist in die Deathmatch Arena gegangen (/dm)!", tmp);
    SendClientMessageToAll(COLOR_BLUE, tmp);
    return 1;
    }


    So Wirst du Jedes Mal an einer Anderen Stelle Gespawnt!

    Du suchst die Echte RpG Community?? Dan Bist du hier genau richtig WwW.NeoN-RpG.dE ^^