Armed-Assault.de Twitter
 
 
Themen-Optionen Ansicht
Alt 24.09.2010, 09:10   #1 (permalink)
500 Beiträge
 
Benutzerbild von Anemia
 
Registriert seit: 20.05.2009
Beiträge: 605
Standard Briefing - Missionsziele später anzeigen

Eine frage zum Briefing.

Ich habe mein Briefing soweit fertig und es funktioniert auch alles, bis auf die tatsache das ich nicht gleich alle Ziele von beginn an anzeigen möchte.

Im Briefing Tutorial von AMS steht da folgendes:
Briefing Tutorial [0.9] | AMS Downloadarchiv - Assault Mission Studio

Code:
[] spawn {
waitUntil {!(isNil "obj3_active")};
task3 = player createSimpleTask ["Neues Ziel: T72 zerstören"];
};
[] spawn {
waitUntil {!(isNil "obj4_active")};
task4 = player createSimpleTask ["Neues Ziel: Ortschaft säubern"];
task4 setSimpleTaskDestination markerpos "Ortschaft";
};
wofür steht hier das obj3_active ?!

Ich habe meine missionsziele task1,task2,task3 usw. genannt.
Auf der Karte gibt es dann "leere" marker mit namen obj1,obj2 usw. als Missionsziel Marker für das Briefing.
Das beispiel oben verstehe ich so das wenn obj3 nicht mehr aktiv ist dann wird task 3 angezeigt ?! oder steh ich gerade total auf dem schlauch.


Bräuchte mal einen stupps in die richtige richtung.
Anemia ist offline  
Alt 24.09.2010, 09:45   #2 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Buliwyf
 
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
Standard

obj3_active ist eine simple selbst definierte Variable, die erstellt wird, wenn das Missionszziel davor erledigt wurde.

Beispiel: Shilka ist Missionsziel 2 und wurde zerstört, dann wird zB mittels player setVariable ["obj3_active",true,true]; der nächste Task aktiviert.

__________________
Buliwyf ist offline  
Alt 24.09.2010, 10:16   #3 (permalink)
500 Beiträge
 
Benutzerbild von Anemia
 
Registriert seit: 20.05.2009
Beiträge: 605
Standard

Also wenn ich nun z.b. über einen auslöser
player setVariable ["obj1_active",true,true];
Deine zeile in der Initzeile ausführe, passiert leider das gleiche wie vorher.Das missionsziel wird zwar nicht angezeigt, leider aber auch nicht aktiv geschaltet. das nächste missionsziel ist dann " any"

der eintrag in meiner briefing.sqf sieht folgendermaßen dazu aus:

Code:
[] spawn {
waitUntil {!(isNil "obj1_active")};


        tskEvidence1 = player createSimpleTask["Primary: Find Evidence"]; 
        tskEvidence1 setSimpleTaskDescription["Find the Evidence in Sahke, we meet our Contact there. He has some Photos of 

Enemy Positions. Watch out ! Enemy forces patrolling near by<br/><br/>", "Primary: Find the Evidence in Sahke", "Primary: Find the 

Evidence in Sahke"];
        tskEvidence1 setSimpleTaskDestination (getMarkerPos "obj2");

};
Anemia ist offline  
Alt 24.09.2010, 11:25   #4 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Buliwyf
 
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
Standard

Änder mal:
Code:
waitUntil {!(isNil "obj1_active")};
in:
Code:
waitUntil {player getVariable "obj1_active"};
..um.

__________________
Buliwyf ist offline  
Alt 24.09.2010, 11:46   #5 (permalink)
500 Beiträge
 
Benutzerbild von Anemia
 
Registriert seit: 20.05.2009
Beiträge: 605
Standard

Danke , das schien die lösung gewesen zu sein.

Hat mir sehr geholfen..... damit ist meine Mission eigentlich fertig. Naja muss den text im Briefing nochmal bisschen ausbauen.

Anemia ist offline  
Alt 24.09.2010, 17:35   #6 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Pfandgiraffe
 
Registriert seit: 16.09.2008
Ort: Berlin
Alter: 38
Beiträge: 1.737
Pfandgiraffe eine Nachricht über ICQ schicken Pfandgiraffe eine Nachricht über Skype™ schicken
Standard

es hätte auch gereicht die variable ganz einfach im gewünschten moment zu definieren...

also
Code:
obj1_active = true;
peng!
__________________
Niemand hat die Absicht eine Tüte zu bauen!
​​​​​​​
___<<<A3 Wounding System>>>___
Pfandgiraffe ist offline  
Alt 22.01.2011, 14:20   #7 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von Cyclone83
 
Registriert seit: 16.01.2008
Ort: Rosenheim
Alter: 41
Beiträge: 238
Cyclone83 eine Nachricht über Skype™ schicken
Standard

Hallo,

Hab da auch n Problem, und zwar:
Die Methode von Buliwyf versteckt zwar im Briefing die späteren Missionsziele, aber sobald diese aktiviert werden, gibt's in der Hinweismeldung nur "any"
Bei der
"waitUntil {!(isNil "obj1_active")}"-Methode wird die Meldung beim Aufruf für das neue Missionsziel zwar richtig angezeigt, aber leider sind die "versteckten" Missionsziele ab Beginn der Mission unter "Aufgaben" bereits zu sehen
Hab mal den Auszug meiner Briefing.sqf angehängt.
Hat da jemand bitte nen Tipp für mich?
THX


_diary6 = player createDiaryRecord ["Diary", ["bla", "bla"]];

_diary5 = player createDiaryRecord ["Diary", ["bla", "bla"]];

_diary4 = player createDiaryRecord ["Diary", ["bla", "bla"]];

_diary3 = player createDiaryRecord ["Diary", ["bla", "bla"]];

_diary2 = player createDiaryRecord ["Diary", ["bla", "bla"]];

_diary1 = player createDiaryRecord ["Diary", ["bla", "bla"]];

task4 = player createSimpleTask ["Fallujah sauber halten"];
task4 setSimpleTaskDescription ["Halten Sie die Stellung...", "Fallujah sauber halten", "Fallujah"];

player setCurrentTask task4;

[] spawn {
waitUntil {!(isNil "obj2_active")};
task3 = player createSimpleTask ["Im Nachschublager..."];
task3 setSimpleTaskDescription ["Unser nordwestlich...", "Situation Nachschublager klären", "Nachschublager"];
};
[] spawn {
waitUntil {!(isNil "obj1_active")};
task2 = player createSimpleTask ["Brücke..."];
task2 setSimpleTaskDescription ["Ein feindliches...", "Brücke verminen", "Minen"];
};

player setCurrentTask task2;

task1 = player createSimpleTask ["Zu unserer Hauptbasis ..."];
task1 setSimpleTaskDescription ["Sie werden...", "Fahren Sie zu unserer Hauptbasis", "obj4"];

player setCurrentTask task1;

exit;



Die "Nebenmissionen werden derzeit folgendermaßen aufgerufen:
Bei nem bestimmten WP ist die Zeile "obj1_active = true". Auf der Karte ist ein Auslöser (Name: obj1_active, L X B jeweils 0, aktivierung KEINER, Bei Aktivierung:
task2 setTaskState "CREATED"; [objNull, ObjNull, task2, "CREATED"] execVM "CA\Modules\MP\data\scriptCommands\taskHint.sq f"
__________________
First aim, then shoot!

Geändert von Cyclone83 (22.01.2011 um 14:27 Uhr).
Cyclone83 ist offline  
Alt 22.01.2011, 14:27   #8 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Buliwyf
 
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
Standard

exit; hat in einer SQF-Datei nix verloren... da gehts schonmal los... und Leerzeichen zwischen "sq f" auch nicht...

__________________
Buliwyf ist offline  
Alt 22.01.2011, 15:28   #9 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von Cyclone83
 
Registriert seit: 16.01.2008
Ort: Rosenheim
Alter: 41
Beiträge: 238
Cyclone83 eine Nachricht über Skype™ schicken
Standard

ja, die Hint Zeile hab ich ausm Netz kopiert, meine passt
aber danke für den Hinweis mit dem exit ^^
Funzt aber trotzdem noch ned richtig
__________________
First aim, then shoot!
Cyclone83 ist offline  
Alt 22.01.2011, 16:56   #10 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Pfandgiraffe
 
Registriert seit: 16.09.2008
Ort: Berlin
Alter: 38
Beiträge: 1.737
Pfandgiraffe eine Nachricht über ICQ schicken Pfandgiraffe eine Nachricht über Skype™ schicken
Standard

Code:
[] spawn {
waitUntil {!(isNil "obj1_active")};
task2 = player createSimpleTask ["Brücke..."];
task2 setSimpleTaskDescription ["Ein feindliches...", "Brücke verminen", "Minen"];
task2 setTaskState "CREATED"; [objNull, ObjNull, task2, "CREATED"] execVM  "CA\Modules\MP\data\scriptCommands\taskHint.sqf";
player setCurrentTask task2;
};

task1 = player createSimpleTask ["Zu unserer Hauptbasis ..."];
task1 setSimpleTaskDescription ["Sie werden...", "Fahren Sie zu unserer Hauptbasis", "obj4"];

player setCurrentTask task1;


any wird angezeigt weil task2 da noch nicht definiert ist bzw. sind die ziele in der anderen methode zu sehen weil die var obj1_active offensichtlich schon definiert wurde, also nicht mehr nil ist.
achte darauf diese variable nicht zu definieren (z.b. in der init mit false oder sowas in der art)

und deine player setCurrentTask taskx; nach jedem spawn {} sind nicht nur überflüssig sondern auch falsch. wenn dann nur in den code.




mfg


p.s.: wenn das für den mp sein soll dann achte darauf das alle clienten die briefing.sqf ausführen und die vars wie obj1_active auch public gemacht und auch JIP's mitgeteilt werden.

p.p.s.: eigentlich ist in dem briefing tutorial alles bis ins detail beschrieben.
__________________
Niemand hat die Absicht eine Tüte zu bauen!
​​​​​​​
___<<<A3 Wounding System>>>___
Pfandgiraffe ist offline  
Alt 22.01.2011, 17:23   #11 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von Cyclone83
 
Registriert seit: 16.01.2008
Ort: Rosenheim
Alter: 41
Beiträge: 238
Cyclone83 eine Nachricht über Skype™ schicken
Standard

Is für ne SP Mini Kampangne ^^
Also Könnte ich im obj1_active Auslöser obj1_active = false definieren?
Thx
__________________
First aim, then shoot!
Cyclone83 ist offline  
Alt 25.01.2011, 15:54   #12 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Wenn du die Variable undefiniert machen willst, dann mit: obj1_active = nil
Vienna ist offline  
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Koordinaten anzeigen lassen hypercop Editing & Scripting 28 18.01.2011 23:53
Problem mit Briefing im MP Clawhammer Editing & Scripting 13 17.09.2010 18:29
briefing hilfe Dirk87 Editing & Scripting 0 11.09.2010 17:00
Modul gesetzt und Probleme im Briefing Jekko Editing & Scripting 5 22.05.2010 15:08


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119