![]() |
#1 (permalink) |
![]() Registriert seit: 27.02.2013
Beiträge: 13
|
![]()
Hallo Leute.
Ein kleines aber dringendes Problem. ![]() Wie kann ich Gegner befehlen sich nicht von ihrer Position zu entfernen, sich aber trotzdem zu verteidigen. Mein Problem ist nähmlich: Ich habe in einem Dorf ein Haus welches mit Gegnern und Geiseln besetzt ist. Hab auch den Befehl "doStop this;" (bei jeder Einheit) verwendet, aber mir scheint sobald ein weiterer Gegner (nicht im Haus) eine Rauchgranate (orange?) geworfen hat, kommen die meisten/alle aus dem Haus und untersuchen den Platz wo die Granate geworfen wurde und kehren nicht mehr zurück. ![]() Mein Wunsch wäre es wenn sie nur die Position halten/bewachen würden und sich nur um Spieler die zu den Geiseln wollen angreifen. Vielleicht weiß jemand eine Lösung. mfg whatever828 |
![]() |
![]() |
#2 (permalink) |
![]() ![]() ![]() ![]() Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
![]()
Kopiere den folgenden Code in die Initialisierungszeile dieser Einheiten.
Code:
Warten1 = true; temp = this spawn { private ["_pos","_dir"]; _pos = position _this; _dir = getDir _this; while {alive _this and Warten1} do { sleep 1; _this setPos _pos; _this setDir _dir } }; Beachte die Variable Warten1. Sie lässt den Code so lange laufen, bis ihr Wert auf false gesetzt wird: Warten1 = false; Das kannst du z.B. mit einem Auslöser tun, wenn Feinde dessen Bereich betreten. Für weitere Soldaten an einem anderen Ort änderst du die Variable auf Warten2 usw. |
![]() |
![]() |
#3 (permalink) |
![]() Registriert seit: 27.02.2013
Beiträge: 13
|
![]()
Danke erstmal.
Habs gerade ausprobiert und es klappt auch (klappt nicht bei Einheiten auf Dächern). Nur.... jetzt läuft die Einheit in einer Endlosschleife. Meine Vorgehensweise ist folgende. Ich stell mich mit meiner Einheit (egal ob Freund oder Feind) auf ein Haus und spring herunter. Daraufhin geht die Einheit diesem Geräusch nach - was ich aber verhindern will, weil die Einheit soll ja bei den Geiseln bleiben und diesen Bereich nicht verlassen. ![]() Auch der Befehl this disableAI "MOVE"; hat nichts gebracht. Hatt sonst noch wer eine Idee wie ich das in den Griff bekomme? |
![]() |
![]() |
#6 (permalink) |
![]() Registriert seit: 27.02.2013
Beiträge: 13
|
![]()
Ok. Hat jetzt geklappt. Hab den Zeitintervall auf 0.01 gestellt.
Ich bin auf noch was gestoßen. Da die Einheiten mit diesem Code immer am Kartenboden spawnen müssen bei Einheiten die in verschiedenen Stockwerken spawnen sollen kleine Änderungen vorgenommen werden. Man muss bei dem Befehl this setPosATL (this modelToWorld[0,0,-6]); die Höhenangabe in einen positiven Wert umwandeln. Hier muss man halt mit der Höhe experimentieren. Beispiel: this setPosATL (this modelToWorld[0,0,+6]); Danke nochmal für die schnelle und ausgezeichnete Hilfe. ![]() Geändert von whatever828 (28.02.2013 um 22:25 Uhr). |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
![]() |
||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Fragen zum Editor | chris2110 | Editing & Scripting | 1014 | 26.08.2014 00:25 |
- Evolution Blue und Hohei für [OA] und [A2]- | Pfandgiraffe | Usermade Missions | 155 | 26.08.2011 20:11 |
Fehlermeldungen bei Schüssen | GER_CJ-187 | Technische Fragen & Probleme | 2 | 22.11.2010 13:47 |
Probleme bei Norrin Revive Script 0.49b | Jekko | Editing & Scripting | 24 | 21.09.2010 20:39 |
Multiplayer PROBLEM!!! | Panzagrenadier | Multiplayer | 15 | 18.06.2010 15:12 |