Co do dyskusji powyżej, dodam tylko tyle, że eventy można wykorzystać na dwa sposoby:
1)Ten, który pisałem wyżej: do 2 torów przypisujemy po jednym evencie - pierwszy w kolejności nadjeżdżania pociągu event1(2) zatrzym_rusz, drugi na następnym torze event1(2) sem_info
2)Nowy, który teraz wypróbowałem - do jednego toru przypisujemy 2 eventy- pierwszy event1(2) -sem_info, drugi event0 zatrzym_rusz
Oby dwa sprawdzałem i działają.
Drugi sposób jest prostrzy, bo potrzeba tylko jednego toru, pomimo mojego braku zaufania do event0 zadziałało. Miałem sytuacje, gdy event0 mi niezawsze działał i wolę unikać event0, ale tutaj działa.
Natomiast również wypróbowałem twój sposób:
Po drugie, powinny eventy być przypisane tak:
event0 (tor z peronem) - (p1)_zatrzym_rusz
event1 (tor oddalony od peronu) - (p1)_sem_info (w zależności od rodzaju pociągu)
event2 (tor oddalony od peronu) - (p1)_sem_info (w zależności od rodzaju pociągu)
Nie zadziałało, bo nie miało prawa, gdyż pociąg jedzie, wjeżdza na peron, ale event0 się nie wyzwoli, gdyż pociąg jedzie dalej (nie zatrzymie się- a zatrzymanie się pociągu jest warunkiem wyzwolenia event0), bo sem_info jest dalej na dalszym torze. Natrafia pociąg na dalszym torze na sem_info, jest sygnał s1 (jako domyślny), zatrzymuje się i będzie tak stał w nieskończoność.
Może i zadziałałoby przy odpowiednio krótkich torach i długim składzie, ale chyba wtedy powinno być nie event0, tylko eventall0 i metoda niepewna (już nie chciało mi się sprawdzać).
Wnioski:
1)Ja namotałem i działa, Ty nie namotaleś i nie działa.
2)Duże znaczenie ma jak kto wykorzysta tego inca (może wykorzystać tak jak ja wykorzystałem i wtedy działa, albo jak Ty i wtedy nie będzie działało)
Jeśli kiedykolwiek będziesz miał ochotę wykorzystać tego inca, to od Ciebie będzie zależało jak go wykorzystasz. Oczekiwany efekt końcowy: ma działać.
Odnośnie tych twoim zdniem niepotrzebnych sygnałów S, przecież możesz te okropne eSy wyciąć jak Ci się tak mocno nie podobają i plik inc zapisać pod inną nazwą a eventy zachwać takie jakie chcesz mieć. Podałem gotowca, ale ktoś może kierować się tylko ideą, a szczegóły sobie dobierze.
Inny temat:
Próbowałem połączyć event sem_info z zatrzym_rusz w celu, aby nie trzeba było przypisywać do 2 torów tych eventów (jeden do jednego, drugi do drugiego), tylko jednen event, który miał działać w ten sposób: przypisuje event, działa jak sem_info i jednocześnie po jakimś czasie opoźnienia zmienia się z s1 na s2, aby pociąg mógł ruszyć. Próbowałem na dwa sposoby:
1)
kawałek inc:
event (p1)_sem_info1 multiple 0 none (p1)_sem_info (p1)_zatrzym_rusz endevent
event (p1)_sem_info getvalues 1.0 (p1)_sem_mem endevent
do toru przypisałem event sem_info1
2)
kawałek inc:
event (p1)_sem_info multiple 0 none (p1)_sem_info1 (p1)_zatrzym_rusz endevent
event (p1)_sem_info1 getvalues 1.0 (p1)_sem_mem endevent
do toru przypisałem event sem_info
Efekty w obu przypadkach były takie, iż AI się nie zatrzymywało, tylko pruło jak głupie, tak jakby było s2 albo jakby w ogóle funkcjonalności eventu sem_info nie było. W każdym bądź razie te sposóby nie działają.
Teraz hunter zadanie dla Ciebie, bo masz głowę nie od parady:
Napisać takiego inca, który za pomocą jednego eventu przypisanego do toru spowoduje zatrzymanie się pociągu, następnie od momentu zatrzymania odlicza dokładnie, a to dokładnie ilość sekund podanym w parametrze i następnie pociąg ma jechać dalej (będę sprawdzał stoperem).
Tylko przed napisaniem na forum, sprawdź czy to działa, bo nie chce testować tylko teorii, chcę testować coś, co było już sprawdzone i działa.
Mam nadzieję, iż sprostasz temu zadaniu, bo dla Ciebie to pewno pryszcz.
PS
Testowałem na exe 664.