1
0
Fork 0

Final touches on Vinson: Add bridge as clickspot for controls, separate course controls for carriers, add wakes to Vinson escorts

This commit is contained in:
Thorsten Renk 2017-11-10 09:24:33 +02:00
parent b53010ba70
commit 00972633bf
5 changed files with 109 additions and 36 deletions

View file

@ -108,7 +108,7 @@
<entry>
<type>escort</type>
<model>Models/Maritime/Military/OliverPerryFFG.xml</model>
<model>Models/Maritime/Military/OliverPerryFFG-high-detail.xml</model>
<name>Escort-2</name>
<callsign>Escort-1</callsign>
<turn-radius-ft alias="../../parameters/turn-radius-ft"/>
@ -128,7 +128,7 @@
<entry>
<type>escort</type>
<model>Models/Maritime/Military/OliverPerryFFG.xml</model>
<model>Models/Maritime/Military/OliverPerryFFG-high-detail.xml</model>
<name>Escort-3</name>
<callsign>Escort-2</callsign>
<turn-radius-ft alias="../../parameters/turn-radius-ft"/>
@ -148,7 +148,7 @@
<entry>
<type>escort</type>
<model>Models/Maritime/Military/OliverPerryFFG.xml</model>
<model>Models/Maritime/Military/OliverPerryFFG-high-detail.xml</model>
<name>Escort-4</name>
<callsign>Escort-3</callsign>
<turn-radius-ft alias="../../parameters/turn-radius-ft"/>
@ -168,7 +168,7 @@
<entry>
<type>escort</type>
<model>Models/Maritime/Military/LPD17.xml</model>
<model>Models/Maritime/Military/LPD17-high-detail.xml</model>
<name>LPD 17</name>
<callsign>LPD 17</callsign>
<turn-radius-ft alias="../../parameters/turn-radius-ft"/>

View file

@ -48,17 +48,22 @@ by Thorsten Renk 2017
#menu_nd.getNode("binding", 1).getNode("dialog-name", 1).setValue("TrumanControls");
#fgcommand("gui-redraw");
# set up the animation control properties
# set up the animation and course control properties
setprop("/controls/truman/crew", 0);
setprop("/controls/truman/deck-park",0);
setprop("/controls/truman/wave-motion",0);
setprop("/controls/truman/lights", 0);
setprop("/controls/truman/turn-to-launch-hdg", 0);
setprop("/controls/truman/turn-to-recovery-hdg", 0);
setprop("/controls/truman/turn-to-base-course", 1);
setprop(pathc~"/wave-motion/pitch", 0.0);
setprop(pathc~"/wave-motion/roll", 0.0);
# init JBD
setprop("/controls/truman/jbd[0]/state", 0);

View file

@ -30,12 +30,16 @@ apart from most of the very excellent textures, remain. -->
setprop(self.getPath()~"/dlg-name", "Vinson");
# init animation and detail properties
# init course control, animation and detail properties
setprop("/controls/vinson/deck-park",0);
setprop("/controls/vinson/crew",0);
setprop("/controls/vinson/lights", 0);
setprop("/controls/vinson/turn-to-launch-hdg", 0);
setprop("/controls/vinson/turn-to-recovery-hdg", 0);
setprop("/controls/vinson/turn-to-base-course", 1);
################
# elevators
@ -2790,5 +2794,28 @@ apart from most of the very excellent textures, remain. -->
</hovered>
</animation>
<animation>
<type>pick</type>
<object-name>Island</object-name>
<object-name>Nav-Bridge-Deck</object-name>
<object-name>Flag-Bridge-Deck</object-name>
<action>
<button>0</button>
<repeatable>false</repeatable>
<binding>
<command>dialog-show</command>
<dialog-name>Vinson</dialog-name>
<property></property>
</binding>
</action>
<hovered>
<binding>
<command>set-tooltip</command>
<tooltip-id>bridge</tooltip-id>
<label>show Vinson control dialog</label>
</binding>
</hovered>
</animation>
</PropertyList>

View file

