out[0] = out[1] = out[2] = 0;
in[3] = out[3] = 1;
string contents_node;
+ contrail_altitude = 30000.0;
}
FGSubmodelMgr::~FGSubmodelMgr ()
FGSubmodelMgr::init ()
{
load();
- _serviceable_node = fgGetNode("/sim/systems/submodels/serviceable", true);
+ _serviceable_node = fgGetNode("/sim/submodels/serviceable", true);
_user_lat_node = fgGetNode("/position/latitude-deg", true);
_user_lon_node = fgGetNode("/position/longitude-deg", true);
_user_speed_east_fps_node = fgGetNode("/velocities/speed-east-fps",true);
_user_speed_north_fps_node = fgGetNode("/velocities/speed-north-fps",true);
- ai = (FGAIManager*)globals->get_subsystem("ai_model");
+ _contrail_altitude_node = fgGetNode("/environment/params/contrail-altitude", true);
+ contrail_altitude = _contrail_altitude_node->getDoubleValue();
+ _contrail_trigger = fgGetNode("ai/submodels/contrails", true);
+ _contrail_trigger->setBoolValue(false);
+ ai = (FGAIManager*)globals->get_subsystem("ai_model");
}
{
if (!(_serviceable_node->getBoolValue())) return;
int i=-1;
+
+ if (_user_alt_node->getDoubleValue() > contrail_altitude) {
+ _contrail_trigger->setBoolValue(true);
+ }
+
submodel_iterator = submodels.begin();
while(submodel_iterator != submodels.end()) {
i++;
{
int i;
- SGPropertyNode *path = fgGetNode("/sim/systems/submodels/path");
+ SGPropertyNode *path = fgGetNode("/sim/submodels/path");
SGPropertyNode root;
if (path) {
sm->contents = sm->contents_node->getDoubleValue();
- sm->prop = fgGetNode("/systems/submodels/submodel", i, true);
+ sm->prop = fgGetNode("/ai/submodels/submodel", i, true);
sm->prop->tie("count", SGRawValuePointer<int>(&(sm->count)));
// sm->prop->tie("contents", SGRawValuePointer<double>(&(sm->contents)));