//-- przejazd niestrzezony na linii dwutorowej. 
// p1 - nazwa przejazdu, p2,p3,p4-polozenie,p5-rotacja, p6 - nazwa toru przebiegajacego przez przejazd

node -1 0 none eventlauncher (p2) (p3) (p4) 300 a 2.0 (p1)_stop (p1)_stop end 

event (p1)_warning putvalues 10.0 none (p2) (p3) (p4) Warning_signal 2 1 endevent

origin (p2) (p3) (p4)
rotate 0 (p5) 0

//--- krzyze  
node 500 0 none model -6.0 0.0 4.0 90 PKP/X.t3d none endmodel
node 500 0 none model 6.0 0.0 -4.0 -90 PKP/X.t3d none endmodel

//--- komorka do wysylania informacji o predkosci dla samochodow
node -1 0 (p1)_syg_mem memcell (p2) (p3) (p4) SetVelocity -1 -1 none endmemcell
node -1 0 (p1)_syg_distmem memcell (p2) (p3) (p4) SetProximityVelocity 40 200 none endmemcell

//odczyt z toru na przejezdzie
event (p1)_syg_info getvalues 1.0 (p1)_syg_mem endevent
event (p1)_syg_distinfo getvalues 1.0 (p1)_syg_distmem endevent

//elementarne zdarzenia:

// wpisywanie informacji o tym ze przejazd zostal zamkniety:
//--- zatrzymywanie pojazdow drogowych 
event (p1)_stop updatevalues 10.0 (p1)_syg_mem SetVelocity 0 -1 endevent

//wpisywanie informacji o tym ze przejazd zostal otwarty:
event (p1)_go updatevalues 1.0 (p1)_syg_mem SetVelocity -1 -1 endevent

//---otwieranie przejazdu - zdarzenia musza byc podpiete jako event1 do torow tuz za przejazdem (dla kazdego kierunku)
event (p1)_otwieraj multiple 2.0 (p6) (p1)_go condition trackfree endevent

// komentarz: zdarzenie ..._otwieraj sa warunkowe (conditional) - wyzwalane jest przez najechanie pojazdu na tor
// za przejazdem ale tylko gdy tor o nazwie (p6) ktory jest na przejezdzie bedzie wolny.

rotate 0 0 0
endorigin