Zombies unter OnGameModInit Spawn lassen

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 kann mir jemand helfen ich möchte ein DayZ Script machen ich kann NPC,s per befehl Spawn und sie auch töten.
    Wie mach ich es das die Bots Unter OnGameMod. Spawn lasse kann mir jemand helfen.


    Ich habe dies per PM bekommen


    Unter OnGameModeInit startest du einen Timer von 5 Sekunden, indem so viele BOTS mit ConnectRNPC connecten wie du willst.
    Unter OnPlayerSpawn kannst du dann die Spawnpunkte festlegen.


    Kann mir wer etwas genauer helfen.

  • Ganz oben unter die Includes:



    forward connectbots();


    Das hier wie du siehst unter OnGameModeInit:



    public OnGameModeInit()
    {


    SetTimer("connectbots", 5000, false); //Timer, der die BOTS connecten lässt, wird gestartet


    return 1;
    }



    Und das hier irgendwo zwischen den anderen Publics am besten:



    public connectbots() //Das public des Timers der die BOTS connecten lässt
    {
    ConnectRNPC("Zombie1"); //Zombie mit dem Namen "Zombie1" wird connectet
    ConnectRNPC("Zombie2"); //Zombie mit dem Namen "Zombie2" wird connectet
    ConnectRNPC("Zombie3"); //Zombie mit dem Namen "Zombie3" wird connectet
    ConnectRNPC("Zombie4"); //Zombie mit dem Namen "Zombie4" wird connectet
    ConnectRNPC("Zombie5"); //Zombie mit dem Namen "Zombie5" wird connectet
    ConnectRNPC("Zombie6"); //Zombie mit dem Namen "Zombie6" wird connectet
    ConnectRNPC("Zombie7"); //Zombie mit dem Namen "Zombie7" wird connectet
    ConnectRNPC("Zombie8"); //Zombie mit dem Namen "Zombie8" wird connectet
    ConnectRNPC("Zombie9"); //Zombie mit dem Namen "Zombie9" wird connectet
    ConnectRNPC("Zombie10"); //Zombie mit dem Namen "Zombie10" wird connectet
    ConnectRNPC("Zombie11"); //Zombie mit dem Namen "Zombie11" wird connectet

    return 1;
    }


  • Ah cool Danke ich versuch es gleich mal wenn es klappt hast du was gut bei mir


    Em kann ich für jeden Zombie nen eigenen Spawn machen?


    Würde das so gehen das die Zombies wo anders Spawnen


    if(IsPlayerNPC(playerid)==1)
    {
    switch(random(2))
    {
    case 0:
    {
    SetPlayerPos(playerid,-1201.7883,-2567.9270,3.1733);
    SetPlayerSkin(playerid,162);
    SetPlayerInterior(playerid,0);
    SetPVarFloat(playerid, "Leben", 100.00);
    new string[128];
    format(string,128,"{00FF00}Zombie\n{00D7FF}Leben: {FF0023}100%");
    label = Create3DTextLabel(string, 0x008080FF, 0.0, 0.0, 0.0, 20.0, 0);
    SetPVarInt(playerid, "Label", _:label);
    Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.1);
    SetPlayerSkin(playerid, 162);
    GivePlayerWeapon(playerid,9,1);
    SetPVarInt(playerid, "SpielerInReichweite", 0);
    }
    case 1:
    {
    SetPlayerPos(playerid,-1201.7883,-2567.9270,3.1733);
    SetPlayerSkin(playerid,162);
    SetPlayerInterior(playerid,0);
    SetPVarFloat(playerid, "Leben", 100.00);
    new string[128];
    format(string,128,"{00FF00}Zombie\n{00D7FF}Leben: {FF0023}100%");
    label = Create3DTextLabel(string, 0x008080FF, 0.0, 0.0, 0.0, 20.0, 0);
    SetPVarInt(playerid, "Label", _:label);
    Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.1);
    SetPlayerSkin(playerid, 162);
    GivePlayerWeapon(playerid,9,1);
    SetPVarInt(playerid, "SpielerInReichweite", 0);
    }
    }
    }


    //Edit Frage
    //Sa-mp Eingefugt


    Einmal editiert, zuletzt von Ronny16 () aus folgendem Grund: //Spawn //Eingefpügt

  • So, also jetzt musst du das ganz oben im Script unter die Includes:



    new botvar;


    und das unter OnPlayerSpawn:



    public OnPlayerSpawn(playerid)
    {
    if(IsPlayerNPC(playerid)==1) //Wenn der Spieler ein BOT ist
    {

    new Float:x, Float:y, Float:z;

    switch(botvar) //botvar wird geswitcht und x,y,z bekommen eine von den unteren Koordinatenreihen
    {
    case 0:{x = -1201.7883; y = -2567.9270; z = 3.1733;}
    case 1:{x = -1647.5540; y = -1900.2574; z = 90.0439;}
    case 2:{x = -782.0986; y = -2047.4180; z = 8.9321;}
    default:{x = -782.0986; y = -2047.4180; z = 8.9321;}
    }
    SetPlayerPos(playerid, x,y,z);
    botvar++;
    }
    return 1;
    }