'############## 'Cockpit-Script '############## 'Simuliert alle unmittelbar mit dem Armaturenbrett zusammenhängenden Funktionen '(c) 23.10.2009 Rüdiger Hülsmann '(c) 12.07.2012 Marcel Kuhnt 'Script Version: 1.0 'Omsi release: 1.0 'Needs: '- antrieb '- engine '- bremse '- lights '- wiper? '- doors 'Revision History: '- Rüdiger Hülsmann 09.06.2009 Last Change '- Marcel Kuhnt 13.06.2009 Added Gearbox switches '- Marcel Kuhnt 13.06.2009 Moved some switchvars to other scripts '- Rüdiger Hülsmann 19.06.2009 Added Openable Window Triggers '- Rüdiger Hülsmann 23.10.2009 Added Battery and kinderwagen light '- Marcel Kuhnt 26.10.2009 Radio switchable with Motorkühlung (replaced with cassette player) '- Rüdiger Hülsmann 28.10.2009 Added driver door '- Rüdiger Hülsmann 16.12.2009 Added driver curtain '- Rüdiger Hülsmann 18.12.2009 Bugfix driver curtain '- Marcel Kuhnt 15.04.2010 Traegheit debugged '- Rüdiger Hülsmann 13.05.2010 Engine temperature '- Rüdiger Hülsmann 03.06.2010 Automatic battery switch on key insertion (For standard-II-buses) '- Rüdiger Hülsmann 08.06.2010 Automatic battery switch made optional, Auxiliary heating switchable by button or switch '- Rüdiger Hülsmann 23.06.2010 Added mouse-clickable wiper lever on wheel console '- Rüdiger Hülsmann 08.07.2010 Wiper lever: Improved usability '- Rüdiger Hülsmann 18.07.2010 Wiper lever: soundfix for keyboard operation and new ignition key algorithm '- Rüdiger Hülsmann 16.09.2010 Auxheat Switch Bugfix '- Rüdiger Hülsmann 18.09.2010 Imported microphone switch '- Rüdiger Hülsmann 17.10.2010 Added pressure warning needle '- Rüdiger Hülsmann 23.10.2010 Added old-style gear button functionality '- Rüdiger Hülsmann 06.11.2010 Gear-button "1" functionality removed for old-style gear buttons '- Rüdiger Hülsmann 16.11.2010 Heating sliders '- Rüdiger Hülsmann 23.11.2010 Central lubrication, cabin heater sound '- Rüdiger Hülsmann 23.12.2010 Included 10 "multi-purpose" dummy switches '- Rüdiger Hülsmann 29.12.2010 ASR switch '- Rüdiger Hülsmann 04.01.2011 "D-only" gear selector function '- Rüdiger Hülsmann 05.01.2011 fog lamp switch, high beam lever animation, clock debugged '- Rüdiger Hülsmann 07.01.2011 Wiper lever sound and function debugges, availybility of several cockpit functions depending on bus type (via constfile) '- Rüdiger Hülsmann 16.01.2011 Support for wiper turn-switch '- Rüdiger Hülsmann 18.01.2011 Old-style gear button sounds '- Rüdiger Hülsmann 26.01.2011 Invertable driver door '- Rüdiger Hülsmann 26.01.2011 Thermometer '- Marcel Kuhnt 19.06.2011 Türkontrolle vorne für westdeutsche, leuchtende Türtaster, ' zweistufige Heizlüfter hinten und vorne '- Marcel Kuhnt 25.06.2011 Nebelscheinwerfer-Schalter (cp_licht_nebelschw_sw) '- Marcel Kuhnt 25.06.2011 Öldruckwarnleuchte '- Marcel Kuhnt 26.06.2011 Dachluken '- Marcel Kuhnt 29.06.2011 Hamburger Funk-Piep '- Marcel Kuhnt 03.07.2011 Sonnenblende '- Marcel Kuhnt 07.07.2011 Kein Oberdecklicht '- Marcel Kuhnt 10.09.2011 Engine Starter Key animation '- Marcel Kuhnt 10.09.2011 Animation Cash Desk Drawer '- Marcel Kuhnt 22.09.2011 Animation Cash Desk Drawer => cashdesk-Script '- Marcel Kuhnt 25.09.2011 Swinging Dirt Arrester '- Marcel Kuhnt 04.11.2011 Added Heizregler_temp_mikrotaster and sound '- Marcel Kuhnt 13.12.2011 Added Fahrgastpendel '- Marcel Kuhnt 10.06.2012 Manual Gearbox '- Marcel Kuhnt 22.06.2012 Uhr läuft nur, wenn Strom vorhanden '- Marcel Kuhnt 09.07.2012 Busbar wird als Faktor/Spannung interpretiert '- Marcel Kuhnt 12.07.2012 Stromverbrauch, Generierung von Leitwert '- Marcel Kuhnt 26.01.2013 Blinkerkontrolle blinkt nicht beim Warnblinker '- Rüdiger Hülsmann 17.09.2022 Drehwinkel und Trägheit Drehzahlmesser und Tachometer korrigiert // pivot angle and inertia corrected for tachometer and speedometer (#RH_Mod_2022#) '- Rüdiger Hülsmann 05.03.2023 New animation for sunshade bobble '- Rüdiger Hülsmann 14.07.2023 more bobble effects added (gravitation depending on incline, windscreen hit, sound effect) '- Rüdiger Hülsmann 09.10.2023 Bobble code cleaned, physics improvement '- Rüdiger Hülsmann 20.11.2023 Function-based RPM gauge '- Rüdiger Hülsmann 10.03.2024 Airhorn switch bugfix and airhorn volume+pitch depending on air pressure '- Rüdiger Hülsmann 04.07.2024 Automatic gearbox timer bugfix, blinking gear selector lights '- Rüdiger Hülsmann 03.08.2024 Bobble hit sound bugfix '- Rüdiger Hülsmann 18.08.2024 Tachometer debugged, speed warning light linked to "vis_100kmh", retarder light bugfix '- Rüdiger Hülsmann 24.08.2024 Engine starter off-sound added '- Rüdiger Hülsmann 27.08.2024 Wind sound pitch '- Rüdiger Hülsmann 16.09.2024 Odometer (cp_odometer_debug) for debugging - honk to reset :D '- Rüdiger Hülsmann 28.11.2024 Warning light boot sequence refined '- Rüdiger Hülsmann 03.12.2024 Retarder lever variable changed for mouse operation '- Rüdiger Hülsmann 14.02.2025 Engine injection bugfix '- Rüdiger Hülsmann 10.03.2025 AVS: Engine start only in Neutral, Horn stops when power is turned off '- Rüdiger Hülsmann 19.04.2025 AVS: Engine start only if reverser knob is in neutral '- Rüdiger Hülsmann 21.04.2025 Pneumatic steering column adjustment linked to air tank 4 '- Rüdiger Hülsmann 23.05.2025 Support for optional inverted retarder switch '- Rüdiger Hülsmann 20.06.2025 Coolant warning temperature moved to constfile '- Rüdiger Hülsmann 17.08.2025 Retarder pedal threshold moved to custom constfile '- Rüdiger Hülsmann 22.08.2025 Power steering sound '- Perotinus 24.08.2025 No elec_busbar_main needed for steering wheel adjustment '------------------------------------------------------------------------------------------ '---------------------- ' Trigger '---------------------- {trigger:automatic_R} (C.L.antrieb_getriebe_bauart) 2 = {if} (L.L.antrieb_getr_gangvorwahl) 1 <= {if} (L.L.antrieb_getr_gangvorwahl) 0 = ! {if} (T.L.ev_gangwahltaster) 0 (S.L.antrieb_getr_gangwahl_timer) {endif} 0 (S.L.antrieb_getr_gangvorwahl) 1 (S.L.cockpit_gangR) {endif} {endif} {end} {trigger:automatic_R_off} (C.L.antrieb_getriebe_bauart) 2 = {if} (L.L.cockpit_gangR) 1 = {if} 0.7 (S.L.cockpit_gangR) {endif} {endif} {end} {trigger:automatic_R_mouse} (C.L.antrieb_getriebe_bauart) 2 = {if} (L.L.antrieb_getr_gangvorwahl) 1 <= {if} (L.L.antrieb_getr_gangvorwahl) 0 = ! {if} (T.L.ev_gangwahltaster) 0 (S.L.antrieb_getr_gangwahl_timer) {endif} 0 (S.L.antrieb_getr_gangvorwahl) 1 (S.L.cockpit_gangR) {endif} {endif} {end} {trigger:automatic_R_mouse_off} (C.L.antrieb_getriebe_bauart) 2 = {if} (L.L.cockpit_gangR) 1 = {if} 0.7 (S.L.cockpit_gangR) {endif} {endif} {end} {trigger:automatic_N} (C.L.antrieb_getriebe_bauart) 2 = {if} (L.L.antrieb_getr_gangvorwahl) 1 = ! {if} (T.L.ev_gangwahltaster_N) 0 (S.L.antrieb_getr_gangwahl_timer) {endif} 1 (S.L.antrieb_getr_gangvorwahl) (S.L.cockpit_gangN) 0 (S.L.cockpit_gangR) (S.L.cockpit_gang1) (S.L.cockpit_gang2) (S.L.cockpit_gang3) (S.L.cockpit_gang4) {endif} {end} {trigger:automatic_N_off} (C.L.antrieb_getriebe_bauart) 2 = {if} 0 (S.L.cockpit_gangN) {endif} {end} {trigger:automatic_1} (C.L.antrieb_getriebe_bauart) 2 = (L.L.vis_automatic_123) && {if} (L.L.antrieb_getr_gangvorwahl) 0 > {if} (L.L.antrieb_getr_gangvorwahl) 2 = ! {if} (T.L.ev_gangwahltaster) 0 (S.L.antrieb_getr_gangwahl_timer) {endif} 2 (S.L.antrieb_getr_gangvorwahl) 1 (S.L.cockpit_gang1) 0 (S.L.cockpit_gang2) (S.L.cockpit_gang3) (S.L.cockpit_gang4) {endif} {endif} {end} {trigger:automatic_1_off} (L.L.cockpit_gang1) 1 = {if} 0.7 (S.L.cockpit_gang1) {endif} {end} {trigger:automatic_2} (C.L.antrieb_getriebe_bauart) 2 = (L.L.vis_automatic_123) && {if} (L.L.antrieb_getr_gangvorwahl) 0 > {if} (L.L.antrieb_getr_gangvorwahl) 3 = ! {if} (T.L.ev_gangwahltaster) 0 (S.L.antrieb_getr_gangwahl_timer) {endif} 3 (S.L.antrieb_getr_gangvorwahl) 1 (S.L.cockpit_gang2) 0 (S.L.cockpit_gang1) (S.L.cockpit_gang3) (S.L.cockpit_gang4) {endif} {endif} {end} {trigger:automatic_2_off} (C.L.antrieb_getriebe_bauart) 2 = (L.L.vis_automatic_123) && {if} (L.L.cockpit_gang2) 1 = {if} 0.7 (S.L.cockpit_gang2) {endif} {endif} {end} {trigger:automatic_3} (C.L.antrieb_getriebe_bauart) 2 = (L.L.vis_automatic_123) && {if} (L.L.antrieb_getr_gangvorwahl) 0 > {if} (L.L.antrieb_getr_gangvorwahl) 4 = ! {if} (T.L.ev_gangwahltaster) 0 (S.L.antrieb_getr_gangwahl_timer) {endif} 4 (S.L.antrieb_getr_gangvorwahl) 1 (S.L.cockpit_gang3) 0 (S.L.cockpit_gang1) (S.L.cockpit_gang2) (S.L.cockpit_gang4) {endif} {endif} {end} {trigger:automatic_3_off} (C.L.antrieb_getriebe_bauart) 2 = (L.L.vis_automatic_123) && {if} (L.L.cockpit_gang3) 1 = {if} 0.7 (S.L.cockpit_gang3) {endif} {endif} {end} {trigger:automatic_D} (C.L.antrieb_getriebe_bauart) 2 = {if} (L.L.antrieb_getr_gangvorwahl) 0 > {if} (L.L.antrieb_getr_gangvorwahl) 6 = ! {if} (T.L.ev_gangwahltaster) 0 (S.L.antrieb_getr_gangwahl_timer) {endif} 6 (S.L.antrieb_getr_gangvorwahl) 1 (S.L.cockpit_gang4) 0 (S.L.cockpit_gang1) (S.L.cockpit_gang2) (S.L.cockpit_gang3) {endif} {endif} {end} {trigger:automatic_D_off} (C.L.antrieb_getriebe_bauart) 2 = {if} (L.L.cockpit_gang4) 1 = {if} 0.7 (S.L.cockpit_gang4) {endif} {endif} {end} {trigger:automatic_r-frei} 1 (S.L.cockpit_gang_r-frei) (L.L.cockpit_gangR_toggle) (L.L.cockpit_gang2_toggle) ! (L.L.cockpit_gang3_toggle) ! && && {if} 0 (S.L.antrieb_getr_gangwahl_timer) 0 (S.L.antrieb_getr_gangvorwahl) {endif} {end} {trigger:automatic_r-frei_off} 0 (S.L.cockpit_gang_r-frei) {end} '######################## {trigger:cp_hupe_toggle} (L.L.cp_hupe_sw) {if} 0 (S.L.cp_hupe_sw) s1 {else} 1 (S.L.cp_hupe_sw) s1 {endif} (M.L.kippschaltersound) 'Change horns during operation: (L.L.cockpit_hupe_volume) 0 > {if} (T.L.ev_hupe2_an) (T.L.ev_hupe_aus) {endif} (L.L.cockpit_hupe2_volume) 0 > {if} (T.L.ev_hupe_an) (T.L.ev_hupe2_aus) {endif} {end} {trigger:horn} (L.L.cockpit_hupe) ! {if} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && {if} (L.L.cp_hupe_sw) 0.3 < {if} (T.L.ev_hupe_an) {else} (T.L.ev_hupe2_an) {endif} {endif} 1 (S.L.cockpit_hupe) (T.L.ev_kippschalter_fl_ein) {endif} {end} {trigger:horn_off} (L.L.cockpit_hupe) {if} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && {if} (L.L.cp_hupe_sw) 0.3 < {if} (T.L.ev_hupe_aus) {else} (T.L.ev_hupe2_aus) {endif} {endif} 0 (S.L.cockpit_hupe) (T.L.ev_kippschalter_fl_aus) {endif} {end} {trigger:cp_tacho_schluessel} (L.L.cp_tacho) 0 = {if} (L.L.cp_tacho_schluessel) ! (S.L.cp_tacho_schluessel) s1 (T.L.ev_tacho_schluessel) {endif} {end} {trigger:cp_tacho_drag} (L.L.cp_tacho_schluessel) {if} (L.L.Axle_Steering_0_L) -0.01 > (L.L.Axle_Steering_0_L) 0.01 < && (L.L.cp_lenkrad_visible) 0 = || {if} (L.L.cp_tacho) (S.L.cp_tacho_pos) (L.S.mouse_y) 200 / (L.L.cp_tacho) + 0 max 1 min (S.L.cp_tacho) {endif} (L.L.cp_tacho) 0 > (L.L.cp_tacho_pos) 0 = && {if} 1 (S.L.cp_tacho_auf) {if} (T.L.ev_tacho_auf) {endif} {endif} 0 (S.L.cp_tacho_auf) (L.L.cp_tacho) 0 = (L.L.cp_tacho_pos) 0 > && {if} 1 (S.L.cp_tacho_zu) {if} (T.L.ev_tacho_zu) {endif} {endif} 0 (S.L.cp_tacho_zu) {endif} {end} {trigger:cp_tachoscheibe} (L.L.cp_tacho) 0.8 > {if} (L.L.cp_tachoscheibe) ! (S.L.cp_tachoscheibe) s1 {endif} {end} {trigger:cp_spiegelverstellung_rl} (L.L.cp_spiegelverstellung_rl) ! (S.L.cp_spiegelverstellung_rl) s1 (M.L.kippschaltersound) {end} {trigger:cp_spiegelverstellung_drag} (L.L.cp_spiegelverstellung_rl) {if} (L.L.cp_spiegelverstellung_quer) 0 = {if} (L.S.mouse_x) 400 / (L.L.cp_spiegelverstellung_quer_r) + 0 max 1 min (L.L.cp_spiegelverstellung_hoch) 0 = && {if} 1 (S.L.cp_spiegelverstellung_quer_r) 1 (S.L.cp_spiegelverstellung_quer) (T.L.ev_kippschalter_fl_ein) {else} (L.S.mouse_x) -400 / (L.L.cp_spiegelverstellung_quer_r) + 0 max 1 min (L.L.cp_spiegelverstellung_hoch) 0 = && {if} -1 (S.L.cp_spiegelverstellung_quer_r) -1 (S.L.cp_spiegelverstellung_quer) (T.L.ev_kippschalter_fl_ein) {endif} {endif} {endif} (L.L.cp_spiegelverstellung_hoch) 0 = {if} (L.S.mouse_y) 400 / (L.L.cp_spiegelverstellung_hoch_r) + 0 max 1 min (L.L.cp_spiegelverstellung_quer) 0 = && {if} 1 (S.L.cp_spiegelverstellung_hoch_r) 1 (S.L.cp_spiegelverstellung_hoch) (T.L.ev_kippschalter_fl_ein) {else} (L.S.mouse_y) -400 / (L.L.cp_spiegelverstellung_hoch_r) + 0 max 1 min (L.L.cp_spiegelverstellung_quer) 0 = && {if} -1 (S.L.cp_spiegelverstellung_hoch_r) -1 (S.L.cp_spiegelverstellung_hoch) (T.L.ev_kippschalter_fl_ein) {endif} {endif} {endif} {else} (L.L.cp_spiegelverstellung_quer) 0 = {if} (L.S.mouse_x) 400 / (L.L.cp_spiegelverstellung_quer_l) + 0 max 1 min (L.L.cp_spiegelverstellung_hoch) 0 = && {if} 1 (S.L.cp_spiegelverstellung_quer_l) 1 (S.L.cp_spiegelverstellung_quer) (T.L.ev_kippschalter_fl_ein) {else} (L.S.mouse_x) -400 / (L.L.cp_spiegelverstellung_quer_l) + 0 max 1 min (L.L.cp_spiegelverstellung_hoch) 0 = && {if} -1 (S.L.cp_spiegelverstellung_quer_l) -1 (S.L.cp_spiegelverstellung_quer) (T.L.ev_kippschalter_fl_ein) {endif} {endif} {endif} (L.L.cp_spiegelverstellung_hoch) 0 = {if} (L.S.mouse_y) 400 / (L.L.cp_spiegelverstellung_hoch_l) + 0 max 1 min (L.L.cp_spiegelverstellung_quer) 0 = && {if} 1 (S.L.cp_spiegelverstellung_hoch_l) 1 (S.L.cp_spiegelverstellung_hoch) (T.L.ev_kippschalter_fl_ein) {else} (L.S.mouse_y) -400 / (L.L.cp_spiegelverstellung_hoch_l) + 0 max 1 min (L.L.cp_spiegelverstellung_quer) 0 = && {if} -1 (S.L.cp_spiegelverstellung_hoch_l) -1 (S.L.cp_spiegelverstellung_hoch) (T.L.ev_kippschalter_fl_ein) {endif} {endif} {endif} {endif} {end} {trigger:cp_spiegelverstellung_off} (L.L.cp_spiegelverstellung_quer_r) 0 > (L.L.cp_spiegelverstellung_quer_r) 0 < || (L.L.cp_spiegelverstellung_hoch_r) 0 > || (L.L.cp_spiegelverstellung_hoch_r) 0 < || (L.L.cp_spiegelverstellung_quer_l) 0 > || (L.L.cp_spiegelverstellung_quer_l) 0 < || (L.L.cp_spiegelverstellung_hoch_l) 0 > || (L.L.cp_spiegelverstellung_hoch_l) 0 < || (L.L.cp_spiegelverstellung_quer) 0 > || (L.L.cp_spiegelverstellung_quer) 0 < || (L.L.cp_spiegelverstellung_hoch) 0 > || (L.L.cp_spiegelverstellung_hoch) 0 < || ' {if} 0 (S.L.cp_spiegelverstellung_quer_r) 0 (S.L.cp_spiegelverstellung_hoch_r) 0 (S.L.cp_spiegelverstellung_quer_l) 0 (S.L.cp_spiegelverstellung_hoch_l) 0 (S.L.cp_spiegelverstellung_quer) 0 (S.L.cp_spiegelverstellung_hoch) (T.L.ev_kippschalter_fl_aus) ' {endif} {end} {trigger:cp_nothahn_1_klappe_drag} (L.S.mouse_y) -200 / (L.L.cp_nothahn_1_klappe) + 0 max 1 min (S.L.cp_nothahn_1_klappe) {end} {trigger:cp_nothahn_2_klappe_drag} (L.S.mouse_y) -200 / (L.L.cp_nothahn_2_klappe) + 0 max 1 min (S.L.cp_nothahn_2_klappe) {end} {trigger:cp_begleitersitz_rechts_drag} (L.S.mouse_y) 200 / (L.L.cp_begleitersitz_rechts) + 0 max 1 min (S.L.cp_begleitersitz_rechts) {end} {trigger:cp_begleitersitz_links_drag} (L.S.mouse_y) 200 / (L.L.cp_begleitersitz_links) + 0 max 1 min (S.L.cp_begleitersitz_links) {end} {trigger:cp_schulbusschild_drehwirbel} (L.L.cp_schulbusschild_drehwirbel) ! (S.L.cp_schulbusschild_drehwirbel) {end} {trigger:cp_schulbusschild_drag} (L.L.cp_schulbusschild_drehwirbel) {if} (L.S.mouse_y) 200 / (L.L.cp_schulbusschild) + 0 max 1 min (S.L.cp_schulbusschild) {endif} {end} {trigger:cp_fahrerfenster_auf_toggle} (L.L.cp_fahrerfenster_sw) ! (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && 1 (S.L.cp_fahrerfenster_sw) (T.L.ev_kippschalter_fl_ein) {end} {trigger:cp_fahrerfenster_auf_toggle_off} (L.L.cp_fahrerfenster_sw) ! (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && 0 (S.L.cp_fahrerfenster_sw) (T.L.ev_kippschalter_fl_aus) {end} {trigger:cp_fahrerfenster_zu_toggle} (L.L.cp_fahrerfenster_sw) ! (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && -1 (S.L.cp_fahrerfenster_sw) (T.L.ev_kippschalter_fl_ein) {end} {trigger:cp_fahrerfenster_zu_toggle_off} (L.L.cp_fahrerfenster_sw) ! (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && 0 (S.L.cp_fahrerfenster_sw) (T.L.ev_kippschalter_fl_aus) {end} {trigger:cp_retarder_direkt_toggle} (L.L.cp_retarder_sw_direkt) ! (S.L.cp_retarder_sw_direkt) s1 {if} (T.L.ev_engine_brake_button_on) {endif} 1 (S.L.cp_retarder_sw_direkt) {end} {trigger:cp_retarder_direkt_toggle_off} (L.L.cp_retarder_sw_direkt) (S.L.cp_retarder_sw_direkt) s1 {if} (T.L.ev_engine_brake_button_off) {endif} 0 (S.L.cp_retarder_sw_direkt) {end} {trigger:cp_retarder_toggle} (C.L.cockpit_has_retarderswitch) {if} (L.L.cp_retarder_sw) ! (S.L.cp_retarder_sw) s1 (M.L.kippschaltersound) {endif} {end} {trigger:cp_achse_toggle} (L.L.cp_achse_sw) ! (S.L.cp_achse_sw) s1 (M.L.kippschaltersound) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > l1 && {if} (T.L.ev_achse_entlasten) {endif} {end} {trigger:cp_motorkuehlung_toggle} (C.L.cockpit_has_coolingswitch) {if} (L.L.cp_motorkuehlung_sw) ! (S.L.cp_motorkuehlung_sw) s1 (M.L.kippschaltersound) {endif} {end} {trigger:cp_drucker_toggle} (L.L.cp_drucker_sw) ! (S.L.cp_drucker_sw) s1 (M.L.kippschaltersound) {end} {trigger:cp_fahrerlicht_toggle} (L.L.cp_fahrerlicht_sw) ! (S.L.cp_fahrerlicht_sw) s1 (M.L.kippschaltersound) {end} {trigger:cp_licht_untenrechts_toggle} (L.L.cp_licht_untenrechts_sw) {if} 0 (S.L.cp_licht_untenrechts_sw) s1 {else} 1 (S.L.cp_licht_untenrechts_sw) s1 {endif} (M.L.kippschaltersound) {end} {trigger:cp_licht_oberdeck_toggle} (L.L.cp_licht_oberdeck_sw) {if} 0 (S.L.cp_licht_oberdeck_sw) s1 {else} 1 (S.L.cp_licht_oberdeck_sw) s1 {endif} (M.L.kippschaltersound) {end} {trigger:cp_licht_unterdeck_toggle} (L.L.cp_licht_unterdeck_sw) {if} 0 (S.L.cp_licht_unterdeck_sw) s1 {else} 1 (S.L.cp_licht_unterdeck_sw) s1 {endif} (M.L.kippschaltersound) {end} {trigger:cp_licht_nacht_toggle} (L.L.cp_licht_nacht_sw) {if} 0 (S.L.cp_licht_nacht_sw) s1 {else} 1 (S.L.cp_licht_nacht_sw) s1 {endif} (M.L.kippschaltersound) {end} {trigger:cp_licht_nebelschw_toggle} (L.L.cp_licht_nebelschw_sw) {if} 0 (S.L.cp_licht_nebelschw_sw) s1 {else} 1 (S.L.cp_licht_nebelschw_sw) s1 {endif} (M.L.kippschaltersound) {end} {trigger:cp_wischer_schnell_toggle} (L.L.cp_wischer_schnell_sw) ! (S.L.cp_wischer_schnell_sw) s1 (M.L.kippschaltersound) {end} {trigger:kw_wipermode_up} (L.L.cp_wischer_einaus_sw) ! (S.L.cp_wischer_einaus_sw) s1 {if} 2 (S.L.cockpit_wischerhebel_mode) (S.L.cockpit_wischer_drehschalter_mode) 2 3 / (S.L.cockpit_wischerhebel) (S.L.cockpit_wischer_drehschalter) (L.L.cp_wischer_intervall_sw) ! {if} (T.L.ev_wischerhebel) {endif} {else} (L.L.cp_wischer_intervall_sw) {if} 1 (S.L.cockpit_wischerhebel_mode) (S.L.cockpit_wischer_drehschalter_mode) 1 3 / (S.L.cockpit_wischerhebel) 1 3 / (S.L.cockpit_wischer_drehschalter) {else} 0 (S.L.cockpit_wischerhebel_mode) (S.L.cockpit_wischer_drehschalter_mode) (S.L.cockpit_wischerhebel) 0 (S.L.cockpit_wischer_drehschalter) (T.L.ev_wischerhebel) {endif} {endif} (C.L.wiper_lever) ! {end} {trigger:cp_wischer_intervall_toggle} (L.L.cp_wischer_intervall_sw) ! (S.L.cp_wischer_intervall_sw) s1 (L.L.cp_wischer_einaus_sw) ! && {if} 1 (S.L.cockpit_wischerhebel_mode) (S.L.cockpit_wischer_drehschalter_mode) 1 3 / (S.L.cockpit_wischerhebel) 1 3 / (S.L.cockpit_wischer_drehschalter) {else} (L.L.cp_wischer_einaus_sw) {if} 2 (S.L.cockpit_wischerhebel_mode) (S.L.cockpit_wischer_drehschalter_mode) 2 3 / (S.L.cockpit_wischerhebel) (S.L.cockpit_wischer_drehschalter) {else} 0 (S.L.cockpit_wischerhebel_mode) (S.L.cockpit_wischer_drehschalter_mode) (S.L.cockpit_wischerhebel) 0 / (S.L.cockpit_wischer_drehschalter) {endif} {endif} (C.L.wiper_lever) ! {end} {trigger:cp_wischer_wascher_button} 1 (S.L.cp_wischer_wascher_sw) s1 (C.L.wiper_lever) {if} (T.L.ev_wischerhebel) 1 (S.L.cockpit_wischerhebel_x) {else} l1 {endif} {end} {trigger:cp_wischer_wascher_button_off} 0 (S.L.cp_wischer_wascher_sw) s1 (S.L.wiper_wascher_sw) (C.L.wiper_lever) {if} (T.L.ev_wischerhebel) 0 (S.L.cockpit_wischerhebel_x) {else} l1 {endif} {end} {trigger:cp_spiegelheizung_toggle} (L.L.cp_spiegelheizung_sw) ! (S.L.cp_spiegelheizung_sw) s1 (M.L.kippschaltersound) {end} {trigger:cp_scheibenheizung_toggle} (L.L.cp_scheibenheizung_sw) ! (S.L.cp_scheibenheizung_sw) s1 (M.L.kippschaltersound) {end} {trigger:cp_hh_engine_starter_key_toggle} (L.L.cp_hh_engine_starter_key_visible) ! (S.L.cp_hh_engine_starter_key_visible) s1 {if} (T.L.ev_wagenkarte_schluessel) {endif} {end} {trigger:cp_light_testbutton} 1 (S.L.cockpit_light_testbutton) {end} {trigger:cp_light_testbutton_off} 0 (S.L.cockpit_light_testbutton) {end} {trigger:cp_dummy_sw01_toggle} (L.L.cp_dummy_sw01) ! (S.L.cp_dummy_sw01) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw02_toggle} (L.L.cp_dummy_sw02) ! (S.L.cp_dummy_sw02) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw03_toggle} (L.L.cp_dummy_sw03) ! (S.L.cp_dummy_sw03) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw04_toggle} (L.L.cp_dummy_sw04) ! (S.L.cp_dummy_sw04) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw05_toggle} (L.L.cp_dummy_sw05) ! (S.L.cp_dummy_sw05) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw06_toggle} (L.L.cp_dummy_sw06) ! (S.L.cp_dummy_sw06) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw07_toggle} (L.L.cp_dummy_sw07) ! (S.L.cp_dummy_sw07) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw08_toggle} (L.L.cp_dummy_sw08) ! (S.L.cp_dummy_sw08) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw09_toggle} (L.L.cp_dummy_sw09) ! (S.L.cp_dummy_sw09) s1 (M.L.kippschaltersound) {end} {trigger:cp_dummy_sw10_toggle} (L.L.cp_dummy_sw10) ! (S.L.cp_dummy_sw10) s1 (M.L.kippschaltersound) {end} {trigger:cp_schalter_ASR_off_toggle} (L.L.cp_ASR_off) ! (S.L.cp_ASR_off) s1 1 (S.L.cp_ASR_off_sw) (T.L.ev_kippschalter_fl_ein) {end} {trigger:cp_schalter_ASR_off_toggle_off} 0 (S.L.cp_ASR_off_sw) (T.L.ev_kippschalter_fl_aus) {end} {trigger:cp_licht_kofferraum_toggle} (L.L.cp_licht_kofferraum_sw) ! (S.L.cp_licht_kofferraum_sw) s1 (M.L.kippschaltersound) {end} {trigger:cp_thermometer_toggle} (L.L.cp_thermometer_sw) ! (S.L.cp_thermometer_sw) s1 (M.L.kippschaltersound) {end} {trigger:cp_ecopower_toggle} (L.L.cp_ecopower_sw) ! (S.L.cp_ecopower_sw) s1 (M.L.kippschaltersound) {end} {trigger:Fahrplan_pos} (L.L.cp_lenkrad_visible) {if} (L.L.visible_fahrplan_pos) ! (S.L.visible_fahrplan_pos) (T.L.ev_fahrplan_pos) {else} 0 (L.L.visible_fahrplan_pos) 0 (S.L.visible_fahrplan_linienliste) {endif} (L.L.visible_fahrplan_pos) (S.L.visible_fahrplan_linienliste) {end} {trigger:Fahrplan_Linienliste} (L.L.visible_fahrplan_linienliste) ! (S.L.visible_fahrplan_linienliste) (T.L.ev_fahrplan_linienliste) {end} 'MC 2011 0619: zweistufiges Frontheizgerät: {trigger:cp_klimator_toggle} (L.L.cp_klimator_sw) s0 -0.4 < {if} 1 (S.L.cp_klimator_sw) {else} l0 0.4 > {if} 0 (S.L.cp_klimator_sw) {else} -1 (S.L.cp_klimator_sw) {endif} {endif} -1 (M.L.kippschaltersound) {end} {trigger:cp_luftklappen_an_toggle} (L.L.cp_luftklappen_sw) (S.L.cp_luftklappen_sw_lastpos) (L.L.cp_luftklappen_sw) 0 < {if} 0 (S.L.cp_luftklappen_sw) 0 (S.L.luftklappen_stufe) (T.L.ev_kippschalter_fl_aus) {else} 1 (S.L.cp_luftklappen_sw) 1 (S.L.luftklappen_stufe) (L.L.cp_luftklappen_sw_lastpos) 1 < {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_luftklappen_aus_toggle} (L.L.cp_luftklappen_sw) (S.L.cp_luftklappen_sw_lastpos) (L.L.cp_luftklappen_sw) 0.5 > {if} 0 (S.L.cp_luftklappen_sw) 0 (S.L.luftklappen_stufe) (T.L.ev_kippschalter_fl_aus) {else} -1 (S.L.cp_luftklappen_sw) 0.5 (S.L.luftklappen_stufe) (L.L.cp_luftklappen_sw_lastpos) -1 > {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_dachluefter_an_toggle} (L.L.cp_dachluefter_sw) (S.L.cp_dachluefter_sw_lastpos) (L.L.cp_dachluefter_sw) 0 < {if} 0 (S.L.cp_dachluefter_sw) 0 (S.L.dachluefter_stufe) (T.L.ev_kippschalter_fl_aus) {else} 1 (S.L.cp_dachluefter_sw) 1 (S.L.dachluefter_stufe) (L.L.cp_dachluefter_sw_lastpos) 1 < {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_dachluefter_aus_toggle} (L.L.cp_dachluefter_sw) (S.L.cp_dachluefter_sw_lastpos) (L.L.cp_dachluefter_sw) 0.5 > {if} 0 (S.L.cp_dachluefter_sw) 0 (S.L.dachluefter_stufe) (T.L.ev_kippschalter_fl_aus) {else} -1 (S.L.cp_dachluefter_sw) -1 (S.L.dachluefter_stufe) (L.L.cp_dachluefter_sw_lastpos) -1 > {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_dachhzg_an_toggle} (L.L.cp_dachhzg_sw) (S.L.cp_dachhzg_sw_lastpos) (L.L.cp_dachhzg_sw) 0 < {if} 0 (S.L.cp_dachhzg_sw) 0 (S.L.dachhzg_stufe) (T.L.ev_kippschalter_fl_aus) {else} 1 (S.L.cp_dachhzg_sw) 1 (S.L.dachhzg_stufe) (L.L.cp_dachhzg_sw_lastpos) 1 < {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_dachhzg_aus_toggle} (L.L.cp_dachhzg_sw) (S.L.cp_dachhzg_sw_lastpos) (L.L.cp_dachhzg_sw) 0.5 > {if} 0 (S.L.cp_dachhzg_sw) 0 (S.L.dachhzg_stufe) (T.L.ev_kippschalter_fl_aus) {else} -1 (S.L.cp_dachhzg_sw) 0.5 (S.L.dachhzg_stufe) (L.L.cp_dachhzg_sw_lastpos) -1 > {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_heizluefter_an_toggle} (L.L.cp_heizluefter_sw) (S.L.cp_heizluefter_sw_lastpos) (L.L.cp_heizluefter_sw) 0 < {if} 0 (S.L.cp_heizluefter_sw) 0 (S.L.heizluefter_stufe) (T.L.ev_kippschalter_fl_aus) {else} 1 (S.L.cp_heizluefter_sw) 1 (S.L.heizluefter_stufe) (L.L.cp_heizluefter_sw_lastpos) 1 < {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_heizluefter_aus_toggle} (L.L.cp_heizluefter_sw) (S.L.cp_heizluefter_sw_lastpos) (L.L.cp_heizluefter_sw) 0.5 > {if} 0 (S.L.cp_heizluefter_sw) 0 (S.L.heizluefter_stufe) (T.L.ev_kippschalter_fl_aus) {else} -1 (S.L.cp_heizluefter_sw) 0.5 (S.L.heizluefter_stufe) (L.L.cp_heizluefter_sw_lastpos) -1 > {if} (T.L.ev_kippschalter_fl_ein) {endif} {endif} {end} {trigger:cp_rollo_drag} (L.L.cp_rollo_pos) (S.L.cp_rollo_lastpos) 1 (S.L.cp_rollo_dragged) 0 (S.L.cp_rollo_speed) (L.S.mouse_y) 500 / (L.L.cp_rollo_pos) + (S.L.cp_rollo_pos) s0 l0 0 < {if} 0 (S.L.cp_rollo_pos) {endif} l0 1 > {if} 1 (S.L.cp_rollo_pos) {endif} (L.L.cp_rollo_pos) (L.L.cp_rollo_lastpos) - abs (L.S.Timegap) / (S.L.cp_rollo_speed) {end} {trigger:cp_rollo_off} 0 (S.L.cp_rollo_dragged) (T.L.ev_rollo_end) {end} {trigger:cp_rollo_retract} (L.L.cp_rollo_bommel) 0 = (L.L.cp_rollo_pos) && {if} (T.L.ev_rollo_retract) {endif} 1 (S.L.cp_rollo_bommel) (S.L.cp_rollo_retract) {end} {trigger:cp_rollo_retract_off} 0 (S.L.cp_rollo_bommel) (S.L.cp_rollo_retract) (S.L.cp_rollo_speed) {end} {trigger:cp_rollo2_drag} (L.L.cp_rollo2_pos) (S.L.cp_rollo2_lastpos) 1 (S.L.cp_rollo2_dragged) 0 (S.L.cp_rollo2_speed) (L.S.mouse_y) 500 / (L.L.cp_rollo2_pos) + (S.L.cp_rollo2_pos) s0 l0 0 < {if} 0 (S.L.cp_rollo2_pos) {endif} l0 1 > {if} 1 (S.L.cp_rollo2_pos) {endif} (L.L.cp_rollo2_pos) (L.L.cp_rollo2_lastpos) - abs (L.S.Timegap) / (S.L.cp_rollo2_speed) {end} {trigger:cp_rollo2_off} 0 (S.L.cp_rollo2_dragged) (T.L.ev_rollo2_end) {end} {trigger:cp_rollo2_retract} (L.L.cp_rollo2_pos) 0 > {if} (T.L.ev_rollo2_retract) {endif} 1 (S.L.cp_rollo2_retract) {end} {trigger:cp_rollo2_retract_off} 0 (S.L.cp_rollo2_retract) (S.L.cp_rollo2_speed) {end} {trigger:cp_rollo3_drag} (L.L.cp_rollo3_pos) (S.L.cp_rollo3_lastpos) 1 (S.L.cp_rollo3_dragged) 0 (S.L.cp_rollo3_speed) (L.S.mouse_y) 500 / (L.L.cp_rollo3_pos) + (S.L.cp_rollo3_pos) s0 l0 0 < {if} 0 (S.L.cp_rollo3_pos) {endif} l0 1 > {if} 1 (S.L.cp_rollo3_pos) {endif} (L.L.cp_rollo3_pos) (L.L.cp_rollo3_lastpos) - abs (L.S.Timegap) / (S.L.cp_rollo3_speed) {end} {trigger:cp_rollo3_off} 0 (S.L.cp_rollo3_dragged) (T.L.ev_rollo3_end) {end} {trigger:cp_rollo3_retract} (L.L.cp_rollo3_pos) 0 > {if} (T.L.ev_rollo3_retract) {endif} 1 (S.L.cp_rollo3_retract) {end} {trigger:cp_rollo3_retract_off} 0 (S.L.cp_rollo3_retract) (S.L.cp_rollo3_speed) {end} {trigger:cp_rollo4_drag} (L.L.cp_rollo4_pos) (S.L.cp_rollo4_lastpos) 1 (S.L.cp_rollo4_dragged) 0 (S.L.cp_rollo4_speed) (L.S.mouse_y) 500 / (L.L.cp_rollo4_pos) + (S.L.cp_rollo4_pos) s0 l0 0 < {if} 0 (S.L.cp_rollo4_pos) {endif} l0 1 > {if} 1 (S.L.cp_rollo4_pos) {endif} (L.L.cp_rollo4_pos) (L.L.cp_rollo4_lastpos) - abs (L.S.Timegap) / (S.L.cp_rollo4_speed) {end} {trigger:cp_rollo4_off} 0 (S.L.cp_rollo4_dragged) (T.L.ev_rollo4_end) {end} {trigger:cp_rollo4_retract} (L.L.cp_rollo4_pos) 0 > {if} (T.L.ev_rollo4_retract) {endif} 1 (S.L.cp_rollo4_retract) {end} {trigger:cp_rollo4_retract_off} 0 (S.L.cp_rollo4_retract) (S.L.cp_rollo4_speed) {end} {trigger:Fensterheber_u} 1 (S.L.Fensterheber_sw) (T.L.ev_kippschalter_fl_ein) {end} {trigger:Fensterheber_u_drag} (L.L.elec_busbar_main) 0.5 > {if} (L.L.Tuerfenster_pos) 1 < {if} 1 (S.L.Tuerfenster_auf) (L.L.Tuerfenster_pos) (L.S.Timegap) (C.L.Fensterheber_speed) * + 1 min (S.L.Tuerfenster_pos) {else} 0 (S.L.Tuerfenster_auf) {endif} {else} 0 (S.L.Tuerfenster_auf) {endif} (L.L.Tuerfenster_auf) (L.L.Tuerfenster_auf_last) ! && {if} (T.L.Fensterheber_auf_start) {endif} (L.L.Tuerfenster_auf) ! (L.L.Tuerfenster_auf_last) && {if} (T.L.Fensterheber_auf_stop) {endif} (L.L.Tuerfenster_auf) (S.L.Tuerfenster_auf_last) {end} {trigger:Fensterheber_u_off} 0 (S.L.Fensterheber_sw) (T.L.ev_kippschalter_fl_aus) (L.L.Tuerfenster_auf) {if} (T.L.Fensterheber_auf_stop) {endif} 0 (S.L.Tuerfenster_auf) (S.L.Tuerfenster_auf_last) {end} {trigger:Fensterheber_o} -1 (S.L.Fensterheber_sw) (T.L.ev_kippschalter_fl_ein) {end} {trigger:Fensterheber_o_drag} (L.L.elec_busbar_main) 0.5 > {if} (L.L.Tuerfenster_pos) 0 > {if} 1 (S.L.Tuerfenster_zu) (L.L.Tuerfenster_pos) (L.S.Timegap) (C.L.Fensterheber_speed) * - 0 max (S.L.Tuerfenster_pos) {else} 0 (S.L.Tuerfenster_zu) {endif} {else} 0 (S.L.Tuerfenster_zu) {endif} (L.L.Tuerfenster_zu) (L.L.Tuerfenster_zu_last) ! && {if} (T.L.Fensterheber_zu_start) {endif} (L.L.Tuerfenster_zu) ! (L.L.Tuerfenster_zu_last) && {if} (T.L.Fensterheber_zu_stop) {endif} (L.L.Tuerfenster_zu) (S.L.Tuerfenster_zu_last) {end} {trigger:Fensterheber_o_off} 0 (S.L.Fensterheber_sw) (T.L.ev_kippschalter_fl_aus) (L.L.Tuerfenster_zu) {if} (T.L.Fensterheber_zu_stop) {endif} 0 (S.L.Tuerfenster_zu) (S.L.Tuerfenster_zu_last) {end} {trigger:cp_lenksaeule_spange_toggle} (C.L.Lenksaeule) {if} (L.L.cp_lenksaeule_spange_sw) && {if} 0 (S.L.cp_lenksaeule_spange_sw) s1 (T.L.ev_lenksaeule_FL_cls) {else} 1 (S.L.cp_lenksaeule_spange_sw) s1 (T.L.ev_lenksaeule_FL_opn) {endif} {else} ' (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.bremse_p_tank04) (C.L.lenksaeule_mindruck) > {if} (L.L.cp_lenksaeule_spange_sw) && {if} 0 (S.L.cp_lenksaeule_spange_sw) s1 (T.L.ev_lenksaeule_FL_cls) {else} 1 (S.L.cp_lenksaeule_spange_sw) s1 (T.L.ev_lenksaeule_FL_opn) {endif} {endif} {endif} {end} {trigger:cp_lenksaeule_opn_drag} (L.L.cp_lenksaeule_spange_sw) 0.4 > {if} (L.S.mouse_y) abs (L.S.mouse_x) abs >= {if} (L.L.cp_lenksaeule_neigung_pos) (S.L.cp_lenksaeule_neigung_lastpos) (L.S.mouse_y) 500 / (L.L.cp_lenksaeule_neigung_pos) + (S.L.cp_lenksaeule_neigung_pos) s0 l0 0 < {if} 0 (S.L.cp_lenksaeule_neigung_pos) (L.L.cp_lenksaeule_neigung_endanschlag) ! {if} (T.L.ev_lenksaeule_neigung_cls) {endif} 1 (S.L.cp_lenksaeule_neigung_endanschlag) {endif} l0 1 > {if} 1 (S.L.cp_lenksaeule_neigung_pos) (L.L.cp_lenksaeule_neigung_endanschlag) ! {if} (T.L.ev_lenksaeule_neigung_opn) {endif} 1 (S.L.cp_lenksaeule_neigung_endanschlag) {endif} (L.L.cp_lenksaeule_neigung_pos) s0 0 > l0 1 < && {if} 0 (S.L.cp_lenksaeule_neigung_endanschlag) {endif} (L.L.cp_lenksaeule_neigung_pos) (L.L.cp_lenksaeule_neigung_lastpos) - abs (L.S.Timegap) / (S.L.cp_lenksaeule_neigung_speed) (L.L.cp_lenksaeule_hoehe_pos) (S.L.cp_lenksaeule_hoehe_lastpos) {else} (L.S.mouse_x) 100 / (L.L.cp_lenksaeule_hoehe_pos) + (S.L.cp_lenksaeule_hoehe_pos) s0 l0 0 < {if} 0 (S.L.cp_lenksaeule_hoehe_pos) (L.L.cp_lenksaeule_hoehe_endanschlag) ! {if} (T.L.ev_lenksaeule_hoehe_cls) {endif} 1 (S.L.cp_lenksaeule_hoehe_endanschlag) {endif} l0 1 > {if} 1 (S.L.cp_lenksaeule_hoehe_pos) (L.L.cp_lenksaeule_hoehe_endanschlag) ! {if} (T.L.ev_lenksaeule_hoehe_opn) {endif} 1 (S.L.cp_lenksaeule_hoehe_endanschlag) {endif} (L.L.cp_lenksaeule_hoehe_pos) s0 0 > l0 1 < && {if} 0 (S.L.cp_lenksaeule_hoehe_endanschlag) {endif} (L.L.cp_lenksaeule_hoehe_pos) (L.L.cp_lenksaeule_hoehe_lastpos) - abs (L.S.Timegap) / (S.L.cp_lenksaeule_hoehe_speed) {endif} {endif} {end} {trigger:cp_lenksaeule_opn_off} 0 (S.L.cp_lenksaeule_speed) {end} {trigger:cp_lenkrad_toggle} (L.L.visible_fahrplan_pos) ! {if} (L.L.cp_lenkrad_visible) ! (S.L.cp_lenkrad_visible) {endif} {end} {trigger:cp_schluessel_mov_drag} ' Fallunterscheidung: Schlüssel in x- oder y-Richtung? (L.S.mouse_y) abs (L.S.mouse_x) abs >= {if} ' Zunächst Translation (Einstecken) (L.L.cp_schluessel_trans_mode) {if} (L.S.mouse_y) -40 / (L.L.cp_schluessel_rot) + 0 max 1.0 min (S.L.cp_schluessel_rot) s0 {else} 0 (S.L.cp_schluessel_rot) {endif} ' Stufen: ' 0: Schlüssel abgezogen ' 1: Schlüssel eingesteckt l0 0.16666 < {if} 0 (S.L.cp_schluessel_rot_mode) (S.L.elec_busbar_main_sw) 0 (S.L.engine_injection_on) (L.L.engine_starter) (L.L.engine_on) ! && {if} (T.L.ev_engine_starter_off) 0 (S.L.engine_starter) {endif} {else} l0 0.5 < {if} 1 (S.L.cp_schluessel_rot_mode) 0 (S.L.bremse_ABS_selftest) 1 (S.L.elec_busbar_main_sw) 0 (S.L.engine_injection_on) (L.L.engine_starter) (L.L.engine_on) ! && {if} (T.L.ev_engine_starter_off) 0 (S.L.engine_starter) {endif} {else} l0 0.83333 < {if} 2 (S.L.cp_schluessel_rot_mode) 1 (S.L.elec_busbar_main_sw) (S.L.engine_injection_on) (L.L.engine_starter) (L.L.engine_on) ! && {if} (T.L.ev_engine_starter_off) 0 (S.L.engine_starter) {endif} (L.L.engine_on) ! {if} 1 (S.L.bremse_ABS_selftest) {endif} {else} 3 (S.L.cp_schluessel_rot_mode) 1 (S.L.elec_busbar_main_sw) (C.L.antrieb_getriebe_bauart) 0 > {if} (C.L.antrieb_getriebe_bauart) 1 > ' Automatik: {if} (L.L.engine_n) 100 < (L.L.elec_busbar_main) 0.3 > && (L.L.engine_starter_antirepeat) ! && (L.L.antrieb_getr_gangvorwahl) 1 = && {if} 1 (S.L.engine_starter) (S.L.engine_injection_on) (T.L.ev_engine_starter) {endif} ' Halbautomatik: {else} (L.L.engine_n) 100 < (L.L.elec_busbar_main) 0.3 > && (L.L.engine_starter_antirepeat) ! && (L.L.antrieb_getr_gang) 0 = && (L.L.antrieb_getr_richtungswaehler) 0 = && {if} 1 (S.L.engine_starter) (S.L.engine_injection_on) (T.L.ev_engine_starter) {endif} {endif} ' Manuell: {else} (L.L.engine_n) 100 < (L.L.elec_busbar_main) 0.3 > && (L.L.engine_starter_antirepeat) ! && {if} 1 (S.L.engine_starter) (S.L.engine_injection_on) (T.L.ev_engine_starter) {endif} {endif} 1 (S.L.engine_starter_antirepeat) {endif} {endif} ' Wenn beim Einstecken bereits der Stromkreis geschlossen werden soll, ohne Trennschalter: (C.L.automatic_battery_switch) {if} 1 (S.L.elec_busbar_main_sw) {endif} {endif} {else} (L.L.cp_schluessel_rot) 0.05 > {if} 1 (S.L.cp_schluessel_trans) 1 (S.L.cp_schluessel_trans_mode) {else} (L.S.mouse_x) -40 / (L.L.cp_schluessel_trans) + 0 max 1 min (S.L.cp_schluessel_trans) s0 l0 0.8 < {if} 0 (S.L.cp_schluessel_trans_mode) {else} 1 (S.L.cp_schluessel_trans_mode) {endif} {endif} {endif} {end} {trigger:cp_schluessel_mov_off} ' Einrasten auf den festen Positionen: (L.L.cp_schluessel_trans_mode) (S.L.cp_schluessel_trans) (L.L.cp_schluessel_rot_mode) 3 = {if} (L.L.engine_starter) (L.L.engine_on) ! && {if} (T.L.ev_engine_starter_off) {endif} 2 (S.L.cp_schluessel_rot_mode) 1 (S.L.engine_injection_on) 0 (S.L.engine_starter_antirepeat) (S.L.engine_starter) {endif} (L.L.cp_schluessel_rot_mode) 3 / (S.L.cp_schluessel_rot) {end} {trigger:kw_batterietrennschalter} 1 (S.L.cp_taster_batterietrennschalter) (L.L.cp_schluessel_rot) {if} 1 (S.L.elec_busbar_main_sw) {endif} {end} {trigger:kw_batterietrennschalter_off} 0 (S.L.cp_taster_batterietrennschalter) {end} {trigger:cp_batterietrennschalter_toggle} (L.L.cp_schluessel_rot_mode) 0 = {if} 1 (S.L.cp_schluessel_rot_mode) 0 (S.L.bremse_ABS_selftest) 1 (S.L.elec_busbar_main_sw) 0 (S.L.engine_injection_on) 1 (S.L.cp_schluessel_trans_mode) 1 (S.L.cp_schluessel_trans) {else} 0 (S.L.cp_schluessel_rot_mode) (S.L.elec_busbar_main_sw) 0 (S.L.engine_injection_on) 0 (S.L.ASR_Timer) {endif} (L.L.cp_schluessel_rot_mode) 3 / (S.L.cp_schluessel_rot) {end} {trigger:cp_batterietrennschalter_toggle_off} 0 (S.L.cp_batterietrennschalter_antirepeat) (S.L.cp_taster_batterietrennschalter) {end} {trigger:kw_m_enginestart} (L.L.cp_schluessel_rot_mode) 2 < {if} 2 (S.L.cp_schluessel_rot_mode) 1 (S.L.bremse_ABS_selftest) 1 (S.L.elec_busbar_main_sw) (S.L.engine_injection_on) 1 (S.L.cp_schluessel_trans_mode) 1 (S.L.cp_schluessel_trans) {else} (L.L.engine_on) {if} 1 (S.L.cp_schluessel_rot_mode) 0 (S.L.bremse_ABS_selftest) 1 (S.L.elec_busbar_main_sw) 0 (S.L.engine_injection_on) {else} 3 (S.L.cp_schluessel_rot_mode) 1 (S.L.elec_busbar_main_sw) (C.L.antrieb_getriebe_bauart) 0 > {if} (C.L.antrieb_getriebe_bauart) 1 > ' Automatik: {if} (L.L.engine_n) 100 < (L.L.elec_busbar_main) 0.3 > && (L.L.engine_starter_antirepeat) ! && (L.L.antrieb_getr_gangvorwahl) 1 = && {if} 1 (S.L.engine_starter) (S.L.engine_injection_on) (T.L.ev_engine_starter) {endif} ' Halbautomatik: {else} (L.L.engine_n) 100 < (L.L.elec_busbar_main) 0.3 > && (L.L.engine_starter_antirepeat) ! && (L.L.antrieb_getr_gang) 0 = && (L.L.antrieb_getr_richtungswaehler) 0 = && {if} 1 (S.L.engine_starter) (S.L.engine_injection_on) (T.L.ev_engine_starter) {endif} {endif} ' Manuell: {else} (L.L.engine_n) 100 < (L.L.elec_busbar_main) 0.3 > && (L.L.engine_starter_antirepeat) ! && {if} 1 (S.L.engine_starter) (S.L.engine_injection_on) (T.L.ev_engine_starter) {endif} {endif} 1 (S.L.engine_starter_antirepeat) {endif} {endif} (L.L.cp_schluessel_rot_mode) 3 / (S.L.cp_schluessel_rot) {end} {trigger:kw_m_enginestart_off} (L.L.cp_schluessel_rot_mode) 3 = {if} (L.L.engine_starter) (L.L.engine_on) ! && {if} (T.L.ev_engine_starter_off) {endif} 2 (S.L.cp_schluessel_rot_mode) 1 (S.L.engine_injection_on) 0 (S.L.engine_starter_antirepeat) (S.L.engine_starter) {endif} (L.L.cp_schluessel_rot_mode) 3 / (S.L.cp_schluessel_rot) {end} {trigger:cp_lifting_toggle_drag} (L.S.mouse_x) 200 / (L.L.cp_lifting_rot) + 0 max 1 min (S.L.cp_lifting_rot) s1 ' Stufen: ' -1: senken ' 0: Normal ' 1: heben l1 0.2 < {if} 0 (S.L.cp_lifting_rot_mode) {else} l1 0.8 < {if} 1 (S.L.cp_lifting_rot_mode) {else} 2 (S.L.cp_lifting_rot_mode) {endif} {endif} (L.L.cp_lifting_rot_lastmode) (L.L.cp_lifting_rot_mode) > {if} 1 (S.L.cp_lifting_ab) {if} (T.L.ev_lifting_ab) {endif} 0 (S.L.cp_lifting_ab) {endif} (L.L.cp_lifting_rot_lastmode) (L.L.cp_lifting_rot_mode) < {if} 1 (S.L.cp_lifting_auf) {if} (T.L.ev_lifting_auf) {endif} 0 (S.L.cp_lifting_auf) {endif} (L.L.cp_lifting_rot_mode) (S.L.cp_lifting_rot_lastmode) {end} {trigger:cp_lifting_toggle_off} ' Einrasten auf den festen Positionen: (L.L.cp_lifting_rot_mode) 2 / (S.L.cp_lifting_rot) {end} {trigger:cp_klappfenster_OR1} (L.L.cp_klappfenster_OR1) ! (S.L.cp_klappfenster_OR1) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_OR2} (L.L.cp_klappfenster_OR2) ! (S.L.cp_klappfenster_OR2) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_OR3} (L.L.cp_klappfenster_OR3) ! (S.L.cp_klappfenster_OR3) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_OR4} (L.L.cp_klappfenster_OR4) ! (S.L.cp_klappfenster_OR4) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_OL1} (L.L.cp_klappfenster_OL1) ! (S.L.cp_klappfenster_OL1) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_OL2} (L.L.cp_klappfenster_OL2) ! (S.L.cp_klappfenster_OL2) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_OL3} (L.L.cp_klappfenster_OL3) ! (S.L.cp_klappfenster_OL3) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_OL4} (L.L.cp_klappfenster_OL4) ! (S.L.cp_klappfenster_OL4) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_UR1} (L.L.cp_klappfenster_UR1) ! (S.L.cp_klappfenster_UR1) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_UR2} (L.L.cp_klappfenster_UR2) ! (S.L.cp_klappfenster_UR2) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_UR3} (L.L.cp_klappfenster_UR3) ! (S.L.cp_klappfenster_UR3) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_UR4} (L.L.cp_klappfenster_UR4) ! (S.L.cp_klappfenster_UR4) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_UL1} (L.L.cp_klappfenster_UL1) ! (S.L.cp_klappfenster_UL1) s1 (M.L.klappfenstersound) {end} {trigger:cp_klappfenster_UL2} (L.L.cp_klappfenster_UL2) ! (S.L.cp_klappfenster_UL2) s1 (M.L.klappfenstersound) {end} {trigger:cp_dachluefter_r} (L.L.cp_dachluefter_r_rot) ! (S.L.cp_dachluefter_r_rot) (L.L.cp_dachluefter_r_trans) ! (S.L.cp_dachluefter_r_trans) s1 (M.L.Turbolueftersound) {end} {trigger:cp_dachluefter_l} (L.L.cp_dachluefter_l_rot) ! (S.L.cp_dachluefter_l_rot) (L.L.cp_dachluefter_l_trans) ! (S.L.cp_dachluefter_l_trans) s1 (M.L.Turbolueftersound) {end} {trigger:cp_dachluke_1} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_dachluke_1) 1 + (S.L.cp_dachluke_1) 3 > {if} 0 (S.L.cp_dachluke_1) {endif} (L.L.cp_dachluke_1) s0 (M.L.dachluke_1_pos_rot) l1 (S.L.cp_dachluke_1_pos) l2 (S.L.cp_dachluke_1_rot) l3 (S.L.cp_dachluke_1_S1) l4 (S.L.cp_dachluke_1_S2) l5 (S.L.cp_dachluke_1_rad) {endif} {end} {trigger:cp_dachluke_2} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_dachluke_2) 1 + (S.L.cp_dachluke_2) 3 > {if} 0 (S.L.cp_dachluke_2) {endif} (L.L.cp_dachluke_2) s0 (M.L.dachluke_2_pos_rot) l1 (S.L.cp_dachluke_2_pos) l2 (S.L.cp_dachluke_2_rot) l3 (S.L.cp_dachluke_2_S1) l4 (S.L.cp_dachluke_2_S2) l5 (S.L.cp_dachluke_2_rad) {endif} {end} {trigger:cp_dachluke_1_toggle} (L.L.cp_dachluke_1_sw) ! (S.L.cp_dachluke_1_sw) s1 (M.L.dachluke_e_1_zwischenschliessen) 1.1 (S.L.cp_dachluke_e_1_timer) (M.L.kippschaltersound) {end} {trigger:cp_dachluke_2_toggle} (L.L.cp_dachluke_2_sw) ! (S.L.cp_dachluke_2_sw) s1 (M.L.dachluke_e_1_zwischenschliessen) 1.1 (S.L.cp_dachluke_e_1_timer) (M.L.kippschaltersound) {end} {trigger:cp_dachluke_3_toggle} (L.L.cp_dachluke_3_sw) ! (S.L.cp_dachluke_3_sw) s1 (M.L.dachluke_e_2_zwischenschliessen) 1.1 (S.L.cp_dachluke_e_2_timer) (M.L.kippschaltersound) {end} {trigger:cp_dachluke_4_toggle} (L.L.cp_dachluke_4_sw) ! (S.L.cp_dachluke_4_sw) s1 (M.L.dachluke_e_2_zwischenschliessen) 1.1 (S.L.cp_dachluke_e_2_timer) (M.L.kippschaltersound) {end} {trigger:cp_Fahrertuer_drag} 1 (S.L.cp_fahrertuer_dragged) (L.L.cp_fahrertuer_pos) (S.L.cp_fahrertuer_lastpos) (L.S.mouse_x) 500 / (L.L.cp_fahrertuer_pos) + (S.L.cp_fahrertuer_pos) s0 l0 0 < {if} 0 (S.L.cp_fahrertuer_pos) {endif} l0 1 > {if} 1 (S.L.cp_fahrertuer_pos) {endif} (L.L.cp_fahrertuer_pos) (L.L.cp_fahrertuer_lastpos) - (L.S.Timegap) / (S.L.cp_fahrertuer_speed) {end} {trigger:cp_Fahrertuer_off} 0 (S.L.cp_fahrertuer_dragged) {end} {trigger:KR_play} (L.L.cockpit_KR_play) ! (S.L.cockpit_KR_play) s1 1 (S.L.cockpit_KR_play_sw) (T.L.ev_standheizung_schalter_ein) {end} {trigger:KR_play_off} 0 (S.L.cockpit_KR_play_sw) (T.L.ev_standheizung_schalter_aus) {end} {trigger:cp_standheizung_toggle} (L.L.cp_standheizung_sw) {if} 0 (S.L.cp_standheizung_sw) s1 {else} 1 (S.L.cp_standheizung_sw) s1 {endif} (M.L.kippschaltersound) {end} {trigger:cp_licht_nebelschluss_toggle} (L.L.cp_licht_nebelschluss_sw) {if} 0 (S.L.cp_licht_nebelschluss_sw) s1 {else} 1 (S.L.cp_licht_nebelschluss_sw) s1 {endif} (M.L.kippschaltersound) {end} {trigger:cp_wiperlever_drag} ' Fallunterscheidung: Hebel in x- oder y-Richtung? (C.L.wiper_lever) {if} (L.S.mouse_y) abs (L.S.mouse_x) abs >= {if} (L.S.mouse_y) -50 / (L.L.cockpit_wischerhebel) + 0 max 1 min (S.L.cockpit_wischerhebel) s0 ' Stufen: ' 0: Aus ' 1: Intervall ' 2: Langsam ' 3: Schnell l0 0.17 < {if} 0 (S.L.cockpit_wischerhebel_mode) (S.L.cp_wischer_intervall_sw) (S.L.cp_wischer_einaus_sw) (S.L.cp_wischer_schnell_sw) {else} l0 0.5 < {if} 1 (S.L.cockpit_wischerhebel_mode) (S.L.cp_wischer_intervall_sw) 0 (S.L.cp_wischer_schnell_sw) (S.L.cp_wischer_einaus_sw) {else} l0 0.83 < {if} 2 (S.L.cockpit_wischerhebel_mode) 1 (S.L.cp_wischer_einaus_sw) 0 (S.L.cp_wischer_intervall_sw) (S.L.cp_wischer_schnell_sw) {else} 3 (S.L.cockpit_wischerhebel_mode) 1 (S.L.cp_wischer_einaus_sw) (S.L.cp_wischer_schnell_sw) 0 (S.L.cp_wischer_intervall_sw) {endif} {endif} {endif} {else} (L.S.mouse_x) -50 / (L.L.cockpit_wischerhebel_x) + 0 max 1 min (S.L.cockpit_wischerhebel_x) s1 ' Waschanlage (Hebel nach oben) l1 0.9 > {if} (L.L.cp_wischer_wascher_sw) ! {if} (T.L.ev_wischerhebel) {endif} 1 (S.L.cp_wischer_wascher_sw) {else} (L.L.cp_wischer_wascher_sw) {if} (T.L.ev_wischerhebel) {endif} 0 (S.L.cp_wischer_wascher_sw) {endif} {endif} {endif} {end} {trigger:cp_wiperlever_off} ' Einrasten auf den festen Positionen: (L.L.cockpit_wischerhebel_mode) 3 / (S.L.cockpit_wischerhebel) (L.L.cp_wischer_wascher_sw) {if} (T.L.ev_wischerhebel) 1 (S.L.cockpit_wischerhebel_x) (S.L.cp_wischer_wascher_sw) {endif} {end} {trigger:cp_wiper_turnswitch_drag} ' (C.L.wiper_turnswitch) ' {if} (L.S.mouse_y) -50 / (L.L.cockpit_wischer_drehschalter) + 0 max 1 min (S.L.cockpit_wischer_drehschalter) s0 ' Stufen: ' 0: Intervall ' 1: Aus ' 2: Langsam ' 3: Schnell l0 0.17 < {if} 0 (S.L.cockpit_wischer_drehschalter_mode) (S.L.cp_wischer_schnell_sw) (S.L.cp_wischer_einaus_sw) (S.L.cp_wischer_intervall_sw) {else} l0 0.5 < {if} 0 (S.L.cp_wischer_einaus_sw) (S.L.cp_wischer_schnell_sw) 1 (S.L.cockpit_wischer_drehschalter_mode) (S.L.cp_wischer_intervall_sw) {else} l0 0.83 < {if} 2 (S.L.cockpit_wischer_drehschalter_mode) 1 (S.L.cp_wischer_einaus_sw) 0 (S.L.cp_wischer_intervall_sw) (S.L.cp_wischer_schnell_sw) {else} 3 (S.L.cockpit_wischer_drehschalter_mode) 1 (S.L.cp_wischer_einaus_sw) (S.L.cp_wischer_schnell_sw) 0 (S.L.cp_wischer_intervall_sw) {endif} {endif} {endif} {endif} {end} {trigger:cp_wiper_turnswitch_off} ' Einrasten auf den festen Positionen: (L.L.cockpit_wischer_drehschalter_mode) 3 / (S.L.cockpit_wischer_drehschalter) {end} '{trigger:cp_microphone} ' 1 (S.L.cp_microphone_sw) '{end} '{trigger:cp_microphone_off} ' 0 (S.L.cp_microphone_sw) '{end} {trigger:cp_mikro_drag} (L.L.cockpit_mikro_dreh) s1 (L.L.cockpit_mikro_pos) s2 (L.S.mouse_y) -300 / (L.L.cockpit_mikro_pos) + (S.L.cockpit_mikro_pos) s0 l0 0 < {if} 0 (S.L.cockpit_mikro_pos) l2 0 > {endif} l0 1 > {if} 1 (S.L.cockpit_mikro_pos) l2 1 < {endif} (L.S.mouse_x) 300 / (L.L.cockpit_mikro_dreh) + (S.L.cockpit_mikro_dreh) s0 l0 0 < {if} 0 (S.L.cockpit_mikro_dreh) l1 0 > {endif} l0 1 > {if} 1 (S.L.cockpit_mikro_dreh) l1 1 < {endif} (L.L.cockpit_mikro_pos) (L.L.cockpit_mikro_dreh) l2 - abs (L.S.Timegap) / (S.L.cockpit_mikro_speed) {end} {trigger:cp_mikro_off} 0 (S.L.cockpit_mikro_speed) {end} {trigger:cp_heizregler_temp_drag} (L.S.mouse_y) -150 / (L.L.cockpit_heizregler_temp) + 0 max 1 min (S.L.cockpit_heizregler_temp) 'Neuer Zustand des Mikrotasters: 0.1 > s0 (L.L.cockpit_heizregler_temp_mikrotaster) = ! {if} (T.L.ev_heizungsregler_klick) {endif} l0 (S.L.cockpit_heizregler_temp_mikrotaster) {end} '-------------------------------------- 'For retarder lever triggers see "retarder.osc"! '{trigger:cp_Retarder_auf} ' ' (L.L.cp_Retarder_Stufe) 1 < ' {if} ' (L.L.cp_Retarder_Stufe) 0.2 + (S.L.cp_Retarder_Stufe) ' {endif} '{end} ' '{trigger:cp_Retarder_ab} ' ' (L.L.cp_Retarder_Stufe) 0 > ' {if} ' (L.L.cp_Retarder_Stufe) 0.2 - (S.L.cp_Retarder_Stufe) ' {endif} '{end} '------------------------------------- 'Tempomat {trigger:tempomat_set_up} 1 (S.L.cp_tempomat_hebel) (S.L.cp_tempomat_hebel_stufe) (T.L.ev_wischerhebel_an) {end} {trigger:tempomat_set_up_off} 0 (S.L.cp_tempomat_hebel) (S.L.cp_tempomat_hebel_stufe) (T.L.ev_wischerhebel_aus) {end} {trigger:tempomat_set_down} -1 (S.L.cp_tempomat_hebel) (S.L.cp_tempomat_hebel_stufe) (T.L.ev_wischerhebel_an) {end} {trigger:tempomat_set_down_off} 0 (S.L.cp_tempomat_hebel) (S.L.cp_tempomat_hebel_stufe) (T.L.ev_wischerhebel_aus) {end} {trigger:tempomat_sw} 1 (S.L.cp_tempomat_limiter) (T.L.ev_kippschalter_fl_ein) {end} {trigger:tempomat_sw_off} 0 (S.L.cp_tempomat_limiter) (T.L.ev_kippschalter_fl_aus) {end} '---------------------- ' Init '---------------------- {macro:cockpit_init} 0 (S.L.cockpit_hupe_volume) (S.L.door_handsteuerung) (S.L.cp_funkpiep_timer) (S.L.cockpit_wischer_drehschalter_mode) (S.L.cockpit_wischer_drehschalter) (S.L.bremse_kneeling) 1 (S.L.cp_lenkrad_visible) (S.L.cp_taster_warnblinker) (S.L.cp_lifting_rot_mode) (S.L.cp_lifting_rot_lastmode) 0.6 (S.L.cp_taster_warnblinker) (C.L.cockpit_zentralschmierung_dist) random (S.L.cp_zentralschmierung_nextkm) 0 (S.L.cockpit_wischer_drehschalter) {end} '---------------------- ' Frame '---------------------- {macro:cockpit_frame} 'Übertragen der Schalterstellungen: (L.L.cp_retarder_sw) (S.L.antrieb_retarder_sw) (L.L.cp_retarder_sw_direkt) (S.L.antrieb_retarder_sw_direkt) (L.L.cp_wischer_schnell_sw) (S.L.wiper_schnell_sw) (L.L.cp_wischer_einaus_sw) (S.L.wiper_einaus_sw) (L.L.cp_wischer_intervall_sw) (S.L.wiper_intervall_sw) (L.L.cp_wischer_wascher_sw) (S.L.wiper_wascher_sw) (M.L.tacho_frame) (M.L.uhr_frame) (M.L.drehzahlmesser_frame) (M.L.hupe_frame) (M.L.blinkerhebel_frame) (M.L.wischerhebel_frame) (M.L.wischer_drehschalter_frame) (M.L.oeldruck_frame) (M.L.tankuhr_frame) (M.L.klimator_frame) (M.L.schluessel_frame) (M.L.cockpitlights_frame) (M.L.odometer_frame) (M.L.fahrertuer_frame) (M.L.rollo_frame) (M.L.engine_thermometer_frame) (M.L.microphone_frame) (M.L.zentralschmierung_frame) (M.L.Thermometer_frame) (M.L.LCD_Uhr_frame) (M.L.DirtArrester) (M.L.DirtArrester_quer) (M.L.FahrgastpendelL) (M.L.FahrgastpendelR) (M.L.engine_warnton_druckluft_frame) (M.L.dachluken_e_frame) '#RH_Mod_2025 (M.L.Sunshade_bobble_frame) (M.L.steering_frame) '/#RH_Mod_2025 (L.L.elec_busbar_main_sw) {if} (L.L.elec_busbar_Rinv_summe) (C.L.cp_general_Rinv) + (S.L.elec_busbar_Rinv_summe) {endif} (L.L.cp_ASR_off) {if} (M.L.ASR_off_blink) {else} 0 (S.L.cp_ASR_blink) 0 (S.L.ASR_Timer) {endif} ' Wind sound pitch (L.L.Velocity) (F.L.windpitch) (S.L.cockpit_windpitch) {end} '#RH_Mod_2023 {macro:Sunshade_bobble_frame} 'Bobble 1 (to pull down the left sunshade, can hit the windscreen and left a-column) 'Longitudinal swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_1_Y_speed) (L.L.cp_sunshade_bobble_1_Y_angle) (L.L.antrieb_gradient_angle) pi * 180 / - sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_1_Y_angle) pi 2 / + sin (L.L.A_Trans_Y) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_1_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_1_Y_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_1_Y_speed) (L.L.cp_sunshade_bobble_1_Y_speed) * (C.L.cp_sunshade_bobble_1_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_1_Y_speed) sgn * - (S.L.cp_sunshade_bobble_1_Y_speed) (L.L.cp_sunshade_bobble_1_Y_angle) (L.L.cp_sunshade_bobble_1_Y_speed) (C.L.cp_sunshade_bobble_1_length) (L.L.cp_rollo_pos) (C.L.cp_sunshade_1_max_amplitude) * + / (L.S.Timegap) * - s0 (S.L.cp_sunshade_bobble_1_Y_angle) 'Lateral swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_1_X_speed) (L.L.cp_sunshade_bobble_1_X_angle) sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_1_X_angle) pi 2 / + sin (L.L.A_Trans_X) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_1_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_1_X_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_1_X_speed) (L.L.cp_sunshade_bobble_1_X_speed) * (C.L.cp_sunshade_bobble_1_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_1_X_speed) sgn * - (S.L.cp_sunshade_bobble_1_X_speed) (L.L.cp_sunshade_bobble_1_X_angle) (L.L.cp_sunshade_bobble_1_X_speed) (C.L.cp_sunshade_bobble_1_length) (L.L.cp_rollo_pos) (C.L.cp_sunshade_1_max_amplitude) * + / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_1_X_angle) 'Bobble 1 hitting the windscreen: ' Sound lock if bobble is at max pos: (L.L.cp_sunshade_bobble_1_Y_pos) (C.L.cp_sunshade_bobble_1_Y_max) = {if} 1 s2 {else} 0 s2 {endif} (L.L.cp_sunshade_bobble_1_Y_angle) sin (C.L.cp_sunshade_bobble_1_length) (L.L.cp_rollo_pos) (C.L.cp_sunshade_1_max_amplitude) * + s1 * s0 (C.L.cp_sunshade_bobble_1_Y_max) < {if} (L.L.cp_sunshade_bobble_1_Y_speed) /-/ 0.9 * (S.L.cp_sunshade_bobble_1_Y_speed) l2 0 = {if} (T.L.ev_bobble_windscreen_left_hit) {endif} {endif} l0 (C.L.cp_sunshade_bobble_1_Y_max) max (S.L.cp_sunshade_bobble_1_Y_pos) l1 / -1 max 1 min arcsin (S.L.cp_sunshade_bobble_1_Y_angle) 'Bobble 1 hitting the left a-column: ' Sound lock if bobble is at max pos: (L.L.cp_sunshade_bobble_1_X_pos) (C.L.cp_sunshade_bobble_1_X_max) = {if} 1 s2 {else} 0 s2 {endif} (L.L.cp_sunshade_bobble_1_X_angle) sin (C.L.cp_sunshade_bobble_1_length) (L.L.cp_rollo_pos) (C.L.cp_sunshade_1_max_amplitude) * + s1 * s0 (C.L.cp_sunshade_bobble_1_X_max) > {if} (L.L.cp_sunshade_bobble_1_X_speed) /-/ 0.9 * (S.L.cp_sunshade_bobble_1_X_speed) l2 0 = {if} (T.L.ev_bobble_column_hit) {endif} {endif} l0 (C.L.cp_sunshade_bobble_1_X_max) min (S.L.cp_sunshade_bobble_1_X_pos) l1 / -1 max 1 min arcsin (S.L.cp_sunshade_bobble_1_X_angle) 'Bobble 2 (to retract the left sunshade, can swing freely) 'Longitudinal swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_2_Y_speed) (L.L.cp_sunshade_bobble_2_Y_angle) (L.L.antrieb_gradient_angle) pi * 180 / - sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_2_Y_angle) pi 2 / + sin (L.L.A_Trans_Y) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_2_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_2_Y_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_2_Y_speed) (L.L.cp_sunshade_bobble_2_Y_speed) * (C.L.cp_sunshade_bobble_2_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_2_Y_speed) sgn * - (S.L.cp_sunshade_bobble_2_Y_speed) (L.L.cp_sunshade_bobble_2_Y_angle) (L.L.cp_sunshade_bobble_2_Y_speed) (C.L.cp_sunshade_bobble_2_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_2_Y_angle) 'Lateral swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_2_X_speed) (L.L.cp_sunshade_bobble_2_X_angle) sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_2_X_angle) pi 2 / + sin (L.L.A_Trans_X) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_2_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_2_X_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_2_X_speed) (L.L.cp_sunshade_bobble_2_X_speed) * (C.L.cp_sunshade_bobble_2_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_2_X_speed) sgn * - (S.L.cp_sunshade_bobble_2_X_speed) (L.L.cp_sunshade_bobble_2_X_angle) (L.L.cp_sunshade_bobble_2_X_speed) (C.L.cp_sunshade_bobble_2_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_2_X_angle) 'Bobble 3 (to pull down the right sunshade, can hit the windscreen but not in S315) 'Longitudinal swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_3_Y_speed) (L.L.cp_sunshade_bobble_3_Y_angle) (L.L.antrieb_gradient_angle) pi * 180 / - sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_3_Y_angle) pi 2 / + sin (L.L.A_Trans_Y) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_3_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_3_Y_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_3_Y_speed) (L.L.cp_sunshade_bobble_3_Y_speed) * (C.L.cp_sunshade_bobble_3_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_3_Y_speed) sgn * - (S.L.cp_sunshade_bobble_3_Y_speed) (L.L.cp_sunshade_bobble_3_Y_angle) (L.L.cp_sunshade_bobble_3_Y_speed) (C.L.cp_sunshade_bobble_3_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_3_Y_angle) 'Lateral swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_3_X_speed) (L.L.cp_sunshade_bobble_3_X_angle) sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_3_X_angle) pi 2 / + sin (L.L.A_Trans_X) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_3_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_3_X_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_3_X_speed) (L.L.cp_sunshade_bobble_3_X_speed) * (C.L.cp_sunshade_bobble_3_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_3_X_speed) sgn * - (S.L.cp_sunshade_bobble_3_X_speed) (L.L.cp_sunshade_bobble_3_X_angle) (L.L.cp_sunshade_bobble_3_X_speed) (C.L.cp_sunshade_bobble_3_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_3_X_angle) 'Bobble 3 hitting the windscreen: (L.L.cp_sunshade_bobble_3_Y_angle) sin (C.L.cp_sunshade_bobble_3_length) (L.L.cp_rollo_pos) (C.L.cp_sunshade_1_max_amplitude) * + s1 * s0 (C.L.cp_sunshade_bobble_3_Y_max) < {if} (L.L.cp_sunshade_bobble_3_Y_speed) /-/ 0.9 * (S.L.cp_sunshade_bobble_3_Y_speed) ' S315: Silent bobble ' (T.L.ev_bobble_windscreen_left_hit) {endif} l0 (C.L.cp_sunshade_bobble_3_Y_max) max (S.L.cp_sunshade_bobble_3_Y_pos) l1 / -1 max 1 min arcsin (S.L.cp_sunshade_bobble_3_Y_angle) 'Bobble 4 (to retract the right sunshade, can swing freely) 'Longitudinal swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_4_Y_speed) (L.L.cp_sunshade_bobble_4_Y_angle) (L.L.antrieb_gradient_angle) pi * 180 / - sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_4_Y_angle) pi 2 / + sin (L.L.A_Trans_Y) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_4_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_4_Y_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_4_Y_speed) (L.L.cp_sunshade_bobble_4_Y_speed) * (C.L.cp_sunshade_bobble_4_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_4_Y_speed) sgn * - (S.L.cp_sunshade_bobble_4_Y_speed) (L.L.cp_sunshade_bobble_4_Y_angle) (L.L.cp_sunshade_bobble_4_Y_speed) (C.L.cp_sunshade_bobble_4_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_4_Y_angle) 'Lateral swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_4_X_speed) (L.L.cp_sunshade_bobble_4_X_angle) sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_4_X_angle) pi 2 / + sin (L.L.A_Trans_X) * (L.S.Timegap) * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...by friction... (C.L.cp_sunshade_bobble_4_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_4_X_speed) sgn * - '...and by damping: (L.L.cp_sunshade_bobble_4_X_speed) (L.L.cp_sunshade_bobble_4_X_speed) * (C.L.cp_sunshade_bobble_4_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_4_X_speed) sgn * - (S.L.cp_sunshade_bobble_4_X_speed) (L.L.cp_sunshade_bobble_4_X_angle) (L.L.cp_sunshade_bobble_4_X_speed) (C.L.cp_sunshade_bobble_4_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_4_X_angle) 'Bobble 5 (to retract the drivers window sunshade, can hit windscreen and left a-column) 'Longitudinal swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_5_Y_speed) (L.L.cp_sunshade_bobble_5_Y_angle) (L.L.antrieb_gradient_angle) pi * 180 / - sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_5_Y_angle) pi 2 / + sin (L.L.A_Trans_Y) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_5_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_5_Y_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_5_Y_speed) (L.L.cp_sunshade_bobble_5_Y_speed) * (C.L.cp_sunshade_bobble_5_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_5_Y_speed) sgn * - (S.L.cp_sunshade_bobble_5_Y_speed) (L.L.cp_sunshade_bobble_5_Y_angle) (L.L.cp_sunshade_bobble_5_Y_speed) (C.L.cp_sunshade_bobble_5_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_5_Y_angle) 'Lateral swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_5_X_speed) (L.L.cp_sunshade_bobble_5_X_angle) sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_5_X_angle) pi 2 / + sin (L.L.A_Trans_X) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_5_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_5_X_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_5_X_speed) (L.L.cp_sunshade_bobble_5_X_speed) * (C.L.cp_sunshade_bobble_5_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_5_X_speed) sgn * - (S.L.cp_sunshade_bobble_5_X_speed) (L.L.cp_sunshade_bobble_5_X_angle) (L.L.cp_sunshade_bobble_5_X_speed) (C.L.cp_sunshade_bobble_5_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_5_X_angle) 'Bobble 5 hitting the windscreen: ' Sound lock if bobble is at max pos: (L.L.cp_sunshade_bobble_5_Y_pos) (C.L.cp_sunshade_bobble_5_Y_max) = {if} 1 s2 {else} 0 s2 {endif} (L.L.cp_sunshade_bobble_5_Y_angle) sin (C.L.cp_sunshade_bobble_5_length) s1 * s0 (C.L.cp_sunshade_bobble_5_Y_max) < {if} (L.L.cp_sunshade_bobble_5_Y_speed) /-/ 0.9 * (S.L.cp_sunshade_bobble_5_Y_speed) l2 0 = {if} ' Bobble 5 can only hit the metal bar in front with its cord --> silent in S315 ' (T.L.ev_bobble_windscreen_left_hit) {endif} {endif} l0 (C.L.cp_sunshade_bobble_5_Y_max) max (S.L.cp_sunshade_bobble_5_Y_pos) l1 / -1 max 1 min arcsin (S.L.cp_sunshade_bobble_5_Y_angle) 'Bobble 5 hitting the left a-column: ' Sound lock if bobble is at max pos: (L.L.cp_sunshade_bobble_5_X_pos) (C.L.cp_sunshade_bobble_5_X_max) = {if} 1 s2 {endif} (L.L.cp_sunshade_bobble_5_X_angle) sin (C.L.cp_sunshade_bobble_5_length) s1 * s0 (C.L.cp_sunshade_bobble_5_X_max) > {if} (L.L.cp_sunshade_bobble_5_X_speed) /-/ 0.9 * (S.L.cp_sunshade_bobble_5_X_speed) l2 1 = ! {if} (T.L.ev_bobble_column_hit) {endif} {endif} l0 (C.L.cp_sunshade_bobble_5_X_max) min (S.L.cp_sunshade_bobble_5_X_pos) l1 / -1 max 1 min arcsin (S.L.cp_sunshade_bobble_5_X_angle) 'Bobble 6 (to retract the left sunshade (GT Matrix type 1), can swing freely) 'Longitudinal swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_6_Y_speed) (L.L.cp_sunshade_bobble_6_Y_angle) (L.L.antrieb_gradient_angle) pi * 180 / - sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_6_Y_angle) pi 2 / + sin (L.L.A_Trans_Y) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_6_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_6_Y_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_6_Y_speed) (L.L.cp_sunshade_bobble_6_Y_speed) * (C.L.cp_sunshade_bobble_6_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_6_Y_speed) sgn * - (S.L.cp_sunshade_bobble_6_Y_speed) (L.L.cp_sunshade_bobble_6_Y_angle) (L.L.cp_sunshade_bobble_6_Y_speed) (C.L.cp_sunshade_bobble_6_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_6_Y_angle) 'Lateral swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_6_X_speed) (L.L.cp_sunshade_bobble_6_X_angle) sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_6_X_angle) pi 2 / + sin (L.L.A_Trans_X) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_6_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_6_X_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_6_X_speed) (L.L.cp_sunshade_bobble_6_X_speed) * (C.L.cp_sunshade_bobble_6_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_6_X_speed) sgn * - (S.L.cp_sunshade_bobble_6_X_speed) (L.L.cp_sunshade_bobble_6_X_angle) (L.L.cp_sunshade_bobble_6_X_speed) (C.L.cp_sunshade_bobble_6_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_6_X_angle) 'Bobble 7 (to retract the richt sunshade (GT Matrix type 1), can swing freely) 'Longitudinal swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_7_Y_speed) (L.L.cp_sunshade_bobble_7_Y_angle) (L.L.antrieb_gradient_angle) pi * 180 / - sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_7_Y_angle) pi 2 / + sin (L.L.A_Trans_Y) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_7_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_7_Y_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_7_Y_speed) (L.L.cp_sunshade_bobble_7_Y_speed) * (C.L.cp_sunshade_bobble_7_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_7_Y_speed) sgn * - (S.L.cp_sunshade_bobble_7_Y_speed) (L.L.cp_sunshade_bobble_7_Y_angle) (L.L.cp_sunshade_bobble_7_Y_speed) (C.L.cp_sunshade_bobble_7_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_7_Y_angle) 'Lateral swinging speed of sunshade bobble affected by gravitation... (L.L.cp_sunshade_bobble_7_X_speed) (L.L.cp_sunshade_bobble_7_X_angle) sin 9.81 * (L.S.Timegap) * + '...by vehicle acceleration... (L.L.cp_sunshade_bobble_7_X_angle) pi 2 / + sin (L.L.A_Trans_X) * (L.S.Timegap) * - '...by friction... (C.L.cp_sunshade_bobble_7_friction) (L.S.Timegap) * (L.L.cp_sunshade_bobble_7_X_speed) sgn * - '...by chattering level 100 random 50 - 2000 / (L.L.klappern_vol) * + '...and by damping: (L.L.cp_sunshade_bobble_7_X_speed) (L.L.cp_sunshade_bobble_7_X_speed) * (C.L.cp_sunshade_bobble_7_damping) * (L.S.Timegap) * (L.L.cp_sunshade_bobble_7_X_speed) sgn * - (S.L.cp_sunshade_bobble_7_X_speed) (L.L.cp_sunshade_bobble_7_X_angle) (L.L.cp_sunshade_bobble_7_X_speed) (C.L.cp_sunshade_bobble_7_length) / (L.S.Timegap) * - (S.L.cp_sunshade_bobble_7_X_angle) '######################################################################################################################################### 'Test function: When headlights turned on, bobble can be moved by steering and throttle/brake to determine max x/y position ' (L.L.lights_abbl) ' {if} ' (L.L.Throttle) pi * -0.5 * (L.L.Brake) pi * 0.5 * + (S.L.cp_sunshade_bobble_1_Y_angle) (S.L.cp_sunshade_bobble_2_Y_angle) (S.L.cp_sunshade_bobble_3_Y_angle) (S.L.cp_sunshade_bobble_4_Y_angle) (S.L.cp_sunshade_bobble_5_Y_angle) ' (L.L.Axle_Steering_0_L) 0.67 / pi * 2 / (S.L.cp_sunshade_bobble_1_X_angle) (S.L.cp_sunshade_bobble_2_X_angle) (S.L.cp_sunshade_bobble_3_X_angle) (S.L.cp_sunshade_bobble_4_X_angle) (S.L.cp_sunshade_bobble_5_X_angle) ' 0 (S.L.cp_sunshade_bobble_1_Y_speed) (S.L.cp_sunshade_bobble_2_Y_speed) (S.L.cp_sunshade_bobble_3_Y_speed) (S.L.cp_sunshade_bobble_4_Y_speed) (S.L.cp_sunshade_bobble_5_Y_speed) ' 0 (S.L.cp_sunshade_bobble_1_X_speed) (S.L.cp_sunshade_bobble_2_X_speed) (S.L.cp_sunshade_bobble_3_X_speed) (S.L.cp_sunshade_bobble_4_X_speed) (S.L.cp_sunshade_bobble_5_X_speed) ' {endif} '######################################################################################################################################### {end} '/#RH_Mod_2023 {macro:DirtArrester} 'Berechnen des Sollwertes: (L.L.A_Trans_Y) 9.81 / 1.5 min -1.5 max 'Differenz zum Istwert: (L.L.cp_DirtArrester) - 0.05 * 'Durch Zeit: (L.S.Timegap) / 'Dämpfung der Istgeschwindigkeit: (L.S.Timegap) 6 * /-/ exp 'Zur gedämpften Istgeschwindigkeit addieren: (L.L.cp_DirtArrester_Speed) * + (S.L.cp_DirtArrester_Speed) 'Geschwindigkeit auf Istposition addieren: (L.S.Timegap) * (L.L.cp_DirtArrester) + (S.L.cp_DirtArrester) {end} {macro:DirtArrester_quer} 'Berechnen des Sollwertes: (L.L.A_Trans_X) 9.81 / 1.5 min -1.5 max 'Differenz zum Istwert: (L.L.cp_DirtArrester_quer) - 0.05 * 'Durch Zeit: (L.S.Timegap) / 'Dämpfung der Istgeschwindigkeit: (L.S.Timegap) 6 * /-/ exp 'Zur gedämpften Istgeschwindigkeit addieren: (L.L.cp_DirtArrester_quer_Speed) * + (S.L.cp_DirtArrester_quer_Speed) 'Geschwindigkeit auf Istposition addieren: (L.S.Timegap) * (L.L.cp_DirtArrester_quer) + (S.L.cp_DirtArrester_quer) {end} {macro:ASR_off_blink} (L.L.ASR_Timer) (L.S.Timegap) + (S.L.ASR_Timer) s0 l0 0 > l0 3 < && {if} 1 (S.L.cp_ASR_blink) {endif} l0 3 > l0 6 < && {if} 0 (S.L.cp_ASR_blink) {endif} l0 6 > {if} 0 (S.L.ASR_Timer) {endif} {end} {macro:uhr_frame} (L.L.elec_busbar_avail) 0.5 > {if} (L.S.Time) s0 60 / (S.L.cockpit_uhr_min) 12 / (S.L.cockpit_uhr_std) l0 trunc (S.L.cockpit_uhr_sek) {endif} {end} '#RH_Mod_2022# {macro:tacho_frame} (L.L.cp_tacho) 0 = {if} (L.L.Velocity) (F.L.cockpit_tacholinie) s0 (L.L.cockpit_tachowinkel) s1 5 s2 5 s3 (M.L.traegheit) l1 (S.L.cockpit_tachowinkel) {else} 0 (S.L.cockpit_tachowinkel) {endif} (L.L.elec_busbar_main) (L.L.cp_tachoscheibe) && (L.L.cp_tacho) 0 = && {if} (S.L.cp_tacho_rasseln) {else} 0 (S.L.cp_tacho_rasseln) {endif} {end} {macro:drehzahlmesser_frame} (L.L.engine_n) (F.L.cockpit_drehzahlmesser) s0 (L.L.cockpit_drehzahlwinkel) s1 5 s2 5 s3 (M.L.traegheit) l1 (S.L.cockpit_drehzahlwinkel) {end} '/#RH_Mod_2022# {macro:hupe_frame} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_hupe_sw) 0.3 < {if} (L.L.cockpit_hupe) 1 = {if} (L.L.cockpit_hupe_volume) 1 < {if} (L.L.cockpit_hupe_volume) (L.S.Timegap) 10 * + (S.L.cockpit_hupe_volume) {else} 1 (S.L.cockpit_hupe_volume) {endif} ' Horn 2 fadeout while Horn 1 is playing (when switching horn type during operation) (L.L.cockpit_hupe2_volume) 0 > {if} (L.L.cockpit_hupe2_volume) (L.S.Timegap) 10 * - (S.L.cockpit_hupe2_volume) {else} 0 (S.L.cockpit_hupe2_volume) {endif} {else} (L.L.cockpit_hupe_volume) 0 > {if} (L.L.cockpit_hupe_volume) (L.S.Timegap) 10 * - (S.L.cockpit_hupe_volume) {else} 0 (S.L.cockpit_hupe_volume) {endif} {endif} {else} (L.L.cockpit_hupe) 1 = {if} (L.L.cockpit_hupe2_volume) 1 < {if} (L.L.cockpit_hupe2_volume) (L.S.Timegap) 10 * + (S.L.cockpit_hupe2_volume) {else} 1 (S.L.cockpit_hupe2_volume) {endif} ' Horn 1 fadeout while Horn 2 is playing (when switching horn type during operation) (L.L.cockpit_hupe_volume) 0 > {if} (L.L.cockpit_hupe_volume) (L.S.Timegap) 10 * - (S.L.cockpit_hupe_volume) {else} 0 (S.L.cockpit_hupe_volume) {endif} {else} (L.L.cockpit_hupe2_volume) 0 > {if} (L.L.cockpit_hupe2_volume) (L.S.Timegap) 10 * - (S.L.cockpit_hupe2_volume) {else} 0 (S.L.cockpit_hupe2_volume) {endif} {endif} {endif} ' RH_Mod_2024: ' Air horn pitch and volume change depending on air pressure (L.L.bremse_p_Tank04) (F.L.cp_airhorn_pressure_pitchcurve) (S.L.cockpit_airhorn_pitch) (L.L.bremse_p_Tank04) (F.L.cp_airhorn_pressure_volumecurve) (S.L.cockpit_airhorn_volume) {else} (L.L.cockpit_hupe) 1 = (L.L.cockpit_hupe_volume) 1 = (L.L.cockpit_hupe2_volume) 1 = || && {if} (L.L.cp_hupe_sw) 0.3 < {if} (T.L.ev_hupe_aus) {else} (T.L.ev_hupe2_aus) {endif} {endif} (L.L.cockpit_hupe_volume) (L.S.Timegap) 10 * - 0 max (S.L.cockpit_hupe_volume) (L.L.cockpit_hupe2_volume) (L.S.Timegap) 10 * - 0 max (S.L.cockpit_hupe2_volume) {endif} {end} {macro:blinkerhebel_frame} (L.L.lights_sw_blinker) 1 = {if} -1 (S.L.cockpit_blinkerhebel) {else} (L.L.lights_sw_blinker) 2 = {if} 1 (S.L.cockpit_blinkerhebel) {else} 0 (S.L.cockpit_blinkerhebel) {endif} {endif} ' Hebel-Animation für Fernlicht (L.L.lights_sw_fern) {if} (L.L.cockpit_fernlichthebel) -1 = ! {if} -1 (S.L.cockpit_fernlichthebel) {endif} (L.L.cp_licht_standlicht_sw) 0.8 > {if} 1 (S.L.cockpit_fernlichthebel) {endif} {else} 0 (S.L.cockpit_fernlichthebel) {endif} {end} {macro:wischerhebel_frame} (L.L.cockpit_wischerhebel_lastmode) (L.L.cockpit_wischerhebel_mode) = ! {if} (T.L.ev_wischerhebel) {endif} (L.L.cockpit_wischerhebel_mode) (S.L.cockpit_wischerhebel_lastmode) {end} {macro:wischer_drehschalter_frame} (L.L.cockpit_wischer_drehschalter_lastmode) (L.L.cockpit_wischer_drehschalter_mode) = ! {if} (T.L.ev_wischerhebel) {endif} (L.L.cockpit_wischer_drehschalter_mode) (S.L.cockpit_wischer_drehschalter_lastmode) {end} {macro:cockpitlights_frame} (L.L.zuendung_stufe1_timer) 10 < {if} (L.L.zuendung_stufe1_timer) (L.S.Timegap) + 10 min (S.L.zuendung_stufe1_timer) {endif} (L.L.zuendung_stufe2_timer) 10 < {if} (L.L.zuendung_stufe2_timer) (L.S.Timegap) + 10 min (S.L.zuendung_stufe2_timer) {endif} ' Störungsmelder (L.L.zuendung_stufe2_timer) 2.15 < (L.L.engine_temperature) (C.L.cockpit_coolant_warning_temp) > || (L.L.bremse_p_tank01) 650000 < || (L.L.bremse_p_tank02) 650000 < || (L.L.bremse_p_tank03) 650000 < || (L.L.cp_schluessel_rot_mode) 1 > && (L.L.zuendung_stufe2_timer) 0.15 > && (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_masterfailure) ' Batterie (L.L.engine_n) 450 < (L.L.elec_ladekontrolle) || (L.L.zuendung_stufe1_timer) 0.05 > && (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_batterie) ' Abblendlicht (L.L.lights_abbl) (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_abbl) ' Fernlicht (L.L.lights_fern) (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_fern) ' Blinker (L.L.lights_blinkgeber) (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_blinker) ' Haltewunsch (L.L.haltewunschlampe) (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_haltewunsch) ' Türkontrolle (L.L.door_pressure_close_2) 0.1 > (L.L.door_pressure_close_3) 0.1 > && ! (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_tuerkontrolle) ' Abfahrt (L.L.bremse_halte) ! (L.L.door_0) 0.2 < && (L.L.door_1) 0.2 < && (L.L.door_2) 0.2 < && (L.L.door_3) 0.2 < && (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_Abfahrt) ' Kontrolle Feststellbremse (L.L.bremse_p_Brzyl_FBA) 650000 < (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_feststellbremse) ' Retarder (L.L.zuendung_stufe2_timer) 4.5 < (L.L.Retarderhebel_Stufe) 0 > || (L.L.Brake) (C.L.custom_retarder_pedal_threshold) > (L.L.cp_retarder_sw) (C.L.cockpit_retarder_sw_active_position) = && || (L.L.antrieb_retarder) || (L.L.cp_schluessel_rot_mode) 1 > && (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_retarder_aktiv) ' ABS (L.L.zuendung_stufe2_timer) 2 < (L.L.cp_schluessel_rot_mode) 1 = || (L.L.zuendung_stufe1_timer) 0.05 > && (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_ABS_Eingriff) ' Standheizung (L.L.cp_standheizung_sw) (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_auxheat) ' ASR Eingriff (L.L.zuendung_stufe2_timer) 2.3 < (L.L.engine_ASR_eingriff) || (L.L.cp_ASR_blink) || (L.L.zuendung_stufe2_timer) 0.15 > && (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_ASR_Eingriff) ' Spiegelheizung: (L.L.cp_spiegelheizung_sw) (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_spiegelheizung) ' Vorglühen (L.L.cockpit_light_testbutton) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_vorgluehen) ' Heben/Senken (L.L.bremse_kneeling) 0 > (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_lifting) ' Federspeicher (L.L.cockpit_light_testbutton) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_federspeicher) ' Kühlwasser (L.L.zuendung_stufe1_timer) 0.7 < (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_kuehlwasser) ' EDC (L.L.cp_schluessel_rot_mode) 1 > (L.L.engine_n) 350 < && (L.L.zuendung_stufe2_timer) 0.1 > && (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_edc) ' Getriebeoeltemperatur (L.L.zuendung_stufe1_timer) 2 < (L.L.cockpit_light_testbutton) || (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_getriebeoel) ' Geschwindigkeitswarnung (L.L.vis_100kmh) 1 >= {if} (L.L.Velocity) 101 > (L.L.elec_busbar_main) * (S.L.cockpit_light_speedwarning) {else} (L.L.Velocity) 81 > (L.L.elec_busbar_main) * (S.L.cockpit_light_speedwarning) {endif} ' Tacho-Warnleuchte (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.cp_tachoscheibe) 0 = && (L.L.cp_tacho) 0 > || (S.L.cockpit_light_tacho) ' Temperaturwarnung unter 3°C (L.S.Weather_Temperature) 3 < (L.L.elec_busbar_main) * (S.L.cockpit_light_temperatur) ' Beleuchtete Türtaster (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.door_1) 0.2 > && (L.L.door_light_blink_01) || {if} (S.L.cockpit_light_tuerkontrolle01) {else} 0 (S.L.cockpit_light_tuerkontrolle01) {endif} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.door_2) 0.2 > && (L.L.door_light_blink_23) || {if} (S.L.cockpit_light_tuerkontrolle23) {else} 0 (S.L.cockpit_light_tuerkontrolle23) {endif} ' Gangwahltaster-Beleuchtung ' Blinkender Taster, wenn Getriebe Eingabe verweigert // Blinking gear button, when selection is rejected by gearbox (L.L.cockpit_light_gang_blinktimer) (L.S.Timegap) + (S.L.cockpit_light_gang_blinktimer) (L.L.antrieb_getr_failure) {if} (L.L.cockpit_light_gang_blinktimer) 0.4 > {if} (L.L.cockpit_light_gang_blink) ! (S.L.cockpit_light_gang_blink) 0 (S.L.cockpit_light_gang_blinktimer) {endif} {else} 0 (S.L.cockpit_light_gang_blink) (S.L.cockpit_light_gang_blinktimer) {endif} (L.L.cockpit_gang1) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (L.L.cockpit_light_gang_blink) 0 = && (S.L.cockpit_light_gang1) (L.L.cockpit_gang2) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (L.L.cockpit_light_gang_blink) 0 = && (S.L.cockpit_light_gang2) (L.L.cockpit_gang3) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (L.L.cockpit_light_gang_blink) 0 = && (S.L.cockpit_light_gang3) (L.L.cockpit_gang4) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (L.L.cockpit_light_gang_blink) 0 = && (S.L.cockpit_light_gang4) (L.L.cockpit_gang1) ! (L.L.cockpit_gang2) ! && (L.L.cockpit_gang3) ! && (L.L.cockpit_gang4) ! && (L.L.cockpit_gangR) ! && (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_gangN) (L.L.cockpit_gangR) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (L.L.cockpit_light_gang_blink) 0 = && (S.L.cockpit_light_gangR) ' ------------------------------------------------- ' ' Kippschalter-Beleuchtung (L.L.cp_retarder_sw_direkt) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_retarder_direkt) (L.L.cp_retarder_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_retarder) (L.L.cp_achse_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_achse) (L.L.cp_fahrerlicht_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_fahrerlicht) (L.L.cp_licht_untenrechts_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_hinten) (L.L.cp_licht_oberdeck_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_vorne) (L.L.cp_licht_unterdeck_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_spar) (L.L.cp_licht_nacht_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_nacht) (L.L.cp_wischer_schnell_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_wischer_schnell) (L.L.cp_wischer_einaus_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_wischer_einaus) (L.L.cp_wischer_intervall_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_wischer_intervall) (L.L.cp_wischer_wascher_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_wischer_wascher) (L.L.cp_heizluefter_sw) -1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_heizluefter_1) (L.L.cp_heizluefter_sw) 1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_heizluefter_2) (L.L.cp_dachluefter_sw) -1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachluefter_1) (L.L.cp_dachluefter_sw) 1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachluefter_2) (L.L.cp_dachhzg_sw) -1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachhzg_1) (L.L.cp_dachhzg_sw) 1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachhzg_2) (L.L.cp_luftklappen_sw) -1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_luftklappen_1) (L.L.cp_luftklappen_sw) 1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_luftklappen_2) (L.L.cp_motorkuehlung_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_motorkuehlung) (L.L.cp_standheizung_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_standheizung) (L.L.door_handsteuerung) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_tuer_handsteuerung) (L.L.cp_funk_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_funk) (L.L.cp_hupe_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_hupe) (L.L.cp_licht_nebelschw_sw) (L.L.lights_stand) && (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_nebelschw) (L.L.cp_licht_nebelschluss_sw) (L.L.lights_stand) && (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_nebelschluss) (L.L.cp_licht_standlicht_sw) -1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_standlicht) (L.L.cp_licht_standlicht_sw) 1 = (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_fahrlicht) (L.L.cp_licht_kofferraum_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_licht_kofferraum) (L.L.cp_ASR_off) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_ASR_off) (L.L.cp_thermometer_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_thermometer) (L.L.cp_fahrerfenster_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_fahrerfenster) (L.L.cp_scheibenheizung_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_scheibenheizung) (L.L.cp_drucker_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_drucker) (L.L.cp_dachluke_1_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachluke_1) (L.L.cp_dachluke_2_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachluke_2) (L.L.cp_dachluke_3_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachluke_3) (L.L.cp_dachluke_4_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_dachluke_4) (L.L.cp_ecopower_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_ecopower) ' Dummy-Schalter: (L.L.cp_dummy_sw01) (L.L.elec_busbar_main) * (S.L.cp_dummy_func01) (L.L.cp_dummy_sw02) (L.L.elec_busbar_main) * (S.L.cp_dummy_func02) (L.L.cp_dummy_sw03) (L.L.elec_busbar_main) * (S.L.cp_dummy_func03) (L.L.cp_dummy_sw04) (L.L.elec_busbar_main) * (S.L.cp_dummy_func04) (L.L.cp_dummy_sw05) (L.L.elec_busbar_main) * (S.L.cp_dummy_func05) (L.L.cp_dummy_sw06) (L.L.elec_busbar_main) * (S.L.cp_dummy_func06) (L.L.cp_dummy_sw07) (L.L.elec_busbar_main) * (S.L.cp_dummy_func07) (L.L.cp_dummy_sw08) (L.L.elec_busbar_main) * (S.L.cp_dummy_func08) (L.L.cp_dummy_sw09) (L.L.elec_busbar_main) * (S.L.cp_dummy_func09) (L.L.cp_dummy_sw10) (L.L.elec_busbar_main) * (S.L.cp_dummy_func10) ' Meldelampen für Kneeling und ECAS ' Selftest: Beim Einschalten der Elektrik leuchten Melde- und Störlampe kurz auf, daher zwei Timer laufen lassen: (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cockpit_light_kneeling_timer) (L.S.Timegap) + (S.L.cockpit_light_kneeling_timer) (L.L.cockpit_light_kneeling_failure_timer) (L.S.Timegap) + (S.L.cockpit_light_kneeling_failure_timer) {else} 0 (S.L.cockpit_light_kneeling_failure_timer) (S.L.cockpit_light_kneeling_timer) {endif} ' Bedingungen fürs Leuchten: (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.cockpit_light_kneeling_failure_timer) (C.L.cockpit_light_kneeling_failure_selftesttime) < && (S.L.cockpit_light_kneeling_failure) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.cockpit_light_kneeling_timer) (C.L.cockpit_light_kneeling_selftesttime) < (L.L.bremse_kneeling) || (L.L.bremse_p_Tank04) 750000 < (L.S.GetTime) 1 % 0.5 < && || && (S.L.cockpit_light_kneeling) ' Radio (L.L.cockpit_KR_play) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && (S.L.cockpit_light_radio) (S.L.Snd_Radio) {end} {macro:oeldruck_frame} (L.L.engine_n) (F.L.cockpit_oeldruck) (L.L.elec_busbar_main) * s0 (L.L.cockpit_oeldruck) s1 5 s2 5 s3 (M.L.traegheit) l1 (S.L.cockpit_oeldruck) {end} {macro:tankuhr_frame} (L.L.engine_tank_content) (L.L.elec_busbar_main) * s0 (L.L.cockpit_tankuhr) s1 5 s2 5 s3 (M.L.traegheit) l1 (S.L.cockpit_tankuhr) {end} {macro:engine_thermometer_frame} (L.L.engine_temperature) (F.L.cockpit_engine_temperature) (L.L.elec_busbar_main) * s0 (L.L.cockpit_motortemperaturwinkel) s1 5 s2 5 s3 (M.L.traegheit) l1 (S.L.cockpit_motortemperaturwinkel) {end} {macro:dachluken_e_frame} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_dachluke_e_1_timer) 0 > {if} (L.L.cp_dachluke_e_1_timer) (L.S.Timegap) - 0 max (S.L.cp_dachluke_e_1_timer) (L.L.cp_dachluke_e_1_timer) 0 <= {if} (M.L.dachluke_e_1) {endif} {endif} (L.L.cp_dachluke_e_2_timer) 0 > {if} (L.L.cp_dachluke_e_2_timer) (L.S.Timegap) - 0 max (S.L.cp_dachluke_e_2_timer) (L.L.cp_dachluke_e_2_timer) 0 <= {if} (M.L.dachluke_e_2) {endif} {endif} {endif} {end} {macro:dachluke_1_pos_rot} l0 0.5 <= {if} 0 s1 s2 s3 s4 s5 (T.L.ev_dachluke_1_close) {else} l0 1.5 <= {if} 0.8 s1 -1 s2 1 s3 0.10 s4 0.5 s5 (T.L.ev_dachluke_1_open) {else} l0 2.5 <= {if} 0.8 s1 1 s2 0.1 s3 1 s4 1 s5 (T.L.ev_dachluke_1_change) {else} 1.5 s1 0 s2 1 s3 1 s4 0.5 s5 (T.L.ev_dachluke_1_change) {endif} {endif} {endif} {end} {macro:dachluke_2_pos_rot} l0 0.5 <= {if} 0 s1 s2 s3 s4 s5 (T.L.ev_dachluke_2_close) {else} l0 1.5 <= {if} 0.8 s1 -1 s2 1 s3 0.10 s4 0.5 s5 (T.L.ev_dachluke_2_open) {else} l0 2.5 <= {if} 0.8 s1 1 s2 0.1 s3 1 s4 1 s5 (T.L.ev_dachluke_2_change) {else} 1.5 s1 0 s2 1 s3 1 s4 0.5 s5 (T.L.ev_dachluke_2_change) {endif} {endif} {endif} {end} {macro:dachluke_e_1_zwischenschliessen} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_dachluke_1_sw) && {if} (L.L.cp_dachluke_2_sw) {if} (L.L.cp_dachluke_e_1_rot) -1 = {if} 0.8 (S.L.cp_dachluke_e_1_pos) 1 (S.L.cp_dachluke_e_1_rot) 0.1 (S.L.cp_dachluke_e_1_S1) 1 (S.L.cp_dachluke_e_1_S2) (T.L.ev_dachluke_e_1_open) {else} 1.5 (S.L.cp_dachluke_e_1_pos) 0 (S.L.cp_dachluke_e_1_rot) 1 (S.L.cp_dachluke_e_1_S1) 1 (S.L.cp_dachluke_e_1_S2) (T.L.ev_dachluke_e_1_open) {endif} {else} (L.L.cp_dachluke_e_1_pos) 0 = {if} 0.8 (S.L.cp_dachluke_e_1_pos) -1 (S.L.cp_dachluke_e_1_rot) 1 (S.L.cp_dachluke_e_1_S1) 0.10 (S.L.cp_dachluke_e_1_S2) (T.L.ev_dachluke_e_1_open) {else} 0 (S.L.cp_dachluke_e_1_pos) (S.L.cp_dachluke_e_1_rot) (S.L.cp_dachluke_e_1_S1) (S.L.cp_dachluke_e_1_S2) (T.L.ev_dachluke_e_1_close) {endif} {endif} {else} (L.L.cp_dachluke_2_sw) {if} (L.L.cp_dachluke_e_1_pos) 0 = {if} 0.8 (S.L.cp_dachluke_e_1_pos) -1 (S.L.cp_dachluke_e_1_rot) 1 (S.L.cp_dachluke_e_1_S1) 0.1 (S.L.cp_dachluke_e_1_S2) (T.L.ev_dachluke_e_1_open) {else} 0.8 (S.L.cp_dachluke_e_1_pos) 1 (S.L.cp_dachluke_e_1_rot) 0.1 (S.L.cp_dachluke_e_1_S1) 1 (S.L.cp_dachluke_e_1_S2) (T.L.ev_dachluke_e_1_close) {endif} {else} 0 (S.L.cp_dachluke_e_1_pos) (S.L.cp_dachluke_e_1_rot) (S.L.cp_dachluke_e_1_S1) (S.L.cp_dachluke_e_1_S2) (T.L.ev_dachluke_e_1_close) {endif} {endif} {endif} {end} {macro:dachluke_e_1} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_dachluke_1_sw) && {if} (L.L.cp_dachluke_2_sw) {if} (L.L.cp_dachluke_e_1_pos) 1 < {if} (T.L.ev_dachluke_e_1_open) {endif} 1.5 (S.L.cp_dachluke_e_1_pos) 0 (S.L.cp_dachluke_e_1_rot) 1 (S.L.cp_dachluke_e_1_S1) 1 (S.L.cp_dachluke_e_1_S2) {else} (L.L.cp_dachluke_e_1_pos) 0 = {if} (T.L.ev_dachluke_e_1_open) {else} (L.L.cp_dachluke_e_1_pos) 1 = {if} (T.L.ev_dachluke_e_1_close) {else} (L.L.cp_dachluke_e_1_rot) 1 = {if} (T.L.ev_dachluke_e_1_open) (T.L.ev_dachluke_e_1_close) {endif} {endif} {endif} 0.8 (S.L.cp_dachluke_e_1_pos) -1 (S.L.cp_dachluke_e_1_rot) 1 (S.L.cp_dachluke_e_1_S1) 0.10 (S.L.cp_dachluke_e_1_S2) {endif} {else} (L.L.cp_dachluke_2_sw) {if} (L.L.cp_dachluke_e_1_pos) 0 = {if} (T.L.ev_dachluke_e_1_open) {else} (L.L.cp_dachluke_e_1_pos) 1 = {if} (T.L.ev_dachluke_e_1_close) {else} (L.L.cp_dachluke_e_1_rot) -1 = {if} (T.L.ev_dachluke_e_1_open) (T.L.ev_dachluke_e_1_close) {endif} {endif} {endif} 0.8 (S.L.cp_dachluke_e_1_pos) 1 (S.L.cp_dachluke_e_1_rot) 0.1 (S.L.cp_dachluke_e_1_S1) 1 (S.L.cp_dachluke_e_1_S2) {else} (L.L.cp_dachluke_e_1_pos) 0 = ! {if} (T.L.ev_dachluke_e_1_close) {endif} 0 (S.L.cp_dachluke_e_1_pos) (S.L.cp_dachluke_e_1_rot) (S.L.cp_dachluke_e_1_S1) (S.L.cp_dachluke_e_1_S2) {endif} {endif} {endif} {end} {macro:dachluke_e_2_zwischenschliessen} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_dachluke_3_sw) && {if} (L.L.cp_dachluke_4_sw) {if} (L.L.cp_dachluke_e_2_rot) -1 = {if} 0.8 (S.L.cp_dachluke_e_2_pos) 1 (S.L.cp_dachluke_e_2_rot) 0.1 (S.L.cp_dachluke_e_2_S1) 1 (S.L.cp_dachluke_e_2_S2) (T.L.ev_dachluke_e_2_open) {else} 1.5 (S.L.cp_dachluke_e_2_pos) 0 (S.L.cp_dachluke_e_2_rot) 1 (S.L.cp_dachluke_e_2_S1) 1 (S.L.cp_dachluke_e_2_S2) (T.L.ev_dachluke_e_2_open) {endif} {else} (L.L.cp_dachluke_e_2_pos) 0 = {if} 0.8 (S.L.cp_dachluke_e_2_pos) -1 (S.L.cp_dachluke_e_2_rot) 1 (S.L.cp_dachluke_e_2_S1) 0.10 (S.L.cp_dachluke_e_2_S2) (T.L.ev_dachluke_e_2_open) {else} 0 (S.L.cp_dachluke_e_2_pos) (S.L.cp_dachluke_e_2_rot) (S.L.cp_dachluke_e_2_S1) (S.L.cp_dachluke_e_2_S2) (T.L.ev_dachluke_e_2_close) {endif} {endif} {else} (L.L.cp_dachluke_4_sw) {if} (L.L.cp_dachluke_e_2_pos) 0 = {if} 0.8 (S.L.cp_dachluke_e_2_pos) -1 (S.L.cp_dachluke_e_2_rot) 1 (S.L.cp_dachluke_e_2_S1) 0.1 (S.L.cp_dachluke_e_2_S2) (T.L.ev_dachluke_e_2_open) {else} 0.8 (S.L.cp_dachluke_e_2_pos) 1 (S.L.cp_dachluke_e_2_rot) 0.1 (S.L.cp_dachluke_e_2_S1) 1 (S.L.cp_dachluke_e_2_S2) (T.L.ev_dachluke_e_2_close) {endif} {else} 0 (S.L.cp_dachluke_e_2_pos) (S.L.cp_dachluke_e_2_rot) (S.L.cp_dachluke_e_2_S1) (S.L.cp_dachluke_e_2_S2) (T.L.ev_dachluke_e_2_close) {endif} {endif} {endif} {end} {macro:dachluke_e_2} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.L.cp_dachluke_3_sw) && {if} (L.L.cp_dachluke_4_sw) {if} (L.L.cp_dachluke_e_2_pos) 1 < {if} (T.L.ev_dachluke_e_2_open) {endif} 1.5 (S.L.cp_dachluke_e_2_pos) 0 (S.L.cp_dachluke_e_2_rot) 1 (S.L.cp_dachluke_e_2_S1) 1 (S.L.cp_dachluke_e_2_S2) {else} (L.L.cp_dachluke_e_2_pos) 0 = {if} (T.L.ev_dachluke_e_2_open) {else} (L.L.cp_dachluke_e_2_pos) 1 = {if} (T.L.ev_dachluke_e_2_close) {else} (L.L.cp_dachluke_e_2_rot) 1 = {if} (T.L.ev_dachluke_e_2_open) (T.L.ev_dachluke_e_2_close) {endif} {endif} {endif} 0.8 (S.L.cp_dachluke_e_2_pos) -1 (S.L.cp_dachluke_e_2_rot) 1 (S.L.cp_dachluke_e_2_S1) 0.10 (S.L.cp_dachluke_e_2_S2) {endif} {else} (L.L.cp_dachluke_4_sw) {if} (L.L.cp_dachluke_e_2_pos) 0 = {if} (T.L.ev_dachluke_e_2_open) {else} (L.L.cp_dachluke_e_2_pos) 1 = {if} (T.L.ev_dachluke_e_2_close) {else} (L.L.cp_dachluke_e_2_rot) -1 = {if} (T.L.ev_dachluke_e_2_open) (T.L.ev_dachluke_e_2_close) {endif} {endif} {endif} 0.8 (S.L.cp_dachluke_e_2_pos) 1 (S.L.cp_dachluke_e_2_rot) 0.1 (S.L.cp_dachluke_e_2_S1) 1 (S.L.cp_dachluke_e_2_S2) {else} (L.L.cp_dachluke_e_2_pos) 0 = ! {if} (T.L.ev_dachluke_e_2_close) {endif} 0 (S.L.cp_dachluke_e_2_pos) (S.L.cp_dachluke_e_2_rot) (S.L.cp_dachluke_e_2_S1) (S.L.cp_dachluke_e_2_S2) {endif} {endif} {endif} {end} {macro:kippschaltersound} l1 {if} (T.L.ev_kippschalter_fl_ein) {else} (T.L.ev_kippschalter_fl_aus) {endif} {end} {macro:klappfenstersound} l1 {if} (T.L.ev_klappfenster_opn) {else} (T.L.ev_klappfenster_cls) {endif} {end} {macro:Turbolueftersound} l1 {if} (T.L.ev_turboluefter_opn) {else} (T.L.ev_turboluefter_cls) {endif} {end} {macro:klimator_frame} 'Frontheizgerät: 'MC 2011 0619: Für zweistufige Schalter geeignet: (L.L.cp_klimator_sw) (L.L.elec_busbar_main) * s1 -0.5 < {if} 0.6 (L.L.elec_busbar_main) * s1 {endif} 'Anlauf oder Auslauf? l1 100 * (L.L.cp_klimator_RPM) > {if} 1.5 s0 {else} 0.5 s0 {endif} ' Berechnung der Luefterbeschleunigung: 'Sollwert: l1 100 * 'Istwert: (L.L.cp_klimator_RPM) 'Beschleunigung: - s0 * (L.S.Timegap) * 'Addition zum Istwert: (L.L.cp_klimator_RPM) + (S.L.cp_klimator_RPM) 'Leitwert generieren: (L.L.cp_klimator_sw) 0.5 > {if} (L.L.elec_busbar_Rinv_summe) (C.L.cp_klimator_Rinv) + (S.L.elec_busbar_Rinv_summe) {else} (L.L.cp_klimator_sw) -0.5 < {if} (L.L.elec_busbar_Rinv_summe) (C.L.cp_klimator_Rinv) 0.6 * + (S.L.elec_busbar_Rinv_summe) {endif} {endif} {end} {macro:schluessel_frame} (L.L.cp_schluessel_trans_lastmode) (L.L.cp_schluessel_trans_mode) = ! {if} (T.L.ev_schluessel_steck) {endif} (L.L.cp_schluessel_trans_mode) (S.L.cp_schluessel_trans_lastmode) (L.L.cp_schluessel_rot_lastmode) (L.L.cp_schluessel_rot_mode) = ! {if} (T.L.ev_schluessel_dreh) (L.L.cp_schluessel_rot_mode) 0 = {if} 10 (S.L.zuendung_stufe1_timer) 10 (S.L.zuendung_stufe2_timer) {endif} (L.L.cp_schluessel_rot_mode) 0 > (L.L.cp_schluessel_rot_lastmode) 0 = && {if} 0 (S.L.zuendung_stufe1_timer) 10 (S.L.zuendung_stufe2_timer) (L.L.elec_busbar_avail) {if} (T.L.cp_dachlukenverriegelung) (T.L.cp_elektrik_start) {endif} {endif} (L.L.cp_schluessel_rot_mode) 0 = (L.L.cp_schluessel_rot_lastmode) 0 > && {if} (L.L.elec_busbar_avail) {if} (T.L.cp_dachlukenverriegelung) (T.L.cp_elektrik_stop) {endif} {endif} (L.L.cp_schluessel_rot_mode) 2 < (L.L.cp_schluessel_rot_lastmode) 2 = && {if} 10 (S.L.zuendung_stufe2_timer) {endif} (L.L.cp_schluessel_rot_mode) 2 = (L.L.cp_schluessel_rot_lastmode) 2 < && {if} 0 (S.L.zuendung_stufe2_timer) (L.L.elec_busbar_avail) {if} (T.L.cp_ABS_startup) {endif} {endif} {endif} (L.L.cp_schluessel_rot_mode) (S.L.cp_schluessel_rot_lastmode) {end} {macro:traegheit} 'Simuliert träges Verhalten (exponentiell) 'Ladekonventionen: ' Sollwert l0 ' Istwert l1 ' Konstante Anlauf l2 (Einheiten/s) ' Konstante Ablauf l3 (Einheiten/s) 'Anlauf oder Auslauf? l0 l1 > {if} l2 (L.S.Timegap) * 1 min -1 max s4 {else} l3 (L.S.Timegap) * 1 min -1 max s4 {endif} 'Sollwert: l0 'Istwert: l1 'Beschleunigung: - l4 * 'Addition zum Istwert: l1 + s1 {end} {macro:odometer_frame} (L.L.kmcounter_km) (L.L.kmcounter_m) 1000 / + 10 * (S.L.cp_odometer_01) (L.L.cp_odometer_01) 10 / trunc (L.L.cp_odometer_01) 10 / d trunc - (F.L.odometer_10er-uebertrag) + (S.L.cp_odometer_1) (L.L.cp_odometer_1) 10 / trunc (L.L.cp_odometer_1) 10 / d trunc - (F.L.odometer_10er-uebertrag) + (S.L.cp_odometer_10) (L.L.cp_odometer_10) 10 / trunc (L.L.cp_odometer_10) 10 / d trunc - (F.L.odometer_10er-uebertrag) + (S.L.cp_odometer_100) (L.L.cp_odometer_100) 10 / trunc (L.L.cp_odometer_100) 10 / d trunc - (F.L.odometer_10er-uebertrag) + (S.L.cp_odometer_1000) (L.L.cp_odometer_1000) 10 / trunc (L.L.cp_odometer_1000) 10 / d trunc - (F.L.odometer_10er-uebertrag) + (S.L.cp_odometer_10000) (L.L.cp_odometer_10000) 10 / trunc (L.L.cp_odometer_10000) 10 / d trunc - (F.L.odometer_10er-uebertrag) + (S.L.cp_odometer_100000) (L.L.kmcounter_m) 100 / (S.L.cp_odometer_01) ' Debug odometer - honk to reset (L.L.cp_odometer_debug) (L.L.Velocity_Ground) 3600 / (L.S.Timegap) * + (S.L.cp_odometer_debug) (L.L.cockpit_hupe) {if} 0 (S.L.cp_odometer_debug) {endif} {end} {macro:fahrertuer_frame} (L.L.cp_fahrertuer_dragged) ! {if} (L.L.cp_fahrertuer_pos) (L.S.Timegap) (L.L.cp_fahrertuer_speed) * + (S.L.cp_fahrertuer_pos) (L.L.cp_fahrertuer_pos) 1 > {if} 1 (S.L.cp_fahrertuer_pos) (L.L.cp_fahrertuer_speed) /-/ 0.7 * (S.L.cp_fahrertuer_speed) {endif} (L.L.cp_fahrertuer_pos) 0 < {if} 0 (S.L.cp_fahrertuer_speed) (S.L.cp_fahrertuer_pos) {endif} (L.L.cp_fahrertuer_pos) 0 > {if} (L.L.cp_fahrertuer_speed) (L.S.Timegap) (L.L.A_Trans_Y) (C.L.cp_fahrertuer_anschlagseite) * (L.L.A_Trans_X) /-/ + 0.3 * (L.L.cp_fahrertuer_globalangle) * * + (S.L.cp_fahrertuer_speed) {endif} (L.L.cp_fahrertuer_speed) s0 (S.L.cp_fahrertuer_lastspeed) l0 0 > {if} l0 (L.S.Timegap) 0.2 * - (S.L.cp_fahrertuer_speed) {endif} l0 0 < {if} l0 (L.S.Timegap) 0.2 * + (S.L.cp_fahrertuer_speed) {endif} (L.L.cp_fahrertuer_speed) 0 > (L.L.cp_fahrertuer_lastspeed) 0 < && (L.L.cp_fahrertuer_speed) 0 < (L.L.cp_fahrertuer_lastspeed) 0 > && || {if} 0 (S.L.cp_fahrertuer_speed) {endif} {endif} (L.L.cp_fahrertuer_pos) 0 > (L.L.cp_fahrertuer_open) ! && {if} (T.L.ev_fahrertuer_auf) 1 (S.L.cp_fahrertuer_open) {endif} (L.L.cp_fahrertuer_pos) 0 = (L.L.cp_fahrertuer_open) && {if} (T.L.ev_fahrertuer_zu) 0 (S.L.cp_fahrertuer_open) {endif} (L.L.cp_fahrertuer_pos) 140 * 27 + 3.14 * 180 / sin (S.L.cp_fahrertuer_globalangle) (L.L.velocity) (L.L.cp_velocity_last) - (S.L.cp_acceleration) (L.L.velocity) (S.L.cp_velocity_last) {end} {macro:rollo_frame} (L.L.cp_rollo_pos) (L.L.cp_rollo_rastpos) max (S.L.cp_rollo_rastpos) (L.L.cp_rollo_dragged) ! {if} (L.L.cp_rollo_retract) {if} (L.L.cp_rollo_speed) (L.S.Timegap) (L.L.cp_rollo_pos) 14 * * - (S.L.cp_rollo_speed) (L.L.cp_rollo_pos) (L.S.Timegap) (L.L.cp_rollo_speed) * + (S.L.cp_rollo_pos) (S.L.cp_rollo_rastpos) {else} (L.L.cp_rollo_pos) (L.L.cp_rollo_rastpos) < {if} (L.L.cp_rollo_speed) (L.S.Timegap) 14 * + (S.L.cp_rollo_speed) (L.L.cp_rollo_pos) (L.S.Timegap) (L.L.cp_rollo_speed) * + (L.L.cp_rollo_rastpos) min (S.L.cp_rollo_pos) {else} 0 (S.L.cp_rollo_speed) {endif} {endif} (L.L.cp_rollo_pos) 1 > {if} 1 (S.L.cp_rollo_pos) (S.L.cp_rollo_rastpos) {else} (L.L.cp_rollo_pos) 0 < {if} 0 (S.L.cp_rollo_pos) (S.L.cp_rollo_retract) (S.L.cp_rollo_rastpos) {endif} {endif} {endif} 'Rollo-Kordel Texturverschiebung: (L.L.cp_rollo_pos) 0.47 * (S.L.cp_rollo_kordel_pos1) (L.L.cp_rollo_pos) 0.5 * (S.L.cp_rollo_kordel_pos2) (L.L.cp_rollo_pos) 0.167 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo1_2) {else} 0 (S.L.vis_rollo1_2) {endif} (L.L.cp_rollo_pos) 0.33 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo1_3) {else} 0 (S.L.vis_rollo1_3) {endif} (L.L.cp_rollo_pos) 0.52 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo1_4) {else} 0 (S.L.vis_rollo1_4) {endif} (L.L.cp_rollo_pos) 0.69 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo1_5) {else} 0 (S.L.vis_rollo1_5) {endif} (L.L.cp_rollo_pos) 0.86 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo1_6) {else} 0 (S.L.vis_rollo1_6) {endif} ' Rollo links bei alternativer Matrix (L.L.cp_rollo_pos) 0.33 > (L.L.vis_matrix) 1 = && {if} 1 (S.L.vis_rollo1b_2) {else} 0 (S.L.vis_rollo1b_2) {endif} (L.L.cp_rollo_pos) 0.66 > (L.L.vis_matrix) 1 = && {if} 1 (S.L.vis_rollo1b_3) {else} 0 (S.L.vis_rollo1b_3) {endif} (L.L.cp_rollo2_pos) (L.L.cp_rollo2_rastpos) max (S.L.cp_rollo2_rastpos) (L.L.cp_rollo2_dragged) ! {if} (L.L.cp_rollo2_retract) {if} (L.L.cp_rollo2_speed) (L.S.Timegap) (L.L.cp_rollo2_pos) 14 * * - (S.L.cp_rollo2_speed) (L.L.cp_rollo2_pos) (L.S.Timegap) (L.L.cp_rollo2_speed) * + (S.L.cp_rollo2_pos) (S.L.cp_rollo2_rastpos) {else} (L.L.cp_rollo2_pos) (L.L.cp_rollo2_rastpos) < {if} (L.L.cp_rollo2_speed) (L.S.Timegap) 14 * + (S.L.cp_rollo2_speed) (L.L.cp_rollo2_pos) (L.S.Timegap) (L.L.cp_rollo2_speed) * + (L.L.cp_rollo2_rastpos) min (S.L.cp_rollo2_pos) {else} 0 (S.L.cp_rollo2_speed) {endif} {endif} (L.L.cp_rollo2_pos) 1 > {if} 1 (S.L.cp_rollo2_pos) (S.L.cp_rollo2_rastpos) {else} (L.L.cp_rollo2_pos) 0 < {if} 0 (S.L.cp_rollo2_pos) (S.L.cp_rollo2_retract) (S.L.cp_rollo2_rastpos) {endif} {endif} {endif} (L.L.cp_rollo2_pos) 0.167 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo2_2) {else} 0 (S.L.vis_rollo2_2) {endif} (L.L.cp_rollo2_pos) 0.33 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo2_3) {else} 0 (S.L.vis_rollo2_3) {endif} (L.L.cp_rollo2_pos) 0.52 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo2_4) {else} 0 (S.L.vis_rollo2_4) {endif} (L.L.cp_rollo2_pos) 0.69 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo2_5) {else} 0 (S.L.vis_rollo2_5) {endif} (L.L.cp_rollo2_pos) 0.86 > (L.L.vis_matrix) 0 = && {if} 1 (S.L.vis_rollo2_6) {else} 0 (S.L.vis_rollo2_6) {endif} ' Rollo links bei alternativer Matrix (L.L.cp_rollo2_pos) 0.33 > (L.L.vis_matrix) 1 = && {if} 1 (S.L.vis_rollo2b_2) {else} 0 (S.L.vis_rollo2b_2) {endif} (L.L.cp_rollo2_pos) 0.66 > (L.L.vis_matrix) 1 = && {if} 1 (S.L.vis_rollo2b_3) {else} 0 (S.L.vis_rollo2b_3) {endif} (L.L.cp_rollo3_pos) (L.L.cp_rollo3_rastpos) max (S.L.cp_rollo3_rastpos) (L.L.cp_rollo3_dragged) ! {if} (L.L.cp_rollo3_retract) {if} (L.L.cp_rollo3_speed) (L.S.Timegap) (L.L.cp_rollo3_pos) 14 * * - (S.L.cp_rollo3_speed) (L.L.cp_rollo3_pos) (L.S.Timegap) (L.L.cp_rollo3_speed) * + (S.L.cp_rollo3_pos) (S.L.cp_rollo3_rastpos) {else} (L.L.cp_rollo3_pos) (L.L.cp_rollo3_rastpos) < {if} (L.L.cp_rollo3_speed) (L.S.Timegap) 14 * + (S.L.cp_rollo3_speed) (L.L.cp_rollo3_pos) (L.S.Timegap) (L.L.cp_rollo3_speed) * + (L.L.cp_rollo3_rastpos) min (S.L.cp_rollo3_pos) {else} 0 (S.L.cp_rollo3_speed) {endif} {endif} (L.L.cp_rollo3_pos) 1 > {if} 1 (S.L.cp_rollo3_pos) (S.L.cp_rollo3_rastpos) {else} (L.L.cp_rollo3_pos) 0 < {if} 0 (S.L.cp_rollo3_pos) (S.L.cp_rollo3_retract) (S.L.cp_rollo3_rastpos) {endif} {endif} {endif} (L.L.cp_rollo3_pos) 0.3 > (L.L.vis_schulbus) 1 = && {if} 1 (S.L.vis_rollo3_2) {else} 0 (S.L.vis_rollo3_2) {endif} (L.L.cp_rollo3_pos) 0.6 > (L.L.vis_schulbus) 1 = && {if} 1 (S.L.vis_rollo3_3) {else} 0 (S.L.vis_rollo3_3) {endif} (L.L.cp_rollo4_pos) (L.L.cp_rollo4_rastpos) max (S.L.cp_rollo4_rastpos) (L.L.cp_rollo4_dragged) ! {if} (L.L.cp_rollo4_retract) {if} (L.L.cp_rollo4_speed) (L.S.Timegap) (L.L.cp_rollo4_pos) 14 * * - (S.L.cp_rollo4_speed) (L.L.cp_rollo4_pos) (L.S.Timegap) (L.L.cp_rollo4_speed) * + (S.L.cp_rollo4_pos) (S.L.cp_rollo4_rastpos) {else} (L.L.cp_rollo4_pos) (L.L.cp_rollo4_rastpos) < {if} (L.L.cp_rollo4_speed) (L.S.Timegap) 14 * + (S.L.cp_rollo4_speed) (L.L.cp_rollo4_pos) (L.S.Timegap) (L.L.cp_rollo4_speed) * + (L.L.cp_rollo4_rastpos) min (S.L.cp_rollo4_pos) {else} 0 (S.L.cp_rollo4_speed) {endif} {endif} (L.L.cp_rollo4_pos) 1 > {if} 1 (S.L.cp_rollo4_pos) (S.L.cp_rollo4_rastpos) {else} (L.L.cp_rollo4_pos) 0 < {if} 0 (S.L.cp_rollo4_pos) (S.L.cp_rollo4_retract) (S.L.cp_rollo4_rastpos) {endif} {endif} {endif} (L.L.cp_rollo4_pos) 0.5 > {if} 1 (S.L.vis_rollo4_2) {else} 0 (S.L.vis_rollo4_2) {endif} {end} {macro:microphone_frame} (L.L.cp_microphone_sw) (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && s0 (L.L.Snd_Microphone) s1 l0 l1 ! && {if} (T.L.micro_lautsprecherknack_start) {endif} l0 ! l1 && {if} (T.L.micro_lautsprecherknack_end) {endif} l0 (S.L.Snd_Microphone) {end} {macro:zentralschmierung_frame} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > (L.L.cockpit_light_zentralschmierung) (L.L.cockpit_light_testbutton) || && (S.L.cockpit_light_zentralschmierung_2) (L.L.cp_zentralschmierung_nextkm) (L.L.velocity) 3600 / (L.S.Timegap) * + (S.L.cp_zentralschmierung_nextkm) (C.L.cockpit_zentralschmierung_dist) > (L.L.cp_zentralschmierung_runtime) (C.L.cockpit_zentralschmierung_maxtime) < && {if} 1 (S.L.cockpit_light_zentralschmierung) (L.L.cp_zentralschmierung_runtime) (L.S.Timegap) + (S.L.cp_zentralschmierung_runtime) {else} (L.L.cockpit_light_zentralschmierung) {if} 0 (S.L.cp_zentralschmierung_nextkm) {endif} 0 (S.L.cockpit_light_zentralschmierung) (S.L.cp_zentralschmierung_runtime) {endif} {end} {macro:LCD_Uhr_frame} (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > {if} (L.S.Time) 3600 / s0 trunc s1 "02" $IntToStrEnh ":" $+ l0 l1 - 60 * trunc "02" $IntToStrEnh $+ " " $+ (S.$.cockpit_LCD_Uhrzeit) {endif} {end} {macro:Thermometer_frame} (L.L.cp_thermometer_sw) 0.5 > s1 {if} (L.L.Cabinair_Temp) s0 trunc " 3" $IntToStrEnh "C" $+ (S.$.cockpit_temperatur) {else} (L.S.Weather_Temperature) s0 trunc " 3" $IntToStrEnh "C" $+ (S.$.cockpit_temperatur) {endif} {end} {macro:engine_warnton_druckluft_frame} (L.L.vis_tuerwarnton_off) ! {if} (L.L.door_1) 0.1 > (L.L.velocity) 5 > && (L.L.door_2) 0.1 > (L.L.velocity) 5 > && || {endif} (L.L.bremse_p_tank01) 650000 < || (L.L.bremse_p_tank02) 650000 < || (L.L.bremse_p_tank03) 650000 < || (L.L.engine_temperature) (C.L.cockpit_coolant_warning_temp) > || (L.L.engine_n) 300 > && {if} 1 (S.L.engine_warnton_druckluft) {else} 0 (S.L.engine_warnton_druckluft) {endif} (L.L.elec_busbar_main) 0.5 > {if} (L.L.cp_spiegelverstellung_quer_l) 0 > {if} (L.L.spiegel_l_quer_pos) 1 < {if} 1 (S.L.spiegel_l_quer) {else} 0 (S.L.spiegel_l_quer) {endif} (L.L.spiegel_l_quer_pos) (L.L.cp_spiegelverstellung_quer_l) 75 / + 1 min (S.L.spiegel_l_quer_pos) (L.L.spiegel_l_quer_pos) -10 / (S.L.spiegel_l_quer_f_pos) {endif} (L.L.cp_spiegelverstellung_quer_l) 0 < {if} (L.L.spiegel_l_quer_pos) -1 > {if} -1 (S.L.spiegel_l_quer) {else} 0 (S.L.spiegel_l_quer) {endif} (L.L.spiegel_l_quer_pos) (L.L.cp_spiegelverstellung_quer_l) 75 / + -1 max (S.L.spiegel_l_quer_pos) (L.L.spiegel_l_quer_pos) -10 / (S.L.spiegel_l_quer_f_pos) {endif} (L.L.cp_spiegelverstellung_hoch_l) 0 > {if} (L.L.spiegel_l_hoch_pos) 1 < {if} 1 (S.L.spiegel_l_hoch) {else} 0 (S.L.spiegel_l_hoch) {endif} (L.L.spiegel_l_hoch_pos) (L.L.cp_spiegelverstellung_hoch_L) 75 / + 1 min (S.L.spiegel_l_hoch_pos) (L.L.spiegel_l_hoch_pos) -10 / (S.L.spiegel_l_hoch_f_pos) {endif} (L.L.cp_spiegelverstellung_hoch_l) 0 < {if} (L.L.spiegel_l_hoch_pos) -1 > {if} -1 (S.L.spiegel_l_hoch) {else} 0 (S.L.spiegel_l_hoch) {endif} (L.L.spiegel_l_hoch_pos) (L.L.cp_spiegelverstellung_hoch_l) 75 / + -1 max (S.L.spiegel_l_hoch_pos) (L.L.spiegel_l_hoch_pos) 10 / (S.L.spiegel_l_hoch_f_pos) {endif} 'Rechter Spiegel (L.L.cp_spiegelverstellung_quer_r) 0 > {if} (L.L.spiegel_r_quer_pos) 1 < {if} 1 (S.L.spiegel_r_quer) {else} 0 (S.L.spiegel_r_quer) {endif} (L.L.spiegel_r_quer_pos) (L.L.cp_spiegelverstellung_quer_r) 75 / + 1 min (S.L.spiegel_r_quer_pos) (L.L.spiegel_r_quer_pos) -10 / (S.L.spiegel_r_quer_f_pos) {endif} (L.L.cp_spiegelverstellung_quer_r) 0 < {if} (L.L.spiegel_r_quer_pos) -1 > {if} -1 (S.L.spiegel_r_quer) {else} 0 (S.L.spiegel_r_quer) {endif} (L.L.spiegel_r_quer_pos) (L.L.cp_spiegelverstellung_quer_r) 75 / + -1 max (S.L.spiegel_r_quer_pos) (L.L.spiegel_r_quer_pos) -10 / (S.L.spiegel_r_quer_f_pos) {endif} (L.L.cp_spiegelverstellung_hoch_r) 0 > {if} (L.L.spiegel_r_hoch_pos) 1 < {if} 1 (S.L.spiegel_r_hoch) {else} 0 (S.L.spiegel_r_hoch) {endif} (L.L.spiegel_r_hoch_pos) (L.L.cp_spiegelverstellung_hoch_r) 75 / + 1 min (S.L.spiegel_r_hoch_pos) (L.L.spiegel_r_hoch_pos) -10 / (S.L.spiegel_r_hoch_f_pos) {endif} (L.L.cp_spiegelverstellung_hoch_r) 0 < {if} (L.L.spiegel_r_hoch_pos) -1 > {if} -1 (S.L.spiegel_r_hoch) {else} 0 (S.L.spiegel_r_hoch) {endif} (L.L.spiegel_r_hoch_pos) (L.L.cp_spiegelverstellung_hoch_r) 75 / + -1 max (S.L.spiegel_r_hoch_pos) (L.L.spiegel_r_hoch_pos) 10 / (S.L.spiegel_r_hoch_f_pos) {endif} {endif} {end} {trigger:cp_FahrgastpendelR} 1 (S.L.cp_FahrgastpendelR_drag) {end} {trigger:cp_FahrgastpendelR_off} 0 (S.L.cp_FahrgastpendelR_drag) {end} {trigger:cp_FahrgastpendelR_drag} (L.L.cp_FahrgastpendelR_drag) {if} (L.L.cp_FahrgastpendelR_Pos) (L.S.mouse_y) 500 / + 1 min 0 max s0 l0 (L.L.cp_FahrgastpendelR_Pos) - (L.S.Timegap) / (S.L.cp_FahrgastpendelR_Speed) l0 (S.L.cp_FahrgastpendelR_Pos) {endif} {end} {macro:FahrgastpendelR} 'Sollwert: (wenn mindestens ein Typ an der Stelle durchgeht) 8 (M.V.GetHumanCountOnPathLink) 1 min s4 'Differenz * InvTrägheit = Beschleunigung (L.L.cp_FahrgastpendelR_Pos) - 10 * s1 'Wenn ein Fahrgast durchwill, dann überschreibe die "Drag"-Eigenschaft: l4 {if} 0 (S.L.cp_FahrgastpendelR_drag) {endif} (L.L.cp_FahrgastpendelR_drag) ! {if} 'Anwendung einer Reibungskraft: l1 (L.L.cp_FahrgastpendelR_Speed) sgn 0.5 * - s0 'Prüfen, ob sich die Beschleunigung infolge der Reibung umkehrt - dann wird sie auf 0 gesetzt: l0 l1 * 0 < {if} 0 s0 {endif} 'Anwenden der Beschleunigung: (L.L.cp_FahrgastpendelR_Speed) l0 (L.S.Timegap) * + (S.L.cp_FahrgastpendelR_Speed) 'Anwenden der Position: (L.L.cp_FahrgastpendelR_Pos) (L.L.cp_FahrgastpendelR_Speed) (L.S.Timegap) * + (S.L.cp_FahrgastpendelR_Pos) s0 {else} (L.L.cp_FahrgastpendelR_Pos) s0 {endif} 'Limits: (Anschlag an Haltestange mit 10% Abprallstärke) l0 0 < (L.L.vis_fahrgastpendel) && {if} 0 (S.L.cp_FahrgastpendelR_Pos) (T.L.ev_fahrgastpendelR_zu) (L.L.cp_FahrgastpendelR_Speed) -0.1 * (S.L.cp_FahrgastpendelR_Speed) {endif} '(anderes Ende ohne Reflexion) l0 1 > {if} 1 (S.L.cp_FahrgastpendelR_Pos) 0 (S.L.cp_FahrgastpendelR_Speed) {endif} {end} {trigger:cp_FahrgastpendelL} 1 (S.L.cp_FahrgastpendelL_drag) {end} {trigger:cp_FahrgastpendelL_off} 0 (S.L.cp_FahrgastpendelL_drag) {end} {trigger:cp_FahrgastpendelL_drag} (L.L.cp_FahrgastpendelL_drag) {if} (L.L.cp_FahrgastpendelL_Pos) (L.S.mouse_y) 500 / + 1 min 0 max s0 l0 (L.L.cp_FahrgastpendelL_Pos) - (L.S.Timegap) / (S.L.cp_FahrgastpendelL_Speed) l0 (S.L.cp_FahrgastpendelL_Pos) {endif} {end} {macro:FahrgastpendelL} 'Sollwert: (wenn mindestens ein Typ an der Stelle durchgeht) 7 (M.V.GetHumanCountOnPathLink) 1 min s4 'Differenz * InvTrägheit = Beschleunigung (L.L.cp_FahrgastpendelL_Pos) - 10 * s1 'Wenn ein Fahrgast durchwill, dann überschreibe die "Drag"-Eigenschaft: l4 {if} 0 (S.L.cp_FahrgastpendelL_drag) {endif} (L.L.cp_FahrgastpendelL_drag) ! {if} 'Anwendung einer Reibungskraft: l1 (L.L.cp_FahrgastpendelL_Speed) sgn 0.5 * - s0 'Prüfen, ob sich die Beschleunigung infolge der Reibung umkehrt - dann wird sie auf 0 gesetzt: l0 l1 * 0 < {if} 0 s0 {endif} 'Anwenden der Beschleunigung: (L.L.cp_FahrgastpendelL_Speed) l0 (L.S.Timegap) * + (S.L.cp_FahrgastpendelL_Speed) 'Anwenden der Position: (L.L.cp_FahrgastpendelL_Pos) (L.L.cp_FahrgastpendelL_Speed) (L.S.Timegap) * + (S.L.cp_FahrgastpendelL_Pos) s0 {else} (L.L.cp_FahrgastpendelL_Pos) s0 {endif} 'Limits: (Anschlag an Haltestange mit 10% Abprallstärke) l0 0 < (L.L.vis_fahrgastpendel) && {if} 0 (S.L.cp_FahrgastpendelL_Pos) (T.L.ev_fahrgastpendelL_zu) (L.L.cp_FahrgastpendelL_Speed) -0.1 * (S.L.cp_FahrgastpendelL_Speed) {endif} '(anderes Ende ohne Reflexion) l0 1 > {if} 1 (S.L.cp_FahrgastpendelL_Pos) 0 (S.L.cp_FahrgastpendelL_Speed) {endif} {end} {macro:steering_frame} 'Power steering hiss sound when turned to max steering lock: (L.L.engine_on) {if} (L.L.lights_blinkautom_lenkeinschlag_abs) 0.99 > {if} (L.L.cp_steering_servo) ! {if} (T.L.ev_steering_servo_on) 1 (S.L.cp_steering_servo) {endif} (L.L.lights_blinkautom_lenkeinschlag_abs) (L.L.cp_steering_servo_last) (L.S.Timegap) 50 / - max (S.L.cp_steering_servo_last) {else} (L.L.cp_steering_servo) 1 = {if} (T.L.ev_steering_servo_off) 0 (S.L.cp_steering_servo) {endif} {endif} {else} (L.L.cp_steering_servo) 1 = {if} (T.L.ev_steering_servo_off) 0 (S.L.cp_steering_servo) {endif} {endif} 'Tire grind noise when turning at standstill (L.L.lights_blinkautom_lenkeinschlag) (L.L.lights_blinkautom_lenkeinschlag_last) - (L.S.Timegap) / s0 (L.L.cp_steering_speed) s1 7 s2 7 s3 (M.L.traegheit) l1 (S.L.cp_steering_speed) {end} {trigger:cp_Vorhang} (L.L.cp_Vorhang) ! (S.L.cp_Vorhang) (L.L.cp_Vorhang) {if} (T.L.ev_Vorhang_auf) {else} (T.L.ev_Vorhang_zu) {endif} {end}