NPC Idee - Umsetzung ?

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,
    Folgende idee für ein GF System,


    Beispiel Busbot....


    Mein jetziger Busbot fährt so durch die gegend wenn jemand einsteigt werden ihm 12$ abgezogen das ist ja schon schön :)
    Nur meine idee ist... nun wartet ja nicht jeder gerne auf einen bus :)
    Ist es möglich das zu scripten wenn man /service bus eintippt


    das dann der Bus zu der stelle fährt ?


    2. idee


    wie kann man auserdem noch machen wenn der buss einen bestimmten punkt oder bereich erreicht also dieser bus halt..
    das halt ingame ne meldung erscheint "" Linie x erricht demnächst die Haltestelle Los Santos bank - Bitte entfernen sie sich von der Straße"" // das x soll die bussliniennummer ersetzen weil es immer verschiedene busbots geben soll.... die auch unterschiedliche Wege haben...


    Nun meine frage ich bin recht neu damit und will nicht das mir hier wieder jemand mit wiki google etc kommt..
    Ist sowas möglich zu scripten wen ja wie ? Bitte mit Beispielen - Danke!


    //edit
    2. Idee fast selbst gelöst nur er bringt die meldung nicht raus... und noch was ber der ersten abfrage soll nix passieren wenn ein groove mitglied in der zone iss wenn nicht die hp reduzieren..


    was ist an dem code falsch ?



    public Checkzone()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerInArea(i,2330.292, -1745.026, 2604.096, -1571.325))
    {
    if(PlayerInfo[i][pLeader] == 13 || PlayerInfo[i][pMember] == 13) { }
    new Float:hp;
    GetPlayerHealth(i, hp);
    SetPlayerHealth(i, hp-1);
    TextDrawShowForPlayer(i,groovezone);
    }
    else
    {
    TextDrawHideForPlayer(i,groovezone);
    }
    if(IsPlayerInArea(i, 972.6795, -1421.311, 976.4823, -1393.677))
    {
    if(IsPlayerNPC(i))
    {
    SendClientMessageToAll(COLOR_ORANGE, "Der Bus erreicht in wenigen Minuten den Zivilspan");
    }
    }
    else { }
    }
    return 1;
    }


    // edit 1. idee noch keine lösung gefunden :(
    aber ich bin dankbar wenn ihr helft :)8o

    Einmal editiert, zuletzt von ScyFox () aus folgendem Grund: Fast eine lösung zur 2. idee

  • Nein nicht ganz...
    weil er dann ja immer noch die rec abspielt die ich aufgezeichnet haben..


    Was ist den mit der 2. idee die ich fast gelöst habe..?



    if(PlayerInfo[i][pLeader] == 13 || PlayerInfo[i][pMember] == 13) { return 1; }
    new Float:hp;
    GetPlayerHealth(i, hp);
    SetPlayerHealth(i, hp-1);
    TextDrawShowForPlayer(i,groovezone);
    }
    else
    {
    TextDrawHideForPlayer(i,groovezone);
    }


    Damit die hp nicht von groove membern sich reduziert ?


    Und wie mach ich die erste idee ?
    und das dan dan im test ne nummer erschein busslinie x soll immer mit der richtigen nummer vom buss ersetzt werden.. ?

    Einmal editiert, zuletzt von ScyFox () aus folgendem Grund: Lösung vllt so ?

  • Wie lös ich das 2. Problem ?


    //edit
    kann mal eine nen vorschlag machen wenn ich jetzt zum beispiel nen 2. bot habe zb Buslinie{72] & Buslinie{73]


    dann soll da an stelle des x die nummer kommen wenn einer der beiden busse den punkt erreicht da jeder buss unterschiedliche routen fährt


    nur kp wie das gehen soll?


    und die erste idee scheint schwierig zu dein oder ?

    Einmal editiert, zuletzt von ScyFox () aus folgendem Grund: Was vergessen!

  • 1. Doppelpost -> Gemeldet


    2. Du machstn Timer, wo er if(VehicleToPoint(DEIN BOTNAME ... abfragt. und dann schreibste hin, was sich verändern soll. Wenn ichs richtig Verstanden habe.


    (Bei mir geht das auch so ;)


    Gruß Andy

  • ALso zu andy sowas ähnliches hab ich ja schon in der IsPlayer in area



    if(IsPlayerInArea(i, 972.6795, -1421.311, 976.4823, -1393.677))
    {
    if(IsPlayerNPC(i))
    {
    SendClientMessageToAll(COLOR_ORANGE, "Der Bus erreicht in wenigen Minuten den Zivilspan"); << // nur das sreht dann bei jedem buss da soll aber die nummer des busses stehen zb
    }
    }
    else { }





    new str[128];
    format(str, sizeof(str), " Busslinie %d erreich in wenigen minuten den Ziilspawn ", NPC[Number]);
    SendClientMessageToAll(COLOR_ORANGE, str);


    So irgendwie aber irgendwo muss ich doch die nummer dann festlegen kp wie :(?

    7 Mal editiert, zuletzt von ScyFox () aus folgendem Grund: ..

  • Ich habe mal ein Komplettes Taxi-System auf CNPC aufgebaut, das heißt die Taxi's stehen & man konnte selbst wählen wo man hinmöchte...
    Also möglich ist dies.


    Ist nur sehr viel Arbeit die Routhen vorher alle abzufahren & dann auch noch nach STVO.


    Wenn du Sowas ähnliches haben möchtest mit Bussen, z.B BusDepot > Man ruft einen > Bus fährt vom Depot los, fahrt eine Runde.
    Aber einen Bus von seiner Derzeitigen Position zu holen ist sehr umständlich.
    Mach dies Lieber mit Taxis.


    Helfe auch gern, möchte das System noch einmal bauen, denn dies habe ich nicht mehr :D


    MfG Kevin

  • Ich möchte ja nur das ich auch wenn der busbot schon seine route fährt man ihn dennoch rufen kann.. er aber dann nach dem wieder seine alte route fährt..


    und wie ich das mit der nummernzuweisung hinbekomme kp :


    Wie gut kannst du denn scripten und was ? ich fang erst damit an :(

    4 Mal editiert, zuletzt von ScyFox () aus folgendem Grund: ---

  • es gab mal ein script da war ein bot der so gescriptet war das er 12 strecken fahren konnte also ein taxi man setzte sich rein dan kamm ein dialog und wen man lspd genommen hat dan fur er dahin und das kapir ich auch nicht wie man sowas stopen und wie bei case das näste ablaufen lassen kann ?

  • Ich möcht eigentlich nur das da die nummer ersetz wird und das mit dem service richtig funktioniert..


    Keine lust 1000 englische beiträge zu lesen da ich eh nix kapier was die da labern...


    Wenn jemand hier kein passenden code hat der weiterhilf werd ich das Thread von nem Admin schliesen lassen danke!