Skip to content

dataTypes

extrazi edited this page Jul 1, 2023 · 3 revisions
original    original
EN     PL

m4NFO Manual

Typy danych

Introduction
m4nfo używa wielu różnych typów danych dla swoich różnych właściwości i funkcji. Używanie typów danych pomaga użytkownikowi zastosować abstrakcję i zignorować szczegóły reprezentacji.

Każdy typ danych definiuje zbiór wartości, które może przyjąć zmienna (lub funkcja poprzez użycie jej parametrów). Istnieją albo nieustrukturyzowane ("proste") typy danych, jak i typy danych strukturalnych. Te ostatnie mają składać się z pierwszego typu.

Proste typy danych

Typ Zakres wartości
Char <ASCII_char> | <UTF-8_char>
Boolean [yes, no] | [TRUE, FALSE]
Nibble [0 .. 15]
Cargo-ID [0 .. 31]
Byte [0 .. 255]
Word [0 .. 65535]
Dword [0 .. 4294967295]
Industry-ID [0 .. 36] (TTDPatch) [0 .. 63] (OTTD)
Station-ID, Object-ID, Veh-ID[*] [0 .. 255]
Industrytile-ID [0 .. 255] (TTDPatch) [0 .. 511] (OTTD)
Basecost-ID [0 .. 48] (TTDPatch) [0 .. 65] (OTTD)
House-ID [0 .. 254] (TTDPatch) [0 .. 511] (OTTD)
Bridge-ID [0 .. 10] (TTDPatch) [0 .. 12] (OTTD)
Text-ID [0 .. 1023]
Sound-ID [0 .. 65535] [**]
[*] TTD/TTDPatch/OTTD <r12924:
  • trains: 0 .. 115
  • rvs: 116 .. 203
  • ships: 204 .. 214
  • aircraft: 215 .. 255
Od wersji OpenTTD r13482, identyfikatory większe niż 255 są dozwolone, do teoretycznego limitu 65535. Każdy zdefiniowany silnik, który nie mieści się w oryginalnym wymienionym zakresie, nie będzie miał domyślnych właściwości, w tym nazwy.

Od czasu OpenTTD r25835, ID obiektów zostały zwiększone do 64 000.

[**] Sound-ID 0 .. 72 to oryginalne dźwięki TTD

Strukturyzowane typy danych

Typ Zakres wartości Stosowanie
Range <Nibble> .. <Nibble> | <Byte> .. <Byte> | <Word> .. <Word> zakres kolejnych numerów
Enum <Byte> Typ wyliczeniowy
String {<Char>} Definicja nazw i innych tekstów
Label <Char>*4 Definicja etykiet (klas) dla stacji, ładunków i typów kolei
Date ([1 .. 31] - [1 .. 12] - <Word>) |
(<Word> / [1 .. 12] / [1 .. 31])
Definicja dat
Coordinate <Nibble>, <Nibble> Współrzędna: wartość-x, wartość-y
Unit-term <Word> [km/h, KM/H, mph, MPH] Definicja prędkości
<Word> [hp, HP, ps, PS, kw, KW] Definicja mocy
<Word> [t, T, tnl, TNL, tnsh, TNSH, kg (*), KG (*)] Definicja wagi
<Byte> [kn, KN, kp, KP, lbf, LBF] Definicja siły pociągowej
<Byte> [%] Definicja wartości procentowych (refitcost, canalspeed, ...)
Feature [_TRAIN, _ROADVEHICLE, _SHIP, _STATION, _CANAL, _BRIDGE, _HOUSE, _GLOBAL, _CARGO, _SOUND, _OBJECT, _RAILTYPE, _AIRCRAFT, _INDUSTRYTILE, _INDUSTRY] Definicja funkcji TTD do użycia
TileType [0, 2, 4, 6] Typy kafli stacji TTD
EngineType [STEAM, DIESEL, ELECTRIC, MONORAIL, MAGLEV, WAGON] Definicja typów silników
Callback Feature-specific, see there Definicja callbacków
CargoClass [TRVL, POST, EXPRESS, VALUE, BULK, PGOODS, LIQUID, REEF, HAZARD, SHELTER, WEIGHT] Definicja klas ładunków
CargoType [PASS, COAL, WATR, MAIL, OIL, LVST, GOOD, GRAI, WHEA, MAIZ, WOOD, IORE, CORE, STEL, PLAS, VALU, GOLD, DIAM, SPECIAL, MENU] Definicja oryginalnych typów ładunków TTD. Dla ładunków niestandardowych typy (ECS, FIRS) patrz tutaj.
Climate [INACTIVE, TEMPERATE, ARCTIC, TROPIC, TOYLAND] Definicja klimatu
Effect [NONE, NOPOWER, steam(), diesel(), electric()] Efekt silnika
List <par_1>, <par_2>, ..., <par_n> Definicja listy może zawierać typy strukturalne
TownZone [TZ_OUTSKIRTS, TZ_PERIPHERY, TZ_RESIDENTIAL, TZ_COMMERCIAL, TZ_CENTRE] Definicja stref miejskich
House-size [SINGLE, DOUBLEX, DOUBLEY, QUAD] Definicja wielkości domu
Language-ID [ALL, D, E, F, HR, I, NL, H, PL, RUS, S, SRB, UK, US] Definicja języków
(*) = tylko pojazdy drogowe
Clone this wiki locally