Wprowadzenie
Stacje kolejowe mają wiele zmiennych z portami lotniczymi. Wspólne zmienne są udokumentowane na separate page
Zmienne
| Zmienna | Wersja | Rozmiar | Opis | 
|---|---|---|---|
| 10 |  0.7  2.5 | D | Dodatkowe informacje dotyczące wyboru 'sprite' - zobacz General station flags i AdvancedSpriteLayout | 
| 40 |  0.6  2.5 | D | Informacje o platformie i pozycja względna | 
| 41 |  0.6  2.5 | D | Informacje o platformie i względna pozycja dla indywidualnie zbudowanych sekcji | 
| 42 |  0.6  2.5 | D | Teren i typ toru | 
| 43 [1] |  1.2  2.5 | D | Informacje o graczu, patrz vehicle variable 43 | 
| 44 |  0.7  2.5 | B | Informacje o sygnalizacji opartej na ścieżkach | 
| 45 |  0.6  2.5 | W | Informacje o kontynuacji kolei | 
| 46,47 |  0.6  2.5 | D | Informacje o platformie, liczone od środka | 
| 48 | Zerknij Base Stations. | ||
| 49 |  0.6  2.5 | D | Informacje o platformie i względna pozycja sekcji tego samego kierunku | 
| 4A |  0.7  2.5 | B | Bieżąca klatka animacji | 
| 60-65 | Zerknij Base Stations. | ||
| 66 |  0.6  2.5 | D | Ramka animacji pobliskiego kafla | 
| 67 |  0.6  2.6 | D | Informacje o ziemi pobliskich kafli | 
| 68 |  0.6  2.6 | D | Informacje o stacji pobliskich kafli | 
| 69 | Zerknij Base Stations. | ||
| 6A |  1.10   | D | GRFID of nearby tiles | 
| 80 |    [2] | B | Liczba i długość peronów kolejowych | 
W przypadku innych zmiennych 80+x nadaj TTD station structure . Zauważ, że musisz odjąć 0x10 od przesunięć tam, w przeciwnym razie maska bitowa obiektu i data budowy nie byłyby dostępne; zamiast tego tracisz dostęp do zmiennych 00..0F, które i tak są bez znaczenia.
UWAGA: Proszę nie używać bezpośrednio zmiennych 8C..EB. Znaczenie tych zmiennych zmienia się, jeśli przełącznik newcargos jest włączony. Zamiast tego użyj zmiennych 60..64 (patrz poniżej). Te zawsze działają poprawnie.
Opis
Informacje o peronie (40, 41, 46, 47, 49)
Zmienne 40, 41, 46, 47 i 49 zwracają informacje o bieżącym kaflu, na której platformie on jest i jak daleko wzdłuż platformy. Różnica polega na rozważanym odcinku stacji.
| Zmienne | Zwykła stacja | Nieregularna stacja | 
|---|---|---|
| 40, 46 | Cała stacja | Licząc całą długość i wszystkie sąsiednie platformy | 
| 41, 47 | Indywidualnie budowane sekcje | |
| 49 | Cała stacja | Liczenie długości i platform, które mają ten sam kierunek | 
Termin "liczenie" odnosi się tutaj do rozpoczynania od danego kafla i liczenia kafli we wszystkich czterech kierunkach. Dwa kierunki wyrównane z kierunkiem stacji będą długością stacji, a pozostałe dwa kierunki podadzą liczbę platform. W przypadku zmiennych 40 i 46 liczenie to zatrzymuje się na krawędzi stacji, tj. Pierwszego kafla niestacjonarnego. Dla zmiennej 49 zatrzymuje się na krawędzi lub na kaflu stacji, który jest w złym kierunku. Uzyskane informacje prawdopodobnie nie są naprawdę przydatne w przypadku nieregularnych stacji, z wyjątkiem wykrywania krawędzi. Aby poprawnie wykryć krawędzie, możesz wybrać jedną ze stacji->przejście niestacjonarne (var. 40, 46) lub dodatkowe przejście w przeciwnym kierunku (var. 49).
Zmienne 41 są w dużej mierze niezależne od nieregularnych stacji, ponieważ odnoszą się tylko do indywidualnie budowanych odcinków. Jednak gdy te poszczególne sekcje są budowane na istniejących kaflach, var. 41 informacji o otaczających kaflach również się zmienia, ze względu na wewnętrzne ograniczenie sposobu ich przechowywania.
Dla zmiennych 40, 41 i 49 pozycja jest liczona od najbardziej wysuniętej na północ krawędzi stacji i zwracana w postaci xTNLcCpP, gdzie:
Tutaj "początek" (beginning) stacji jest jej najbardziej wysunięty na północ kafel (w górę na ekranie), a "koniec" (end) to kafel najbardziej wysunięty na południe (w dół na ekranie). Każda zmienna składa się z 4 bitów.
Dla zmiennych 46 i 47 pozycja jest liczona od środka, tj. Środkowy kafel ma C=0 and P=0 . W przypadku parzystych długości i liczby platform środkowy kafel znajduje się w pozycji L/2 lub. N/2, np. dla długości 6 jest to kafel 3, która jest czwartym kaflem. Format zwracany to xTNLxxCP, gdzie T, N i L są takie jak powyżej, a C i P są pozycjami liczonymi od środka.
Ponieważ C i P mogą mieć liczby ujemne, oto jak jest to zakodowane:
| 'Hex' | 'Binary' | 'Decimal' | 
|---|---|---|
| 0 | 0000 | 0 | 
| 1 | 0001 | 1 | 
| 7 | 0111 | 7 | 
| 8 | 1000 | -8 | 
| 9 | 1001 | -7 | 
| E | 1110 | -2 | 
| F | 1111 | -1 | 
Liczenie przebiega w ten sposób, preferując dodatkową liczbę ujemną dla liczby parzystej (ponieważ dostępnych jest 8 liczb ujemnych, ale tylko 7 dodatnich):
| 'Liczenie' | Numery | 
|---|---|
| 1 | 0 | 
| 2 | -1 0 | 
| 3 | -1 0 1 | 
| 4 | -2 -1 0 1 | 
| 5 | -2 -1 0 1 2 | 
| 6 | -3 -2 -1 0 1 2 | 
(etc.)
Teren i rodzaj toru (42)
Zmienna 42 ma format xxxxttTT, gdzie TT jest typem terenu, a tt jest (przetłumaczonym) typem toru kolejowego.
Mogą mieć następujące wartości:
| TT | znaczenie | 
|---|---|
| 0 | normal (trawnik) | 
| 1 | desert | 
| 2 | rainforest | 
| 4 | na lub powyżej linii śniegu | 
Jeśli w GRF nie ma tabeli translacji typów szyn, używana jest domyślna tabela translacji:
| tt | Znaczenie | 
|---|---|
| 00 | kolej, regularna | 
| 01 | railroad, electrified | 
| 02 | monorail | 
| 03 | maglev | 
Jeśli typ szyny nie jest obecny w tabeli, tt zwraca FF.
Informacje sygnalizacji opartej-na ścieżce (44)
Zwraca to następującą wartość w bitach 0-2: (bit 2 dostępny tylko od wersji alfa 47)
| Stan | Wartość (binarna) | Wartość (dziesiętnie) | 
|---|---|---|
| Reserved | 111 | 7 | 
| Not reserved | 100 | 4 | 
| No PBS | 010 | 2 | 
W tej chwili włączanie/wyłączanie PBS odnosi się do ustawienia przełącznika, w przyszłej wersji alfa będzie faktycznie dotyczyło tego, czy przełącznik jest włączony i czy bieżący blok faktycznie używa PBS.
Bity są zdefiniowane w ten sposób, aby umożliwić łatwy powrót do przypadków innych niż PBS. Jeśli potrzebujesz grafiki, aby pokazać stan "niezarezerwowany" w przypadkach innych niż PBS, użyj bitu 0, ale jeśli potrzebujesz stanu "zarezerwowanego" w przypadkach innych niż PBS, użyj bitu 1. Aby wyraźnie sprawdzić, czy PBS jest aktywny, czy nie, użyj bitu 2.
Wszystkie pozostałe bity są zastrzeżone i muszą być zamaskowane.
Informacje o kontynuacji kolei (45)
Ta zmienna zwraca 16 bitów informacji, czy tory kolejowe kontynuują na ośmiu kaflach sąsiadujących z kaflem stacji.
| Bit | Wartość | Ustaw, jeśli szyna kontynuuje w kierunku... | 
|---|---|---|
| 0 | 01 | +Length | 
| 1 | 02 | -Length | 
| 2 | 04 | +Platforms | 
| 3 | 08 | -Platforms | 
| 4 | 10 | +Length, +Platforms | 
| 5 | 20 | -Length, +Platforms | 
| 6 | 40 | +Length, -Platforms | 
| 7 | 80 | -Length, -Platforms | 
Poniższy rysunek ilustruje, które bity reprezentują, który kafel dla dwóch możliwych orientacji stacji:
Bity od 0 do 3 są ustawiane, jeśli na danym kaflu znajduje się ślad i ma on połączenie z kaflem stacji. W przypadku bitów 2, 3 stacja oczywiście nie ma połączenia z tymi kaflami, ale nie ma to znaczenia dla tej zmiennej. Bity 4 do 7 sprawdzają połączenia z sąsiadującym kaflem platformy, tj. Bity 4 i 5 odpowiednio. 6 i 7 wskazują połączenie z tego kafla do kafla 2 lub odpowiednio. 3. (Zmieniło się to ponownie w wersji 2.5 beta 4 r325.)
Bity 8..15 powtarzają powyższe, ale są ustawiane, jeśli na kaflu są jakieś tory kolejowe i ignorowane, czy tor jest podłączony do stacji, czy nie w całości.
Klatka animacji pobliskiego kafelka (66)
(Od TTDPatch 2.5 beta 5)
Ten parametr określa przesunięcie względem bieżącego kafla. Obie wartości są uważane za podpisane (to znaczy 8h=-8, 9h=-7, ...., Fh=-1, 0h=0, 1h=1, ..., 7h=7 ). Wysoki kęs zawiera ilość ruchu na boki (między platformami), niski to ilość poruszania się po platformie. Przesunięcia ujemne przesuwają się na północ, a dodatnie na południe. Jeśli wybrany kafel jest kaflem stacji kolejowej należącym do bieżącej stacji, zwracany jest jego stan animacji. W przeciwnym razie zwracany jest FFFFFFFFh.
Informacje o terenie pobliskich kafli (67)
Ta zmienna działa jak industry tile variable 60 , z wyjątkiem trzech rzeczy:
- Przesunięcia (offsets) parametru są interpretowane w odniesieniu do wyrównania stacji, w taki sam sposób jak dla zmiennej 66
- Część ss jest "dublowana" ~mirrored (bit 0 i 2 zamienione) dla orientacji NW-SE; pozwoli to na obsługę analogicznych nachyleń dwóch orientacji bez wyraźnego sprawdzania orientacji (od TTDPatch 2.6 r1693)
- Bit 0 częśc bb jest niezdefiniowany
Informacje o stacjach pobliskich kafli (68)
Parametr tej zmiennej działa tak samo jak parametr zmiennej 66. Zwrócona wartość to FFFFFFFFh, jeśli wybrany kafel nie jest kaflem stacji kolejowej. W przeciwnym razie zwróconą wartość można podzielić na następujące części:
| Bity | znaczenie | 
|---|---|
| 0..7 | Jeśli kafel jest zdefiniowany w bieżącym GRF, jest to setID używany w definicji. W przeciwnym razie zawartość jest niezdefiniowana. | 
| 8..9 | 0 - kafel wykorzystuje oryginalną grafikę TTD 1 - kafel jest zdefiniowany w aktualnym GRF2 - kafel jest zdefiniowany w innym GRF | 
| 10 | ustaw, czy wybrany kafel należy do bieżącej stacji, w przeciwnym razie wyczyść | 
| 11 | wyczyść, jeśli wybrany kafel jest równoległy do bieżącej, ustaw go jako prostopadły do niego | 
| 12..13 | 0 - zwykła platforma 1 - platforma z zabudową 2 - platforma z 'roof', lewa strona3 - platforma z 'roof', prawa strona | 
| 14..31 | Niezdefiniowany, zarezerwowany do użytku w przyszłości | 
GRFID kafla pobliskiej stacji (6A)
Parametr tej zmiennej działa w taki sam sposób, jak parametr zmiennej 66. Zwrócona wartość jest jedną z następujących czynności:
- FFFFFFFFh jeśli wybrany kafel nie jest kaflem stacji
- 00000000h jeśli wybrana stacja jest stacją domyślną (brak stacji NewGRF)
- w przeciwnym razie GRFID GRF, który zdefiniował typ wybranej stacji


