| Contents | 
Wprowadzenie
Definiowanie zestawu prawdziwych 'sprites'. Działanie 01 służy do definiowania zestawów prawdziwych 'sprites' (w przeciwieństwie do pseudo-'sprites'). Można go później umieścić w dowolnym miejscu pliku .nfo Action 8.
Syntax
Basic format
 0.6
0.6  2.0
2.0
<sprite-number> * <length> 01 <feature> <num-sets> <num-ent>
| Element | rozmiar | opis | 
|---|---|---|
| <sprite-number> | dec | Sekwencyjny numer 'sprite' | 
| <length> | dec | Łączna liczba bajtów użytych w tej akcji | 
| 01 | B | Definiuje akcję 01 | 
| <feature> | B | Funkcja, której powinny używać następujące 'sprites' (s.b.) | 
| <num-sets> | B | Liczba posiadanych zestawów 'sprites' (jeden zestaw duszków to jeden pojazd/stacja/statek itp.). Ustawienie tej wartości na 00 powoduje, że jest to rozszerzony format (patrz poniżej). | 
| <num-ent> | B* | Liczba widoków 'sprite' | 
Blok danych, który zawsze następuje po akcji 01, powinien składać się z num-sets * num-ent RealSprites lub RecolorSprites.
Extended format
 1.2.2
1.2.2  
 
<sprite-number> * <length> 01 <feature> 00 <first-set> <num-sets> <num-ent>
| Element | rozmiar | Opis | 
|---|---|---|
| <sprite-number> | dec | Sekwencyjny numer 'sprite' | 
| <length> | dec | Łączna liczba bajtów użytych w tej akcji | 
| 01 | B | Definiuje action 01 | 
| <feature> | B | Funkcja, której powinny używać następujące 'sprites' (s.b.) | 
| 00 | B | Identyfikuje format rozszerzony. | 
| <first-set> | B* | ID pierwszego zestawu ikon do zdefiniowania | 
| <num-sets> | B* | Liczba posiadanych zestawów ikonek (jeden zestaw ikonek to jeden vehicle/station/ship etc) | 
| <num-ent> | B* | Liczba widoków 'sprite' | 
Blok danych, który zawsze następuje po akcji 01, powinien składać się z ' num-sets * num-ent ' 'RealSprites' lub 'RecolorSprites' .
Opis
sprite-number
To tylko numer, na którym jesteś.
length
Policz liczbę bajtów w tej akcji.
Feature
Ustawia to rodzaj feature , który chcesz zmienić. Ustaw na:
| 00 | Trains | 
| 01 | Road Vehicles | 
| 02 | Ships | 
| 03 | Aircraft | 
| 04 | Stations | 
| 05 | Canals/Rivers | 
| 07 | Houses | 
| 09 | Industry Tiles | 
| 0A | Industries | 
| 0B | Cargos | 
| 0D | Airports | 
| 0F | Objects | 
| 10 | Railtypes | 
| 11 | Airport Tiles | 
| 12 | Roadtypes | 
| 13 | Tramtypes | 
first-set
Określa pierwszy zdefiniowany ID zestawu (set).
 1.2
1.2  Ponieważ zestawy sprite OpenTTD r22925 pozostają ważne w wielu akcjach Action1. Oznacza to, że jeśli jedna akcja 1 definiuje zestawy sprajtu od 0 do 4, a później druga akcja 1 ponownie definiuje zestaw spriterzy 0, zestawy 'sprites' 1 do 4 nadal odnoszą się do pierwszej akcji 1. Zestawy spritesetów są specyficzne dla poszczególnych funkcji, każda funkcja utrzymuje własne mapowanie id (s) do spritesetów Action1. (W wersjach wcześniejszych niż OpenTTD r22925 i TTDPatch tylko zestawy sprite z pojedynczej akcji Action1 były jednocześnie powiązane z operacją Action2. Odwoływanie się do akcji Action1 z inną funkcją niż Action2 jest błędem).
 Ponieważ zestawy sprite OpenTTD r22925 pozostają ważne w wielu akcjach Action1. Oznacza to, że jeśli jedna akcja 1 definiuje zestawy sprajtu od 0 do 4, a później druga akcja 1 ponownie definiuje zestaw spriterzy 0, zestawy 'sprites' 1 do 4 nadal odnoszą się do pierwszej akcji 1. Zestawy spritesetów są specyficzne dla poszczególnych funkcji, każda funkcja utrzymuje własne mapowanie id (s) do spritesetów Action1. (W wersjach wcześniejszych niż OpenTTD r22925 i TTDPatch tylko zestawy sprite z pojedynczej akcji Action1 były jednocześnie powiązane z operacją Action2. Odwoływanie się do akcji Action1 z inną funkcją niż Action2 jest błędem).
To zachowanie Action1 dotyczy zarówno formatu podstawowego, jak i rozszerzonego.
 1.2
1.2  Ponadto rozszerzony format pozwala określić ID pierwszego zestawu sprite do zdefiniowania. W ten sposób poszczególne zestawy spriterzy zostaną zdefiniowane indywidualnie.
 Ponadto rozszerzony format pozwala określić ID pierwszego zestawu sprite do zdefiniowania. W ten sposób poszczególne zestawy spriterzy zostaną zdefiniowane indywidualnie. 
