große Fläche von Gras befreien

  • Ich möchte zum Beispiel, dass in der Base kein Gras ist, also alles gemäht ist. Außerhalb soll das TerrainGrid so sein wie es eingestellt ist
    Da die Base aber ziemlich groß ist, will ich keine 100e Cutter setzen.


    Hat der wer Ideen? Wäre über alles dankbar :)

  • Versuch doch mal eine Funktion zu bauen die einfach im Gebiet die Cutter zu Missionsbeginn erstellt und dann wieder löscht.
    Keine Ahnung ob, aber könnte so funktionieren.

  • Du könntest mithilfe von nearestObjects alle Objekte innerhalb der Base finden und dann den entsprechenden Array durchgehen und falls es keines der eigentlichen Base Bestandteile ist dann kannst du hideGlobal benutzen ums verschwinden zu lassen...
    Dann wären auch Steine und Sträucher aus der Gegend weg...


    Das würde dann halt am besten funktionieren wenn die Base halbwegs rund ist da nearestObjects ja mit einem Radius arbeitet...

  • @Raven ich glaube Gras wird mit nearestObjects nicht gefunden, oder ?
    und hat Gras überhaupt nen class name? ich hab das schon mal mit nearest Objects probiert, funktioniert auch gut mit Bäumen usw. aber Gras bleibt.


    @Creedcoder dann wärs wohl fast sinnvoller ein paar große Hangars zu spawnen, da die "Base" ziemlich groß ist. (Flugfeld auf Chernarus) nur der Hangar dürfte dann mit keinen anderen Objekten kollidieren...
    wie könnte ich denn ein Scipt schreiben, dass in einem bestimmten Radius oder bis zu bestimmten Punkten (-> Viereck) da lauter große ClutterCutter setzt?

  • Hallo Maaxxs,


    das Problem mit Kollision kannst du umgehen, indem du das Objekt zuerst irgendwo außerhalb spawns [0,0,0] und anschließend die Physik mittels enableSimulation false ausschaltest, dann kannst du es auch in andere Objekte verschieben, ohne das es zu Explosionen kommt. Allerdings wird dann sicherlich nicht mehr das Grasplätten gehen, da das wohl nur beim Spawnen passiert. Wie es sich mit den Rasenmähern verhält, wäre dann noch zu testen, aber die kann man ja auch problemlos direkt an die entsprechende Stelle spawnen, auch wenn dort ein Objekt steht.


    Ein Skript könnte so aussehen, dass du einen rechteckigen Trigger erstellst und dann folgendes Skript aufrufst, wobei du den Trigger als Objekt mit übergibst, wodurch wir die Maße der Fläche erhalten:



    Einfach einen Trigger erstellen, Bedingung auf true oder sonst wie gewünscht stellen, gewünsche Maße einstellen und anschließend bei Aktivierung [thistrigger] execVM "cutter.sqf" eingeben. Skript kann man immer optimieren, aber ich habe es jetzt so geschrieben, das jeder Schritt wirklich nachvollziehbar und offensichtlich ist.


  • Vielen Dank, funktioniert echt gut. Musste die _width vom Rasemäher etwas runterstellen, damit das Gras auch restlos entfernt wird.
    werde da noch bisschen dran rumschrauben

  • Ich habe mir hier noch ein paar Gedanken gemacht. Ich wollte, dass die Fläche, die von Gras befreit werden soll nicht unbedingt parallel zur x- bzw y- Achse ist, also auch schräg sein kann.
    Habe das mit Vektoren gelöst



    das ganze mit [h1,h2,h3] execVM "cutter.sqf";ausführen. h1 usw. können zB. unsichtbare Helipads sein, dann sieht man auch nix mehr davon.
    Wie im Code steht, stellen die ersten zwei übergebenen Objekte die Grundlinie dar. Das dritte Objekt dann die Höhe und Richtung.


    hier Flugfeld Chernarus, Blickrichtung Nord