Zauważyłem że w tym modelu występuje bałagan z drzwiami, mianowicie często zdarza się że pasażerom udaje się wysiąść przez tylną część sterburty po otworzeniu tylnych drzwi. Opracowałem tymczasowe rozwiązanie problemu:
1. Otwieramy Model\passengercabin.cfg i tekst w liniach 58-80
Kod:
[entry]
0
{withbutton}
[entry]
16
{withbutton}{noticketsale}
[entry]
19
{withbutton}{noticketsale}
[exit]
0
{withbutton}
[exit]
14
{withbutton}
[exit]
17
{withbutton}
zastępujemy następującym:
Kod:
[entry]
0
{withbutton}
[entry]
19
{withbutton}{noticketsale}
[exit]
0
{withbutton}
[exit]
19
{withbutton}
2. W pliku Model\paths.cfg zmieniamy linie 131-135 z
Kod:
19
[pathpnt]
1.318
0.795
0.411
na
Kod:
19
[pathpnt]
1.228
0.795
0.411
3. Zmieniamy treść pliku script2\door.osc w dwóch miejscach:
a) komentujemy linię 41 (z
Kod:
(M.L.trg_bus_doorfront1)
zmieniamy na
Kod:
' (M.L.trg_bus_doorfront1)
)
b) wiersze 248-251, z
Kod:
(L.L.door_0) 0.9 > (S.L.PAX_Entry0_Open) (S.L.PAX_Exit0_Open)
(L.L.door_1) 0.9 > (S.L.PAX_Entry1_Open) (S.L.PAX_Exit1_Open)
(L.L.door_2) 0.9 > (S.L.PAX_Exit2_Open) (S.L.PAX_Exit3_Open)
(L.L.door_3) 0.9 > (S.L.PAX_Entry2_Open) (S.L.PAX_Entry3_Open)
na
Kod:
(L.L.door_0) 0.9 > (S.L.PAX_Entry0_Open) (S.L.PAX_Exit0_Open)
' (L.L.door_1) 0.9 > (S.L.PAX_Entry1_Open) (S.L.PAX_Exit1_Open)
(L.L.door_2) 0.9 > (S.L.PAX_Entry1_Open) (S.L.PAX_Exit1_Open)
' (L.L.door_3) 0.9 > (S.L.PAX_Entry2_Open) (S.L.PAX_Entry3_Open)
c) Znajdujemy makro o nazwie cieply_guzik między liniami 398-467:
Kod:
{macro:cieply_guzik}
(L.L.haltewunsch)
{if}
1 (S.L.haltewunsch)
{else}
(L.L.PAX_Exit2_Req) (L.L.PAX_Exit0_Req) || (L.L.PAX_Exit1_Req) || (S.L.haltewunsch)
{endif}
(L.L.cp_ASR_off)
{if}
(L.L.door_0) 0 =
{if}
(L.L.PAX_Entry0_Req) (L.L.PAX_Exit0_Req) ||
{if}
1 (S.L.door_auto_0) (M.L.trg_bus_doorfront0)
{else}
0 (S.L.door_auto_0)
{endif}
{endif}
(L.L.door_1) 0 =
{if}
(L.L.PAX_Entry1_Req) (L.L.PAX_Exit1_Req) ||
{if}
1 (S.L.door_auto_2) (M.L.trg_bus_doorfront0)
{else}
0 (S.L.door_auto_2)
{endif}
{endif}
(L.L.door_2) 0 =
{if}
(L.L.PAX_Entry2_Req) (L.L.PAX_Exit2_Req) ||
{if}
1 (S.L.door_auto_2) (M.L.trg_bus_doorback23)
{else}
0 (S.L.door_auto_2)
{endif}
{endif}
(L.L.door_3) 0 =
{if}
(L.L.PAX_Entry3_Req) (L.L.PAX_Exit3_Req) ||
{if}
1 (S.L.door_auto_3) (M.L.trg_bus_doorback23)
{else}
0 (S.L.door_auto_3)
{endif}
{endif}
1 (S.L.bremse_halte)
1 (S.L.uzyto_cieply_przycisk)
{else}
(L.L.uzyto_cieply_przycisk)
{if}
(L.L.door_0) 0.9 >
{if}
(M.L.trg_bus_doorfront0)
{endif}
(L.L.door_1) 0.9 >
{if}
(M.L.trg_bus_doorfront1)
{endif}
(L.L.door_2) 0.9 >
{if}
(M.L.trg_bus_doorback23)
{endif}
0 (S.L.uzyto_cieply_przycisk)
{endif}
0 (S.L.bremse_halte)
{endif}
{end}
{end}
i zmieniamy na:
Kod:
{macro:cieply_guzik}
(L.L.haltewunsch)
{if}
1 (S.L.haltewunsch)
{else}
(L.L.PAX_Exit2_Req) (L.L.PAX_Exit0_Req) || (L.L.PAX_Exit1_Req) || (S.L.haltewunsch)
{endif}
(L.L.cp_ASR_off)
{if}
(L.L.door_0) 0 =
{if}
(L.L.PAX_Entry0_Req) (L.L.PAX_Exit0_Req) ||
{if}
1 (S.L.door_auto_0) (M.L.trg_bus_doorfront0)
{else}
0 (S.L.door_auto_0)
{endif}
{endif}
(L.L.door_2) 0 =
{if}
(L.L.PAX_Entry1_Req) (L.L.PAX_Exit1_Req) ||
{if}
1 (S.L.door_auto_2) (M.L.trg_bus_doorback23)
{else}
0 (S.L.door_auto_2)
{endif}
{endif}
' (L.L.door_2) 0 =
' {if}
' (L.L.PAX_Entry2_Req) (L.L.PAX_Exit2_Req) ||
' {if}
' 1 (S.L.door_auto_2) (M.L.trg_bus_doorback23)
' {else}
' 0 (S.L.door_auto_2)
' {endif}
' {endif}
' (L.L.door_3) 0 =
' {if}
' (L.L.PAX_Entry3_Req) (L.L.PAX_Exit3_Req) ||
' {if}
' 1 (S.L.door_auto_3) (M.L.trg_bus_doorback23)
' {else}
' 0 (S.L.door_auto_3)
' {endif}
' {endif}
1 (S.L.bremse_halte)
1 (S.L.uzyto_cieply_przycisk)
{else}
(L.L.uzyto_cieply_przycisk)
{if}
(L.L.door_0) 0.9 >
{if}
(M.L.trg_bus_doorfront0)
{endif}
' (L.L.door_1) 0.9 >
' {if}
' (M.L.trg_bus_doorfront1)
' {endif}
(L.L.door_2) 0.9 >
{if}
(M.L.trg_bus_doorback23)
{endif}
0 (S.L.uzyto_cieply_przycisk)
{endif}
0 (S.L.bremse_halte)
{endif}
{end}
{end}
Powyższe powinno wystarczyć.
EDIT: Wprowadziłem poprawkę na CG, którego wcześniej nie uwzględniłem.