Nie ma ograniczeń co do kolejności definiowania zestawów ikonek. Jeśli zdefiniujesz zestawy 'sprites' 23..25 w jednej Akcji 1, zdefiniujesz zestawy 'sprites' 0..5 w innej Akcji 1, wtedy akcja 2 będzie mogła uzyskać dostęp do zestawów 0..5 i 23..25. Później inna Akcja 1 może przedefiniować zestawy 'sprites' 2..3, a po Akcji 2 dostęp do 'sprites' 0..1, 2..3, 4, 23..25 z różnych Akcji 1.
Zauważ, że wszystkie zestawy 'sprites' zdefiniowane w pojedynczej akcji 1 mają taką samą liczbę 'sprites' na zestaw 'sprites' . Za pomocą wielu akcji 1 możesz zdefiniować zestaw ikon z różnymi ilościami ikon na zestaw. Action2 indywidualnie użyje rozmiaru każdego odnośnika spriteset. Nie ma wymogu spójnej liczby 'sprites' w Action2 lub spritelayoutach.
num-sets
Liczba stacji, pojazdów, statków itp. Reprezentowanych przez następujące 'sprites' (uwaga: jeden zestaw może być użyty dla więcej niż jednego pojazdu lub ciężarówki; zobaczysz to po osiągnięciu Action 2 i Action 3)
num-ent
Określa, ile różnych widoków ma każdy wpis.
W przypadku pojazdów odpowiada to różnym kierunkom, w których może się poruszać. Jeśli twój pojazd jest symetryczny, potrzebujesz 4 widoków, a jeśli nie jest symetryczny, użyj 8 widoków.
Stacja powinna normalnie mieć 12 (hex), ponieważ stacja składa się z 18 (dziesiętnych) 'sprites', chociaż jeśli użyjesz innego układu 'sprites' dla swojej stacji, liczba ta może się różnić. W przypadku kanałów zależy to od funkcji kanału, patrz Action 3.
W przypadku domów i płytek przemysłowych wartość powinna wynosić od 1 do 4 i określa liczbę różnych etapów budowy. 'Sprites' po pierwszych czterech są zawsze ignorowane. Zobacz także działanie 2 i 3.
W przypadku ładunków powinna to być zawsze wartość 1. Następujące 'sprites' nie powinny być większe niż 10x10 pikseli, inaczej nie zmieszczą się w oknie stacji.
 0.6
0.6  2.5 Od TTDPatch 2.0.1 alpha 49, ta wartość jest 'tak zwanym' "rozszerzonym bajtem" (patrz GRFActionsDetailed).
2.5 Od TTDPatch 2.0.1 alpha 49, ta wartość jest 'tak zwanym' "rozszerzonym bajtem" (patrz GRFActionsDetailed).
 0.6
0.6  2.5 Od wersji TTDPatch 2.0.1 alfa 63 możliwe jest, aby <num-ent>=0 . Jest to przydatne do zdefiniowania kombinacji akcji 1/2, która służy tylko jako niepoprawny wynik wywołania zwrotnego. Jeśli plik .grf inaczej nie definiuje grafiki, w ten sposób wywołania zwrotne mogą zwrócić jawny kod błędu bez potrzeby przydzielania żadnych ikonek. Jest to również potrzebne, jeśli funkcja ma brak grafiki (no graphics at all) .
2.5 Od wersji TTDPatch 2.0.1 alfa 63 możliwe jest, aby <num-ent>=0 . Jest to przydatne do zdefiniowania kombinacji akcji 1/2, która służy tylko jako niepoprawny wynik wywołania zwrotnego. Jeśli plik .grf inaczej nie definiuje grafiki, w ten sposób wywołania zwrotne mogą zwrócić jawny kod błędu bez potrzeby przydzielania żadnych ikonek. Jest to również potrzebne, jeśli funkcja ma brak grafiki (no graphics at all) .
Przykład
Poniżej znajduje się przykład tego, jak mógłby wyglądać prawdziwy pseudo-'sprite'Akcji 1 z wpisami 'sprite' pod nim.
2 * 4 01 00 01 08 3 C:\TTD\SPRITES\mytrain.pcx 66 8 01 18 8 -3 -10 4 C:\TTD\SPRITES\mytrain.pcx 82 8 09 15 20 -14 -6 5 C:\TTD\SPRITES\mytrain.pcx 114 8 01 12 28 -14 -6 6 C:\TTD\SPRITES\mytrain.pcx 162 8 09 16 20 -4 -8 7 C:\TTD\SPRITES\mytrain.pcx 194 8 01 18 8 -3 -10 8 C:\TTD\SPRITES\mytrain.pcx 210 8 09 16 20 -14 -7 9 C:\TTD\SPRITES\mytrain.pcx 242 8 01 12 28 -14 -6 10 C:\TTD\SPRITES\mytrain.pcx 290 8 09 15 20 -4 -7
| Bajt | Znaczenie | 
|---|---|
| 2 | <sprite-number> | 
| 4 | <length> action w bajtach; start liczenia od 01 (<action>) | 
| 01 | <action>: ustawia ten pseudo-'sprite' na działanie jako action 1 | 
| 00 | <feature>: W tym przypadku Pociąg | 
| 01 | <num-sets>: 1 Zestaw widoków | 
| 08 | <num-ent>: 8 widoków tego pociągu | 


