11.07.2008, 13:50 | #1 (permalink) |
Marker verfolgt Fahrzeug??
Hallo Leute , ersma sorry das ich in letzter zeit soviele Freds aufmach , bin grad dabei ne größere Mission zu machen.....
Also , zum Problem: Ich möchte das der Marker (B) den Bus (x1) verfolgt.... aber ich kriegs nur hin das er an den Startpunkt switcht.... Hilfe!
__________________
|
|
11.07.2008, 18:25 | #5 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Wenn die Schleife verlassen wird, dann ist der Bus bereits zerstört. Da bruchst du nicht nochmals abfragen.
Wenn du den Marker löschen willst, dann schreibst du den Befehl dazu einfach in die Zeile nach der Abfrage. |
12.07.2008, 12:35 | #7 (permalink) |
Wie wäre es denn hiermit:
If(alive Soldat1)Then{"S1-Symbol" setMarkerPos getPos Soldat1} Else{"S1-Symbol" setMarkerType "Empty";exit}; Steht in der downloadbaren Guideversion 1.02 von mir. Irgendwo auf Seite 125. Grüße Mr-Murray
__________________
MR-MURRAY presents ArmA Editing Guide Deluxe Edition - English Version Download ArmA Editing Guide Deluxe Edition - German Version Download Visit me at Facebook! Mapfact Murray |
|
12.07.2008, 14:01 | #9 (permalink) |
1. Auslöser erstellen
Größe 0/0 Bedingung: Player knowsAbout Car > 1 bei Auslösung: [Car] exec "script.sqs" Ins Skript: _car = _this If(alive _car)Then{"S1-Symbol" setMarkerPos getPos _car} Else{"S1-Symbol" setMarkerType "Empty";exit}; Da kannst den Marker aus erst im Skript erstellen! Cheers Mr-Murray
__________________
MR-MURRAY presents ArmA Editing Guide Deluxe Edition - English Version Download ArmA Editing Guide Deluxe Edition - German Version Download Visit me at Facebook! Mapfact Murray |
|
12.07.2008, 14:32 | #10 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Das ganze in einem .sqf Skript sieht dann so aus:
Code:
//Wenn Spieler in einem Fahrzeug, dann Markierung auf der Karte // mit Namen, Fahrzeugbezeichnung und fortlaufender Position. private ["_m"]; //Marker erstellen _m = createMarkerLocal["M120708",[0,0]]; _m setMarkerShapeLocal "ICON"; _m setMarkerSizeLocal [0.7,0.7]; _m setMarkerColorLocal "ColorRed"; while{true} do { if (player != vehicle player) then { _m setMarkerTextLocal format["%1 in %2",name player,typeof vehicle player]; _m setMarkerTypeLocal "Dot"; while{player != vehicle Player} do { _m setMarkerPosLocal position player; sleep 0.1 }; _m setMarkerTypeLocal "Empty"; }; sleep 2 }; |
21.10.2008, 03:03 | #11 (permalink) |
Registriert seit: 23.05.2008
Ort: SFB
Alter: 42
Beiträge: 170
|
Also ich habe ein ähnliches Problem
habe einen Marker X und ein Fahrzeug Y bereits auf der Map ich möchte das der Marker sich ständig über dem Fahrzeug befindet ... - es geht um den Mobile Respawn von Norrn dem muss ich ne marker variable geben => und das Fahrzeug y is der mobile respawn ... !!!! Bitte dazu schreiben wie ich das Script auslöse also Auslöser Bedingung Aktivierung .... achso wen das fahzeug zerstört ist - spawned es nach paar sek. neu am platze wo es zerstört wurde thx schon mal |
21.10.2008, 20:55 | #12 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Im Anhang ein Beispiel wie ohne ein Skript nur über einen Auslöser der Marker X dem Objekt Y laufend nachgesetzt wird.
Ein zweiter Auslöser erstellt das Objekt Y neu wenn es zerstört ist. Dabei ist zu beachten, wie das neue Objekt wieder auf den Namen Y erstellt wird. Das Beispiel ist auch für Multiplayer-Missionen geeignet. |
22.10.2008, 04:48 | #14 (permalink) |
Registriert seit: 23.05.2008
Ort: SFB
Alter: 42
Beiträge: 170
|
@ Vienna
also habe es so wie in deinen BSP übernommen - funzt wie Atze .... arbeite in Kombi mit dem NORRN revive script ... und wenn ich an meinem Marker x spawne liege ich atürlich genau unter meinem Fahrzeug .. entweder man lässt den MArker 5m hinter dem Fahzeug verfolgen oder ändert irgendwas im NORRN Script hast du ne Idee ?????? habe die betreffene Zeile rot makiert ... _Base_2 is gleich Marker x :wird in einer revive_init.sqf vereinbart .... respawn script von NORRN: Code:
_no_respawn_points = NORRN_revive_array select 12; _Base_1 = NORRN_revive_array select 13; _Base_2 = NORRN_revive_array select 14; _Base_3 = NORRN_revive_array select 15; _Base_4 = NORRN_revive_array select 16; _mobile_spawn = NORRN_revive_array select 51; _mobile_base_start = NORRN_revive_array select 52; if (_spawn_pos == 1 && _Base_1 != "" && !no_base_1 && !no_base_1b) then { _name setpos getMarkerPos _Base_1; titleText ["You have respawned at Base", "PLAIN", 0.5]; call compile format ["%1_respawn_at_base = true; publicVariable ""%1_respawn_at_base""", _name]; If (NORRNCustomExec3 != "") then {call compile NORRNCustomExec3}; NORRN_spawn_chosen = true; }; if (_spawn_pos == 1 && _Base_1 != "" && no_base_1 || _spawn_pos == 1 && _Base_1 != "" && no_base_1b) then { //Respawn point name for mobile spawn if (_mobile_spawn == 0) then { r_spawn1 = _Base_1 }else{ if ((getMarkerPos _Base_1) distance (getMarkerPos _mobile_base_start) > 20) then { r_spawn1 = _Base_1; }else{ r_spawn1 = _mobile_base_start; }; }; if (_no_respawn_points == 1) then {_dialog_1 = createDialog "respawn_button_1";ctrlSetText [1, r_spawn1];}; if (_no_respawn_points == 2) then {_dialog_1 = createDialog "respawn_button_2";ctrlSetText [1, r_spawn1];ctrlSetText [2, _Base_2];}; if (_no_respawn_points == 3) then {_dialog_1 = createDialog "respawn_button_3";ctrlSetText [1, r_spawn1];ctrlSetText [2, _Base_2];ctrlSetText [3, _Base_3];}; if (_no_respawn_points == 4) then {_dialog_1 = createDialog "respawn_button_4";ctrlSetText [1, r_spawn1];ctrlSetText [2, _Base_2];ctrlSetText [3, _Base_3];ctrlSetText [4, _Base_4];}; sleep 0.1; if (NORRN_r_time_expire) then { titletext ["This spawn point is currently occupied by enemy forces \n\nRevive timer has been exceeded. Choose marker for respawn", "BLACK FADED", 10]; }else{ titleText ["This spawn point is currently occupied by enemy forces", "PLAIN", 0.3]; }; if (NORRNCustomExec4 != "") then {call compile NORRNCustomExec4}; }; if (_spawn_pos == 2 && _Base_2 != "" && !no_base_2 && !no_base_2b) then { _name setpos getMarkerPos _Base_2; titleText ["You have respawned at Mobile_MHQ", "PLAIN", 0.5]; call compile format ["%1_respawn_at_base = true; publicVariable ""%1_respawn_at_base""", _name]; If (NORRNCustomExec3 != "") then {call compile NORRNCustomExec3}; NORRN_spawn_chosen = true; }; if (_spawn_pos == 2 && _Base_2 != "" && no_base_2 || _spawn_pos == 2 && _Base_2 != "" && no_base_2b) then { //Respawn point name for mobile spawn if (_mobile_spawn == 0) then { r_spawn1 = _Base_1 }else{ if ((getMarkerPos _Base_1) distance (getMarkerPos _mobile_base_start) > 20) then { r_spawn1 = _Base_1; }else{ r_spawn1 = _mobile_base_start; }; };..........bla bla bla Grüße ! |
22.10.2008, 11:56 | #15 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Anstelle deiner rot markierten Zeile füge folgende Zeilen ein:
Code:
_tempRadio = "Radio" createVehicleLocal getMarkerPos _Base_2; _name setpos position _tempRadio; deleteVehicle _tempRadio; Die Variable _tempRadio musst du wahrscheinlich vor der If Abfrage "initialisieren"! z.B.: _tempRadio = objNull; |
22.10.2008, 15:36 | #17 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Zum Marker wäre noch zu bemerken, dass der publik ist. Dass heißt, er ist für alle Spieler sichtbar.
Soll der Marker z.B. nur für die Westseite sichtbar sein, dann erstellst du den Marker mit Type "Leer" (im Spiel unsichtbar) und für die Westseitenspieler machst du ihn mit dieser Befehlszeile sichtbar: if(playerSide==WEST) then{"X" setMarkerTypeLocal "Dot"} |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Unsichtbare Marker | Mr.g-c | Editing | 7 | 26.03.2008 15:13 |
Ziel marker? | Alex.Sworn | Editing | 2 | 13.09.2006 17:15 |
Marker-Problem | SWAT | Editing | 5 | 29.04.2006 20:41 |
MP Marker und Radio pro Seite | macbeth | Editing | 0 | 21.04.2006 22:10 |
vom Feind verfolgt | SWAT | Editing | 8 | 14.09.2005 21:13 |