11-04-2020, 20:29
(Ten post był ostatnio modyfikowany: 13-05-2020, 18:40 przez spaceport.
Powód edycji: zaktualizowane info.nut
)
To niezbyt skomplikowany skrypt , tyle że ukazuje przysposobienie do rozbudowy .
changelog.txt :
readme.txt :
Żeby nie powtarzać niektóre mechanizmy, w G.S można skorzystać z szablony MinimalGS . To zastosowano w tym . Aby nie pisać od nowa to samo można korzystać z bibliotek (tu: SuperLib_for_NoGo-36 ). Wtedy wystarczy odwołanie domyślnie do folderu /library z którego wywoływana jest biblioteka (ze "Sprawdź dodatki online"). Funkcje, które zostaną użyte stamtąd, nie trzeba przepisywać, a tylko wstawić odpowiednią nazwę . Skraca to majstrowanie skryptu . Jakiś GS_LIB nie posiada info.nut a „library.nut”.
W squirrel'u jest rozróżnia wielkość liter, ale przy zadeklarowaniu użycia biblioteki, można użyć:
import()
albo
Import()
G.S może mieć w kodzie jakieś rezultaty, które można wyświetlić w Ottd. Do takich napisów wyjściowych służy plik językowy english.txt :
tudzież tłumaczenie polish.txt
oba umiejscowione w skryptowym podkatalogu \lang\ .
G.S został zaczęty od uzupełnienia w M.GS nowych zdarzeń , a do tego nowe pliki 2 .
Klasa główna to fundament ze strukturą zapisu/ładowania i zapętlenie . Dołączono import SuperLib, ale można to usunąć - do usunięcia kilka przypadków, w których pomocne SuperLib jest wymienione - i zawrzeć w plikach razem.
info.nut
version.nut
...więcej chyba nie zmieści się w jednym poście, reszta po tym
changelog.txt :
Kod:
wersja posiada:
1. by przez pewien czas od początkowego roku do np. 10 lat - w zależności od ustawień parametru - z mapy nie ubywało przemysłu, jeśli nie ma drugiego identycznego .
2. by za każdym razem nie wpisywać nazwy firmy i prez. readme.txt :
Kod:
W G.S zawarta w założeniach branża ma możliwość odbudowania się zaraz w tym samym miejscu , jeżeli zostanie zamknięta, tak jakby była zawieszona poniekąd . Można to i w trakcie anulować, jeśli użytkownik nie ma zamiaru inwestować akurat w tym obszarze .
Oprócz tego jest możliwość zmiany w pliku firms.cfg by była wpisana na stałe swoja nazwa użytkownika
(dopiero chyba od OTTD 1.9 wprowadzono zautomatyzowany wybór koloru, ale nie ma możliwości określenia do tego płci - jest w AI lub z patch'em ) .Żeby nie powtarzać niektóre mechanizmy, w G.S można skorzystać z szablony MinimalGS . To zastosowano w tym . Aby nie pisać od nowa to samo można korzystać z bibliotek (tu: SuperLib_for_NoGo-36 ). Wtedy wystarczy odwołanie domyślnie do folderu /library z którego wywoływana jest biblioteka (ze "Sprawdź dodatki online"). Funkcje, które zostaną użyte stamtąd, nie trzeba przepisywać, a tylko wstawić odpowiednią nazwę . Skraca to majstrowanie skryptu . Jakiś GS_LIB nie posiada info.nut a „library.nut”.
W squirrel'u jest rozróżnia wielkość liter, ale przy zadeklarowaniu użycia biblioteki, można użyć:
import()
albo
Import()
G.S może mieć w kodzie jakieś rezultaty, które można wyświetlić w Ottd. Do takich napisów wyjściowych służy plik językowy english.txt :
Kod:
STR_WELCOME :Hello {COMPANY}!{}{}You are playing a game with M.GS - a boilerplate for GS authors.
# dodane :
STR_PYTAJNIK :Rebuilding the closing industry ?tudzież tłumaczenie polish.txt
Kod:
# dodane :
STR_WELCOME :Powitanie {COMPANY}!{}{}Uruchomienie z Europea GS - autorzy GS.
STR_PYTAJNIK :Odbudowanie branży zamykanej ?oba umiejscowione w skryptowym podkatalogu \lang\ .
G.S został zaczęty od uzupełnienia w M.GS nowych zdarzeń , a do tego nowe pliki 2 .
Klasa główna to fundament ze strukturą zapisu/ładowania i zapętlenie . Dołączono import SuperLib, ale można to usunąć - do usunięcia kilka przypadków, w których pomocne SuperLib jest wymienione - i zawrzeć w plikach razem.
info.nut
Kod:
/*
* Ten plik jest częścią "szablonu" MinimalGS, która jest GameScript dla OpenTTD
* Prawa autorskie (C) 2012-2013 Leif Linse
*
* MinimalGS to darmowe oprogramowanie; możesz go redystrybuować i/lub modyfikować
* zgodnie z warunkami Powszechnej Licencji Publicznej GNU opublikowanej przez
* Fundacja Wolnego Oprogramowania; wersja 2 licencji
*
* MinimalGS jest rozpowszechniany w nadziei, że będzie przydatny,
* ale BEZ ŻADNEJ GWARANCJI; nawet bez dorozumianej gwarancji
* PRZYDATNOŚĆ HANDLOWA lub PRZYDATNOŚĆ DO KONKRETNEGO CELU. Zobacz
* Powszechna Licencja Publiczna GNU po więcej szczegółów.
*
* Powinieneś otrzymać kopię Powszechnej Licencji Publicznej GNU
* wraz z MinimalGS; Jeśli nie, patrz <http://www.gnu.org/licenses/> lub
* napisz do Free Software Foundation, Inc., 51 Franklin Street,
* Fifth Floor, Boston, MA 02110-1301 USA.
*
*/
/*** squirrel 2.2.5 & OpenTTD 1.8 , Format UTF-8 ***/
require("version.nut");
require("firms.cfg");
class InfoKlasa extends GSInfo {
function GetAuthor() { return "[spaceport]"; }
function GetName() { return "EuropeaGS"; }
function GetDescription() { return "m.in. branże zamykane mogą zostać odbudowane odrazu w tym samym typie i miejscu - opcjonalne, od daty początkowej przez lat np.10..."; }
function GetVersion() { return SELF_VERSION; } // 3 lub SELF_VERSION;
function GetDate() { return "2020-04-11"; }
function CreateInstance() { return "MainKlasa"; }
function GetShortName() { return "UEGS"; } // Zamień to na swój własny, 4-literowy ciąg
function GetAPIVersion() { return "1.3"; }
function GetURL() { return "openttd-polska.pl"; }
// dodane:
// function MinVersionToLoad() { return 2; }
function GetSettings() {
AddSetting(
{
name = "log_level",
description = "Debug: Log level (wyzszy = wyswietla wiecej) ",
easy_value = 3,
medium_value = 3,
hard_value = 3,
custom_value = 3,
flags = CONFIG_INGAME,
min_value = 1,
max_value = 3
});
AddLabels("log_level",
{
_1 = "1: Info", _2 = "2: Gadatliwy", _3 = "3: Debug"
} );
// dodane :
AddSetting({name = "lata",
// description = "Liczba lat kiedy od rozpoczęcia będą zastępowane automatycznie zamykane branże",
description = "Branże mogą zostać przez lat ", // dwukropek na koncu dodawany pozniej automatycznie
min_value = 0
max_value = 99
easy_value = 10, // wartość domyślna (można zmienić)
medium_value = 3,
hard_value = 1,
custom_value = 10,
step_size = 1,
flags = CONFIG_INGAME
});
AddLabels("lata",
{
_0 = "wyłączone", _10 = "10 ~ standard", _99 = "99 max."
} );
AddSetting( { name = "use_custom_setcompany",
description = "Możliwość użycia dostosowanych dla firmy np.nazewnictw przy starcie ",
easy_value = 1, // wartość domyślna ~ tylko cyfry, (można 0)
medium_value = 0,
hard_value = 0,
custom_value = 0,
flags = CONFIG_BOOLEAN+CONFIG_NONE
});
AddSetting({name = "name_firm",
description = "Nazwa dla firmy przy starcie ",
min_value = 1
max_value = 2
easy_value = 2, // wartość domyślna (można zmienić)
medium_value = 2,
hard_value = 2,
custom_value = 2,
flags = CONFIG_NONE
});
AddLabels("name_firm",
{
_1 = "Bez nazwy", _2 = "swoje np. "+SELF_FIRM // "Bez nazwy" do wpisania później
} );
AddSetting({name = "name_prez",
description = "Nazwa dla szefa przy starcie ",
min_value = 1
max_value = 2
easy_value = 2, // wartość domyślna (można zmienić)
medium_value = 2,
hard_value = 2,
custom_value = 2,
flags = CONFIG_NONE
});
AddLabels("name_prez",
{
_1 = "losowe", _2 = "swoje np. "+SELF_PREZ // wartość domyślna (można inne )
} );
AddSetting({name = "gend_prez",
description = "płeć prez.przy starcie ",
easy_value = 0, // wartość domyślna (można zmienić)
medium_value = 0,
hard_value = 1,
custom_value = 0,
flags = CONFIG_NONE // CONFIG_BOOLEAN + CONFIG_INGAME
min_value = 0
max_value = 2
});
AddLabels("gend_prez",
{
_0 = "facet", _1 = "kobieta" ,_2="losowo" // wartość domyślna - on
} );
AddSetting({name = "kolor_def",
description = "kolor default ",
easy_value = 13, // wartość domyślna (można zmienić)
medium_value = 1,
hard_value = 1,
custom_value = 1,
flags = CONFIG_NONE // CONFIG_BOOLEAN + CONFIG_INGAME
min_value = 0
max_value = 16
});
AddLabels("kolor_def",
{
_0=" losowe ", _1 = " Ciemno niebieski ", _2 = " Blado zielony ", _3 = " Różowy ", _4 = " Żółty ", _5 = " Czerwony ", _6 = " Jasno niebieski ", _7 = " Zielony ", _8 = " Ciemno zielony ", _9 = " Niebieski ", _10 = " Kremowy ", _11 = " Fioletowy ", _12 = " Purpurowy ", _13 = " Pomarańczowy ", _14 = " Brązowy ", _15 = " Szary ", _16 = " Biały " // wartość domyślna - orange
} );
AddSetting( { name = "kolory_zapas",
description = "włącznik dostosowanych kolorów dodatkowych - nie dla koloru losowego ",
easy_value = 1, // wartość domyślna ~ tylko cyfry, (można 0)
medium_value = 0,
hard_value = 0,
custom_value = 0,
flags = CONFIG_BOOLEAN+CONFIG_NONE
});
}
}
// info do rdzenia, że to GS
RegisterGS(InfoKlasa());version.nut
Kod:
/*
* Ostrzeżenie: ten plik jest ładowany zarówno przez main.nut, jak i info.nut
* dlatego nie umieszczaj tutaj niczego, co jest ciężkie lub nie jest wymagane
* dostępne, gdy OpenTTD skanuje plik info.nut.
*/
SELF_VERSION <- 2;...więcej chyba nie zmieści się w jednym poście, reszta po tym
![OpenTTD #Polska - Polskie forum gry OpenTTD [ARCHIWUM] OpenTTD #Polska - Polskie forum gry OpenTTD [ARCHIWUM]](https://forum.openttd.pl/images/logo.png)