Das inoffizielle Forum zu Eisenbahn.exe Professional 7+

maxithing
Benutzeravatar
Beiträge: 2322
Registriert: 05.06.2011, 15:08
Wohnort: Gangelt
EEP-Version: 6 bis 14 E

AW: Ampelschaltung mit lua

Hallo, das freut mich.
Dar Aufbau einer T-Kreuzung geschieht nachdem gleichen Prinzip. Nur eben "normale" Weichen verwenden ;)

Gruß
Dieter
Gruß
Dieter (DH1)
----------------------------------------------------------------------------------
Rechner: I7 4x4,0 Ghz, 16 GB Ram, Nvidia GTX 970 mit 4 GB Ram
Erhard
Kein Avatar
Beiträge: 5
Registriert: 31.01.2017, 11:19
EEP-Version: EEP 13

AW: Ampelschaltung mit lua

Hallo,
ich habe mir die Ampelsteuerung von EepNolie runtergeladen.

Habe erstmal eine weitere Kreuzung in der Demoanlage angelegt um zu sehen wie es geht, nachdem ich mir den Text ins Deutsche übersetzt habe, spreche leider kein Englisch, war es kein Problem, dass Prinzip zu verstehen.
Für eine T-Abzweigung geht es dieses Script wohl nicht?
Ausserdem habe ich das Problem es in ein vorhandenes LUA Script einzubinden, bin mit LUA noch nicht so gut vertraut.
Wäre für Hilfe sehr Dankbar

Erhard
Mit freundlichen Grüßen
Erhard


Windows 10
Version EEP 6, 9, X, 11, 12, 13 aktuell 14
Modellkonverter Version 1.3.6
ACPI x64-basierter Computer
AMD_FX- 6350_Six-Core_Processor
AMD Radeon R9 200 Series
maxithing
Benutzeravatar
Beiträge: 2322
Registriert: 05.06.2011, 15:08
Wohnort: Gangelt
EEP-Version: 6 bis 14 E

AW: Ampelschaltung mit lua

Hallo,

ich habe mir das Tool von EEPNolie nicht angesehen, kann daher nichts dazu sagen ob es für T-Kreuzungen verwendbar ist.
Ein Lua-Script das als ganzes funktioniert in ein vorhandenes einzubinden funktioniert eigentlich ganz einfach.
Da es sich ja wahrscheinlich im Prinzip um eine oder mehrere Funktionen handelt, die in dem Script dafür sorgen, dass die Ampeln geschaltet werden, brauchst Du nur zu prüfen, ob in diesem Script eine function EEPMain() vorhanden ist.
Wenn die Funktionen dort aufgerufen werden musst Du diese Zeilen einfach in deine EEPMain() einsetzen. Die eigentlichen Funktionen werden sicher außerhalb der EEP-Main definiert sein, die kannst Du dann insgesamt kopieren und am Ende deines eigenen Scripts einfügen.
Wichtig ist aber, dass in dem eingefügten Teil keine Variablen mit gleichem Namen GLOBAL verwendet werden.
Gruß
Dieter (DH1)
----------------------------------------------------------------------------------
Rechner: I7 4x4,0 Ghz, 16 GB Ram, Nvidia GTX 970 mit 4 GB Ram
EepNolie
Benutzeravatar
Beiträge: 95
Registriert: 20.09.2015, 13:21
Wohnort: Tremelo Belgien
EEP-Version: 6 bis 15

AW: AW: Ampelschaltung mit lua

Erhard » 31.01.2017, 12:45 hat geschrieben:Für eine T-Abzweigung geht es dieses Script wohl nicht?
Hallo Erhard,

Das geht, du musst eine "Dummy" Signalnummer verwenden :

-- EDIT THIS PART(add lines as many times as you have crossings) :
-- example : data_amp[A][signals]={B,C,D,E}
--     where A    = the number of the crossing (always start with 1 as first)
--           B->E = the signal numbers on the crossing
---          use 999 for a dummy signal number if no opposite pairsignal is available
data_amp[1][signals]={5,999,6,8}             -- numbers of the signals (paired)

Mfg,

EepNolie
Desktop : Windows 10 Pro 64Bit - Intel Quad Core i7-4790 4.0Ghz - 32Gb RAM - Asus Geforce GTX-06G 1060 (6Gb) - Dual screen Asus VS247 24"
Laptop : i7-4750HQ 3.2Ghz - 16Gb RAM - NVidia GTX960M - Windows 10

Ich bin dabei seit EEP 6 und benutze EEP 15

Download my free EEP-tools : Model Multiplier / Texture Multiplier / Registry Tool

Website : eepnolie.be
Erhard
Kein Avatar
Beiträge: 5
Registriert: 31.01.2017, 11:19
EEP-Version: EEP 13

AW: Ampelschaltung mit lua

Hallo Ihr Beiden,

danke für die Info!
Mit freundlichen Grüßen
Erhard


Windows 10
Version EEP 6, 9, X, 11, 12, 13 aktuell 14
Modellkonverter Version 1.3.6
ACPI x64-basierter Computer
AMD_FX- 6350_Six-Core_Processor
AMD Radeon R9 200 Series
Erhard
Kein Avatar
Beiträge: 5
Registriert: 31.01.2017, 11:19
EEP-Version: EEP 13

AW: Ampelschaltung mit lua

Code: Alles auswählen
clearlog()

print("Script for switching traffic lights on multiple crossings")
print("       by EepNolie - visit at http://www.eepnolie.be")

cntr_amp=0                                    -- counter for traffic light switching
---------------------------------------------------------------------------------------------
-- EDIT THIS PART :
crossings=1                                 -- number of crossings in the layout
tmr_cycle1=200                                -- duration of cycle 1
tmr_cycle2=220                                -- duration of cycle 2
tmr_cycle3=240                                -- duration of cycle 3
tmr_cycle4=440                                -- duration of cycle 4
tmr_cycle5=460                                -- duration of cycle 5
tmr_cycle6=480                                -- duration of cycle 6
-- a counter of 5 = 1 second
-- values should be added to the previous cycle, e.g. if the first cycle = 20 seconds and then
--   second cycle = 2 seconds then value for the first cycle = 100 and for the second
--   cylce = 100 + 10 (110)
--   and so on...
---------------------------------------------------------------------------------------------
signals=1                                    -- pointer name for the table
data_amp={}                                    -- create table (as much crossings as needed)
for x=1,crossings,1 do
    data_amp[x]={}
