RandomSpawns

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
  • Hallo Breadfish,
    Also ich hab heute es geschafft den Spieler der im Knast kommt immer wieder in einer anderen Knastzelle die vom LSPD kommt also halt Random Spawn aber jetzt würde ich gern wissen wie man das macht wen ich ja welche hinzufüge (Also weitere Knastzellen) wie ich das mit dem Interior regel denn im LSPD ist es ja 6 und bei den anderen z.b. 10 kann mir bitte sagen wie ich dieses Problem lösen könnte?


    MFG milanboy


  • new spawnplace = random(9);
    switch(spawnplace)
    {
    case 0: SetPlayerPos(playerid, 2618.1064,2721.5537,36.5386);
    case 1: SetPlayerPos(playerid, 2620.1143,2835.8787,10.8203);
    case 2: SetPlayerPos(playerid, 2596.8523,2820.5369,12.7568);
    case 3: SetPlayerPos(playerid, 2608.5012,2769.7314,23.8222);
    case 4: SetPlayerPos(playerid, 2648.5530,2773.5969,10.8203);
    case 5: SetPlayerPos(playerid, 2609.0583,2800.1636,10.8203);
    case 6: SetPlayerPos(playerid, 2620.1143,2835.8787,10.8203);
    case 7: SetPlayerPos(playerid, 2565.0461,2823.7273,12.7568);
    case 8: SetPlayerPos(playerid, 2531.5061,2813.3381,10.8203);
    case 9: SetPlayerPos(playerid, 2542.9883,2845.8977,10.8203);
    }


    Ich denke, das erklärt sich von selbst. ;)

  • bei mir gehts nicht also das Interior indem sich der Spieler befindet wird ihm nicht zugewiesen ind wird somit vom Himmel fallen


    Ich habs so versucht zu machen nur leider weiss ich nicht wie man abfragt in welchen Interior sich der Spieler befindet


    if(PlayerInfo[playerid][pJailed] == 1)
    {
    //new interior = PlayerInfo[playerid][pLocal];
    //SetPlayerInterior(playerid,interior);
    rand = random(sizeof(gWantedSpawns));
    SetPlayerPos(playerid, gWantedSpawns[rand][0], gWantedSpawns[rand][1],gWantedSpawns[rand][2]);
    SendClientMessage(playerid, COLOR_LIGHTRED, "Du hast deine Gefängniszeit noch nicht abgesessen.");
    return 1;
    }



    MFG milanboy

  • Ich versteh einfach nicht warum das nicht funktioniert :( ich kriege zwar keine Errors oder warns aber funktioniert trotzdem nicht


    if(PlayerInfo[playerid][pJailed] == 1)
    {
    new interior = GetPlayerInterior(playerid));
    SetPlayerInterior(playerid,interior);
    rand = random(sizeof(gWantedSpawns));
    SetPlayerPos(playerid, gWantedSpawns[rand][0], gWantedSpawns[rand][1],gWantedSpawns[rand][2]);
    SendClientMessage(playerid, COLOR_LIGHTRED, "Du hast deine Gefängniszeit noch nicht abgesessen.");
    return 1;
    }

  • aber ich mache ja Random Spawns Zellen und es sind ja nicht alle Zellen in Interior 6 sondern andere in Interior 10 und andere in Interior 3 und wen er sagen wir mal in Interior 10 Spawnt und ich gebe Interior 6 an dann sit was falsch


    Also mache sagen wir mal Random Knast Zellen^^


    MFG milanboy

  • also die ersten 3 haben Interior 6 aber der letzte hatt Interior 0


    PS: kriege auch ein Error falls ich es auf 3 erhöhe^^


    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(2919) : error 032: array index out of bounds (variable "gWantedSpawns")

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • beim new gWantedSpawns[KaWasFürNeZahl][Diese um eins erhöen]


    du musst das letzte array um eins erhöhen, da du ja nun eine variable mehr benutzt.

  • hier ist eine screen von einer Knastzelle wo es das mit den Interior null z.b. nicht klappt: also man sieht nichts ich müsste i-wie die ID jedesmal kriegen wie ich das da oben probiert habe leider fehlgeschlagen :(


  • enum zelleenum
    {
    Float:X,
    Float:Y,
    Float:Z,
    Float:R,
    inti,
    };


    new Float:zelle[][zelleenum] = {
    {x,y,z,r,int},
    {x,y,z,r,int},
    {x,y,z,r,int}
    };


    if(PlayerInfo[playerid][pJailed] == 1)
    {
    rand = random(sizeof(zelle));
    SetPlayerInterior(playerid,zelle[rand][inti]);
    SetPlayerFacingAngle(playerid,zelle[rand][R]);
    SetPlayerPos(playerid,zelle[rand][X],zelle[rand][Y],zelle[rand][Z]);
    SendClientMessage(playerid, COLOR_LIGHTRED, "Du hast deine Gefängniszeit noch nicht abgesessen.");
    return 1;
    }


    halt die cords oben rein machen mit dem int ;)


    gretz Vitamin

  • C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(691) : error 017: undefined symbol "zelleenum"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(5469) : warning 219: local variable "X" shadows a variable at a preceding level
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(5469) : warning 219: local variable "Y" shadows a variable at a preceding level
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(5469) : warning 219: local variable "Z" shadows a variable at a preceding level
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(5470) : error 035: argument type mismatch (argument 2)
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(5471) : warning 213: tag mismatch
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(5471) : warning 213: tag mismatch
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(5471) : warning 213: tag mismatch



    PS: Habe noch viel mehr Fehler und warnings kann sie nur nicht postenwegen zu viele Zeichen


    Insgesamt 11 Fehler


    edit/// Nurnoch 2 Fehler siehe unten:

    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(691) : error 017: undefined symbol "zelleenum"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Homeserver\gamemodes\gf.pwn(707) : error 021: symbol already defined: "zelle"


    EDIT 2/// Habe die letzten 2 Fehler rausgehauen habe es auch ausprobiert funktioniert an alle ein Dankeschön die sich hierdran beteilöigt haben :D


    MFG milanboy

    Einmal editiert, zuletzt von milanboy40 ()

  • das war nur nen beispiel ^^aber


    enum zelleenum
    {
    Float:zelleX,
    Float:zelleY,
    Float:zelleZ,
    Float:zelleR,
    zelleinti
    };


    new Float:zelle[][zelleenum] = {
    {x,y,z,r,int},
    {x,y,z,r,int},
    {x,y,z,r,int}
    };


    if(PlayerInfo[playerid][pJailed] == 1)
    {
    new rand = random(sizeof(zelle));
    SetPlayerInterior(playerid,zelle[rand][zelleinti]);
    SetPlayerFacingAngle(playerid,zelle[rand][zelleR]);
    SetPlayerPos(playerid,zelle[rand][zelleX],zelle[rand][zelleY],zelle[rand][zelleZ]);
    SendClientMessage(playerid, COLOR_LIGHTRED, "Du hast deine Gefängniszeit noch nicht abgesessen.");
    return 1;
    }


    so soltte es gehen ;)
    und nicht vergessen das enum einzufügen


    gretz vitamin

  • forward SetPlayerRandomSpawn(playerid);



    new Float:gRandomPlayerSpawns[23][3] = {
    {1958.3783,1343.1572,15.3746},
    {2199.6531,1393.3678,10.8203},
    {2483.5977,1222.0825,10.8203},
    {2637.2712,1129.2743,11.1797},
    {2000.0106,1521.1111,17.0625},
    {2024.8190,1917.9425,12.3386},
    {2261.9048,2035.9547,10.8203},
    {2262.0986,2398.6572,10.8203},
    {2244.2566,2523.7280,10.8203},
    {2335.3228,2786.4478,10.8203},
    {2150.0186,2734.2297,11.1763},
    {2158.0811,2797.5488,10.8203},
    {1969.8301,2722.8564,10.8203},
    {1652.0555,2709.4072,10.8265},
    {1564.0052,2756.9463,10.8203},
    {1271.5452,2554.0227,10.8203},
    {1441.5894,2567.9099,10.8203},
    {1480.6473,2213.5718,11.0234},
    {1400.5906,2225.6960,11.0234},
    {1598.8419,2221.5676,11.0625},
    {1318.7759,1251.3580,10.8203},
    {1558.0731,1007.8292,10.8125},


    Unter OnPlayerSpawn;
    SetPlayerRandomSpawn(playerid);



    Ganz unten im Script


    public SetPlayerRandomSpawn(playerid)
    {
    if (iSpawnSet[playerid] == 1)
    {
    new rand = random(sizeof(gCopPlayerSpawns));
    SetPlayerPos(playerid, gCopPlayerSpawns[rand][0], gCopPlayerSpawns[rand][1], gCopPlayerSpawns[rand][2]); // Warp the player
    SetPlayerFacingAngle(playerid, 270.0);
    }
    else if (iSpawnSet[playerid] == 0)
    {
    new rand = random(sizeof(gRandomPlayerSpawns));
    SetPlayerPos(playerid, gRandomPlayerSpawns[rand][0], gRandomPlayerSpawns[rand][1], gRandomPlayerSpawns[rand][2]); // Warp the player
    }
    return 1;
    }


    fertig .. (Ist aus dem LVDM Script kopiert die Koordinaten kannst du belibig ändern