X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FAIModel%2FAITanker.cxx;h=73ec625381584d1a4c47db303c939718ff4dfd45;hb=9d995907db00728da7eac9297ecbab93ed8a7400;hp=5d5d72a5b24888c331e919d5ad9c30757d81658a;hpb=97ed8554c61f0f56e3115e826c6a79e4c73e3ed9;p=flightgear.git diff --git a/src/AIModel/AITanker.cxx b/src/AIModel/AITanker.cxx index 5d5d72a5b..73ec62538 100644 --- a/src/AIModel/AITanker.cxx +++ b/src/AIModel/AITanker.cxx @@ -25,6 +25,8 @@ #include "AITanker.hxx" +using std::string; + FGAITanker::FGAITanker(FGAISchedule* ref): FGAIAircraft(ref){ } @@ -35,28 +37,31 @@ void FGAITanker::readFromScenario(SGPropertyNode* scFileNode) { return; FGAIAircraft::readFromScenario(scFileNode); - setTACANChannelID(scFileNode->getStringValue("TACAN-channel-ID")); + setTACANChannelID(scFileNode->getStringValue("TACAN-channel-ID","")); + setName(scFileNode->getStringValue("name", "Tanker")); + } void FGAITanker::bind() { FGAIAircraft::bind(); - props->tie("refuel/contact", SGRawValuePointer(&contact)); + tie("refuel/contact", SGRawValuePointer(&contact)); + tie("position/altitude-agl-ft",SGRawValuePointer(&altitude_agl_ft)); + props->setStringValue("navaids/tacan/channel-ID", TACAN_channel_id.c_str()); + props->setStringValue("name", _name.c_str()); props->setBoolValue("tanker", true); } -void FGAITanker::unbind() { - FGAIAircraft::unbind(); - props->untie("refuel/contact"); -} - void FGAITanker::setTACANChannelID(const string& id) { TACAN_channel_id = id; } void FGAITanker::Run(double dt) { - FGAIAircraft::Run(dt); + //FGAIAircraft::Run(dt); + + double start = pos.getElevationFt() + 1000; + altitude_agl_ft = _getAltitudeAGL(pos, start); //###########################// // do calculations for radar // @@ -79,4 +84,4 @@ void FGAITanker::update(double dt) { FGAIAircraft::update(dt); Run(dt); Transform(); -} \ No newline at end of file +}