end
---------------------------------------------------------------------------------------------
-- EDIT THIS PART(add lines as many times as you have crossings) :
-- example : data_amp[A][signals]={B,C,D,E}
--     where A    = the number of the crossing (always start with 1 as first)
--           B->E = the signal numbers on the crossing

data_amp[1][signals]={5,7,6,8}                -- numbers of the signals (paired)

---------------------------------------------------------------------------------------------
function set_traffic_lights()
-- for each crossing the status of the lights is set : Red, Green or Orange (if present)
-- the timing depends of the counter (5 = 1 second)
--   at start : initial setting (1 (pair) red, 1 (pair) green)

    for x=1,crossings,1 do
        if cntr_amp==0 then
            EEPSetSignal(data_amp[x][signals][1],4)    -- FG Rot, PKW Gruen
            EEPSetSignal(data_amp[x][signals][2],4)    -- FG Rot, PKW Gruen
             EEPSetSignal(data_amp[x][signals][3],1)    -- FG Gruen, PKW Rot
             EEPSetSignal(data_amp[x][signals][4],1)    -- FG Gruen, PKW Rot
        elseif cntr_amp==tmr_cycle1 then
            EEPSetSignal(data_amp[x][signals][1],5)    -- FG Rot, PKW Gelb
            EEPSetSignal(data_amp[x][signals][2],5)    -- FG Rot, PKW Gelb
             EEPSetSignal(data_amp[x][signals][3],2)    -- FG Rot, PKW Rot
             EEPSetSignal(data_amp[x][signals][4],2)    -- FG Rot, PKW Rot
        elseif cntr_amp==tmr_cycle2 then
            EEPSetSignal(data_amp[x][signals][1],6)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][2],6)    -- FG Rot, PKW Rot
             EEPSetSignal(data_amp[x][signals][3],3)    -- FG Gruen, PKW Rot-Gelb
             EEPSetSignal(data_amp[x][signals][4],3)    -- FG Gruen, PKW Rot-Gelb
        elseif cntr_amp==tmr_cycle3 then
            EEPSetSignal(data_amp[x][signals][1],1)    -- FG Gruen, PKW Rot
            EEPSetSignal(data_amp[x][signals][2],1)    -- FG Gruen, PKW Rot
             EEPSetSignal(data_amp[x][signals][3],4)    -- FG Rot, PKW Gruen
             EEPSetSignal(data_amp[x][signals][4],4)    -- FG Rot, PKW Gruen
        elseif cntr_amp==tmr_cycle4 then
            EEPSetSignal(data_amp[x][signals][1],2)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][2],2)    -- FG Rot, PKW Rot
             EEPSetSignal(data_amp[x][signals][3],5)    -- FG Rot, PKW Gelb
             EEPSetSignal(data_amp[x][signals][4],5)    -- FG Rot, PKW Gelb
        elseif cntr_amp==tmr_cycle5 then
            EEPSetSignal(data_amp[x][signals][1],3)    -- FG Gruen, PKW Rot-Gelb
            EEPSetSignal(data_amp[x][signals][2],3)    -- FG Gruen, PKW Rot-Gelb
             EEPSetSignal(data_amp[x][signals][3],6)    -- FG Rot, PKW Rot
             EEPSetSignal(data_amp[x][signals][4],6)    -- FG Rot, PKW Rot
        end
    end
    cntr_amp=cntr_amp+1
    if cntr_amp>tmr_cycle6 then cntr_amp=0 end
end
---------------------------------------------------------------------------------------------
function EEPMain()
    set_traffic_lights()
    return 1
end
---------------------------------------------------------------------------------------------
Code: Alles auswählen
I=0
clearlog()

print("Hey let's start, EEP Version is: ", EEPVer)

function EEPMain()
    -- print("Counter: ",I)
 if I == Timer0 then     
        EEPSetSignal(0324,2)
        EEPSetSignal(0325,2)
        EEPSetSignal(0037,2)
        EEPSetSignal(0036,2)
        EEPSetSignal(0251,2)
        EEPSetSignal(0305,2)

    end
    if I == Timer1 then     
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke1", 1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke2", 1000 )
    end
    if I == Timer2 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Klappe", 1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke1", 1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke2", 1000 )
    
    end
    if I == Timer3 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-1", 1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-2", 1000 )
    end
        if I == Timer4 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-1", -1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-2", -1000 )
    end
    if I == Timer5 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Klappe", -1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke1", -1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke2", -1000 )
    end
    if I == Timer6 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke1", -1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke2", -1000 )
    end
    if I == Timer7 then
        EEPSetSignal(0324,1)
        EEPSetSignal(0325,1)
        EEPSetSignal(0037,1)
        EEPSetSignal(0036,1)
        EEPSetSignal(0251,1)
        EEPSetSignal(0305,1)

    end

function R_KLAPPBRUECKE_OEFFNEN()
Timer0=I+1
Timer1=I+25
Timer2=I+100
Timer3=I+250
print("Timer 0 bis 3, Brücken öffnen wurden gestartet")  
end
    
   
function R_KLAPPBRUECKE_SCHLIESSEN()
Timer4=I+25
Timer5=I+50
Timer6=I+225
Timer7=I+275
print("Timer 4 bis 7, Brücken schliessen wurden gestartet")  
end       

    if I == Timer8 then     
        EEPSetSignal(0240,2)
        EEPSetSignal(0241,2)
        EEPSetSignal(0215,2)
        EEPSetSignal(0207,2)
        EEPSetSignal(0156,2)
        EEPSetSignal(0326,2)

    end
    if I == Timer9 then     
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke1", 1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke2", 1000 )
    end
    if I == Timer10 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Klappe", 1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke1", 1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke2", 1000 )
    
    end
    if I == Timer11 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-1", 1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-2", 1000 )
    end
        if I == Timer12 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-1", -1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-2", -1000 )
    end
    if I == Timer13 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Klappe", -1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke1", -1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke2", -1000 )
    end
    if I == Timer14 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke1", -1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke2", -1000 )
    end
    if I == Timer15 then
        EEPSetSignal(0240,1)
        EEPSetSignal(0241,1)
        EEPSetSignal(0215,1)
        EEPSetSignal(0207,1)
        EEPSetSignal(0156,1)
        EEPSetSignal(0326,1)

    end


    I=I+1    
    return 1
end
    
function S_KLAPPBRUECKE_OEFFNEN()
Timer8=I+1
Timer9=I+25
Timer10=I+100
Timer11=I+250
print("Timer 8 bis 11, Brücken öffnen wurden gestartet")  
end
    
   
function S_KLAPPBRUECKE_SCHLIESSEN()
Timer12=I+25
Timer13=I+50
Timer14=I+225
Timer15=I+275
print("Timer 12 bis 15, Brücken schliessen wurden gestartet")  
end    

Z_BUE_1= 0
function BUE_1_SCHLIESSEN()
   print("Bahnübergang 1 schließen")
   Z_BUE_1 = Z_BUE_1 + 1
   EEPSetSignal(21, 3)
   EEPSetSignal(16, 3)
end

function BUE_1_OEFFNEN()
   Z_BUE_1 = Z_BUE_1 - 1
   if(Z_BUE_1 <= 0 ) then
      Z_BUE_1=0
      print("Bahnübergang 1 wird geöffnet")
      EEPSetSignal(21, 1)
      EEPSetSignal(16, 1)
   end
end

Z_BUE_2= 0
function BUE_2_SCHLIESSEN()
   print("Bahnübergang 2 schließen")
   Z_BUE_2 = Z_BUE_2 + 1
   EEPSetSignal(32, 3)
   EEPSetSignal(73, 3)
end
function BUE_2_OEFFNEN()
   Z_BUE_2 = Z_BUE_2 - 1
   if(Z_BUE_2 <= 0 ) then
      Z_BUE_2=0
      print("Bahnübergang 2 wird geöffnet")
      EEPSetSignal(32, 1)
      EEPSetSignal(73, 1)
   end
end

Z_BUE_3= 0
function BUE_3_SCHLIESSEN()
   print("Bahnübergang 3 schließen")
   Z_BUE_3 = Z_BUE_3 + 1
   EEPSetSignal(34, 3)
   EEPSetSignal(38, 3)
end
function BUE_3_OEFFNEN()
   Z_BUE_3 = Z_BUE_3 - 1
   if(Z_BUE_3 <= 0 ) then
      Z_BUE_3=0
      print("Bahnübergang 3 wird geöffnet")
      EEPSetSignal(34, 1)
      EEPSetSignal(38, 1)
   end
end

Z_BUE_4= 0
function BUE_4_SCHLIESSEN()
   print("Bahnübergang 4 schließen")
   Z_BUE_4 = Z_BUE_4 + 1
   EEPSetSignal(157, 3)
   EEPSetSignal(158, 3)
end
function BUE_4_OEFFNEN()
   Z_BUE_4 = Z_BUE_4 - 1
   if(Z_BUE_4 <= 0 ) then
      Z_BUE_4=0
      print("Bahnübergang 4 wird geöffnet")
      EEPSetSignal(157, 1)
      EEPSetSignal(158, 1)
   end
end

Z_BUE_5= 0
function BUE_5_SCHLIESSEN()
   print("Bahnübergang 5 schließen")
   Z_BUE_5 = Z_BUE_5 + 1
   EEPSetSignal(133, 3)
   EEPSetSignal(152, 3)
end
function BUE_5_OEFFNEN()
   Z_BUE_5 = Z_BUE_5 - 1
   if(Z_BUE_5 <= 0 ) then
      Z_BUE_5=0
      print("Bahnübergang 5 wird geöffnet")
      EEPSetSignal(133, 1)
      EEPSetSignal(152, 1)
   end
end

Z_BUE_6= 0
function BUE_6_SCHLIESSEN()
   print("Bahnübergang 6 schließen")
   Z_BUE_6 = Z_BUE_6 + 1
   EEPSetSignal(134, 3)
   EEPSetSignal(135, 3)
end
function BUE_6_OEFFNEN()
   Z_BUE_6 = Z_BUE_6 - 1
   if(Z_BUE_6 <= 0 ) then
      Z_BUE_6=0
      print("Bahnübergang 6 wird geöffnet")
      EEPSetSignal(134, 1)
      EEPSetSignal(135, 1)
   end
end

Z_BUE_7= 0
function BUE_7_SCHLIESSEN()
   print("Bahnübergang 7 schließen")
   Z_BUE_7 = Z_BUE_7 + 1
   EEPSetSignal(162, 3)
   EEPSetSignal(163, 3)
end
function BUE_7_OEFFNEN()
   Z_BUE_7 = Z_BUE_7 - 1
   if(Z_BUE_7 <= 0 ) then
      Z_BUE_7=0
      print("Bahnübergang 7 wird geöffnet")
      EEPSetSignal(162, 1)
      EEPSetSignal(163, 1)
   end
end

Z_BUE_8= 0
function BUE_8_SCHLIESSEN()
   print("Bahnübergang 8 schließen")
   Z_BUE_8 = Z_BUE_8 + 1
   EEPSetSignal(154, 3)
   EEPSetSignal(156, 3)
end
function BUE_8_OEFFNEN()
   Z_BUE_8 = Z_BUE_8 - 1
   if(Z_BUE_8 <= 0 ) then
      Z_BUE_8=0
      print("Bahnübergang 8 wird geöffnet")
      EEPSetSignal(154, 1)
      EEPSetSignal(156, 1)
   end
end

Z_BUE_9= 0
function BUE_9_SCHLIESSEN()
   print("Bahnübergang 9 schließen")
   Z_BUE_9 = Z_BUE_9 + 1
   EEPSetSignal(201, 3)
   EEPSetSignal(202, 3)
