Mehrmals Connecten lassen [Bot]

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,
    meine Frage ist, wie ich mit diesesem Codeschnipsel, sagen wir 100 Zombies Connecten lassen?


    new LastAdded = 0;
    define ZOMBIE_NAME "Zombie"
    forward connectbots();



    OnGmameodeInit:
    SetTimer("connectbots", 5000, 1);


    public connectbots() //Das public des Timers der die BOTS connecten lässt
    {
    new newname[64];
    format(newname,sizeof(newname),"%s_%d",ZOMBIE_NAME,LastAdded);
    ConnectRNPC(newname);
    LastAdded++;
    return 1;
    }
    Frage steht oben.
    Danke im vorraus!

    b_560_95_1.png[/url]



    b_560_95_1.png[/url]

  • Teste es doch :D

    Liberty Reallife ♥


    SA-MP Server IP:

    Liberty-Reallife.de:7777 oder 176.57.142.127:777 | Version: 0.3z

    ____________________________________________________


    Forum:

    ____________________________________________________


    TeamSpeak³ Server IP:
    Liberty Reallife.de:9987 oder 176.57.142.172:9987

    ____________________________________________________


    TeamSpeak³ Server Passwort:

    ts-lr

  • @_Infinity_ Müste eigentlich aber wenn du Ronnys edit benutzt also musste das ändern denn ich habe bevor ich ihm das von mir gegeben habe habe ich noch was verändert ;)
    aber das ist nebensächlich :) ich guck ob ich noch das script habe wenn ja schicke ich dir code per pn ;)


    Mit Freundlichen Grüßen
    - Kevin

  • @_Infinity_ Müste eigentlich aber wenn du Ronnys edit benutzt also musste das ändern denn ich habe bevor ich ihm das von mir gegeben habe habe ich noch was verändert ;)
    aber das ist nebensächlich :) ich guck ob ich noch das script habe wenn ja schicke ich dir code per pn ;)


    Mit Freundlichen Grüßen
    - Kevin


    Ja, benutze sein Script, der Code ist jedoch aus meinem Selfmade ;)
    Wäre nett. Danke

    b_560_95_1.png[/url]



    b_560_95_1.png[/url]

  • new Z_Timer[2],b_name[15];
    #define ZOMBIE_NAME "Zombie_"
    #define MAX_ZOMBIES 100
    forward Connectbots();

    OnGameModeInit(){
    Z_Timer[0] = SetTimer("Connectbots", 3000, 1);
    .....
    }


    public Connectbots()
    {
    if(Z_Timer[1] != MAX_ZOMBIES)return KillTimer(Z_Timer[0]);
    strdel(b_name,0,15);
    valstr(b_name,Z_Timer[1]);
    strins(b_name,ZOMBIE_NAME,0);
    ++Z_Timer[1];
    return ConnectRNPC(b_name);
    }


    was ist daran so schwierig :D den Timer so killen wenn eine variabel den jeweiligen wert hat


    //edit bei valstr muss natürlich Z_Timer[1] rein

  • Okay, und wie das die Zombies immer : ZOMBIE_1, ZOMBIE_2 usw. heißen?


    habs kurz oben verbesser wie schon angemerkt hab vergessen Z_Timer[1] bei valstr einzufügen


    der string ist erst je nacch ziffer 1


    per strins(b_name,ZOMBIE_NAME,0);
    wird vor der 1 der oben mit dem #define deklarierte string rein geschoben

  • habs kurz oben verbesser wie schon angemerkt hab vergessen Z_Timer[1] bei valstr einzufügen


    der string ist erst je nacch ziffer 1


    per strins(b_name,ZOMBIE_NAME,0);
    wird vor der 1 der oben mit dem #define deklarierte string rein geschoben


    Danke, hat mir sehr geholfen.
    Jz noch folgendes:
    Das Leben der Zombies wird so angezeigt und geupdatet..
    Wie ändere ich das, das 1. nicht so langer Code ist, und 2. Das das mit einem Code funzt ? Also quasi für jeden zombie gleichzeitig.. Weil jz muss ich ja für jeden Zombie immer ZOMBIE_1 usw. eintragen

    Spoiler anzeigen
    if(IsPlayerNPC(playerid)==1)
    {
    new botname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,botname,sizeof(botname));
    if(!strcmp(botname,"Zombie1",true))
    {
    SetPlayerPos(playerid,-1201.7883,-2567.9270,3.1733);
    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);
    Spieler[playerid][pSkin] = 162;
    GivePlayerWeapon(playerid,9,1);
    SetPVarInt(playerid, "SpielerInReichweite", 0);
    }
    if(!strcmp(botname,"Zombie2",true))
    {
    SetPlayerPos(playerid,-782.0986,-2047.4180,8.9321);
    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);
    Spieler[playerid][pSkin] = 162;
    GivePlayerWeapon(playerid,9,1);
    SetPVarInt(playerid, "SpielerInReichweite", 0);
    }
    if(!strcmp(botname,"Zombie3",true))
    {
    SetPlayerPos(playerid,-782.0986,-2047.4180,8.9321);
    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);
    Spieler[playerid][pSkin] = 162;
    GivePlayerWeapon(playerid,9,1);
    SetPVarInt(playerid, "SpielerInReichweite", 0);
    }

    }

    b_560_95_1.png[/url]



    b_560_95_1.png[/url]


  • Schon mal was von Schleifen gehört ?


    LG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Müsste doch mit ner for Schleife gehen, lass connecten, und frag jedesmal ab, wieviele bereits drauf sind, wenn sag ich mal 100 drauf sind, beendest du die Schleife wofür ja ne for Schleife gedacht ist und fertig.

    Eigentlich ein ganz Netter! :)