Marker innerhalb eines Auslösers erzeugen

  • Hallo,:)


    Ich möchte zufällig ausgewählten Positionen (Marker) in einem Gebiet (Trigger) erzeugen. Alle erzeugten Marker sollen eindeutig benannt sein und in einem Array gespeichert werden. Auf dieses Array soll dann zugegriffen werden, um spawn- und patroullier Positionen daraus zu erzeugen. Habt ihr da ein Template oder Skriptschnipsel?


    Gruß Saint

  • Hallo Greni,


    meine Ideen dazu sind:

    Code
    1. _arrayOfMarkers = ["marker_0","marker_1","marker_2","marker_3",...] call bis_fnc_selectrandom;
    2. // _meinMarkerName = format ["marker%1",_index];
    3. // die im Trigger erzeugte Menge an Markern soll eindeutig identifizierbar sein, "marker_0", "marker_1" etc.


    Warum marker und nicht die Position eines Spielers nutzen?

    Mir geht es um den technischen Aspekt kennen zu lernen, wie beliebig viele, oder zumindest mehr als ein marker in einem Triggerbereich erzeugt werden können und ich diese erzeugten und eindeutig identifizierbaren Marker dann auslesen und dann weiterverwenden kann.

    Code
    1. eine_random_pos_in_trigger = Meinetrigger call BIS_fnc_randomPosTrigger;
    2. // gibt mir eine Position im Auslösebereich aus. Aber eben nur eine.
  • Quote

    // gibt mir eine Position im Auslösebereich aus. Aber eben nur eine.

    Was anhand Deines Codes für mich auch nur 1 ergeben sollte.


    Warum?

    _arrayOfMarkers = ["marker_0","marker_1","marker_2","marker_3",...] call bis_fnc_selectrandom;


    selectRandom wählt nur 1 index aus dem Array , kann hier also nur einer von den genannten Markern im Array sein.


    Wenn du alle Marker bzw. jeden Index des Arrays haben möchtest musst Du entweder mit einer for oder foreach Schleife arbeiten, wobei ich foreach vorziehen würde und dann Dein Array dadurch abfragen


    Code
    1. {
    2. //Dein Code
    3. } foreach _arrayOfMarkers;


    Persönlich würde ich die Marker schon händisch auf der Karte setzen und unsichtbar setzen und dann die Aktion starten, weil Dir da vorschwebt.


    Zu Deiner Eingangsfrage

    Einen Trigger nutzen um Marker zu setzen ist bestimmt machbar, doch woran man die Distanz zu den Markern selbst bestimmt wird wäre mir jetzt nicht klar, da man an erzeugten Markern diese auch zueinander zu dicht setzen könnte.

    Je nachdem wie stark Deine Patrouillen sind, läufst Du Gefahr, Deine Mission eventuell unspielbar zu machen, da sich dann zu viele Einheiten auf der Map befinden.


    Vielleicht kannst Du Dir ja mal folgendes Script anschauen. Vielleicht hilft es Dir dann zu Deinen Markern weiter

    Arma 3 - Find closest player to marker


    oder Marker un- & sichtbar schalten per foreach

    Arma 3 - Marker sichtbar schalten

  • Moin moin,

    Im BI Forum habe ich mein Anliegen reichweitenstark vorgetragen und mir wurde prompt geholfen. Für alle die es interessiert und es evtl. brauchen können.


    Vielen Dank

    Gruß Saint