|
|
(Nie pokazano 11 pośrednich wersji utworzonych przez tego samego użytkownika) |
Linia 1: |
Linia 1: |
− | TODO: Podzielić ten artykuł - opisać każdy podtyp eventu w osobnym artykule, tak jak w przypadku node.
| |
− |
| |
− | Każdy wpis '''event''' zaczyna się od tych samych parametrów:
| |
− | <span style="color:tomato;font-weight:bold">event</span> ''name type delay object''
| |
− |
| |
− | {| class="wikitable"
| |
− | |+ Opis parametrów
| |
− | ! Parametr
| |
− | ! Interpretacja
| |
− | |-
| |
− | | name
| |
− | | Nazwa zdarzenia
| |
− | |-
| |
− | | type
| |
− | | Typ zdarzenia.
| |
− |
| |
| Dostępne typy zostały opisane poniżej. | | Dostępne typy zostały opisane poniżej. |
− | |-
| |
− | | delay
| |
− | | Opóźnienie wykonania zdarzenia [s].
| |
− |
| |
− | Można wpisać -1, wtedy zdarzenie będzie wykonywać się cyklicznie.
| |
− | |-
| |
− | | object
| |
− | | Obiekt, na rzecz którego zostanie wywołane zdarzenie.
| |
− |
| |
− | Można dodać więcej niż jeden obiekt, oddzielając ich nazwy symbolem |
| |
− | |}
| |
| | | |
| * [[Obiekt event::AddValues|AddValues]] | | * [[Obiekt event::AddValues|AddValues]] |
Linia 39: |
Linia 12: |
| * [[Obiekt event::trackvel|trackvel]] | | * [[Obiekt event::trackvel|trackvel]] |
| * [[Obiekt event::visible|visible]] | | * [[Obiekt event::visible|visible]] |
− | | + | * [[Obiekt event::voltage|voltage]] |
− | | + | * [[Obiekt event::whois|whois]] |
− | | + | * [[Obiekt event::friction|friction]] |
− | | + | * [[Obiekt event::multiple|multiple]] |
− | == voltage ==
| + | * [[Obiekt event::switch|switch]] |
− | Umożliwia zmianę wartości napięcia podstacji.
| + | * [[Obiekt event::sound|sound]] |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">voltage</span> 0 ''zrodlo_zasilania napiecie'' <span style="color:tomato;font-weight:bold">endevent</span>
| + | * [[Obiekt event::texture|texture]] |
− | | + | * <s>message</s> |
− | {| class="wikitable"
| |
− | |+ Opis parametrów
| |
− | ! Nazwa parametru
| |
− | ! Znaczenie parametru
| |
− | ! Typ wartości
| |
− | ! Uwagi
| |
− | |-
| |
− | | zrodlo_zasilania
| |
− | | Źródło zasilania, któremu zmieniane jest napięcie.
| |
− | | Nazwa obiektu [[Obiekt_node#tractionpowersource|'''node::tractionpowersource''']]
| |
− | |
| |
− | |-
| |
− | | napiecie
| |
− | | Wartość napięcia [V].
| |
− | | Liczba
| |
− | |
| |
− | |}
| |
− | | |
− | == whois ==
| |
− | Umożliwia identyfikację składu przez wpisanie do komórki pamięci danych pobranych ze składu.
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">whois</span> 0 ''komorka jakie_dane'' <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | | |
− | {| class="wikitable"
| |
− | ! Parametr
| |
− | ! Tekst (+1)
| |
− | ! Liczba 1 (+2)
| |
− | ! Liczba 2 (+4)
| |
− | |-
| |
− | | +0 (1..7)
| |
− | | Plik rozkładu
| |
− | | Ile stacji do końca
| |
− | | 1=postój, 0=przelot
| |
− | |-
| |
− | | +8 (9..15)
| |
− | | Miejsce docelowe
| |
− | | Kierunek w składzie: 1 albo -1
| |
− | | Moc silników (0=wagon)
| |
− | |-
| |
− | | +16 (17..23)
| |
− | | Nazwa ładunku
| |
− | | Ilość ładunku
| |
− | | Maksymalna ilość ładunku
| |
− | |-
| |
− | | +24 (25..31)
| |
− | | Typ pojazdu (CHK)
| |
− | | Stopień zahamowania
| |
− | | Odleglość do wykrytej przeszkody
| |
− | |- | |
− | | +32 (32..39)
| |
− | | Nazwa pojazdu prowadzącego skład, który wyzwolił event
| |
− | | -
| |
− | | -
| |
− | |-
| |
− | | +40 (41..47)
| |
− | | Kolejna stacja w rozkładzie jazdy składu do którego należy pojazd, który wyzwolił event
| |
− | | -
| |
− | | Identyfikator czy na rzeczonej kolejnej stacji ma miejsce postój
| |
− | |}
| |
− | | |
− | Przykład: W torze umieszczony jest wpis '''event2 test_whois''', którego zadaniem zapisanie do komórek informacji o jadącym taborze
| |
− | | |
− | //komórki pamięci
| |
− | node -1 0 mem-typ memcell 0 0 0 none 0 0 none endmemcell
| |
− | node -1 0 mem-lad memcell 0 0 0 none 0 0 none endmemcell
| |
− | node -1 0 mem-doc memcell 0 0 0 none 0 0 none endmemcell
| |
− | node -1 0 mem-roz memcell 0 0 0 none 0 0 none endmemcell
| |
− | //eventy zgrupowane pod jedną nazwą (nie jest to wymagane)
| |
− | config joinduplicatedevents yes endconfig
| |
− | event test_whois whois 0 mem-roz 7 endevent //rozkład
| |
− | event test_whois whois 0 mem-doc 15 endevent //docelowość
| |
− | event test_whois whois 0 mem-lad 23 endevent //ładunek
| |
− | event test_whois whois 0 mem-typ 31 endevent //typ pojazdu
| |
− | event test_whois logvalues 0 none endevent //wpisz do logu
| |
− | config joinduplicatedevents no endconfig
| |
− | | |
− | == friction ==
| |
− | Umożliwia zmianę globalnego współczynnika tarcia.
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">friction</span> 0 none ''tarcie'' <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | | |
− | {| class="wikitable"
| |
− | |+ Opis parametrów
| |
− | ! Nazwa parametru
| |
− | ! Znaczenie parametru
| |
− | ! Typ wartości
| |
− | ! Uwagi
| |
− | |-
| |
− | | tarcie
| |
− | | Współczynnik tarcia
| |
− | | Liczba z zakresu <0-1>
| |
− | | Wartości poniżej 0.5 zmniejszają tarcie, a powyżej 0.5 - zwiększają.
| |
− | |}
| |
− | | |
− | == multiple ==
| |
− | Umożliwia wywołanie kilku zdarzeń jednocześnie oraz uzależnianie ich wykonania od określonych warunków.
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">multiple</span> 0 ''memcell'' ''events'' <span style="color:orange;font-weight:bold">else</span> ''events'' <span style="color:orange;font-weight:bold">condition</span> ''conditions'' <span style="color:orange;font-weight:bold">randomdelay</span> ''randomDelay'' <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | | |
− | {| class="wikitable"
| |
− | |+ Opis parametrów
| |
− | ! Parametr
| |
− | ! Interpretacja
| |
− | |-
| |
− | | memcell
| |
− | | [[Obiekt_node#memcell|Komórka pamięci]] testowana przy warunku. Przy braku wpisać 'none'.
| |
− | |-
| |
− | | events
| |
− | | Nazwy eventów które mają być wykonane.
| |
− | |-
| |
− | | conditions
| |
− | | Specyfikacja warunków dla których event zostanie wykonany.
| |
− | | |
− | Parametr opcjonalny.
| |
− | |-
| |
− | | randomDelay
| |
− | | Zwiększenie opóźnienia o losową wielkość z zakresu 0-podana wartość.
| |
− | | |
− | Parametr opcjonalny.
| |
− | |}
| |
− | | |
− | === Specyfikacja warunków ===
| |
− | {| class="wikitable"
| |
− | ! Warunek
| |
− | ! Interpretacja
| |
− | |-
| |
− | | '''trackoccupied'''
| |
− | | Event wyzwalany w momencie gdy tor określony w ?KOMORCE PAMIECI? jest zajęty.
| |
− | |-
| |
− | | '''trackfree'''
| |
− | | Event wyzwalany w momencie gdy tor określony w ?KOMORCE PAMIECI? jest wolny.
| |
− | |-
| |
− | | '''probability'''
| |
− | | Event wyzwalany jest w momencie, gdy wylosowana liczba jest mniejsza niż paramter z zakresu <0;1> Akceptowany '''propability''' dla zgodności wstecznej z błędem ortograficznym.
| |
− | |-
| |
− | | '''memcompare'''
| |
− | | Event wyzwalany jest w momencie gdy zawartość podanej komórki pamięci jest taka sama jak w komórce pamięci podanej w parametrze ''memcell''.
| |
− | |-
| |
− | | '''memcompareex'''
| |
− | | Rozbudowana wersja warunku '''memcompare'''. Może być definiowana w formie pozwalającej na bardziej elastyczne uruchamianie eventów. Format wygląda następująco:
| |
− | | |
− | memcompareex comparator operator text operator value1 operator value2
| |
− | | |
− | '''gdzie:'''
| |
− | :''comparator'' - słowo-klucz określające czy do spełnienia warunku wymagane jest:
| |
− | ::zaliczenie porównań wszystkich zdefiniowanych elementów komórki pamięci <tt>all</tt>'''
| |
− | ::przynajmniej jednego ze zdefiniowanych elementów komórki pamięci <tt>any</tt>
| |
− | ::żadnego ze zdefiniowanych elementów komórki pamięci <tt>none</tt>
| |
− | :''*Dotychczasowy sposób działania warunku <tt>memcompare</tt> jest odpowiednikiem trybu <tt>all</tt>''
| |
− | | |
− | :''operator'' - metoda porównania elementu komórki pamięci ze zdefiniowaną wartością. Dostępne metody to:
| |
− | ::<tt>==</tt> - równy
| |
− | ::<tt>!=</tt> - nierówny
| |
− | ::<tt><</tt> - mniejszy
| |
− | ::<tt>></tt> - większy
| |
− | ::<tt><=</tt> - mniejszy lub równy
| |
− | ::<tt>>=</tt> - większy lub równy
| |
− | :''*Dotychczasowy sposób działania warunku <tt>memcompare</tt> jest odpowiednikiem operatora <tt>==</tt>''
| |
− | | |
− | :''text, value1, value2'' - wartości z jakimi porównywane będą poszczególne elementy komórki pamięci.
| |
− | :''*użycie klucza <tt>*</tt> zamiast pary: operator i wartość, powoduje pominięcie testu danego elementu.''
| |
− | --------------------------------------------------------------------
| |
− |
| |
− | ''- - - !!! - - - Uruchomienie eventu warunkowanego może zależeć od więcej niż jednego czynnika. Poszczególne warunki wpisujemy po kolei po słowie kluczowym <tt>condition</tt> - - - !!! - - -''
| |
− | | |
− | --------------------------------------------------------------------
| |
− | |}
| |
− | | |
− | == switch ==
| |
− | Umożliwia przestawienie zwrotnicy.
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">switch</span> 0 ''zwrotnica przelozenie predkosc_ruchu ruch_dodatkowy'' <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | {| class="wikitable"
| |
− | |+ Opis parametrów
| |
− | ! Nazwa parametru
| |
− | ! Znaczenie parametru
| |
− | ! Typ wartości
| |
− | ! Uwagi
| |
− | |- | |
− | | zwrotnica
| |
− | | Zwrotnica, której stan ma być zmieniony.
| |
− | | Nazwa obiektu [[Obiekt_node#switch|'''node::track::switch''']]
| |
− | |
| |
− | |-
| |
− | | przelozenie
| |
− | | Przełożenie zwrotnicy.
| |
− | | Liczba
| |
− | | 0 - jazda na wprost, 1 - jazda na bok
| |
− | |-
| |
− | | predkosc_ruchu
| |
− | | Prędkość liniowa ruchu iglic.
| |
− | | Liczba
| |
− | | Parametr opcjonalny; -1 - wartosc domyslna (0.1 m/sek)
| |
− | |-
| |
− | | ruch_dodatkowy
| |
− | | Dodatkowy ruch iglicy niedolegającej.
| |
− | | Liczba
| |
− | | Parametr opcjonalny, -1 - wartość domyślna (0.05 m)
| |
− | |}
| |
− | Uwaga! Częściej spotykaną praktyką jest przekładanie zwrotnic za pomocą zdarzeń zaimplementowanych w plikach INC. Realizuje się je za pośrednictwem obiektu [[Obiekt_event#multiple|'''event::multiple''']], podając ich nazwy w parametrze ''zdarzenia'' i dodając do każdej z nich znak:
| |
− | * + (plus) - jazda na wprost
| |
− | * - (minus) - jazda na bok
| |
− | | |
− | | |
− | == sound ==
| |
− | Odgrywa dźwięk zdefiniowany w [[Obiekt_node::sound|'''node::sound''']]
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">sound</span> 0 ''node_sound playstatus radiochannel'' <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | {| class="wikitable"
| |
− | |+ Opis parametrów
| |
− | ! Nazwa parametru
| |
− | ! Znaczenie parametru
| |
− | ! Typ wartości
| |
− | ! Uwagi
| |
− | |-
| |
− | | node_sound
| |
− | | Nazwa node dźwięku, który ma zostać odegrany.
| |
− | | Nazwa obiektu [[Obiekt_node::sound|'''node::sound''']]
| |
− | |
| |
− | |-
| |
− | | playstatus
| |
− | | Czy dźwięk ma być odgrywany.
| |
− | | Liczba
| |
− | | 0 - wyłączony, 1 - włączony, -1 - włączony bezkierunkowy
| |
− | |-
| |
− | | radiochannel
| |
− | | Opcjonalny numer kanału, na którym odgrywany ma być dźwięk. Jest on wtedy pozycjonowany na radiotelefonie obsadzonego pojazdu i odgrywany tylko przy ustawionym zgodnym kanale.
| |
− | | Liczba
| |
− | | Parametr opcjonalny; 1 - 10
| |
− | |}
| |
− | | |
− | == <s>disable</s> ==
| |
− | Występuje w kodzie źródłowym, ale nie jest używany.
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">disable</span> 0 ? <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | | |
− | == <s>dynvel</s> ==
| |
− | Występuje w kodzie źródłowym, ale nie jest używany.
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">dynvel</span> 0 ? <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | | |
− | == <s>message</s> ==
| |
− | Występuje w kodzie źródłowym, ale nie jest używany.
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">message</span> 0 ? <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | | |
− | == texture ==
| |
− | Zmienia teksturę wymienną modelu lub grupy modeli [[Obiekt_node::model|'''node::model''']]
| |
− | <span style="color:tomato;font-weight:bold">event</span> nazwa <span style="color:orange;font-weight:bold">texture</span> 0 ''model1|model2|model3|etc skinindex skinfile inputcell'' <span style="color:tomato;font-weight:bold">endevent</span>
| |
− | {| class="wikitable"
| |
− | |+ Opis parametrów
| |
− | ! Nazwa parametru
| |
− | ! Znaczenie parametru
| |
− | ! Typ wartości
| |
− | ! Uwagi
| |
− | |-
| |
− | | <nowiki>model1|model2|etc</nowiki>
| |
− | | <nowiki>lista modeli które otrzymają nowa teksturą, rozdzielonych znakiem |</nowiki>
| |
− | | Nazwa obiektu [[Obiekt_node::model|'''node::model''']]
| |
− | |
| |
− | |-
| |
− | | skinindex
| |
− | | Numer tekstury wymiennej ktora zostanie zastapiona.
| |
− | | Liczba
| |
− | | W przedziale 1-4.
| |
− | |-
| |
− | | skinfile
| |
− | | Ścieżka do materiału, który ma zostać przypięty jako tekstura wymienna.
| |
− | | Ścieżka pliku [[Materiały_-_Pliki_.mat|'''materiału''']]
| |
− | | Lub tekstrury, jesli linkowany bezpośrednio.
| |
− | |-
| |
− | | inputcell
| |
− | | Nazwa opcjonalnej komórki pamięci, której wartości mogą być użyte jako parametry (p1) (p2) oraz (p3) w łancuchu skinfile.
| |
− | | Nazwa obiektu [[Obiekt_node::memcell|'''memcell''']]
| |
− | | None jeśli ''skinfile'' nie używa parametrów.
| |
− | |}
| |
− | | |
− | Przykłady:
| |
− | event ... texture ... tablica1|tablica2 1 rozklad none endevent
| |
− | Spowoduje zmianę wymiennej tekstury nr 1 w statycznych obiektach ''tablica1'' i ''tablica2'' na teksturę ''"rozklad"''.
| |
− | | |
− | node ... textureinput memcell 0 0 0 rozklad 2 0 none endmemcell
| |
− | event ... texture ... tablica1|tablica2 1 (p1)_(p2) textureinput endevent
| |
− | Spowoduje zmianę textury wymiennej nr 1 w statycznych obiektach ''tablica1'' i ''tablica2'' na teksture ''"rozklad_2"''.
| |
− | | |
− | node ... whoiscell memcell 0 0 0 none 0 0 none endmemcell
| |
− | event whoisvehiclename whois 0 whoiscell 33 endevent
| |
− | event whoistexture texture 0 tablica3 2 make:scripts/wyswietlacz&$timetable=(p1) whoisvehiclename endevent
| |
− | event whoistexturelaunch multiple 0 none whoisvehiclename whoistexture endevent
| |
− | Spowoduje po wyzwoleniu przez pojazd eventu ''whoistexturelaunch'' zapisanie w komórce pamięci jego nazwy i wywołanie skryptu ''scripts/wyswietlacz.py'' z parametrem ''$timetable=nazwapojazdu'' który to parametr powoduje przekazanie do skryptu aktualnych danych rozkładu rzeczonego pojazdu. Tekstura wygenerowana przez rzeczony skrypt zostanie przypisana jako tekstura wymienna nr 2 w statycznym obiekcie ''tablica3''.
| |
| | | |
| [[Kategoria:Scenerie]] | | [[Kategoria:Scenerie]] |
Dostępne typy zostały opisane poniżej.