pátek 1. července 2016

Script návěstidel v RW - pokračování

Od května byl script částečně přepracován. Bohužel jsem nenašel vhodný způsob, jak dát návěstidlu vědět, že od určité chvíle po nějakou dobu od něho požadujeme dostávat návěsti pouze pro posun. 
Při konzultování funkčnosti scriptu s Michalem, jsem jím byl upozorněn na možné problémy, které může přinést né úplně šťastné řešení spočívající v osazení linku 0 cca 10 m před návěstidlo. Takto osazený link 0 sice zajistí zastavení vlaku AI na linku - tj, kousek před návěstidlem a ne v jeho úrovni. Pokud ale bude vlak řídit hráč, tak ten nemá ponětí o tom, jak daleko před návěstidlo stavitel link 0 umístil. Když pak čelem vlaku přes link 0 přejede, spustí se ve scriptu činnosti, které se však mají spustit až když vlak mine návěstidlo - to znamená, že nastane nechtěný stav. Aby se tomu to předešlo, musel by se umísťovat link 0 tak jako dříve v úrovni návěstidla. To však způsobí, že AI vlaky budou opět zastavovat čelem v úrovni návěstidla. To se mi však nelíbí. Proto jsem trochu změnil filozofii umísťování linku a předělal script. V zásadě jde o toto: link 0 se i nadále bude umísťovat před návěstidlo ale bude mít jen vliv na zastavování AI vlaků před návěstidlem. Jeho přejetí vlakem hráče ještě nezpůsobí žádné další činnosti ve scriptu. Do úrovně návěstidla se bude umísťovat link 1 a na něj budou vlastně navázány kroky ve scriptu, které byly dosud spouštěné linkem 0. Pokud návěstidlo kryje výhybky, tak na koleje za výhybkami budou umísťovány další linky počínaje linkem 2.
Michala jsem také požádal o poskytnutí informací a případně i kódu, který do Dušanova scriptu dodělával, aby rozchodil přenos kódu návěstidla do návěstního opakovače na lokomotivě. Michal mi ochotně vyhověl. Po určitých peripetiích, kdy vše nechtělo správně fungovat se nakonec podařilo tuto část scriptu správně rozchodit.
Nyní počítám s případnou diskuzí hráčů RW o vhodnosti mnou zvolených řešeních funkčnosti návěstidel.