![]() |
#1 (permalink) |
![]() ![]() ![]() |
![]()
Hallo,
ich benötige mal wieder Hilfe. Ich wollte gerne eine kleine hitzige TvT-Mission erstellen, und wollte dabei wichtige Punkte auf der Karte in die Farben der Parteien färben, sobald sich diese dort aufhalten. Soweit klappt das auch. Nur möchte ich es so haben, dass wenn sich zwei Parteien im selben Bereich aufhalten, der Marker eine neutrale Farbe erhält. zB.: Blufor = Blau Opfor = Rot Ins = Gelb Wenn sich 2 oder gar alle Seiten um einen Bereich 'streiten' soll der Marker schwarz werden. Und das selbe auch, wenn sich keiner mehr in diesem Bereich aufhält. Ich hatte nach dem selben Prinzip damals für ArmA1 gefragt, und mir wurde hier prächtig geholfen. Leider finde ich den Thread nicht mehr ![]() Und so wie ich es jetzt erst habe, soll es nicht sein. Da wird der Marker immer in die Farbe geändert, welche Partei den Bereich als letztes betreten hat. Also zB erst Blufor = Blau, dann kommt Opfor = Marker wird rot, obwohl sich Blufor noch im Bereich aufhält. Blufor besiegt Opfor und hällt den Bereich, trotzdem bleibt der Marker rot, man müsste erst mit allen Blufor's den Bereich verlassen und neu betreten. Hoffe, ihr könnt mir da wieder so toll helfen. Wäre überaus dankbar. ![]() MfG - Christopher |
![]() |
![]() |
#2 (permalink) |
![]() ![]() ![]() ![]() ![]() Registriert seit: 02.07.2006
Ort: Kabul
Alter: 38
Beiträge: 2.666
|
![]()
Ich haette dazu eine Idee, ungetestet sollte aber funktionieren.
Dazu 3 Trigger mit Aktivierung blue opf res, dem radius des gebietes und repeatedly in den triggern dann bei condition: this and isServer bei onact: Zone1Bluefor/Opfor/Resistance=true bei deact: Zone1Bluefor/Opfor/Resistance=false ein weiterer trigger bei dem in der condition zeile folgendes steht Code:
if (isServer) then { if (Zone1Bluefor=false and Zone1Opforpfor=false and zone1resistance=false) then {"markerzone1" setmarkercolor "colorblack"}; if (Zone1Bluefor=true and Zone1Opfor=true and Zone1Resistance=true) then {"markerzone1" setmarkercolor "colorblack"}; if (Zone1Bluefor=true and Zone1Opfor=false and Zone1Resistance=false) then {"markerzone1" setmarkercolor "colorblue"}; if (Zone1Bluefor=false and Zone1Opfor=true and Zone1Resistance=false) then {"markerzone1" setmarkercolor "colorred"}; if (Zone1Bluefor=false and Zone1Opfor=false and Zone1Resistance=true) then {"markerzone1" setmarkercolor "coloryellow"}; }; hoschi |
![]() |
![]() |
#6 (permalink) |
![]() ![]() ![]() ![]() Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
![]()
Die Abfrage wie viele Soldaten je Seite im Auslöserbereich sind würde ich heute so machen:
Code:
//LOKAL, färbt einen Marker nach Vorhandensein von Units in einem "Jeder" Auslöser. // //Parameter: // #0 Auslösername // #1 "Markername" // //Beispiel für einen Auslöser: // //Aktivierung: Jeder / einmal //Bedingung : true //Bei Akt : null=[Auslösername,"Markername"] execVM "MarkerFarbe.sqf" //private Variable private["_a","_m","_f","_w","_e","_g","_l","_t"]; //Parameter übernehmen _a = _this select 0; _m = _this select 1; _l = false; //true wenn Markerfarbe auf Gelb //Endlosschleife while{true}do { //zählt im Auslöserbereich die West-, East- und Resitanceeinheiten _t = list _a _w = west countSide _t; _e = east countSide _t; _g = resistance countSide _t; //Markerfarbe aufgrund der Zählung bestimmen if(_w<1 and _e<1 and _g<1 and _l) then{_f = "ColorBlack"; _l=false}; //grau: keine Einheiten im Bereich und zuvor war Farbe Gelb if(_w>0 and _e<1 and _g<1) then{_f = "ColorGreenAlpha";_l=false}; //grün: nur West im Bereich if(_e>0 and _w<1 and _g<1) then{_f = "ColorRedAlpha"; _l=false}; //rot : nur East im Bereich if(_g>0 and _w<1 and _e<1) then{_f = "ColorBlue"; _l=false}; //blau: nur Resi im Bereich if((_w>0 and(_e>0 or _g>0))or(_e>0 and _g>0)) then{_f = "ColorYellow"; _l=true}; //gelb: zwei Seiten im Bereich _m setMarkerColorLocal _f; //eine Sekunde Pause sleep 1 } |
![]() |
![]() |
#7 (permalink) |
![]() ![]() Registriert seit: 12.05.2009
Ort: FRA
Beiträge: 1.621
|
![]()
Hmmm sicher das es geht???
Bekomme es gerade nicht hin. Muss der Marker, beim im Editor platzieren, eine bestimmte Farbe haben???
__________________
![]() My Youtube Channel "Before you diagnose yourself with depression or low self esteem, first make sure you are not, in fact, just surrounded by assholes!" William Gibson |
![]() |
![]() |
#8 (permalink) |
![]() ![]() ![]() ![]() Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
![]()
Dem Marker im Editor die Farbe schwarz geben (die Farbe kann aber kein Fehler sein).
Im Skript habe ich in dieser Zeile den Strichpunkt vergessen: _t = list _a; Der Auslöser ist wie im Skript angeführt zu erstellen. Im Anhang ein Beispiel. Zu bemerken ist noch, dass der Marker die Farbe der letzten Einheit im Bereich behält, außer er war gelb und alle Einheiten sind zugleich gestorben oder haben gleichzeitig den Bereich verlassen, dann wird der Marker schwarz. Geändert von Vienna (09.04.2011 um 16:23 Uhr). |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|