Objekt im Inventar, Mission erfüllt
Buliwyf hat mir gezeigt wie eine Aufgabe abgehakt wird nachdem man ein bestimmtes Objekt aufgehoben hat, das klappt auch wie es soll, ich möchte allerdings dass sich das Objekt im Inventar einer (gegnerischen) Einheit befindet, wie stelle ich das an?
Gruß |
Die ganze Sache laesst sich auch einfacher Regeln.
1. In die Init der Einheit mit dem Dokument Code:
this addweapon "EvMoscow"; Code:
condition: player hasweapon "EvMoscow"; Code:
condition: taskfile hoschi |
Öhmm.. ok... :D
Das ist etwas einfacher... erstelle folgenden Auslöser: http://www.gdt-server.net/buliwyf/arma2/bsp2.jpg Die Variable "evidence" aus meinem Beispiel wird wahr, sobald ein Spieler die Karte in seiner Ausrüstung trägt. ;) |
@hoschi
Danke für die Antwort, aber das funktioniert ja wie es soll ... Never change a running system un so... :D Du hast ja die Mission gestern mitgespielt, ich will, dass falls der Minister beim Hinterhalt doch draufgehn sollte man trotzdem irgendwie rausfinden kann wo sich der Komplize befindet, und da dachte ich das mach ich mit der Map, die soll der Offizier einfach mitschleppen, und wenn man die Karte aus dem Inventar des Offiziers nimmt erscheint halt ein Text , siehe meine angehängten Bilder... :) http://www.abload.de/img/arma2oa2012-03-2414-5x6z42.jpg http://www.abload.de/img/arma2oa2012-03-2414-4j4k70.jpg |
Du gibst deinem offizier die karte ueber die initzeile mit dem addweapon befehl (statt "EvMoscow" eben "EvMap")
und wenn der minister sowie der offizier tot sind dann geht man zu der leiche des offiziers und nimmt die karte, wie eine waffe oder granate, aus seinem inventar in das eigene und der trigger wird ausgeloest. das einzige was dabei tricky ist wenn der offizier im fahrzeug stirbt und das vehicle einen damage von 1 erleidet, dann kommt man naehmlich nicht mehr an die karte heran , in diesem fall koennte man die missi als gescheitert sehen oder die karte neben dem zerstoerten fahrzeug spawnen lassen und per addaction mit der karte auf dem boden das ganze ausloesen. gruß hoschi |
Zitat:
|
Zitat:
wie hast du den die abfrage gemacht? in einem trigger mit Code:
player hasweapon "EvMap" edit: ich hab dir mal ein beispiel angehangen. |
Vielleicht sollte ich auch erwähnen dass es keine "Aufgabe" sein soll, also muss kein Task auf "Succeeded" gestellt werden :)
Will lediglich in den Infos reinschreiben, dass wenn der Minister beim Hinterhalt umgekommen ist, man doch den Offizier durchsuchen soll, und sobald man dann die Karte vom Offizier nimmt erscheint die Meldung... Will nicht jedem die Karte geben, nur der Offizier soll diese eine bei sich führen :D So schauts bei mir jetzt aus: http://www.abload.de/img/1x9low.jpg http://www.abload.de/img/arma2oa2012-03-2416-2k0bws.jpg http://www.abload.de/img/arma2oa2012-03-2416-2olyl9.jpg |
Zitat:
Zitat:
gruß hoschi |
Zitat:
Genau so möchte ich das haben hoschi! :daumen: Weiß nicht ob das von dir so gewollt war, aber die angehängte Datei ist "nur" eine pbo, konnte im Editor also nicht nachsehen wie du das gemacht hast.... Gruß |
Liste der Anhänge anzeigen (Anzahl: 1)
ops, hier ist die richtige variante :daumen:
|
Zitat:
|
Hali Hallo,
Wie gestern im Teamspeak bereits erwähnt bekomme ich es nicht gepacken dass das Missionsziel bei jedem Mitspieler abgehakt wird sobald das Objekt von jemanden aufgehoben wurde. Wäre nett wenn mir das nochmal hier jemand sagen könnte was ich da genau machen muss :) Gruß |
Arbeite zB mit einer Variable, die Du dann auf TRUE setzt, sobald das Objekt von einem Spieler aufgenommen wurde. Anschliessend sendest Du die Variable mittels publicVariable an alle anderen Spieler.
Du musst dann halt Deine Auslöser auf die Variable anpassen. |
|
Fast...
Jetzt machst Du für den ganzen Kram, hinter publicVariable "playerhatkarte" einen eigenen Auslöser, der als Auslösebedingung playerhatkarte hat und schmeisst den Krempel dort in das "Bei Aktivierung"-Feld. |
Geht auch mit nur einem Auslöser.
Die Variable playerhatkarte = false initialisieren. Im Auslöser: Bedingung: player hasWeapon "EVMap" or playerhatkarte Bei Akt.: playerhatkarte = true; publicVariable "playerhatkarte"; "2" objStatus "DONE"; ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:15 Uhr. |
Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias