Merge branch 'master' into jgrpp
# Conflicts: # src/saveload/saveload.cpp
This commit is contained in:
@@ -41,6 +41,7 @@ static const KeycodeNames _keycode_to_name[] = {
|
||||
{"GLOBAL", WKC_GLOBAL_HOTKEY},
|
||||
{"ESC", WKC_ESC},
|
||||
{"DEL", WKC_DELETE},
|
||||
{"BACKSPACE", WKC_BACKSPACE},
|
||||
{"RETURN", WKC_RETURN},
|
||||
{"BACKQUOTE", WKC_BACKQUOTE},
|
||||
{"F1", WKC_F1},
|
||||
|
@@ -869,7 +869,7 @@ STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLAC
|
||||
STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Leihoa {COMMA}
|
||||
STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Leihora kopiatu
|
||||
STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK} Leiho nagusian ikusten dena leiho honetara kopiatu
|
||||
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Leihotik kpiatutakoa itsatsi
|
||||
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Aldatu ikuspen nagusia
|
||||
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Leiho honetan ikusten dena leiho nagusian itsasi
|
||||
|
||||
# Game options window
|
||||
@@ -2587,6 +2587,8 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD
|
||||
|
||||
# Framerate display window
|
||||
############ Leave those lines in this order!!
|
||||
STR_FRAMERATE_GL_TRAINS :{WHITE} Trenen tick-ak:
|
||||
STR_FRAMERATE_GL_SHIPS :{WHITE} Itsasontzien tick-ak:
|
||||
############ End of leave-in-this-order
|
||||
############ Leave those lines in this order!!
|
||||
############ End of leave-in-this-order
|
||||
@@ -3007,6 +3009,7 @@ STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}
|
||||
STR_STATION_VIEW_GROUP :{BLACK}Taldekatu
|
||||
STR_STATION_VIEW_WAITING_STATION :Geltokia: Itxaroten
|
||||
STR_STATION_VIEW_WAITING_AMOUNT :Kopurua: Itxoiten
|
||||
STR_STATION_VIEW_PLANNED_STATION :Geltokia: Antolatua
|
||||
STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} {STATION}-tik
|
||||
STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT}{STATION}-tik
|
||||
STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT}{STATION}-ra
|
||||
|
@@ -911,6 +911,7 @@ STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLAC
|
||||
STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Direktor)
|
||||
|
||||
STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}Tvrtka {STRING} sponzorira izgradnju novoga grada {TOWN}!
|
||||
STR_NEWS_NEW_TOWN_UNSPONSORED :{BLACK}{BIG_FONT}Sagrađen je novi grad {TOWN}!
|
||||
|
||||
STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Započela je izgradnja nove {STRING.gen} u blizini grada {TOWN}a!
|
||||
STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Nova {STRING} trenutno se sadi blizu grada {TOWN}a!
|
||||
|
@@ -550,6 +550,7 @@ STR_ABOUT_MENU_SCREENSHOT :Screenshot
|
||||
STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Screenshot v plném přiblížení
|
||||
STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Screenshot ve výchozím přiblížení
|
||||
STR_ABOUT_MENU_GIANT_SCREENSHOT :Screenshot celé mapy
|
||||
STR_ABOUT_MENU_SHOW_FRAMERATE :Zobrazit počet snímků za sekundu
|
||||
STR_ABOUT_MENU_ABOUT_OPENTTD :O 'OpenTTD'
|
||||
STR_ABOUT_MENU_SPRITE_ALIGNER :Zarovnávání spritů
|
||||
STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Přepnout ohraničení
|
||||
@@ -737,6 +738,7 @@ STR_MUSIC_RULER_MARKER :{TINY_FONT}{BLA
|
||||
STR_MUSIC_TRACK_NONE :{TINY_FONT}{DKGREEN}--
|
||||
STR_MUSIC_TRACK_DIGIT :{TINY_FONT}{DKGREEN}{ZEROFILL_NUM}
|
||||
STR_MUSIC_TITLE_NONE :{TINY_FONT}{DKGREEN}------
|
||||
STR_MUSIC_TITLE_NOMUSIC :{TINY_FONT}{DKGREEN}Hudba nedostupná
|
||||
STR_MUSIC_TITLE_NAME :{TINY_FONT}{DKGREEN}"{STRING}"
|
||||
STR_MUSIC_TRACK :{TINY_FONT}{BLACK}Skladba
|
||||
STR_MUSIC_XTITLE :{TINY_FONT}{BLACK}Název
|
||||
@@ -762,6 +764,7 @@ STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLA
|
||||
STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Program - '{STRING}'
|
||||
STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Vymazat
|
||||
STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Vyprázdnit současný program (jen u Voleb 1 a 2)
|
||||
STR_PLAYLIST_TOOLTIP_CHANGE_SET :{BLACK}Změnit výběr hudby na jinou nainstalovanou sadu.
|
||||
STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Skladba se přidá do zvoleného programu (Volba 1 nebo 2) klepnutím na její název
|
||||
STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Hudební stopu odstraníš ze současného programu (pouze u vlastního) kliknutím na ni
|
||||
|
||||
@@ -897,6 +900,7 @@ STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLAC
|
||||
STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Prezident)
|
||||
|
||||
STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}Společnost {STRING} zaplatila výstavbu nového města {TOWN}!
|
||||
STR_NEWS_NEW_TOWN_UNSPONSORED :{BLACK}{BIG_FONT}Nové město {TOWN} bylo vystavěno!
|
||||
|
||||
STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Nov{G ý á é í é é á} {STRING.small} se staví poblíž města {TOWN}!
|
||||
STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Nov{G ý á é í é é á} {STRING.small} se vysazuj{G 0 e e e í í í í} poblíž města {TOWN}!
|
||||
@@ -966,7 +970,7 @@ STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLAC
|
||||
STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Pohled {COMMA}
|
||||
STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Nastavit jako pohled
|
||||
STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Nastavit současné zorné pole jako pohled
|
||||
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Přejít na pohled
|
||||
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Změnit hlavní pohled
|
||||
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Nastavit pohled do zorného pole
|
||||
|
||||
# Game options window
|
||||
@@ -1009,6 +1013,7 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :Jihoafrický ra
|
||||
STR_GAME_OPTIONS_CURRENCY_CUSTOM :Vlastní...
|
||||
STR_GAME_OPTIONS_CURRENCY_GEL :Georgijské Lari (GEL)
|
||||
STR_GAME_OPTIONS_CURRENCY_IRR :Íránský Riál (IRR)
|
||||
STR_GAME_OPTIONS_CURRENCY_RUB :Ruský rubl (RUB)
|
||||
############ end of currency region
|
||||
|
||||
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Silniční vozidla jezdí
|
||||
@@ -2363,6 +2368,7 @@ STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Legenda
|
||||
STR_LINKGRAPH_LEGEND_ALL :{BLACK}Všechny
|
||||
STR_LINKGRAPH_LEGEND_NONE :{BLACK}Žádný
|
||||
STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Vybrat firmy, které mají být zobrazeny
|
||||
STR_LINKGRAPH_LEGEND_COMPANY_TOOLTIP :{BLACK}{STRING}{}{COMPANY}
|
||||
|
||||
# Linkgraph legend window and linkgraph legend in smallmap
|
||||
STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}nepoužívaný
|
||||
@@ -2778,9 +2784,24 @@ STR_ABOUT_VERSION :{BLACK}OpenTTD
|
||||
STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2018 Tým OpenTTD
|
||||
|
||||
# Framerate display window
|
||||
STR_FRAMERATE_CAPTION :{WHITE}Počet snímků za sekundu
|
||||
STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Počet snímků videa vykreslovaných za sekundu.
|
||||
STR_FRAMERATE_SPEED_FACTOR :{WHITE}Aktuální činitel rychlosti hry: {DECIMAL}x
|
||||
STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Rychlost, kterou hra právě běží, v porovnání s očekávanou rychlostí při běžné rychlosti simulace.
|
||||
STR_FRAMERATE_AVERAGE :{WHITE}Průměr
|
||||
STR_FRAMERATE_MS_BAD :{RED}{DECIMAL}{WHITE} ms
|
||||
STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL}{WHITE} sním{P "ek" "ky" "ků"}/s
|
||||
STR_FRAMERATE_FPS_BAD :{RED}{DECIMAL}{WHITE} sním{P "ek" "ky" "ků"}/s
|
||||
STR_FRAMERATE_GRAPH_MILLISECONDS :{TINY_FONT}{COMMA} ms
|
||||
STR_FRAMERATE_GRAPH_SECONDS :{TINY_FONT}{COMMA} s
|
||||
############ Leave those lines in this order!!
|
||||
STR_FRAMERATE_GL_ECONOMY :{WHITE} Manipulace s nákladem:
|
||||
STR_FRAMERATE_DRAWING :{WHITE}Vykreslování grafiky:
|
||||
############ End of leave-in-this-order
|
||||
############ Leave those lines in this order!!
|
||||
STR_FRAMETIME_CAPTION_GL_ECONOMY :Manipulace s nákladem
|
||||
STR_FRAMETIME_CAPTION_DRAWING :Vykreslování grafiky
|
||||
STR_FRAMETIME_CAPTION_SOUND :Míchání zvuků
|
||||
############ End of leave-in-this-order
|
||||
|
||||
|
||||
@@ -3068,6 +3089,7 @@ STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Zadej n
|
||||
STR_TOWN_DIRECTORY_CAPTION :{WHITE}Města
|
||||
STR_TOWN_DIRECTORY_NONE :{ORANGE}- Nic -
|
||||
STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA})
|
||||
STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (velkoměsto){BLACK} ({COMMA})
|
||||
STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Jména měst - pohled na město zaměříš kliknutím na jeho jméno. Při stisknutém Ctrl otevřeš nový pohled
|
||||
STR_TOWN_POPULATION :{BLACK}Populace světa: {COMMA}
|
||||
|
||||
@@ -3075,6 +3097,7 @@ STR_TOWN_POPULATION :{BLACK}Populace
|
||||
STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN}
|
||||
STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (velkoměsto)
|
||||
STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Populace: {ORANGE}{COMMA}{BLACK} Domů: {ORANGE}{COMMA}
|
||||
STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} minulý měsíc: {ORANGE}{COMMA}{BLACK} max: {ORANGE}{COMMA}
|
||||
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Množství doručeného nákladu potřebného pro rozvoj města:
|
||||
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{RED}Je potřeba {ORANGE}{STRING}
|
||||
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} vyžadováno v zimě
|
||||
@@ -4326,6 +4349,7 @@ STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... tato
|
||||
STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... silnice je otočena jiným směrem
|
||||
STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... průjezdné zastávky nemohou být v zatáčce
|
||||
STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... průjezdné zastávky nemohou být na křižovatce
|
||||
STR_ERROR_DRIVE_THROUGH_ON_ONEWAY_ROAD :{WHITE}... silnice je jednosměrná nebo uzavřená.
|
||||
|
||||
# Station destruction related errors
|
||||
STR_ERROR_CAN_T_REMOVE_PART_OF_STATION :{WHITE}Nelze odstranit část stanice...
|
||||
@@ -4584,6 +4608,8 @@ STR_BASESOUNDS_DOS_DESCRIPTION :Původní sada
|
||||
STR_BASESOUNDS_WIN_DESCRIPTION :Původní sada zvuků Transport Tycoon Deluxe (verze pro Windows).
|
||||
STR_BASESOUNDS_NONE_DESCRIPTION :Prázdná sada zvuků.
|
||||
STR_BASEMUSIC_WIN_DESCRIPTION :Původní hudba Transport Tycoon Deluxe (verze pro Windows).
|
||||
STR_BASEMUSIC_DOS_DESCRIPTION :Původní hudba Transport Tycoon Deluxe (verze pro DOS).
|
||||
STR_BASEMUSIC_TTO_DESCRIPTION :Původní hudba Transport Tycoon (verze pro DOS).
|
||||
STR_BASEMUSIC_NONE_DESCRIPTION :Prázná hudební sada.
|
||||
|
||||
##id 0x2000
|
||||
|
@@ -823,6 +823,7 @@ STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLAC
|
||||
STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Manager)
|
||||
|
||||
STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{RAW_STRING} sponsored construction of new town {TOWN}!
|
||||
STR_NEWS_NEW_TOWN_UNSPONSORED :{BLACK}{BIG_FONT}A new town called {TOWN} has been constructed!
|
||||
|
||||
STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}New {STRING} under construction near {TOWN}!
|
||||
STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}New {STRING} being planted near {TOWN}!
|
||||
|
@@ -817,6 +817,7 @@ STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLAC
|
||||
STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Presidente)
|
||||
|
||||
STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}La {STRING} finanzia la costruzione della nuova cittadina di {TOWN}!
|
||||
STR_NEWS_NEW_TOWN_UNSPONSORED :{BLACK}{BIG_FONT}È stata fondata una nuova città chiamata {TOWN}!
|
||||
|
||||
STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Nuov{G o o a} {STRING} in costruzione vicino a {TOWN}!
|
||||
STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Nuov{G 0 o o a} {STRING} piantat{G 0 o o a} vicino a {TOWN}!
|
||||
|
@@ -1072,6 +1072,7 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :Южноафр
|
||||
STR_GAME_OPTIONS_CURRENCY_CUSTOM :Своя...
|
||||
STR_GAME_OPTIONS_CURRENCY_GEL :Грузинский лари (GEL)
|
||||
STR_GAME_OPTIONS_CURRENCY_IRR :Иранский риал (IRR)
|
||||
STR_GAME_OPTIONS_CURRENCY_RUB :Российский новый рубль (RUR)
|
||||
############ end of currency region
|
||||
|
||||
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Движение автомобилей
|
||||
|
@@ -1010,21 +1010,30 @@ bool MidiFile::WriteSMF(const char *filename)
|
||||
std::string MidiFile::GetSMFFile(const MusicSongInfo &song)
|
||||
{
|
||||
if (song.filetype == MTT_STANDARDMIDI) {
|
||||
return std::string(song.filename);
|
||||
char filename[MAX_PATH];
|
||||
if (FioFindFullPath(filename, lastof(filename), Subdirectory::BASESET_DIR, song.filename)) {
|
||||
return std::string(filename);
|
||||
} else if (FioFindFullPath(filename, lastof(filename), Subdirectory::OLD_GM_DIR, song.filename)) {
|
||||
return std::string(filename);
|
||||
} else {
|
||||
return std::string();
|
||||
}
|
||||
}
|
||||
|
||||
if (song.filetype != MTT_MPSMIDI) return std::string();
|
||||
|
||||
const char *lastpathsep = strrchr(song.filename, PATHSEPCHAR);
|
||||
if (lastpathsep == NULL) {
|
||||
lastpathsep = song.filename;
|
||||
}
|
||||
|
||||
char basename[MAX_PATH];
|
||||
{
|
||||
const char *fnstart = strrchr(song.filename, PATHSEPCHAR);
|
||||
if (fnstart == NULL) {
|
||||
fnstart = song.filename;
|
||||
} else {
|
||||
fnstart++;
|
||||
}
|
||||
|
||||
/* Remove all '.' characters from filename */
|
||||
char *wp = basename;
|
||||
for (const char *rp = lastpathsep + 1; *rp != '\0'; rp++) {
|
||||
for (const char *rp = fnstart; *rp != '\0'; rp++) {
|
||||
if (*rp != '.') *wp++ = *rp;
|
||||
}
|
||||
*wp++ = '\0';
|
||||
|
@@ -8092,6 +8092,8 @@ static void InitializeGRFSpecial()
|
||||
| ((_settings_game.vehicle.dynamic_engines ? 1 : 0) << 0x18) // dynamic engines
|
||||
| (1 << 0x1E) // variablerunningcosts
|
||||
| (1 << 0x1F); // any switch is on
|
||||
|
||||
_ttdpatch_flags[4] = (1 << 0x00); // larger persistent storage
|
||||
}
|
||||
|
||||
/** Reset and clear all NewGRF stations */
|
||||
|
@@ -220,7 +220,7 @@ extern PersistentStoragePool _persistent_storage_pool;
|
||||
/**
|
||||
* Class for pooled persistent storage of data.
|
||||
*/
|
||||
struct PersistentStorage : PersistentStorageArray<int32, 16>, PersistentStoragePool::PoolItem<&_persistent_storage_pool> {
|
||||
struct PersistentStorage : PersistentStorageArray<int32, 256>, PersistentStoragePool::PoolItem<&_persistent_storage_pool> {
|
||||
/** We don't want GCC to zero our struct! It already is zeroed and has an index! */
|
||||
PersistentStorage(const uint32 new_grfid, byte feature, TileIndex tile)
|
||||
{
|
||||
@@ -230,7 +230,7 @@ struct PersistentStorage : PersistentStorageArray<int32, 16>, PersistentStorageP
|
||||
}
|
||||
};
|
||||
|
||||
assert_compile(cpp_lengthof(OldPersistentStorage, storage) == cpp_lengthof(PersistentStorage, storage));
|
||||
assert_compile(cpp_lengthof(OldPersistentStorage, storage) <= cpp_lengthof(PersistentStorage, storage));
|
||||
|
||||
#define FOR_ALL_STORAGES_FROM(var, start) FOR_ALL_ITEMS_FROM(PersistentStorage, storage_index, var, start)
|
||||
#define FOR_ALL_STORAGES(var) FOR_ALL_STORAGES_FROM(var, 0)
|
||||
|
@@ -101,7 +101,7 @@ static void Load_INDY()
|
||||
/* Store the old persistent storage. The GRFID will be added later. */
|
||||
assert(PersistentStorage::CanAllocateItem());
|
||||
i->psa = new PersistentStorage(0, 0, 0);
|
||||
memcpy(i->psa->storage, _old_ind_persistent_storage.storage, sizeof(i->psa->storage));
|
||||
memcpy(i->psa->storage, _old_ind_persistent_storage.storage, sizeof(_old_ind_persistent_storage.storage));
|
||||
}
|
||||
Industry::IncIndustryTypeCount(i->type);
|
||||
}
|
||||
|
@@ -277,8 +277,9 @@
|
||||
* 198
|
||||
* 199
|
||||
* 200 #6805 Extend railtypes to 64, adding uint16 to map array.
|
||||
* 201 #6885 Extend NewGRF persistant storages.
|
||||
*/
|
||||
extern const uint16 SAVEGAME_VERSION = 200; ///< Current savegame version of OpenTTD.
|
||||
extern const uint16 SAVEGAME_VERSION = 201; ///< Current savegame version of OpenTTD.
|
||||
const uint16 SAVEGAME_VERSION_EXT = 0x8000; ///< Savegame extension indicator mask
|
||||
|
||||
SavegameType _savegame_type; ///< type of savegame we are loading
|
||||
|
@@ -575,7 +575,7 @@ static void Load_STNN()
|
||||
/* Store the old persistent storage. The GRFID will be added later. */
|
||||
assert(PersistentStorage::CanAllocateItem());
|
||||
st->airport.psa = new PersistentStorage(0, 0, 0);
|
||||
memcpy(st->airport.psa->storage, _old_st_persistent_storage.storage, sizeof(st->airport.psa->storage));
|
||||
memcpy(st->airport.psa->storage, _old_st_persistent_storage.storage, sizeof(_old_st_persistent_storage.storage));
|
||||
}
|
||||
|
||||
for (CargoID i = 0; i < num_cargo; i++) {
|
||||
|
@@ -18,7 +18,8 @@
|
||||
/** Description of the data to save and load in #PersistentStorage. */
|
||||
static const SaveLoad _storage_desc[] = {
|
||||
SLE_CONDVAR(PersistentStorage, grfid, SLE_UINT32, 6, SL_MAX_VERSION),
|
||||
SLE_CONDARR(PersistentStorage, storage, SLE_UINT32, 16, 161, SL_MAX_VERSION),
|
||||
SLE_CONDARR(PersistentStorage, storage, SLE_UINT32, 16, 161, 200),
|
||||
SLE_CONDARR(PersistentStorage, storage, SLE_UINT32, 256, 201, SL_MAX_VERSION),
|
||||
SLE_END()
|
||||
};
|
||||
|
||||
|
@@ -1979,15 +1979,21 @@ CommandCost CmdFoundTown(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32
|
||||
if (_game_mode != GM_EDITOR) {
|
||||
/* 't' can't be NULL since 'random' is false outside scenedit */
|
||||
assert(!random);
|
||||
char company_name[MAX_LENGTH_COMPANY_NAME_CHARS * MAX_CHAR_LENGTH];
|
||||
SetDParam(0, _current_company);
|
||||
GetString(company_name, STR_COMPANY_NAME, lastof(company_name));
|
||||
|
||||
char *cn = stredup(company_name);
|
||||
SetDParamStr(0, cn);
|
||||
SetDParam(1, t->index);
|
||||
if (_current_company == OWNER_DEITY) {
|
||||
SetDParam(0, t->index);
|
||||
AddTileNewsItem(STR_NEWS_NEW_TOWN_UNSPONSORED, NT_INDUSTRY_OPEN, tile);
|
||||
} else {
|
||||
char company_name[MAX_LENGTH_COMPANY_NAME_CHARS * MAX_CHAR_LENGTH];
|
||||
SetDParam(0, _current_company);
|
||||
GetString(company_name, STR_COMPANY_NAME, lastof(company_name));
|
||||
|
||||
AddTileNewsItem(STR_NEWS_NEW_TOWN, NT_INDUSTRY_OPEN, tile, cn);
|
||||
char *cn = stredup(company_name);
|
||||
SetDParamStr(0, cn);
|
||||
SetDParam(1, t->index);
|
||||
|
||||
AddTileNewsItem(STR_NEWS_NEW_TOWN, NT_INDUSTRY_OPEN, tile, cn);
|
||||
}
|
||||
AI::BroadcastNewEvent(new ScriptEventTownFounded(t->index));
|
||||
Game::NewEvent(new ScriptEventTownFounded(t->index));
|
||||
}
|
||||
|
Reference in New Issue
Block a user