AddVariables
Dokumentacja programistyczna OpenTTD
Linki zewnętrzne

OpenTTD GitHub
Wkład w OpenTTD - wytyczne
OpenTTD Doxygen

Informacje Ogólne

Styl kodowania
Kompilowanie OpenTTD
Debugowanie
Dodanie ustawienia
Dodanie funkcji squirrel
Zrozumienie obsługi SaveGame
Wyznaczenie wersji gry zapisanej
Wykonanie wydania OpenTTD

Języki i Ciągi znaków

Podręcznik stylu
Format plików lang
Użycie ciągów OpenTTD
Lista ciągów specjalnych

System Okna

Użycie systemu okna
Kody kolorów istniejących w OpenTTD
Dodawanie pola tekstowego
Zrozumienie widget focus system
Przewodnik stylu GUI

Tryb wieloosobowy

OpenTTD TCP protokół
OpenTTD UDP protokół
Debugowanie desynchronizacji
Rozwój Portu Administratora Serwera

Konsola (w grze)

Okno konsoli
Komendy konsoli
Zmienne konsoli
Używanie skryptu konsoli
Dodanie funkcji/komend do konsoli
Dodanie zmiennych do konsoli
Historia rozwoju Konsoli

Interfejsy API (ramy modowania)

Grafika i podobne (NewGRFy)
Środowisko AI (NoAI)
Framework GS (NoGO)

Inne odniesienia

Tablica map (siatka pozioma)
Pojazdy
Wyszukiwanie trasy
Przyspieszenie pociągu

W tym dokumencie wyjaśniono, jak dodawać zmienne do konsoli.

pierwszy krok

pierwszą rzeczą, której potrzebujesz, jeśli chcesz coś zrobić w konsoli, jest

include "console.h"

daje to dostęp do wszystkich funkcji i struktur IConsole, z których będziesz musiał korzystać, jeśli zamierzasz dodawać komendy/funkcje/zmienne (Commands/Functions/Variables) do konsoli.

dodanie zmiennej c++

aby dodać zmienną c++ do listy zmiennych konsoli, wystarczy umieścić ją gdzieś w kodzie źródłowym, gdzie jest wykonywana podczas procesu inicjalizacji openttd:

IConsoleVarRegister("myvar",(void *) &my_static_var,ICONSOLE_VAR_BYTE);

ICONSOLE_VAR_BYTE można zastąpić innym typem zmiennej zgodnie z definicją zmiennej c++ .

dodanie wirtualnej zmiennej c++

jest to tak proste, jak procedura dodawania zmiennej c++ .

_iconsole_var * var;
var = IConsoleVarAlloc(ICONSOLE_VAR_BOOLEAN);
IConsoleVarInsert(var,"temp_bool");
var = IConsoleVarAlloc(ICONSOLE_VAR_INT16);
IConsoleVarInsert(var,"temp_int16");

dodaje to dwie zmienne wirtualne.. Zmienne wirtualne nie są mapowane na zmienną c++ , więc były dostępne tylko z poziomu konsoli lub z poziomu c++ przez

_iconsole_var * IConsoleVarGet(byte * name);

pozwala to na użycie ciągów opartych na instancjach w c++ . opis przeczytanych ciągów opartych na instancjach Używając Skryptów Konsoli