@ -51,7 +51,7 @@
<col>0</col>
<halign>left</halign>
<label>Turn to launch course</label>
<property>/ai/models/carrier/controls/turn-to-launch-hdg</property>
<property>/controls/truman/turn-to-launch-hdg</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
@ -59,12 +59,19 @@
<binding>
<command>nasal</command>
<script>
var v = getprop("/ai/models/carrier/controls/turn-to-launch-hdg");
var v = getprop("/controls/truman/turn-to-launch-hdg");
foreach (var c; props.globals.getNode("/ai/models").getChildren("carrier")){
if (c.getNode("name").getValue() == "Truman")
{
c.getNode("controls/turn-to-launch-hdg").setBoolValue(v);
c.getNode("controls/turn-to-recovery-hdg").setBoolValue(0);
c.getNode("controls/turn-to-base-course").setBoolValue(0);
}
}
setprop("/controls/truman/turn-to-base-course", 0);
setprop("/controls/truman/turn-to-recovery-hdg", 0);
</script>
</binding>
</radio>
@ -74,7 +81,7 @@
<col>0</col>
<halign>left</halign>
<label>Turn to recovery course</label>
<property>/ai/models/carrier/controls/turn-to-recovery-hdg</property>
<property>/controls/truman/turn-to-recovery-hdg</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
@ -82,12 +89,18 @@
<binding>
<command>nasal</command>
<script>
var v = getprop("/ai/models/carrier/controls/turn-to-recovery-hdg");
var v = getprop("/controls/truman/turn-to-recovery-hdg");
foreach (var c; props.globals.getNode("/ai/models").getChildren("carrier")){
if (c.getNode("name").getValue() == "Truman")
{
c.getNode("controls/turn-to-recovery-hdg").setBoolValue(v);
c.getNode("controls/turn-to-launch-hdg").setBoolValue(0);
c.getNode("controls/turn-to-base-course").setBoolValue(0);
}
}
setprop("/controls/truman/turn-to-base-course", 0);
setprop("/controls/truman/turn-to-launch-hdg", 0);
</script>
</binding>
</radio>
@ -97,7 +110,7 @@
<col>0</col>
<halign>left</halign>
<label>Turn to base course</label>
<property>/ai/models/carrier/controls/turn-to-base-course</property>
<property>/controls/truman/turn-to-base-course</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
@ -105,12 +118,19 @@
<binding>
<command>nasal</command>
<script>
var v = getprop("/ai/models/carrier/controls/turn-to-base-course");
var v = getprop("/controls/truman/turn-to-base-course");
foreach (var c; props.globals.getNode("/ai/models").getChildren("carrier")){
if (c.getNode("name").getValue() == "Truman")
{
c.getNode("controls/turn-to-base-course").setBoolValue(v);
c.getNode("controls/turn-to-recovery-hdg").setBoolValue(0);
c.getNode("controls/turn-to-launch-hdg").setBoolValue(0);
}
}
setprop("/controls/truman/turn-to-launch-hdg", 0);
setprop("/controls/truman/turn-to-recovery-hdg", 0);
</script>
</binding>
</radio>

View file

@ -51,7 +51,7 @@
<col>0</col>
<halign>left</halign>
<label>Turn to launch course</label>
<property>/ai/models/carrier/controls/turn-to-launch-hdg</property>
<property>/controls/vinson/turn-to-launch-hdg</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
@ -59,12 +59,19 @@
<binding>
<command>nasal</command>
<script>
var v = getprop("/ai/models/carrier/controls/turn-to-launch-hdg");
var v = getprop("/controls/vinson/turn-to-launch-hdg");
foreach (var c; props.globals.getNode("/ai/models").getChildren("carrier")){
if (c.getNode("name").getValue() == "Vinson")
{
c.getNode("controls/turn-to-launch-hdg").setBoolValue(v);
c.getNode("controls/turn-to-recovery-hdg").setBoolValue(0);
c.getNode("controls/turn-to-base-course").setBoolValue(0);
}
}
setprop("/controls/vinson/turn-to-base-course", 0);
setprop("/controls/vinson/turn-to-recovery-hdg", 0);
</script>
</binding>
</radio>
@ -74,7 +81,7 @@
<col>0</col>
<halign>left</halign>
<label>Turn to recovery course</label>
<property>/ai/models/carrier/controls/turn-to-recovery-hdg</property>
<property>/controls/vinson/turn-to-recovery-hdg</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
@ -82,12 +89,19 @@
<binding>
<command>nasal</command>
<script>
var v = getprop("/ai/models/carrier/controls/turn-to-recovery-hdg");
var v = getprop("/controls/vinson/turn-to-recovery-hdg");
foreach (var c; props.globals.getNode("/ai/models").getChildren("carrier")){
if (c.getNode("name").getValue() == "Vinson")
{
c.getNode("controls/turn-to-recovery-hdg").setBoolValue(v);
c.getNode("controls/turn-to-launch-hdg").setBoolValue(0);
c.getNode("controls/turn-to-base-course").setBoolValue(0);
}
}
setprop("/controls/vinson/turn-to-base-course", 0);
setprop("/controls/vinson/turn-to-launch-hdg", 0);
</script>
</binding>
</radio>
@ -97,7 +111,7 @@
<col>0</col>
<halign>left</halign>
<label>Turn to base course</label>
<property>/ai/models/carrier/controls/turn-to-base-course</property>
<property>/controls/vinson/turn-to-base-course</property>
<live>true</live>
<binding>
<command>dialog-apply</command>
@ -105,12 +119,19 @@
<binding>
<command>nasal</command>
<script>
var v = getprop("/ai/models/carrier/controls/turn-to-base-course");
var v = getprop("/controls/vinson/turn-to-base-course");
foreach (var c; props.globals.getNode("/ai/models").getChildren("carrier")){
if (c.getNode("name").getValue() == "Vinson")
{
c.getNode("controls/turn-to-base-course").setBoolValue(v);
c.getNode("controls/turn-to-recovery-hdg").setBoolValue(0);
c.getNode("controls/turn-to-launch-hdg").setBoolValue(0);
}
}
setprop("/controls/vinson/turn-to-launch-hdg", 0);
setprop("/controls/vinson/turn-to-recovery-hdg", 0);
</script>
</binding>
</radio>