]> git.mxchange.org Git - flightgear.git/commitdiff
Yank the "castering" attribute and replace it with a ControlMap-enabled
authorandy <andy>
Thu, 23 May 2002 19:30:56 +0000 (19:30 +0000)
committerandy <andy>
Thu, 23 May 2002 19:30:56 +0000 (19:30 +0000)
control that can be set via the property system.  This allows implementation
of the DC-3 wheel lock.

src/FDM/YASim/ControlMap.cpp
src/FDM/YASim/ControlMap.hpp
src/FDM/YASim/FGFDM.cpp

index 628c059a6cf5954d917d0ddb62d29349de8c11b1..e5d3ba19171239fde39ef2cc138411fe908c70bc 100644 (file)
@@ -192,6 +192,7 @@ void ControlMap::applyControls(float dt)
        case BRAKE:    ((Gear*)obj)->setBrake(lval);               break;
        case STEER:    ((Gear*)obj)->setRotation(lval);            break;
        case EXTEND:   ((Gear*)obj)->setExtension(lval);           break;
+       case CASTERING:((Gear*)obj)->setCastering(lval != 0);      break;
        case SLAT:     ((Wing*)obj)->setSlat(lval);                break;
        case FLAP0:    ((Wing*)obj)->setFlap0(lval, rval);         break;
        case FLAP1:    ((Wing*)obj)->setFlap1(lval, rval);         break;
index cbbd46ab6a662fc8026806026c964c9e9fa9d6c5..10713e675882034fd34d7f6d9b830f299a102668 100644 (file)
@@ -13,7 +13,7 @@ public:
                      ADVANCE, REHEAT, PROP,
                      BRAKE, STEER, EXTEND,
                      INCIDENCE, FLAP0, FLAP1, SLAT, SPOILER, VECTOR,
-                      BOOST };
+                      BOOST, CASTERING };
 
     enum { OPT_SPLIT  = 0x01,
            OPT_INVERT = 0x02,
index edd2cc231609f13d638106c7befd9b923a098131..9c911a7388afb7ffc07ddb32ce4b7a509d3670bf 100644 (file)
@@ -174,8 +174,6 @@ void FGFDM::startElement(const char* name, const XMLAttributes &atts)
         g->setBrake(attrf(a, "skid", 0));
        g->setStaticFriction(attrf(a, "sfric", 0.8));
        g->setDynamicFriction(attrf(a, "dfric", 0.7));
-       if(a->hasAttribute("castering"))
-           g->setCastering(true);
        _airplane.addGear(g);
     } else if(eq(name, "fuselage")) {
        float b[3];
@@ -500,6 +498,7 @@ int FGFDM::parseOutput(const char* name)
     if(eq(name, "FLAP1"))     return ControlMap::FLAP1;
     if(eq(name, "SLAT"))      return ControlMap::SLAT;
     if(eq(name, "SPOILER"))   return ControlMap::SPOILER;
+    if(eq(name, "CASTERING")) return ControlMap::CASTERING;
     SG_LOG(SG_FLIGHT,SG_ALERT,"Unrecognized control type '"
            << name << "' in YASim aircraft description.");
     exit(1);