Merge branch 'master' into jgrpp

# Conflicts:
#	src/lang/korean.txt
#	src/saveload/afterload.cpp

Recalculate docking tile cache due to 57553cd8
pull/140/head
Jonathan G Rennison 4 years ago
commit d210bc4d14

@ -58,7 +58,7 @@ jobs:
- job: macos
displayName: 'MacOS'
pool:
vmImage: 'macOS-10.13'
vmImage: 'macOS-10.14'
variables:
MACOSX_DEPLOYMENT_TARGET: 10.9

@ -141,7 +141,7 @@ jobs:
- job: macos
displayName: 'MacOS'
pool:
vmImage: 'macOS-10.13'
vmImage: 'macOS-10.14'
dependsOn: source
variables:

@ -19,6 +19,7 @@
#include "core/geometry_func.hpp"
#include "company_func.h"
#include "company_base.h"
#include "company_gui.h"
#include "story_base.h"
#include "command_func.h"
#include "string_func.h"
@ -86,7 +87,7 @@ struct GoalListWindow : public Window {
if (y < 0) return;
for (const Goal *s : Goal::Iterate()) {
if (s->company == this->window_number) {
if (s->company == this->window_number && s->company != INVALID_COMPANY) {
y--;
if (y == 0) {
this->HandleClick(s);
@ -106,7 +107,12 @@ struct GoalListWindow : public Window {
TileIndex xy;
switch (s->type) {
case GT_NONE: return;
case GT_COMPANY: return;
case GT_COMPANY:
/* s->dst here is not a tile, but a CompanyID.
* Show the window with the overview of the company instead. */
ShowCompany((CompanyID)s->dst);
return;
case GT_TILE:
if (!IsValidTile(s->dst)) return;

@ -2166,6 +2166,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Forkert
STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Serveren er fuld
STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Du er bandlyst fra denne server
STR_NETWORK_ERROR_KICKED :{WHITE}Du blev smidt ud af spillet
STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Grund: {STRING}
STR_NETWORK_ERROR_CHEATER :{WHITE}Snyderi er ikke tilladt på denne server
STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Du sendte for mange kommandoer til serveren
STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Du tog for lang tid om at indtaste adgangskoden
@ -2225,6 +2226,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} ga
STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Du gav {1:STRING} {2:CURRENCY_LONG}
STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Serveren har lukket ned for dette spil
STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Serveren genstarter...{}Vent venligst...
STR_NETWORK_MESSAGE_KICKED :*** {STRING} blev sparket ud. Grund: ({STRING})
# Content downloading window
STR_CONTENT_TITLE :{WHITE}Download af indhold

@ -1310,6 +1310,7 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL :Afficher la pop
STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Afficher la population des villes dans leur label sur la carte
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Épaisseur des lignes dans les graphiques{NBSP}: {STRING}
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Épaisseur de la ligne dans les graphiques. Une ligne fine est lisible plus précisément, une ligne épaisse est plus facile à voir et les couleurs sont plus facile à distinguer
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Afficher le nom du NewGRF dans la fenêtre d'achat des véhicules{NBSP}: {STRING}
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Ajoute une ligne à la fenêtre d'achat des véhicules, montrant de quel NewGRF provient le véhicule sélectionné.
STR_CONFIG_SETTING_LANDSCAPE :Paysage{NBSP}: {STRING}
@ -2165,6 +2166,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Mot de p
STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Le serveur est complet
STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Vous êtes banni de ce serveur
STR_NETWORK_ERROR_KICKED :{WHITE}Vous avez été exclu de la partie
STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Raison{NBSP}: {STRING}
STR_NETWORK_ERROR_CHEATER :{WHITE}Tricher n'est pas autorisé sur ce serveur
STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Vous envoyiez trop de commandes au serveur
STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Vous avez mis trop de temps pour entrer le mot de passe
@ -2224,6 +2226,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} a
STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Vous avez donné {2:CURRENCY_LONG} à {1:STRING}
STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Le serveur a fermé la session
STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Le serveur redémarre...{}Veuillez patienter...
STR_NETWORK_MESSAGE_KICKED :*** {STRING} a été exclu. Raison{NBSP}: ({STRING})
# Content downloading window
STR_CONTENT_TITLE :{WHITE}Téléchargement de modules

@ -928,6 +928,7 @@ STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLAC
STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE}
STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Új {STRING} elérhető! - {ENGINE}
STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}Ide kattintva megnyílik a járműlista, kijelölve a jármű csoportját
STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} többé nem fogad el {STRING.t}
STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} többé nem fogad el {STRING.t} és {STRING.t}
@ -1372,6 +1373,8 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL :Mutassa a telep
STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Település lakosságszámának kijelzése a címkéjén
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :A vonalak vastagsága a grafikonokon: {STRING}
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Vonalak szélessége a grafikonokon. A vékony vonal precízebben olvasható, míg a vastagabb jobban látható és a színek jobban megkülönböztethetőek
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :NewGRF nevének mutatása a járművásárlási ablakban: {STRING}
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :A járművásárlási ablakban egy külön sorban legyen kiírva a NewGRF neve, amiből a kiválasztott jármű jön.
STR_CONFIG_SETTING_LANDSCAPE :Táj: {STRING}
STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :A tájak alapvető játékbeállításokat határoznak meg különféle árukkal és településnövekedési tényezőkkel. A NewGRF-ek és a játékszkriptek segítségével ez még tovább hangolható.
@ -1609,10 +1612,16 @@ STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :Teljes
STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Színes újságcikkek megjelenése: {STRING}
STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Az év, melytől az újságok színesben jelennek meg. Az adott év előtt azok fekete-fehérek
STR_CONFIG_SETTING_STARTING_YEAR :Játék induló dátuma: {STRING}
STR_CONFIG_SETTING_ENDING_YEAR :Játék végi pontozás ebben az évben: {STRING}
STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :A játék ebben az évben ér véget pontozás szempontjából. Ennek az évnek a végén a vállalat teljesítménypontszáma rögzítésre kerül, és adott esetben megjelenik a rekord táblán, de a játékosok ezután folytathatják a játékot.{}Ha ez a kezdő év elé van állítva, akkor a rekord tábla sosem jelenik meg.
STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM}
STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Soha
STR_CONFIG_SETTING_SMOOTH_ECONOMY :Egyenletes gazdaság (több, kisebb változás): {STRING}
STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Bekapcsolva a gazdasági épületek termelése gyakrabban és kisebb lépésekben változik. Ennek a beállításnak általában nincs hatása, ha a gazdasági épületeket NewGRF nyújta
STR_CONFIG_SETTING_ALLOW_SHARES :Más vállalatokból lehet részvényt vásárolni: {STRING}
STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Bekapcsolva engedélyezi más vállalatok részvényeinek megvásárlását. A részvények csak akkor elérhetőek, ha a vállalat elért egy bizonyos kort
STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Vállalatok minimális életkora részvénykibocsátáshoz: {STRING}
STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES_HELPTEXT :Egy vállalatnak legalább ennyi évesnek kell lennie ahhoz, hogy más vállalatok kereskedhessenek a részvényeivel.
STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Ráhordó rendszereknek kifizetett profitszázalék: {STRING}
STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :A bevételek százaléka, mely a közbenső szállítóknak, ráhordó járatoknak kerül kifizetésre, nagyobb ellenőrzést adva a bevétel felett
STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Húzáskor helyezzen jelzőket minden {STRING}
@ -2220,6 +2229,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Rossz je
STR_NETWORK_ERROR_SERVER_FULL :{WHITE}A szerver tele van
STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Ki vagy tiltva erről a szerverről
STR_NETWORK_ERROR_KICKED :{WHITE}Ki lettél rúgva a szerverről
STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Oka: {STRING}
STR_NETWORK_ERROR_CHEATER :{WHITE}Ez a szerver nem engedi a csalást
STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Túl sok parancsot küldtél a szervernek
STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Túl sokáig tartott a jelszó beírása
@ -2279,6 +2289,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} a
STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {1:STRING} vállalatnak sikeresen átutaltál {2:CURRENCY_LONG}-t
STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}A szerver leállította a játékot
STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}A szerver újraindul...{}Türelem...
STR_NETWORK_MESSAGE_KICKED :*** {STRING} ki lett rúgva. Oka: ({STRING})
# Content downloading window
STR_CONTENT_TITLE :{WHITE}Tartalom letöltés
@ -3448,9 +3459,17 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENC
# Industry directory
STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}Gazdasági épületek
STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- Nincs -
STR_INDUSTRY_DIRECTORY_ITEM_INFO :{BLACK}{CARGO_LONG}{STRING}{YELLOW} ({COMMA}% elszállítva){BLACK}
STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY}
STR_INDUSTRY_DIRECTORY_ITEM_PROD1 :{ORANGE}{INDUSTRY} {STRING}
STR_INDUSTRY_DIRECTORY_ITEM_PROD2 :{ORANGE}{INDUSTRY} {STRING}, {STRING}
STR_INDUSTRY_DIRECTORY_ITEM_PROD3 :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING}
STR_INDUSTRY_DIRECTORY_ITEM_PRODMORE :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING} és {NUM} további...
STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Gazdasági épületek neve - a névre kattintva a fő nézetet a választott objektumra irányíthatod. Ctrl+kattintással új látképet nyit a gazdasági épület pozíciójára
STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER :{BLACK}Elfogad: {SILVER}{STRING}
STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER :{BLACK}Termel: {SILVER}{STRING}
STR_INDUSTRY_DIRECTORY_FILTER_ALL_TYPES :Minden rakománytípus
STR_INDUSTRY_DIRECTORY_FILTER_NONE :Semmi
# Industry view
STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY}
@ -4225,6 +4244,13 @@ STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}A kijel
STR_AI_LIST_CANCEL :{BLACK}Mégsem
STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ne változtassa a szkriptet
STR_SCREENSHOT_CAPTION :{WHITE}Képmentés
STR_SCREENSHOT_SCREENSHOT :{BLACK}Normál képernyőkép
STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}Maximális nagyítású képernyőkép
STR_SCREENSHOT_DEFAULTZOOM_SCREENSHOT :{BLACK}Alapértelmezett nagyítású képernyőkép
STR_SCREENSHOT_WORLD_SCREENSHOT :{BLACK}Teljes térképes képernyőkép
STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Magasságtérkép mentése
STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minitérkép mentése
# AI Parameters
STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Paraméterek

@ -1676,7 +1676,7 @@ STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY :내 회사에
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT :내 회사가 수송하는 산업시설의 생산량이 변하면 소식으로 알려줍니다.
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER :경쟁사에 의한 산업시설의 생산량 변동: {STRING}
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT :경쟁사가 수송하고 있는 산업시설의 생산량이 변하면 메시지로 알려줍니다.
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :다른 산업 생산물 변화: {STRING}
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :기타 산업시설의 생산량 변동: {STRING}
STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :아무도 수송하지 않는 산업시설의 생산량이 변하면 소식으로 알려줍니다.
STR_CONFIG_SETTING_NEWS_ADVICE :내 회사의 차량에 관한 권고 / 정보: {STRING}
STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :주의를 기울여야하는 차량에 대한 메시지를 표시합니다.
@ -4563,7 +4563,7 @@ STR_VEHICLE_INFO_WEIGHT_RATIOS :{BLACK}힘 /
STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR :{BLACK}올해 이익: {LTBLUE}{CURRENCY_LONG} (작년: {CURRENCY_LONG})
STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR_LIFETIME :{STRING} (평생: {CURRENCY_LONG})
STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}신뢰도: {LTBLUE}{COMMA}% {BLACK}최근 점검 이후 고장: {LTBLUE}{COMMA}
STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}신뢰도: {LTBLUE}{COMMA}% {BLACK}최근 점검 이후 고장 횟수: {LTBLUE}{COMMA}
STR_VEHICLE_INFO_GROUP :{BLACK}그룹: {LTBLUE}{GROUP}
@ -4577,8 +4577,8 @@ STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}환승
STR_VEHICLE_INFO_SPEED_RESTRICTION :{BLACK}속력 제한: {LTBLUE}{VELOCITY}
STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}정비 간격: {LTBLUE}{COMMA}일마다{BLACK} 마지막 정비 날짜: {LTBLUE}{DATE_LONG}
STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}정비 간격: {LTBLUE}{COMMA}%{BLACK} 이하일 때 마지막 정비 날짜: {LTBLUE}{DATE_LONG}
STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}정비 간격: {LTBLUE}{COMMA}일{BLACK}마다 마지막 정비 날짜: {LTBLUE}{DATE_LONG}
STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}정비 기준: {LTBLUE}{COMMA}%{BLACK} 떨어지면 마지막 정비 날짜: {LTBLUE}{DATE_LONG}
STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}점검 기준값을 10만큼 올립니다. CTRL+클릭하면 점검 기준값을 5만큼 올립니다
STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP :{BLACK}점검 기준값을 10만큼 내립니다. CTRL+클릭하면 점검 기준값을 5만큼 내립니다

