Jump to content

Recommended Posts

Posted (edited)

Witam

Ostatnio robiłem swój pierwszy scenariusz w LUA i napotkałem taki oto problem:

Jeśli spawnujemy pociąg z lokomotywą i wagonami pasżerskimi: B11bmnouz_6151_2170_064_0 lub B11bmnouz_6151_2170_098_8 lub B11gmnouz_6151_2170_107_7 lub WRmnouz_6151_8870_191_1
To w trakcie spawnu takiego pociągu wagony są dopiero łączone z lokomotywą i przez parę sekund nie mają prądu przez co jeśli przypiszemy im rozkład to pojawi się on na drzwiach w formie papierowej ale nie będzie się pokazywał na elektronicznych wyświetlaczach. Obejściem tego jest odczekanie kilku sekund i ponowne przypisanie rozkładu.

Odpowiadając na możliwe pytanie dlaczego nie przypisać rozkładu dopiero za chwilę a nie w momencie spawnu; to jeśli chcemy żeby taki pociąg miał spawn przy peronie albo podjechał pod peron i wykonał postój handlowy to musi mieć rozkład od razu, bo inaczej pojedzie dalej. 

Poniżej kod jaki miałem aby wszystko działało poprawnie:

 

SpawnTrainsetAsync("BotLW_start", FindTrack("t38605"), 10, true, false, true, {

            CreateNewSpawnVehicleDescriptor(LocomotiveNames.EP08_001, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9mnouz_6151_1970_234_3, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.A9mnouz_6151_1970_234_3, false),

            CreateNewSpawnVehicleDescriptor(PassengerWagonNames.B11gmnouz_6151_2170_107_7, false)

            },

            function (trainset)

            Log("Spawned at frame: " .. tostring(Time.frameCount),

            trainset.SetState(DynamicState.dsStop, TrainsetState.tsTrain, true))

            trainset.SetTimetable(LoadTimetableFromFile("LW_Passenger1.xml"), false)

            TrainsetLW_start = trainset

            end)

            CreateCoroutine(function ()

                coroutine.yield(CoroutineYields.WaitForSeconds, 20)

                TrainsetLW_start.SetTimetable(LoadTimetableFromFile("LW_Passenger1.xml"), false)

            end)

trainset.SetAllowCouplerAttach(false)
trainset.SetAllowCouplerDetach(false)
Nie wpływały na zachowanie wyświetlaczy.
Edited by lewnemejski
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy