Obiekt node::eventlauncher: Różnice pomiędzy wersjami

Z MaSzyna
Skocz do: nawigacja, szukaj
 
(Nie pokazano 21 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 1: Linia 1:
Obiekt '''node''' typu '''eventlauncher''' definiuje wyzwalacz zdarzeń.
+
Definiuje wyzwalacz zdarzeń.
 
== Składnia ==
 
== Składnia ==
  {{Szablon:Kod_preambuly_node}} <span style="color:tomato;font-weight:bold">eventlauncher</span> ''x y z odleglosc klawisz czas zdarzenie1 zdarzenie2 komorka_pamieci parametry_komorki'' <span style="color:tomato;font-weight:bold">end</span>
+
  {{Szablon:Kod_preambuly_node}} <span style="color:tomato;font-weight:bold">eventlauncher</span> ''x y z radius key delta_time event1_name event2_name ''<span style="color:orange;font-weight:bold">condition</span> ''memcell_name check_mask'' <span style="color:tomato;font-weight:bold">end</span>
 +
Warunek wykonania eventu (parametry po słowie kluczowym <span style="color:orange;font-weight:bold">condition</span>) jest opcjonalny. Jeśli jest podany, nie podaje się nazwy drugiego eventu.
  
 
{| class="wikitable"
 
{| class="wikitable"
 
|+ Opis parametrów
 
|+ Opis parametrów
! Nazwa parametru
+
! Nazwa
! Znaczenie parametru
+
! Interpretacja
! Typ wartości
 
 
! Uwagi
 
! Uwagi
 +
{{Szablon:Wspólne_parametry_node}}
 
|-
 
|-
{{Szablony:Wspólne_parametry_node}}
+
| '''x y z'''
|-
 
| x y z
 
 
| Współrzędne wyzwalacza.
 
| Współrzędne wyzwalacza.
| Liczby
+
| {{Szablon:Info_o_układzie_współrzędnych}}
|
 
 
|-
 
|-
| odleglosc
+
| '''radius'''
| Maksymalna odległość, do jakiej wyzwalacz wykrywa żądania wywołania zdarzeń [m].
+
| Minimalna odległość [m], na jaką trzeba się zbliżyć do wyzwalacza aby eventy zostały wykonane.
| Liczba
+
| Jeśli eventy mają być wykonywane niezależnie od odległości od obserwatora, należy podać wartość '''-1'''.
| Wartość -1 oznacza brak ograniczenia odległości.
 
 
|-
 
|-
| klawisz
+
| '''key'''
| Litera oznaczająca klawisz wywołujący zdarzenie.
+
| Litera określająca klawisz, którego naciśnięcie wywoła zdarzenie.
| Tekst
+
| Jeśli event ma się wywołać po naciśnięciu kombinacji Shift + litera, należy podać wielką literę.
| Aby wyzwalacz nie reagował na klawisze, należy wpisać '''none'''.
 
Aby zdarzenie wywołać za pomocą kombinacji Shift + litera, należy wpisać wielką literę?
 
 
|-
 
|-
| czas
+
| '''delta_time'''
| Czas lub okresowość wyzwalania zdarzenia
+
| Cykliczność wyzwalania eventu [s] lub godzina jego wyzwolenia.
| Zależny od potrzeb
+
| Jeśli event ma wykonywać się cyklicznie, należy podać liczbę sekund między kolejnymi wywołaniami poprzedzoną znakiem minus (-).zwa drugiego zdarzenia.
| W przypadku konkretnej godziny, należy podać czas w formacie ''hh:mm''.
+
Jeśli event ma wykonać się o określonej godzinie, należy podać czas w formacie ''hhmm''.
W przypadku okresu czasu, należy wpisać liczbę sekund między kolejnymi wywołaniami.
 
 
 
W przypadku braku reakcji czasowej, należy wpisać 0.
 
 
|-
 
|-
| zdarzenie1
+
| '''event1_name'''
| Zdarzenie wyzwalane przy naciśnięciu klawisza gdy SHIFT nie jest naciśnięty albo gdy upłynął określony czas.
+
| Nazwa pierwszego zdarzenia.
| Nazwa obiektu [[Plik_scenerii#event|'''event''']]
 
 
|  
 
|  
 
|-
 
|-
| zdarzenie2
+
| '''event2_name'''
| Zdarzenie wyzwalane przy naciśnięciu klawisza gdy SHIFT jest naciśnięty opcjonalnie, po słowie <span style="color:orange;font-weight:bold">condition</span>.
+
| Nazwa drugiego zdarzenia.
| Nazwa obiektu [[Plik_scenerii#event|'''event''']]
+
| Podawać tylko w przypadku braku warunku.
|  
 
 
|-
 
|-
| komorka_pamieci
+
| '''memcell_name'''
| Nazwa komórki pamięci.
+
| Nazwa komórki pamięci do sprawdzenia wartości.
| Nazwa obiektu [[Obiekt_node#memcell|'''node::memcell''']]
+
| Podawać tylko jeśli istnieje warunek.
|
 
 
|-
 
|-
| parametry_komorki
+
| '''check_mask'''
| Wartości którym się muszą równać wartości komórki pamięciowej żeby zdarzenia zostały wysłane do kolejkowania.
+
| Maska do porównywania wartości.
| Tekst, Liczba, Liczba
+
| Należy podać sumę indeksów wartości komórki pamięci. Kolejne n wartości mają indeksy z zakresu 2^0 ... 2^n.
|
+
Przykładowo, aby sprawdzić wartość pierwszą i trzecią, należy wpisać 5 (2^0 = 1, 2^2 = 4 => 1 + 4 = 5)
 +
 
 
|}
 
|}
 +
 +
Jeśli w promieniu działania eventlaunchera znajduje się [[Obiekt node::model|model]] o takiej samej nazwie, wskazanie modelu myszą w trybie freefly i kliknięcie na nim lewym przyciskiem aktywuje rzeczony eventlauncher (jeśli launcher ma zdefiniowane dwa eventy, drugi event uruchamiany jest przez klikniecie z wciśniętym Shift)
 +
 +
Oprócz standardowych eventlauncherów możliwe jest również definiowanie eventlauncherów uruchamianych poprzez wysłanie z pojazdu sygnału radiowego ZEW3. Eventlauncher uruchamiany radiem definiowany jest tak samo jak zwykły eventlauncher, ale jako klawisz aktywujący podany ma ciąg ``radio_call3``. Sygnał ZEW3 wysyłany jest domyślnie klawiszem Backspace, o ile w pojeździe znajduje się załączone radio ustawione na kanał inny niż 10.
 +
 +
[[Kategoria:Scenerie]]

Aktualna wersja na dzień 12:19, 6 lip 2022

Definiuje wyzwalacz zdarzeń.

Składnia

node range_max range_min name eventlauncher x y z radius key delta_time event1_name event2_name condition memcell_name check_mask end

Warunek wykonania eventu (parametry po słowie kluczowym condition) jest opcjonalny. Jeśli jest podany, nie podaje się nazwy drugiego eventu.

Opis parametrów
Nazwa Interpretacja Uwagi
range_max Maksymalna odległość, z jakiej obiekt jest widoczny [m].

Wartość -1 oznacza brak ograniczenia widoczności.

range_min Minimalna odległość, z jakiej obiekt jest widoczny [m].
name Nazwa obiektu.
x y z Współrzędne wyzwalacza. Symulator korzysta z prawoskrętnego układu współrzędnych!
radius Minimalna odległość [m], na jaką trzeba się zbliżyć do wyzwalacza aby eventy zostały wykonane. Jeśli eventy mają być wykonywane niezależnie od odległości od obserwatora, należy podać wartość -1.
key Litera określająca klawisz, którego naciśnięcie wywoła zdarzenie. Jeśli event ma się wywołać po naciśnięciu kombinacji Shift + litera, należy podać wielką literę.
delta_time Cykliczność wyzwalania eventu [s] lub godzina jego wyzwolenia. Jeśli event ma wykonywać się cyklicznie, należy podać liczbę sekund między kolejnymi wywołaniami poprzedzoną znakiem minus (-).zwa drugiego zdarzenia.

Jeśli event ma wykonać się o określonej godzinie, należy podać czas w formacie hhmm.

event1_name Nazwa pierwszego zdarzenia.
event2_name Nazwa drugiego zdarzenia. Podawać tylko w przypadku braku warunku.
memcell_name Nazwa komórki pamięci do sprawdzenia wartości. Podawać tylko jeśli istnieje warunek.
check_mask Maska do porównywania wartości. Należy podać sumę indeksów wartości komórki pamięci. Kolejne n wartości mają indeksy z zakresu 2^0 ... 2^n.

Przykładowo, aby sprawdzić wartość pierwszą i trzecią, należy wpisać 5 (2^0 = 1, 2^2 = 4 => 1 + 4 = 5)

Jeśli w promieniu działania eventlaunchera znajduje się model o takiej samej nazwie, wskazanie modelu myszą w trybie freefly i kliknięcie na nim lewym przyciskiem aktywuje rzeczony eventlauncher (jeśli launcher ma zdefiniowane dwa eventy, drugi event uruchamiany jest przez klikniecie z wciśniętym Shift)

Oprócz standardowych eventlauncherów możliwe jest również definiowanie eventlauncherów uruchamianych poprzez wysłanie z pojazdu sygnału radiowego ZEW3. Eventlauncher uruchamiany radiem definiowany jest tak samo jak zwykły eventlauncher, ale jako klawisz aktywujący podany ma ciąg ``radio_call3``. Sygnał ZEW3 wysyłany jest domyślnie klawiszem Backspace, o ile w pojeździe znajduje się załączone radio ustawione na kanał inny niż 10.