@ -1244,6 +1244,7 @@ STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLAC
STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE}
STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Dostępn{G y a e} now{G y a e} {STRING} - {ENGINE}!
STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}Otwórz grupę okien skoncentrowanych na grupie pojazdów
STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} nie akceptuje już {STRING.d}
STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} nie akceptuje już {STRING.d} ani {STRING.d}
@ -1688,6 +1689,8 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL :Pokaż populacj
STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Wyświetlaj populację miast w ich etykietach na mapie
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Grubość linii na wykresie: {STRING}
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Grubość linii na wykresach. Cienka linia jest dokładniejsza, grubsza linia jest bardziej widoczna a kolory łatwiejsze do odróżnienia
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Pokaż nazwę tego NewGRF'a w oknie pojazdu budowlanego: {STRING}
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Dodaj linię do okna pojazdów budowlanych, pokazujących z którego NewGRF wybrany pojazd pochodzi.
STR_CONFIG_SETTING_LANDSCAPE :Krajobraz: {STRING}
STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Krajobrazy określają podstawowe scenariusze gry, które różnią się przedsiębiorstwami, towarami i wymogami dla rozwoju miast. Pliki NewGRF i skrypty umożliwiają dokładniejszą kontrolę warunków rozgrywki
@ -1925,6 +1928,10 @@ STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :Pełne
STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Pojawienie się kolorowych wiadomości w: {STRING}
STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Rok, w którym wiadomości w gazetach są drukowane w kolorze. Przed tym rokiem drukowane są monochromatyczne czarno-białe
STR_CONFIG_SETTING_STARTING_YEAR :Data rozpoczęcia gry: {STRING}
STR_CONFIG_SETTING_ENDING_YEAR :Punktacja na koniec roku: {STRING}
STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Rok, w którym gra się kończy na cel punktacji. Na koniec tego roku, punkty firmy są zarejestrowane i ekran wyników najwyższych jest pokazywany, ale gracze mogą po tym dalej grać.{}Jeżeli jest to przed rokiem startowym, ekran wyników najwyższych nie jest nigdy pokazywany.
STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM}
STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Nigdy
STR_CONFIG_SETTING_SMOOTH_ECONOMY :Pozwól na łagodną ekonomię (więcej małych zmian): {STRING}
STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Kiedy włączone, produkcja zakładów zmienia się częściej, ale mniejszymi krokami. To ustawienie zazwyczaj nie daje żadnego efektu, jeśli typy zakładów są pobierane z NewGRFów
STR_CONFIG_SETTING_ALLOW_SHARES :Pozwól kupować udziały w innych firmach: {STRING}
@ -2193,18 +2200,18 @@ STR_OSNAME_SUNOS :SunOS
# Abandon game
STR_ABANDON_GAME_CAPTION :{WHITE}Wyjście
STR_ABANDON_GAME_QUERY :{YELLOW}Czy jesteś pewien że chcesz skończyć grę?
STR_ABANDON_SCENARIO_QUERY :{YELLOW}Czy jesteś pewien że chcesz opuścić ten scenariusz?
STR_ABANDON_GAME_QUERY :{YELLOW}Czy jesteś pewien, że chcesz skończyć grę?
STR_ABANDON_SCENARIO_QUERY :{YELLOW}Czy jesteś pewny, że chcesz opuścić ten scenariusz?
# Cheat window
STR_CHEATS :{WHITE}Oszukiwanie
STR_CHEATS_TOOLTIP :{BLACK}Pole wyboru wskazuje czy użyłeś już wcześniej tego oszustwa
STR_CHEATS_WARNING :{BLACK}Ostrzeżenie! Właśnie chcesz zdradzić swoich współzawodników. Miej na uwadze, że taka hańba będzie pamiętana na wieki
STR_CHEATS :{WHITE}Oszustwa
STR_CHEATS_TOOLTIP :{BLACK}Pole wyboru wskazuje, czy użyłeś już wcześniej tego oszustwa
STR_CHEATS_WARNING :{BLACK}Ostrzeżenie! Właśnie chcesz zdradzić swoich współzawodników. Miej na uwadze, że taka hańba będzie pamiętana na wieczność
STR_CHEAT_MONEY :{LTBLUE}Zwiększ ilość pieniędzy o {CURRENCY_LONG}
STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Grasz jako firma: {ORANGE}{COMMA}
STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magiczny buldożer (usuwanie przedsiębiorstw, obiektów nieprzesuwalnych): {ORANGE}{STRING}
STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunele mogą się przecinać: {ORANGE}{STRING}
STR_CHEAT_NO_JETCRASH :{LTBLUE}Odrzutowce nie będą rozbijać się (często) na małych lotniskach: {ORANGE} {STRING}
STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magiczny buldożer (usuwanie przedsiębiorstw, nieprzesuwalnych obiektów): {ORANGE}{STRING}
STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tunele mogą się krzyżować ze sobą: {ORANGE}{STRING}
STR_CHEAT_NO_JETCRASH :{LTBLUE}Odrzutowce nie będą (tak często) się rozbijać na małych lotniskach: {ORANGE} {STRING}
STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Edytuj maksymalną wysokość mapy: {ORANGE}{NUM}
STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Edytuj maksymalną wysokość gór na mapie
STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Klimat umiarkowany
@ -2212,8 +2219,8 @@ STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Klimat arktyczn
STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Klimat tropikalny
STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :Krajobraz zabawkowy
STR_CHEAT_CHANGE_DATE :{LTBLUE}Zmień datę: {ORANGE}{DATE_SHORT}
STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Zmiana obecnego roku
STR_CHEAT_SETUP_PROD :{LTBLUE}Pozwól modyfikować wielkość produkcji przedsiębiorstw: {ORANGE}{STRING}
STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Zmień obecny rok
STR_CHEAT_SETUP_PROD :{LTBLUE}Włącz modyfikowanie wielkości produkcji przedsiębiorstw: {ORANGE}{STRING}
# Livery window
STR_LIVERY_CAPTION :{WHITE}{COMPANY} - Schemat kolorów
@ -2538,6 +2545,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Złe has
STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Serwer jest pełny
STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Masz zabroniony dostęp do tego serwera
STR_NETWORK_ERROR_KICKED :{WHITE}Zostałeś wyrzucony z serwera
STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Powód: {STRING}
STR_NETWORK_ERROR_CHEATER :{WHITE}Ułatwienia są niedozwolone na tym serwerze
STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Wysyłano zbyt dużo komend na serwer
STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Zbyt długo wprowadzałeś hasło
@ -2597,6 +2605,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} da
STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Dałeś {1:STRING} {2:CURRENCY_LONG}
STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Serwer zamknął sesję
STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Restart serwera...{}Proszę czekać...
STR_NETWORK_MESSAGE_KICKED :*** {STRING} został wyrzucony. Powód: ({STRING})
# Content downloading window
STR_CONTENT_TITLE :{WHITE}Przeglądarka dodatkowej zawartości
@ -3421,7 +3430,7 @@ STR_NEWGRF_BROKEN :{WHITE}Zachowan
STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Zmieniony stan wagonu silnikowego '{1:ENGINE}', gdy był poza halą warsztatów
STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Zmiana długości pojazdu '{1:ENGINE}' , który nie jest zatrzymany w hali
STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Zmieniono ładowność pojazdu na '{1:ENGINE}', kiedy nie był w hali warsztatów lub w trakcie przebudowy
STR_BROKEN_VEHICLE_LENGTH :{WHITE}Pociąg '{VEHICLE}' należący do '{COMPANY}' ma niepoprawną długość. Prawdopodobnie spowodowane jest to problemami z NewGRFami. Gra może stracić synchronizację lub się zawiesić
STR_BROKEN_VEHICLE_LENGTH :{WHITE}Pociąg '{VEHICLE}' należący do '{COMPANY}' ma niepoprawną długość. Prawdopodobnie spowodowane jest to problemami z NewGRF'ami. Gra może się odsychronizować lub się zawiesić
STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' dostarcza niepoprawnych danych
STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Informacje o ładunku/naprawie dla '{1:ENGINE}' różnią się od listy zakupu po zbudowaniu. Może to spowodować, że autoodnowienie/-zamiana nie wykona remontu poprawnie
@ -3636,14 +3645,14 @@ STR_STATION_VIEW_GROUP_D_S_V :Cel-Źródło-P
STR_STATION_VIEW_GROUP_D_V_S :Cel-Przez-Źródło
############ range for rating starts
STR_CARGO_RATING_APPALLING :Zatrważające
STR_CARGO_RATING_VERY_POOR :Liche
STR_CARGO_RATING_POOR :Marne
STR_CARGO_RATING_APPALLING :Okropne
STR_CARGO_RATING_VERY_POOR :Bardzo słabe
STR_CARGO_RATING_POOR :Słabe
STR_CARGO_RATING_MEDIOCRE :Przeciętne
STR_CARGO_RATING_GOOD :Dobre
STR_CARGO_RATING_VERY_GOOD :Bardzo dobre
STR_CARGO_RATING_EXCELLENT :Wyśmienite
STR_CARGO_RATING_OUTSTANDING :Niezrównane
STR_CARGO_RATING_EXCELLENT :Wspaniałe
STR_CARGO_RATING_OUTSTANDING :Niezwykłe
############ range for rating ends
STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Centruj główny widok na pozycji stacji. Ctrl+klik otwiera nowy podgląd na lokację stacji
@ -3748,7 +3757,7 @@ STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Nazwa firmy
STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nazwisko prezesa
STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Wprowadź ilość pieniędzy, które chcesz przekazać
STR_BUY_COMPANY_MESSAGE :{WHITE}Szukamy firmy transportowej, która przejęłaby naszą firmę{}{}Chcesz kupić {COMPANY} za {CURRENCY_LONG}?
STR_BUY_COMPANY_MESSAGE :{WHITE}Szukamy firmy transportowej, która przejęłaby naszą firmę.{}{}Chcesz zakupić {COMPANY} za {CURRENCY_LONG}?
# Company infrastructure window
STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Infrastruktura firmy {COMPANY}
@ -3773,6 +3782,10 @@ STR_INDUSTRY_DIRECTORY_ITEM_PROD2 :{ORANGE}{INDUST
STR_INDUSTRY_DIRECTORY_ITEM_PROD3 :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING}
STR_INDUSTRY_DIRECTORY_ITEM_PRODMORE :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING} i {NUM} więcej...
STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Nazwy zakładów - kliknij na nazwie zakładu by wyśrodkować na nim widok. Ctrl+klik otwiera nowy podgląd na lokacji zakładu
STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER :{BLACK}Akceptowane cargo: {SILVER}{STRING}
STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER :{BLACK}Wyprodukowane cargo: {SILVER}{STRING}
STR_INDUSTRY_DIRECTORY_FILTER_ALL_TYPES :Wszystkie typy cargo
STR_INDUSTRY_DIRECTORY_FILTER_NONE :Żadne
# Industry view
STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY}
@ -3902,9 +3915,9 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. si
STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Zasięg: {GOLD}{COMMA} pól
STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Typ samolotu: {GOLD}{STRING}
STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista wyboru pociągów - kliknij na pojeździe, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu pojazdu
STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista wyboru pojazdów drogowych - kliknij na pojeździe, aby uzyskać więcej informacji. Ctrl+klik przełącza ukrywanie typu pojazdu
STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista wyboru statków - kliknij na statku, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu statku
STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista wyboru pociągów - kliknij na pojazd, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu pojazdu
STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista wyboru pojazdów drogowych - kliknij na pojazd, aby uzyskać więcej informacji. Ctrl+klik przełącza ukrywanie typu pojazdu
STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista wyboru statków - kliknij na statek, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu statku
STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista wyboru samolotów - kliknij na samolocie, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu samolotu
STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Kup tabor kolejowy
@ -4516,7 +4529,7 @@ STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Okno de
# AI configuration window
STR_AI_CONFIG_CAPTION :{WHITE}Konfiguracja SI / Game Script
STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Game Script, który zostanie załadowany dla następnej gry
STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Game Script, który zostanie załadowany podczas kolejnej gry
STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}SI, które zostaną załadowane podczas kolejnej gry
STR_AI_CONFIG_HUMAN_PLAYER :Ludzki gracz
STR_AI_CONFIG_RANDOM_AI :Losowe SI
@ -4553,6 +4566,13 @@ STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Wybierz
STR_AI_LIST_CANCEL :{BLACK}Anuluj
STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Nie zmieniaj skryptu
STR_SCREENSHOT_CAPTION :{WHITE}Zrób zrzut ekranu
STR_SCREENSHOT_SCREENSHOT :{BLACK} Normalny zrzut ekranu
STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}Maksymalnie przybliżono na zrzucie ekranu
STR_SCREENSHOT_DEFAULTZOOM_SCREENSHOT :{BLACK}Zrzut ekranu z domyślnym przybliżeniem
STR_SCREENSHOT_WORLD_SCREENSHOT :{BLACK}Zrzut ekranu całej mapy
STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Zrzut ekranu mapy wysokościowej
STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK} Zrzut ekranu minimapy
# AI Parameters
STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametry
@ -4561,7 +4581,7 @@ STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Game Script
STR_AI_SETTINGS_CLOSE :{BLACK}Zamknij
STR_AI_SETTINGS_RESET :{BLACK}Resetuj
STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING}
STR_AI_SETTINGS_START_DELAY :Liczba dni, które odczekuje SI przed aktywacją po uruchomieniu poprzedniego (zwiększ lub zmniejsz): {ORANGE}{STRING}
STR_AI_SETTINGS_START_DELAY :Liczba dni, aby aktywować tą SI po uruchomieniu poprzedniej (zwiększ lub zmniejsz): {ORANGE}{STRING}
# Textfile window

@ -717,26 +717,38 @@ struct BuildRoadToolbarWindow : Window {
* @param last_build Last build road type
* @return ES_HANDLED if hotkey was accepted.
*/
static EventState RoadTramToolbarGlobalHotkeys(int hotkey, RoadType last_build)
static EventState RoadTramToolbarGlobalHotkeys(int hotkey, RoadType last_build, RoadTramType rtt)
{
Window *w = (_game_mode == GM_NORMAL) ? ShowBuildRoadToolbar(last_build) : ShowBuildRoadScenToolbar(last_build);
Window* w = nullptr;
switch (_game_mode) {
case GM_NORMAL:
if (!CanBuildVehicleInfrastructure(VEH_ROAD, rtt)) return ES_NOT_HANDLED;
w = ShowBuildRoadToolbar(last_build);
break;
case GM_EDITOR:
if ((GetRoadTypes(true) & ((rtt == RTT_ROAD) ? ~_roadtypes_type : _roadtypes_type)) == ROADTYPES_NONE) return ES_NOT_HANDLED;
w = ShowBuildRoadScenToolbar(last_build);
break;
default:
break;
}
if (w == nullptr) return ES_NOT_HANDLED;
return w->OnHotkey(hotkey);
}
static EventState RoadToolbarGlobalHotkeys(int hotkey)
{
if (_game_mode == GM_NORMAL && !CanBuildVehicleInfrastructure(VEH_ROAD, RTT_ROAD)) return ES_NOT_HANDLED;
extern RoadType _last_built_roadtype;
return RoadTramToolbarGlobalHotkeys(hotkey, _last_built_roadtype);
return RoadTramToolbarGlobalHotkeys(hotkey, _last_built_roadtype, RTT_ROAD);
}
static EventState TramToolbarGlobalHotkeys(int hotkey)
{
if (_game_mode != GM_NORMAL || !CanBuildVehicleInfrastructure(VEH_ROAD, RTT_TRAM)) return ES_NOT_HANDLED;
extern RoadType _last_built_tramtype;
return RoadTramToolbarGlobalHotkeys(hotkey, _last_built_tramtype);
return RoadTramToolbarGlobalHotkeys(hotkey, _last_built_tramtype, RTT_TRAM);
}
static Hotkey roadtoolbar_hotkeys[] = {

@ -3664,12 +3664,8 @@ bool AfterLoadGame()
}
}
if (IsSavegameVersionBefore(SLV_MULTITILE_DOCKS) || !SlXvIsFeaturePresent(XSLFI_MULTIPLE_DOCKS, 2)) {
/* Scan for docking tiles */
for (Station *st : Station::Iterate()) {
if (st->ship_station.tile != INVALID_TILE) UpdateStationDockingTiles(st);
}
}
/* Update station docking tiles. */
AfterLoadScanDockingTiles();
/* Compute station catchment areas. This is needed here in case UpdateStationAcceptance is called below. */
Station::RecomputeCatchmentForAll();

@ -113,6 +113,7 @@ const SlxiSubChunkInfo _sl_xv_sub_chunk_infos[] = {
{ XSLFI_FLOW_STAT_FLAGS, XSCF_NULL, 1, 1, "flow_stat_flags", nullptr, nullptr, nullptr },
{ XSLFI_SPEED_RESTRICTION, XSCF_NULL, 1, 1, "speed_restriction", nullptr, nullptr, "VESR" },
{ XSLFI_STATION_GOODS_EXTRA, XSCF_NULL, 1, 1, "station_goods_extra", nullptr, nullptr, nullptr },
{ XSLFI_DOCKING_CACHE_VER, XSCF_IGNORABLE_ALL, 1, 1, "docking_cache_ver", nullptr, nullptr, nullptr },
{ XSLFI_NULL, XSCF_NULL, 0, 0, nullptr, nullptr, nullptr, nullptr },// This is the end marker
};

@ -78,6 +78,7 @@ enum SlXvFeatureIndex {
XSLFI_FLOW_STAT_FLAGS, ///< FlowStat flags
XSLFI_SPEED_RESTRICTION, ///< Train speed restrictions
XSLFI_STATION_GOODS_EXTRA, ///< Extra station goods entry statuses
XSLFI_DOCKING_CACHE_VER, ///< Multiple docks - docking tile cache version
XSLFI_RIFF_HEADER_60_BIT, ///< Size field in RIFF chunk header is 60 bit
XSLFI_HEIGHT_8_BIT, ///< Map tile height is 8 bit instead of 4 bit, but savegame version may be before this became true in trunk

@ -30,6 +30,7 @@ void FixupTrainLengths();
void AfterLoadTemplateVehicles();
void AfterLoadStations();
void AfterLoadRoadStops();
void AfterLoadScanDockingTiles();
void ResetLabelMaps();
void AfterLoadLabelMaps();
void AfterLoadStoryBook();

@ -144,6 +144,19 @@ void AfterLoadRoadStops()
}
}
/**
* (Re)scan for station docking tiles after loading a savegame.
*/
void AfterLoadScanDockingTiles()
{
if (IsSavegameVersionBefore(SLV_MULTITILE_DOCKS) || !SlXvIsFeaturePresent(XSLFI_MULTIPLE_DOCKS, 2) || !SlXvIsFeaturePresent(XSLFI_DOCKING_CACHE_VER, 1)) {
/* Scan for docking tiles */
for (Station *st : Station::Iterate()) {
if (st->ship_station.tile != INVALID_TILE) UpdateStationDockingTiles(st);
}
}
}
static const SaveLoad _roadstop_desc[] = {
SLE_VAR(RoadStop, xy, SLE_UINT32),
SLE_CONDNULL(1, SL_MIN_VERSION, SLV_45),

@ -203,7 +203,7 @@ public:
/** Miscellaneous flags for Script settings. */
enum ScriptConfigFlags {
CONFIG_NONE, ///< Normal setting.
CONFIG_RANDOM, ///< When randomizing the Script, pick any value between min_value and max_value.
CONFIG_RANDOM, ///< When randomizing the Script, pick any value between min_value and max_value (inclusive).
CONFIG_BOOLEAN, ///< This value is a boolean (either 0 (false) or 1 (true) ).
CONFIG_INGAME, ///< This setting can be changed while the Script is running.
CONFIG_DEVELOPER, ///< This setting will only be visible when the Script development tools are active.
@ -230,8 +230,8 @@ public:
* - custom_value The default value if the custom difficulty level
* is selected. Required.
* - random_deviation If this property has a nonzero value, then the
* actual value of the setting in game will be
* user_configured_value + random(-random_deviation, random_deviation).
* actual value of the setting in game will be randomized in the range
* [user_configured_value - random_deviation, user_configured_value + random_deviation] (inclusive).
* Not allowed if the CONFIG_RANDOM flag is set, otherwise optional.
* - step_size The increase/decrease of the value every time the user
* clicks one of the up/down arrow buttons. Optional, default is 1.

@ -261,7 +261,7 @@ static int ScriptOrderPositionToRealOrderPosition(VehicleID vehicle_id, ScriptOr
}
} else if (st->ship_station.tile != INVALID_TILE) {
TILE_AREA_LOOP(t, st->ship_station) {
if (IsDockTile(t) && GetStationIndex(t) == st->index) return t;
if (IsTileType(t, MP_STATION) && (IsDock(t) || IsOilRig(t)) && GetStationIndex(t) == st->index) return t;
}
} else if (st->bus_stops != nullptr) {
return st->bus_stops->xy;

@ -401,7 +401,7 @@ static bool NormaliseTileOffset(int32 *tile)
if (::DistanceManhattan(tile, start) != 1 || ::DistanceManhattan(tile, end) != 1) return -1;
/* ROAD_NW ROAD_SW ROAD_SE ROAD_NE */
static const TileIndexDiff neighbours[] = {::TileDiffXY(0, -1), ::TileDiffXY(1, 0), ::TileDiffXY(0, 1), ::TileDiffXY(-1, 0)};
const TileIndexDiff neighbours[] = {::TileDiffXY(0, -1), ::TileDiffXY(1, 0), ::TileDiffXY(0, 1), ::TileDiffXY(-1, 0)};
Array *existing = (Array*)alloca(sizeof(Array) + lengthof(neighbours) * sizeof(int32));
existing->size = 0;

@ -79,6 +79,9 @@ ScriptTileList_IndustryAccepting::ScriptTileList_IndustryAccepting(IndustryID in
const Industry *i = ::Industry::Get(industry_id);
/* Check if this industry is only served by its neutral station */
if (i->neutral_station != nullptr && !_settings_game.station.serve_neutral_industries) return;
/* Check if this industry accepts anything */
{
bool cargo_accepts = false;
@ -116,6 +119,9 @@ ScriptTileList_IndustryProducing::ScriptTileList_IndustryProducing(IndustryID in
const Industry *i = ::Industry::Get(industry_id);
/* Check if this industry is only served by its neutral station */
if (i->neutral_station != nullptr && !_settings_game.station.serve_neutral_industries) return;
/* Check if this industry produces anything */
bool cargo_produces = false;
for (byte j = 0; j < lengthof(i->produced_cargo); j++) {

@ -131,7 +131,7 @@ void ScriptConfig::AddRandomDeviation()
{
for (ScriptConfigItemList::const_iterator it = this->GetConfigList()->begin(); it != this->GetConfigList()->end(); it++) {
if ((*it).random_deviation != 0) {
this->SetSetting((*it).name, InteractiveRandomRange((*it).random_deviation * 2) - (*it).random_deviation + this->GetSetting((*it).name));
this->SetSetting((*it).name, InteractiveRandomRange((*it).random_deviation * 2 + 1) - (*it).random_deviation + this->GetSetting((*it).name));
}
}
}

@ -780,6 +780,7 @@ bool IsShipDestinationTile(TileIndex tile, StationID station)
const Industry *i = Industry::GetByTile(t);
if (i->neutral_station != nullptr && i->neutral_station->index == station) return true;
}
if (IsTileType(t, MP_STATION) && IsOilRig(t) && GetStationIndex(t) == station) return true;
}
return false;
}

@ -84,6 +84,7 @@ public:
int buffer_depth; ///< Colour depth of used frame buffer
void *pixel_buffer; ///< used for direct pixel access
void *window_buffer; ///< Colour translation from palette to screen
CGColorSpaceRef color_space; //< Window color space
id window; ///< Pointer to window object
# define MAX_DIRTY_RECTS 100

@ -346,6 +346,9 @@ bool WindowQuartzSubdriver::SetVideoMode(int width, int height, int bpp)
[ this->window makeKeyAndOrderFront:nil ];
}
[this->window setColorSpace:[NSColorSpace sRGBColorSpace]];
this->color_space = CGColorSpaceCreateWithName(kCGColorSpaceSRGB);
bool ret = WindowResized();
this->UpdatePalette(0, 256);
@ -395,6 +398,7 @@ WindowQuartzSubdriver::~WindowQuartzSubdriver()
CGContextRelease(this->cgcontext);
CGColorSpaceRelease(this->color_space);
free(this->window_buffer);
free(this->pixel_buffer);
}
@ -565,21 +569,6 @@ bool WindowQuartzSubdriver::WindowResized()
this->window_width = (int)newframe.size.width;
this->window_height = (int)newframe.size.height;
/* Get screen colour space. */
CGColorSpaceRef color_space = NULL;
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6)
if ([ this->window respondsToSelector:@selector(colorSpace) ]) {
color_space = [ [ this->window colorSpace ] CGColorSpace ];
CGColorSpaceRetain(color_space);
}
#endif
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
if (color_space == NULL && MacOSVersionIsAtLeast(10, 5, 0)) color_space = CGColorSpaceCreateWithName(kCGColorSpaceSRGB);
#endif
if (color_space == NULL) color_space = CGColorSpaceCreateDeviceRGB();
if (color_space == NULL) error("Could not get system colour space. You might need to recalibrate your monitor.");
/* Create Core Graphics Context */
free(this->window_buffer);
this->window_buffer = (uint32*)malloc(this->window_width * this->window_height * 4);
@ -591,10 +580,9 @@ bool WindowQuartzSubdriver::WindowResized()
this->window_height, // height
8, // bits per component
this->window_width * 4, // bytes per row
color_space, // color space
this->color_space, // color space
kCGImageAlphaNoneSkipFirst | kCGBitmapByteOrder32Host
);
CGColorSpaceRelease(color_space);
assert(this->cgcontext != nullptr);
CGContextSetShouldAntialias(this->cgcontext, FALSE);

@ -199,6 +199,10 @@ void CheckForDockingTile(TileIndex t)
SetDockingTile(t, true);
}
}
if (IsTileType(tile, MP_STATION) && IsOilRig(tile)) {
Station::GetByTile(tile)->docking_station.Add(t);
SetDockingTile(t, true);
}
}
}

Loading…
Cancel
Save