Obrotnica składa się z 4 elementów:
1. Wpis toru, przy czym zamiast normal trzeba użyć turn. Tor musi być prosty i poziomy, nie może też mieć przechyłki.
2. Model T3D, w którym animowany będzie główny submodel. Model musi stać w środku toru, a niecka musi być oddzielnym modelem. Nazwa modelu musi być taka sama, jak nazwa toru.
3. Eventy animujące model. Tor będzie podążał za pozycją (kątem) modelu, obracając się wokół własnego środka długości.
4. Eventy zwrotnicy. Przełożenie do pozycji 1 odłącza obrotnicę od sąsiednich torów i umożliwia jej obrót. Powinno również blokować ruch znajdującego się na niej pojazdu (coś jak hamulec ręczny). Ustawienie w pozycji 0 próbuje podłączyć sąsiednie tory na końcach toru obrotnicy. Jeśli się to uda przynajmniej z jednej strony, pojazd zostanie odblokowany, a ruch obrotnicy uniemożliwiony. Wyjechanie na niepodłączoną stronę spowoduje błąd null track.
Przykładowo, zmiana w scenerii Quark, umożliwiająca użytkowanie obrotnicy (zmieniona nazwa toru na obrotnica_Wielki_Kac oraz typ z normal na turn):include;eng/obrotnica21m.inc;obrotnica_Wielki_Kac;-79.0;0.0;788.0;0.0;eng/Most1-jezdniablach.tga;end
node -1 0 obrotnica_Wielki_Kac track turn 21.0 1.435 0.25 25.0 19 6 Bridge vis
Rail_screw_used1.tga 4 none 0.2 0.5 1.1
-79.0 0.200012 777.5 0.0 //point 1
0.0 0.0 0.0 //control vector 1
0.0 0.0 0.0 //control vector 2
-79.0 0.200012 798.5 0.0 //point 2
0
velocity 6.0
endtrack
Należy też zmodyfikować eventy, aby wykonywane było zablokowanie i odblokowanie obrotnicy. Obsługa obrotnicy wymaga jeszcze dalszych prac nad kodem symulacji.
« Dodano: 12 Grudnia 2010, 00:43:26 »
Poniżej poprawiony plik obrotnicy (Scenery/eng/obrotnica21m.inc). Zawiera dodatkowo eventy switch, które dokonują odłączenia torów oraz przyłączenia innych. Przed odłączeniem torów wskaźnik podaje sygnał Z1o (wjazd zabroniony). Przyłączenie torów dokonywane jest z opóźnieniem 18 sekund, a dodatkowo 2 sekundy później obraca się wskaźnik podając sygnał Z2o (wjazd dozwolony). Jazda przy niepodłączonych torach zakończy się błędem null track.
// obrotnica o dlugosci 21 metrow
// (p1) nazwa wlasna (p2) (p3) (p4) wspolrzedne (p5) rotacja
origin (p2) (p3) (p4)
rotate 0 (p5) 0
node -1 0 (p1) model 0 0 0 0 eng/obrotnica21m.t3d none endmodel
rotate 0 0 0
endorigin
//zdarzenia zewnetrzne:
event (p1)_tor1 multiple 0 none (p1)_1 (p1)_stop (p1)_tor1rot (p1)_go endevent
event (p1)_tor2 multiple 0 none (p1)_1 (p1)_stop (p1)_tor2rot (p1)_go endevent
event (p1)_tor3 multiple 0 none (p1)_1 (p1)_stop (p1)_tor3rot (p1)_go endevent
event (p1)_tor4 multiple 0 none (p1)_1 (p1)_stop (p1)_tor4rot (p1)_go endevent
event (p1)_tor5 multiple 0 none (p1)_1 (p1)_stop (p1)_tor5rot (p1)_go endevent
event (p1)_tor6 multiple 0 none (p1)_1 (p1)_stop (p1)_tor6rot (p1)_go endevent
event (p1)_tor1rot animation 1 (p1) rotate dzwigar 0 0 7.5 2 endevent
event (p1)_tor2rot animation 1 (p1) rotate dzwigar 0 0 0 2 endevent
event (p1)_tor3rot animation 1 (p1) rotate dzwigar 0 0 -7.5 2 endevent
event (p1)_tor4rot animation 1 (p1) rotate dzwigar 0 0 -15 2 endevent
event (p1)_tor5rot animation 1 (p1) rotate dzwigar 0 0 -22.5 2 endevent
event (p1)_tor6rot animation 1 (p1) rotate dzwigar 0 0 -30 2 endevent
event (p1)_0 switch 0.0 (p1) 0 endevent
event (p1)_1 switch 0.0 (p1) 1 endevent
event (p1)_stop animation 0 (p1) rotate WZ1 0 0 0 100 endevent
event (p1)_go multiple 18 none (p1)_0 (p1)_ok endevent
event (p1)_ok animation 2 (p1) rotate WZ1 0 0 90 100 endevent
« Dodano: 12 Grudnia 2010, 03:25:49 »
Załączam obrazki poglądowe.