end
function BUE_9_OEFFNEN()
   Z_BUE_9 = Z_BUE_9 - 1
   if(Z_BUE_9 <= 0 ) then
      Z_BUE_9=0
      print("Bahnübergang 9 wird geöffnet")
      EEPSetSignal(201, 1)
      EEPSetSignal(202, 1)
   end
end

Z_BUE_10= 0
function BUE_10_SCHLIESSEN()
   print("Bahnübergang 10 schließen")
   Z_BUE_10 = Z_BUE_10 + 1
   EEPSetSignal(132, 3)
   EEPSetSignal(145, 3)
end
function BUE_10_OEFFNEN()
   Z_BUE_10 = Z_BUE_10 - 1
   if(Z_BUE_10 <= 0 ) then
      Z_BUE_10=0
      print("Bahnübergang 10 wird geöffnet")
      EEPSetSignal(132, 1)
      EEPSetSignal(145, 1)
   end
end

Z_BUE_11= 0
function BUE_11_SCHLIESSEN()
   print("Bahnübergang 11 schließen")
   Z_BUE_11 = Z_BUE_11 + 1
   EEPSetSignal(128, 3)
   EEPSetSignal(86, 3)
end
function BUE_11_OEFFNEN()
   Z_BUE_11 = Z_BUE_11 - 1
   if(Z_BUE_11 <= 0 ) then
      Z_BUE_11=0
      print("Bahnübergang 11 wird geöffnet")
      EEPSetSignal(128, 1)
      EEPSetSignal(86, 1)
   end
end

Z_BUE_12= 0
function BUE_12_SCHLIESSEN()
   print("Bahnübergang 12 schließen")
   Z_BUE_12 = Z_BUE_12 + 1
   EEPSetSignal(252, 3)
   EEPSetSignal(253, 3)
end
function BUE_12_OEFFNEN()
   Z_BUE_12 = Z_BUE_12 - 1
   if(Z_BUE_12 <= 0 ) then
      Z_BUE_12=0
      print("Bahnübergang 12 wird geöffnet")
      EEPSetSignal(252, 1)
      EEPSetSignal(253, 1)
   end
end

Z_BUE_13= 0
function BUE_13_SCHLIESSEN()
   print("Bahnübergang 13 schließen")
   Z_BUE_13 = Z_BUE_13 + 1
   EEPSetSignal(316, 3)
   EEPSetSignal(317, 3)
end
function BUE_13_OEFFNEN()
   Z_BUE_13 = Z_BUE_13 - 1
   if(Z_BUE_13 <= 0 ) then
      Z_BUE_13=0
      print("Bahnübergang 13 wird geöffnet")
      EEPSetSignal(316, 1)
      EEPSetSignal(317, 1)
   end

end
Z_BUE_14= 0
function BUE_14_SCHLIESSEN()
   print("Bahnübergang 14 schließen")
   Z_BUE_14 = Z_BUE_14 + 1
   EEPSetSignal(226, 3)
   EEPSetSignal(233, 3)
end
function BUE_14_OEFFNEN()
   Z_BUE_14 = Z_BUE_14 - 1
   if(Z_BUE_14 <= 0 ) then
      Z_BUE_14=0
      print("Bahnübergang 14 wird geöffnet")
      EEPSetSignal(226, 1)
      EEPSetSignal(233, 1)
   end

end
Z_BUE_15= 0
function BUE_15_SCHLIESSEN()
   print("Bahnübergang 15 schließen")
   Z_BUE_15 = Z_BUE_15 + 1
   EEPSetSignal(224, 3)
   EEPSetSignal(225, 3)
end
function BUE_15_OEFFNEN()
   Z_BUE_15 = Z_BUE_15 - 1
   if(Z_BUE_15 <= 0 ) then
      Z_BUE_15=0
      print("Bahnübergang 15 wird geöffnet")
      EEPSetSignal(224, 1)
      EEPSetSignal(225, 1)
   end

end
Z_BUE_16= 0
function BUE_16_SCHLIESSEN()
   print("Bahnübergang 16 schließen")
   Z_BUE_16 = Z_BUE_16 + 1
   EEPSetSignal(344, 3)
   EEPSetSignal(375, 3)
end
function BUE_16_OEFFNEN()
   Z_BUE_16 = Z_BUE_16 - 1
   if(Z_BUE_16 <= 0 ) then
      Z_BUE_16=0
      print("Bahnübergang 16 wird geöffnet")
      EEPSetSignal(344, 1)
      EEPSetSignal(375, 1)
   end

end
Z_BUE_17= 0
function BUE_17_SCHLIESSEN()
   print("Bahnübergang 17 schließen")
   Z_BUE_17 = Z_BUE_17 + 1
   EEPSetSignal(548, 2)
   EEPSetSignal(546, 2)
   
end
function BUE_17_OEFFNEN()
   Z_BUE_17 = Z_BUE_17 - 1
   if(Z_BUE_17 <= 0 ) then
      Z_BUE_17=0
      print("Bahnübergang 17 wird geöffnet")
      EEPSetSignal(548, 1)
      EEPSetSignal(546, 1)
      
   end

end

Hallo,

habe die bearbeitung der Ampeln immer wieder verschoben, nun versuche ich es wieder, bekomme aber leider die beiden Skripte nicht zusammen.
Einzeln kein Problem, function EEPMain() ist nur einmal vorhanden, hänge ich mein Skript an die Ampeln bekomme ich in der Zeile 195 mit end probleme.
Wäre über Hilfe sehr dankbar.
Mit freundlichen Grüßen
Erhard


Windows 10
Version EEP 6, 9, X, 11, 12, 13 aktuell 14
Modellkonverter Version 1.3.6
ACPI x64-basierter Computer
AMD_FX- 6350_Six-Core_Processor
AMD Radeon R9 200 Series
gonz
Benutzeravatar
Beiträge: 911
Registriert: 12.07.2015, 13:24
Wohnort: Wildemann / Harz
EEP-Version: 13

AW: Ampelschaltung mit lua

Hallo Erhard,

ich bin heute unterwegs, aber ich würd mir das heute abend mal in Ruhe anschauen ( will aber auch niemandem zuvorkommen )

Grüsse
gonz
Intel i5-4460 3.2GHz | 12 GB RAM | Windows 8.1 64 Bit | GForce GTX 760 | EEP 13.2 Plugin 2
Aktuelle Projekte: Altenau/Harz, Börssum, Goslar, Kl. Mahner nach Gleisplänen von 1920 bis 1961 und Ausgestaltung gem. Epoche III/IV
gonz
Benutzeravatar
Beiträge: 911
Registriert: 12.07.2015, 13:24
Wohnort: Wildemann / Harz
EEP-Version: 13

AW: Ampelschaltung mit lua

Hallo nochmal,

ich verstehe leider nicht genau, was passiert. Magst du nochmal genauer beschreiben, was du mit "wenn ich das Script an die Ampel hänge" meinst und was dann genau passiert? Wo bekommst du die Fehlermeldung und was steht da genau?
Dann können wir dir sicher weiterhelfen ;)

Beste Grüsse
gonz
Intel i5-4460 3.2GHz | 12 GB RAM | Windows 8.1 64 Bit | GForce GTX 760 | EEP 13.2 Plugin 2
Aktuelle Projekte: Altenau/Harz, Börssum, Goslar, Kl. Mahner nach Gleisplänen von 1920 bis 1961 und Ausgestaltung gem. Epoche III/IV
Erhard
Kein Avatar
Beiträge: 5
Registriert: 31.01.2017, 11:19
EEP-Version: EEP 13

AW: Ampelschaltung mit lua

Hallo,

eigendlich geht es nur darum, wie ich die beiden Skripte zu einem mache, dass untere ist mein jetziges Skript, nun möchte ich das Ampelskript einfügen, weiß aber nicht wohin welcher Text gehört.
Habe im Code den Punkt angezeigt wo der Fehler von Lua ausgegeben wird.
Code: Alles auswählen
function EEPMain()
    set_traffic_lights()
    return 1
end --HIER WIRD DER FEHLER ANGEZEIGT

Mit freundlichen Grüßen
Erhard


Windows 10
Version EEP 6, 9, X, 11, 12, 13 aktuell 14
Modellkonverter Version 1.3.6
ACPI x64-basierter Computer
AMD_FX- 6350_Six-Core_Processor
AMD Radeon R9 200 Series
Goetz
Benutzeravatar
Beiträge: 76
Registriert: 13.06.2015, 09:26
EEP-Version: EEP 13.3

AW: Ampelschaltung mit lua

Hallo Erhard,

das wird so leider nichts,
denn dein Skript für die Klappbrücke enthält Fehler.

Du definierst in der EEPMain() mehrere Funktionen.
Funktionsdefinitionen haben in der EEPMain() aber nichts verloren. Da gehören nur Funktionsaufrufe hinein.

Die Funktionsdefinitionen R_KLAPPBRUECKE_OEFFNEN() und R_KLAPPBRUECKE_SCHLIESSEN() gehören nicht in die EEPMain()

Prinzipiell kann man in einer Funktion weitere Funktionen definieren. Technisch ist das möglich und in Ausnahmefällen auch sinnvoll. Deshalb bekommst du keine Fehlermeldung, die dir sagt dass das in deinem Fall Unfug ist.

Wenn du einem Funktionsnamen das Schlüsselwort function voranstellst, dann definierst du eine Funktion. Das bedeutet, dass du eine Aufgabenliste erstellst, die Lua zu einem späteren Zeitpunkt abarbeiten soll. Nämlich dann, wenn die Funktion aufgerufen wird.

Du kannst auch nicht einfach ein Skript an einer Stelle in das andere einfügen.
Sondern verschiedene Teile des zweiten Skripts müssen an unterschiedlichen Stellen in das erste Skript eingebaut werden.

Ich habe die beiden Skripte zusammengeführt, kann aber ohne Anlage natürlich nicht testen, ob alles einwandfrei ist.

Code: Alles auswählen
I=0
clearlog()
print("Script for switching traffic lights on multiple crossings")
print("       by EepNolie - visit at http://www.eepnolie.be")
print("")
print("mit BUe Steuerung kombiniert")

cntr_amp=0                                    -- counter for traffic light switching
---------------------------------------------------------------------------------------------
-- EDIT THIS PART :
crossings=1                                 -- number of crossings in the layout
tmr_cycle1=200                                -- duration of cycle 1
tmr_cycle2=220                                -- duration of cycle 2
tmr_cycle3=240                                -- duration of cycle 3
tmr_cycle4=440                                -- duration of cycle 4
tmr_cycle5=460                                -- duration of cycle 5
tmr_cycle6=480                                -- duration of cycle 6
-- a counter of 5 = 1 second
-- values should be added to the previous cycle, e.g. if the first cycle = 20 seconds and then
--   second cycle = 2 seconds then value for the first cycle = 100 and for the second
--   cylce = 100 + 10 (110)
--   and so on...
---------------------------------------------------------------------------------------------
signals=1                                    -- pointer name for the table
data_amp={}                                    -- create table (as much crossings as needed)
for x=1,crossings,1 do
    data_amp[x]={}
end
---------------------------------------------------------------------------------------------
-- EDIT THIS PART(add lines as many times as you have crossings) :
-- example : data_amp[A][signals]={B,C,D,E}
--     where A    = the number of the crossing (always start with 1 as first)
--           B->E = the signal numbers on the crossing
data_amp[1][signals]={5,7,6,8}                -- numbers of the signals (paired)
---------------------------------------------------------------------------------------------
function set_traffic_lights()
-- for each crossing the status of the lights is set : Red, Green or Orange (if present)
-- the timing depends of the counter (5 = 1 second)
--   at start : initial setting (1 (pair) red, 1 (pair) green)
    for x=1,crossings,1 do
        if cntr_amp==0 then
            EEPSetSignal(data_amp[x][signals][1],4)    -- FG Rot, PKW Gruen
            EEPSetSignal(data_amp[x][signals][2],4)    -- FG Rot, PKW Gruen
   EEPSetSignal(data_amp[x][signals][3],1)    -- FG Gruen, PKW Rot
   EEPSetSignal(data_amp[x][signals][4],1)    -- FG Gruen, PKW Rot
        elseif cntr_amp==tmr_cycle1 then
            EEPSetSignal(data_amp[x][signals][1],5)    -- FG Rot, PKW Gelb
            EEPSetSignal(data_amp[x][signals][2],5)    -- FG Rot, PKW Gelb
            EEPSetSignal(data_amp[x][signals][3],2)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][4],2)    -- FG Rot, PKW Rot
        elseif cntr_amp==tmr_cycle2 then
            EEPSetSignal(data_amp[x][signals][1],6)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][2],6)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][3],3)    -- FG Gruen, PKW Rot-Gelb
            EEPSetSignal(data_amp[x][signals][4],3)    -- FG Gruen, PKW Rot-Gelb
        elseif cntr_amp==tmr_cycle3 then
            EEPSetSignal(data_amp[x][signals][1],1)    -- FG Gruen, PKW Rot
            EEPSetSignal(data_amp[x][signals][2],1)    -- FG Gruen, PKW Rot
            EEPSetSignal(data_amp[x][signals][3],4)    -- FG Rot, PKW Gruen
            EEPSetSignal(data_amp[x][signals][4],4)    -- FG Rot, PKW Gruen
        elseif cntr_amp==tmr_cycle4 then
            EEPSetSignal(data_amp[x][signals][1],2)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][2],2)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][3],5)    -- FG Rot, PKW Gelb
            EEPSetSignal(data_amp[x][signals][4],5)    -- FG Rot, PKW Gelb
        elseif cntr_amp==tmr_cycle5 then
            EEPSetSignal(data_amp[x][signals][1],3)    -- FG Gruen, PKW Rot-Gelb
            EEPSetSignal(data_amp[x][signals][2],3)    -- FG Gruen, PKW Rot-Gelb
            EEPSetSignal(data_amp[x][signals][3],6)    -- FG Rot, PKW Rot
            EEPSetSignal(data_amp[x][signals][4],6)    -- FG Rot, PKW Rot
        end
    end
    cntr_amp=cntr_amp+1
    if cntr_amp>tmr_cycle6 then cntr_amp=0 end
end
---------------------------------------------------------------------------------------------
function EEPMain()
    set_traffic_lights()
    if I == Timer0 then    
        EEPSetSignal(0324,2)
        EEPSetSignal(0325,2)
        EEPSetSignal(0037,2)
        EEPSetSignal(0036,2)
        EEPSetSignal(0251,2)
        EEPSetSignal(0305,2)
    end
    if I == Timer1 then    
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke1", 1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke2", 1000 )
    end
    if I == Timer2 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Klappe", 1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke1", 1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke2", 1000 )
    end
    if I == Timer3 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-1", 1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-2", 1000 )
    end
        if I == Timer4 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-1", -1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Br-Signal-2", -1000 )
    end
    if I == Timer5 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Klappe", -1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke1", -1000 )
        EEPStructureAnimateAxis("#765_Klappbrücke Papenburg","Klappenbruecke2", -1000 )
    end
    if I == Timer6 then
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke1", -1000 )
        EEPStructureAnimateAxis("#568_Klappbruecke_WS2","Schranke2", -1000 )
    end
    if I == Timer7 then
        EEPSetSignal(0324,1)
        EEPSetSignal(0325,1)
        EEPSetSignal(0037,1)
        EEPSetSignal(0036,1)
        EEPSetSignal(0251,1)
        EEPSetSignal(0305,1)
    end
    if I == Timer8 then    
        EEPSetSignal(0240,2)
        EEPSetSignal(0241,2)
        EEPSetSignal(0215,2)
        EEPSetSignal(0207,2)
        EEPSetSignal(0156,2)
        EEPSetSignal(0326,2)
    end
    if I == Timer9 then    
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke1", 1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke2", 1000 )
    end
    if I == Timer10 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Klappe", 1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke1", 1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke2", 1000 )
    end
    if I == Timer11 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-1", 1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-2", 1000 )
    end
        if I == Timer12 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-1", -1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Br-Signal-2", -1000 )
    end
    if I == Timer13 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Klappe", -1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke1", -1000 )
        EEPStructureAnimateAxis("#3925_Klappbrücke Papenburg","Klappenbruecke2", -1000 )
    end
    if I == Timer14 then
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke1", -1000 )
        EEPStructureAnimateAxis("#4048_Klappbruecke_WS2","Schranke2", -1000 )
    end
    if I == Timer15 then
        EEPSetSignal(0240,1)
        EEPSetSignal(0241,1)
        EEPSetSignal(0215,1)
        EEPSetSignal(0207,1)
        EEPSetSignal(0156,1)
        EEPSetSignal(0326,1)
    end
    I=I+1   
    return 1
end
function R_KLAPPBRUECKE_OEFFNEN()
    Timer0=I+1
    Timer1=I+25
    Timer2=I+100
    Timer3=I+250
    print("Timer 0 bis 3, Brücken öffnen wurden gestartet") 
end
   
function R_KLAPPBRUECKE_SCHLIESSEN()
    Timer4=I+25
    Timer5=I+50
    Timer6=I+225
    Timer7=I+275
    print("Timer 4 bis 7, Brücken schliessen wurden gestartet") 
end      
   
function S_KLAPPBRUECKE_OEFFNEN()
    Timer8=I+1
    Timer9=I+25
    Timer10=I+100
    Timer11=I+250
    print("Timer 8 bis 11, Brücken öffnen wurden gestartet") 
end
  
function S_KLAPPBRUECKE_SCHLIESSEN()
    Timer12=I+25
    Timer13=I+50
    Timer14=I+225
    Timer15=I+275
    print("Timer 12 bis 15, Brücken schliessen wurden gestartet") 
end   
Z_BUE_1= 0
function BUE_1_SCHLIESSEN()
   print("Bahnübergang 1 schließen")
   Z_BUE_1 = Z_BUE_1 + 1
   EEPSetSignal(21, 3)
   EEPSetSignal(16, 3)
end
function BUE_1_OEFFNEN()
   Z_BUE_1 = Z_BUE_1 - 1
   if(Z_BUE_1 <= 0 ) then
        Z_BUE_1=0
        print("Bahnübergang 1 wird geöffnet")
        EEPSetSignal(21, 1)
        EEPSetSignal(16, 1)
   end
end
Z_BUE_2= 0
function BUE_2_SCHLIESSEN()
   print("Bahnübergang 2 schließen")
   Z_BUE_2 = Z_BUE_2 + 1
   EEPSetSignal(32, 3)
   EEPSetSignal(73, 3)
end
function BUE_2_OEFFNEN()
   Z_BUE_2 = Z_BUE_2 - 1
   if(Z_BUE_2 <= 0 ) then
        Z_BUE_2=0
        print("Bahnübergang 2 wird geöffnet")
        EEPSetSignal(32, 1)
        EEPSetSignal(73, 1)
   end
end
Z_BUE_3= 0
function BUE_3_SCHLIESSEN()
   print("Bahnübergang 3 schließen")
   Z_BUE_3 = Z_BUE_3 + 1
   EEPSetSignal(34, 3)
   EEPSetSignal(38, 3)
end
function BUE_3_OEFFNEN()
   Z_BUE_3 = Z_BUE_3 - 1
   if(Z_BUE_3 <= 0 ) then
        Z_BUE_3=0
        print("Bahnübergang 3 wird geöffnet")
        EEPSetSignal(34, 1)
        EEPSetSignal(38, 1)
   end
end
Z_BUE_4= 0
function BUE_4_SCHLIESSEN()
   print("Bahnübergang 4 schließen")
   Z_BUE_4 = Z_BUE_4 + 1
   EEPSetSignal(157, 3)
   EEPSetSignal(158, 3)
end
function BUE_4_OEFFNEN()
   Z_BUE_4 = Z_BUE_4 - 1
   if(Z_BUE_4 <= 0 ) then
        Z_BUE_4=0
        print("Bahnübergang 4 wird geöffnet")
        EEPSetSignal(157, 1)
        EEPSetSignal(158, 1)
   end
end
Z_BUE_5= 0
function BUE_5_SCHLIESSEN()
   print("Bahnübergang 5 schließen")
   Z_BUE_5 = Z_BUE_5 + 1
   EEPSetSignal(133, 3)
   EEPSetSignal(152, 3)
end
function BUE_5_OEFFNEN()
   Z_BUE_5 = Z_BUE_5 - 1
   if(Z_BUE_5 <= 0 ) then
        Z_BUE_5=0
        print("Bahnübergang 5 wird geöffnet")
        EEPSetSignal(133, 1)
        EEPSetSignal(152, 1)
   end
end
Z_BUE_6= 0
function BUE_6_SCHLIESSEN()
   print("Bahnübergang 6 schließen")
   Z_BUE_6 = Z_BUE_6 + 1
   EEPSetSignal(134, 3)
   EEPSetSignal(135, 3)
end
function BUE_6_OEFFNEN()
   Z_BUE_6 = Z_BUE_6 - 1
   if(Z_BUE_6 <= 0 ) then
        Z_BUE_6=0
        print("Bahnübergang 6 wird geöffnet")
        EEPSetSignal(134, 1)
        EEPSetSignal(135, 1)
   end
end
Z_BUE_7= 0
function BUE_7_SCHLIESSEN()
   print("Bahnübergang 7 schließen")
   Z_BUE_7 = Z_BUE_7 + 1
   EEPSetSignal(162, 3)
   EEPSetSignal(163, 3)
end
function BUE_7_OEFFNEN()
   Z_BUE_7 = Z_BUE_7 - 1
   if(Z_BUE_7 <= 0 ) then
        Z_BUE_7=0
        print("Bahnübergang 7 wird geöffnet")
        EEPSetSignal(162, 1)
        EEPSetSignal(163, 1)
   end
end
Z_BUE_8= 0
function BUE_8_SCHLIESSEN()
   print("Bahnübergang 8 schließen")
   Z_BUE_8 = Z_BUE_8 + 1
   EEPSetSignal(154, 3)
   EEPSetSignal(156, 3)
end
function BUE_8_OEFFNEN()
   Z_BUE_8 = Z_BUE_8 - 1
   if(Z_BUE_8 <= 0 ) then
        Z_BUE_8=0
        print("Bahnübergang 8 wird geöffnet")
        EEPSetSignal(154, 1)
        EEPSetSignal(156, 1)
   end
end
Z_BUE_9= 0
function BUE_9_SCHLIESSEN()
   print("Bahnübergang 9 schließen")
   Z_BUE_9 = Z_BUE_9 + 1
   EEPSetSignal(201, 3)
   EEPSetSignal(202, 3)
end
function BUE_9_OEFFNEN()
   Z_BUE_9 = Z_BUE_9 - 1
   if(Z_BUE_9 <= 0 ) then
        Z_BUE_9=0
        print("Bahnübergang 9 wird geöffnet")
        EEPSetSignal(201, 1)
        EEPSetSignal(202, 1)
   end
end
Z_BUE_10= 0
function BUE_10_SCHLIESSEN()
   print("Bahnübergang 10 schließen")
   Z_BUE_10 = Z_BUE_10 + 1
   EEPSetSignal(132, 3)
   EEPSetSignal(145, 3)
end
function BUE_10_OEFFNEN()
   Z_BUE_10 = Z_BUE_10 - 1
   if(Z_BUE_10 <= 0 ) then
        Z_BUE_10=0
        print("Bahnübergang 10 wird geöffnet")
        EEPSetSignal(132, 1)
        EEPSetSignal(145, 1)
   end
end
Z_BUE_11= 0
function BUE_11_SCHLIESSEN()
   print("Bahnübergang 11 schließen")
   Z_BUE_11 = Z_BUE_11 + 1
   EEPSetSignal(128, 3)
   EEPSetSignal(86, 3)
end
function BUE_11_OEFFNEN()
   Z_BUE_11 = Z_BUE_11 - 1
   if(Z_BUE_11 <= 0 ) then
        Z_BUE_11=0
        print("Bahnübergang 11 wird geöffnet")
        EEPSetSignal(128, 1)
        EEPSetSignal(86, 1)
   end
end
Z_BUE_12= 0
function BUE_12_SCHLIESSEN()
   print("Bahnübergang 12 schließen")
   Z_BUE_12 = Z_BUE_12 + 1
   EEPSetSignal(252, 3)
   EEPSetSignal(253, 3)
end
function BUE_12_OEFFNEN()
   Z_BUE_12 = Z_BUE_12 - 1
   if(Z_BUE_12 <= 0 ) then
        Z_BUE_12=0
        print("Bahnübergang 12 wird geöffnet")
        EEPSetSignal(252, 1)
        EEPSetSignal(253, 1)
   end
end
Z_BUE_13= 0
function BUE_13_SCHLIESSEN()
   print("Bahnübergang 13 schließen")
   Z_BUE_13 = Z_BUE_13 + 1
   EEPSetSignal(316, 3)
   EEPSetSignal(317, 3)
end
function BUE_13_OEFFNEN()
   Z_BUE_13 = Z_BUE_13 - 1
   if(Z_BUE_13 <= 0 ) then
        Z_BUE_13=0
        print("Bahnübergang 13 wird geöffnet")
        EEPSetSignal(316, 1)
        EEPSetSignal(317, 1)
   end
end
Z_BUE_14= 0
function BUE_14_SCHLIESSEN()
   print("Bahnübergang 14 schließen")
   Z_BUE_14 = Z_BUE_14 + 1
   EEPSetSignal(226, 3)
   EEPSetSignal(233, 3)
end
function BUE_14_OEFFNEN()
   Z_BUE_14 = Z_BUE_14 - 1
   if(Z_BUE_14 <= 0 ) then
        Z_BUE_14=0
        print("Bahnübergang 14 wird geöffnet")
        EEPSetSignal(226, 1)
        EEPSetSignal(233, 1)
   end
end
Z_BUE_15= 0
function BUE_15_SCHLIESSEN()
   print("Bahnübergang 15 schließen")
   Z_BUE_15 = Z_BUE_15 + 1
   EEPSetSignal(224, 3)
   EEPSetSignal(225, 3)
end
function BUE_15_OEFFNEN()
   Z_BUE_15 = Z_BUE_15 - 1
   if(Z_BUE_15 <= 0 ) then
        Z_BUE_15=0
        print("Bahnübergang 15 wird geöffnet")
        EEPSetSignal(224, 1)
        EEPSetSignal(225, 1)
   end
end
Z_BUE_16= 0
function BUE_16_SCHLIESSEN()
   print("Bahnübergang 16 schließen")
   Z_BUE_16 = Z_BUE_16 + 1
   EEPSetSignal(344, 3)
   EEPSetSignal(375, 3)
end
function BUE_16_OEFFNEN()
   Z_BUE_16 = Z_BUE_16 - 1
   if(Z_BUE_16 <= 0 ) then
        Z_BUE_16=0
        print("Bahnübergang 16 wird geöffnet")
        EEPSetSignal(344, 1)
        EEPSetSignal(375, 1)
   end
end
Z_BUE_17= 0
function BUE_17_SCHLIESSEN()
   print("Bahnübergang 17 schließen")
   Z_BUE_17 = Z_BUE_17 + 1
   EEPSetSignal(548, 2)
   EEPSetSignal(546, 2)
end
function BUE_17_OEFFNEN()
   Z_BUE_17 = Z_BUE_17 - 1
   if(Z_BUE_17 <= 0 ) then
        Z_BUE_17=0
        print("Bahnübergang 17 wird geöffnet")
        EEPSetSignal(548, 1)
        EEPSetSignal(546, 1)
   end
end

Ich habe mir außerdem erlaubt, Formatierungsfehler (falsche Einrückungen) zu verbessern. Diese Einrückungen sind immens wichtig wenn man überschauen will, was wozu gehört.

Wenn du Lua lernen möchtest, dann solltest du viel kleiner anfangen und nicht so große Skripte irgendwie ineinander kopieren. Du musst erst einmal verstehen, was die einzelnen Dinge im Skript tun und wann sie es tun. Wenn du Lua nur benutzen, aber nicht lernen willst, dann wirst du immer jemanden bitten müssen, Skripte für dich anzupassen. Denn das Anpassen kann man nicht lernen ohne Lua selbst zu verstehen. Ist sicher unbequem, aber leider liegt das in der Natur der Sache.

Viel Spaß beim testen des umgebauten Skripts
Götz
Erhard
Kein Avatar
Beiträge: 5
Registriert: 31.01.2017, 11:19
EEP-Version: EEP 13

AW: Ampelschaltung mit lua

Hallo Götz,

danke für die Hilfe, mein Script wurde von Mitgliedern aus dem EEP Forum erstellt, ich habe es nur erweitert.

Dein Script kommt mit der Meldung:
fehlermeldung String EEP Script:2:unexpected symbol near?

Edit: Die Fehler sind gefunden, es hatten sich ein Schreibfehler inder Zweiten Zeile und am Ende des Script ein Fragezeichen beim Kopieren und Einfügen eingeschlichen.
Jetzt arbeitet das Script wie es soll.Edit ende

Vielen Dank!
Mit freundlichen Grüßen
Erhard


Windows 10
Version EEP 6, 9, X, 11, 12, 13 aktuell 14
Modellkonverter Version 1.3.6
ACPI x64-basierter Computer
AMD_FX- 6350_Six-Core_Processor
AMD Radeon R9 200 Series
[Error] Warning: in file [ROOT]/templates_c/tpl_forum.viewtopic.html.php on line 254: sizeof(): Parameter must be an array or an object that implements Countable
Wir verwenden Cookies, um dir bestimmte Funktionen auf unserer Website bereitzustellen, durch die Nutzung unserer Seite erklärst du dich damit einverstanden das Cookies gesetzt werden. Mehr erfahren? Okay!