Nasal code -- mal nicht verständlich

Modellieren und programmieren von Instrumenten

Nasal code -- mal nicht verständlich

Beitragvon Sanni » So Mär 16, 2014 7:50 pm

Hallo Ihrs, hoffentlich hattet ihr ein schönes Wochenende. Ich habe mal an folgendem Code rumgepruckelt:

Code: Alles auswählen
var switch_alarm = func( i ){
  setprop( "/controls/switches/master_caution", i );
  setprop( "/controls/switches/sounds/sounder", i );
} # switch_alarm()


var check_fuel = func(){
  if( getprop( "/consumables/fuel/tank/level-lbs" ) < 150 ){
    setprop( "/controls/switches/warn/fuel_low_level", "true" );
    switch_alarm( "true" );
  }else{
    setprop( "/controls/switches/warn/fuel_low_level", "false" );
    switch_alarm( "false" );
  }
  settimer( check_fuel, 1.0 );
} # check_fuel()


var check_doors = func(){
  if( getprop( "sim/model/door-positions/leftFrontDoor/position-norm"  ) > 0.0 or
      getprop( "sim/model/door-positions/leftSideDoor/position-norm"   ) > 0.0 or
     (getprop( "sim/model/door-positions/leftSlideDoor/position-norm"  ) > 0.0 and
      getprop( "sim/model/door-positions/leftSlideDoor/position-norm"  ) < 1.0 )or
      getprop( "sim/model/door-positions/rightFrontDoor/position-norm" ) > 0.0 or
      getprop( "sim/model/door-positions/rightSideDoor/position-norm"  ) > 0.0 or
     (getprop( "sim/model/door-positions/rightSlideDoor/position-norm" ) > 0.0 and
      getprop( "sim/model/door-positions/rightSlideDoor/position-norm" ) < 1.0 ) ){
    switch_alarm( "true" );
    setprop( "controls/switches/warn/door_lock", "true" );
  }else{
    switch_alarm( "false" );
    setprop( "controls/switches/warn/door_lock", "false" );
  }

  settimer( check_doors, 1.0 );
} # check_doors()


Nun die Preisfrage: Warum wird die Funktion switch_alarm() nur in check_fuel() ausgeführt aber nicht von check_doors()?
Die setprop()-Anweisung in check_doors() eine Zeile darunter wird durchgeführt aber die switch_alarm()-Zeile nicht. Das ist mir zu hoch!!! :shock:
Aus verzweiflung habe ich schon die Zeilen ausgetauscht -- brachte aber auch nichts. Ich weiss nicht weiter....

Ähm, Chef, wie wäre es, wenn es ein Unterforum gäbe, das 'Instrumente' getauft wird? Ich muss mich da mal Goosnens Antrag anschließen.

LG, Sanni
I failed the Turing test
Benutzeravatar
Sanni
 
Beiträge: 416
Registriert: Do Sep 26, 2013 9:05 am
Wohnort: Niedersachsen
Callsign: D-Sanni

Re: Nasal code -- mal nicht verständlich

Beitragvon geed » Mo Mär 17, 2014 8:09 am

Hm, Sanni - hast du vielleicht einfach nur vergessen, die check_doors() wenigstens einmal irgendwo zu starten?
Gruss,
geed
geed
 
Beiträge: 118
Registriert: Di Sep 24, 2013 9:09 am
Callsign: G-EED

Re: Nasal code -- mal nicht verständlich

Beitragvon Sanni » Mo Mär 17, 2014 8:52 am

Schön wäre es. Dann hätte ich den Fehler schon gefunden.
Das ulkige ist ja, dass durch den setprop()-Anweisung das Lämpchen im master caution panel leuchtet. Nur die Master Caution Leuchte im cockpit oben und der sounder gehen nicht an. Die Funktion wird also gestartet.
I failed the Turing test
Benutzeravatar
Sanni
 
Beiträge: 416
Registriert: Do Sep 26, 2013 9:05 am
Wohnort: Niedersachsen
Callsign: D-Sanni

Re: Nasal code -- mal nicht verständlich

Beitragvon Sanni » Mo Mär 17, 2014 11:03 pm

Nicht der Code ist das Problem!
Wenn zwei Dussels auf eine Variable zugreifen, wer darf dann was tun?
Einer sagt hü, ein anderer sagt hott. So geht das doch nicht!

Mehr gibt es dann in der nächsten Version von Anneliese zu lesen. :mrgreen:
I failed the Turing test
Benutzeravatar
Sanni
 
Beiträge: 416
Registriert: Do Sep 26, 2013 9:05 am
Wohnort: Niedersachsen
Callsign: D-Sanni


Zurück zu Instrumente

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron