[unknown-horizons] 02/16: Merge tag 'upstream/2017.1'

Markus Koschany apo at moszumanska.debian.org
Sat Jan 21 02:59:10 UTC 2017


This is an automated email from the git hooks/post-receive script.

apo pushed a commit to branch master
in repository unknown-horizons.

commit 122466b709971ad66ab4a09316863692a218651e
Merge: c03bcb8 988c658
Author: Markus Koschany <apo at debian.org>
Date:   Fri Jan 20 01:24:55 2017 +0100

    Merge tag 'upstream/2017.1'
    
    Upstream version 2017.1
    
    # gpg: Signatur vom Fr 20 Jan 2017 01:24:51 CET
    # gpg:                mittels RSA-Schlüssel ACF3D088EF32EDEF6A1A835FD9AD14B9513B51E4
    # gpg: Korrekte Signatur von "Markus Koschany <apo at gambaru.de>" [ultimativ]
    # gpg:                     alias "Markus Koschany <markus at koschany.net>" [ultimativ]
    # gpg:                     alias "Markus Koschany <apo at debian.org>" [ultimativ]

 .coveragerc                                        |    5 +
 .gitattributes                                     |    1 +
 .gitignore                                         |   30 +
 .isort.cfg                                         |    8 +
 .pylintrc                                          |    2 +-
 .travis.yml                                        |   34 +
 README.md                                          |    7 +-
 .../brickyard/as_brickyard0/bricks_01/135/000.png  |  Bin 0 -> 10979 bytes
 .../brickyard/as_brickyard0/bricks_01/225/000.png  |  Bin 0 -> 10935 bytes
 .../brickyard/as_brickyard0/bricks_01/315/000.png  |  Bin 0 -> 11346 bytes
 .../brickyard/as_brickyard0/bricks_01/45/000.png   |  Bin 0 -> 10672 bytes
 .../brickyard/as_brickyard0/bricks_02/135/000.png  |  Bin 0 -> 12269 bytes
 .../brickyard/as_brickyard0/bricks_02/225/000.png  |  Bin 0 -> 12112 bytes
 .../brickyard/as_brickyard0/bricks_02/315/000.png  |  Bin 0 -> 12717 bytes
 .../brickyard/as_brickyard0/bricks_02/45/000.png   |  Bin 0 -> 11969 bytes
 .../brickyard/as_brickyard0/bricks_03/135/000.png  |  Bin 0 -> 13758 bytes
 .../brickyard/as_brickyard0/bricks_03/225/000.png  |  Bin 0 -> 13157 bytes
 .../brickyard/as_brickyard0/bricks_03/315/000.png  |  Bin 0 -> 14305 bytes
 .../brickyard/as_brickyard0/bricks_03/45/000.png   |  Bin 0 -> 13400 bytes
 .../brickyard/as_brickyard0/bricks_04/135/000.png  |  Bin 0 -> 15178 bytes
 .../brickyard/as_brickyard0/bricks_04/225/000.png  |  Bin 0 -> 14407 bytes
 .../brickyard/as_brickyard0/bricks_04/315/000.png  |  Bin 0 -> 15710 bytes
 .../brickyard/as_brickyard0/bricks_04/45/000.png   |  Bin 0 -> 14718 bytes
 .../brickyard/as_brickyard0/idle/135/0.png         |  Bin 26253 -> 0 bytes
 .../brickyard/as_brickyard0/idle/135/000.png       |  Bin 0 -> 29242 bytes
 .../brickyard/as_brickyard0/idle/225/0.png         |  Bin 24692 -> 0 bytes
 .../brickyard/as_brickyard0/idle/225/000.png       |  Bin 0 -> 29439 bytes
 .../brickyard/as_brickyard0/idle/315/0.png         |  Bin 25305 -> 0 bytes
 .../brickyard/as_brickyard0/idle/315/000.png       |  Bin 0 -> 30432 bytes
 .../pioneers/brickyard/as_brickyard0/idle/45/0.png |  Bin 27207 -> 0 bytes
 .../brickyard/as_brickyard0/idle/45/000.png        |  Bin 0 -> 31474 bytes
 .../brickyard/as_brickyard0/idle_full/135/0.png    |  Bin 29024 -> 0 bytes
 .../brickyard/as_brickyard0/idle_full/225/0.png    |  Bin 26512 -> 0 bytes
 .../brickyard/as_brickyard0/idle_full/315/0.png    |  Bin 27383 -> 0 bytes
 .../brickyard/as_brickyard0/idle_full/45/0.png     |  Bin 29766 -> 0 bytes
 .../brickyard/as_brickyard0/work/135/0.png         |  Bin 26253 -> 0 bytes
 .../brickyard/as_brickyard0/work/135/1.png         |  Bin 26995 -> 0 bytes
 .../brickyard/as_brickyard0/work/135/2.png         |  Bin 27824 -> 0 bytes
 .../brickyard/as_brickyard0/work/135/3.png         |  Bin 28624 -> 0 bytes
 .../brickyard/as_brickyard0/work/225/0.png         |  Bin 24692 -> 0 bytes
 .../brickyard/as_brickyard0/work/225/1.png         |  Bin 25160 -> 0 bytes
 .../brickyard/as_brickyard0/work/225/2.png         |  Bin 25703 -> 0 bytes
 .../brickyard/as_brickyard0/work/225/3.png         |  Bin 26276 -> 0 bytes
 .../brickyard/as_brickyard0/work/315/0.png         |  Bin 25305 -> 0 bytes
 .../brickyard/as_brickyard0/work/315/1.png         |  Bin 25873 -> 0 bytes
 .../brickyard/as_brickyard0/work/315/2.png         |  Bin 26428 -> 0 bytes
 .../brickyard/as_brickyard0/work/315/3.png         |  Bin 27024 -> 0 bytes
 .../pioneers/brickyard/as_brickyard0/work/45/0.png |  Bin 27207 -> 0 bytes
 .../pioneers/brickyard/as_brickyard0/work/45/1.png |  Bin 27849 -> 0 bytes
 .../pioneers/brickyard/as_brickyard0/work/45/2.png |  Bin 28687 -> 0 bytes
 .../pioneers/brickyard/as_brickyard0/work/45/3.png |  Bin 29766 -> 0 bytes
 .../pioneers/brickyard/as_brickyard0/work/tm_15000 |    0
 .../gfx/buildings/sailors/wall/as_wall/a/135/0.png |  Bin 0 -> 5389 bytes
 .../gfx/buildings/sailors/wall/as_wall/a/225/0.png |  Bin 0 -> 5251 bytes
 .../gfx/buildings/sailors/wall/as_wall/a/315/0.png |  Bin 0 -> 4961 bytes
 .../gfx/buildings/sailors/wall/as_wall/a/45/0.png  |  Bin 0 -> 5062 bytes
 .../buildings/sailors/wall/as_wall/ab/135/0.png    |  Bin 0 -> 6526 bytes
 .../buildings/sailors/wall/as_wall/ab/225/0.png    |  Bin 0 -> 7035 bytes
 .../buildings/sailors/wall/as_wall/ab/315/0.png    |  Bin 0 -> 6793 bytes
 .../gfx/buildings/sailors/wall/as_wall/ab/45/0.png |  Bin 0 -> 7012 bytes
 .../buildings/sailors/wall/as_wall/abc/135/0.png   |  Bin 0 -> 6410 bytes
 .../buildings/sailors/wall/as_wall/abc/225/0.png   |  Bin 0 -> 6727 bytes
 .../buildings/sailors/wall/as_wall/abc/315/0.png   |  Bin 0 -> 6622 bytes
 .../buildings/sailors/wall/as_wall/abc/45/0.png    |  Bin 0 -> 6803 bytes
 .../buildings/sailors/wall/as_wall/abcd/135/0.png  |  Bin 0 -> 6341 bytes
 .../buildings/sailors/wall/as_wall/abcd/225/0.png  |  Bin 0 -> 6419 bytes
 .../buildings/sailors/wall/as_wall/abcd/315/0.png  |  Bin 0 -> 6418 bytes
 .../buildings/sailors/wall/as_wall/abcd/45/0.png   |  Bin 0 -> 6477 bytes
 .../buildings/sailors/wall/as_wall/abcde/135/0.png |  Bin 0 -> 5983 bytes
 .../buildings/sailors/wall/as_wall/abcde/225/0.png |  Bin 0 -> 6201 bytes
 .../buildings/sailors/wall/as_wall/abcde/315/0.png |  Bin 0 -> 6056 bytes
 .../buildings/sailors/wall/as_wall/abcde/45/0.png  |  Bin 0 -> 6327 bytes
 .../sailors/wall/as_wall/abcdef/135/0.png          |  Bin 0 -> 5766 bytes
 .../sailors/wall/as_wall/abcdef/225/0.png          |  Bin 0 -> 5713 bytes
 .../sailors/wall/as_wall/abcdef/315/0.png          |  Bin 0 -> 5814 bytes
 .../buildings/sailors/wall/as_wall/abcdef/45/0.png |  Bin 0 -> 5884 bytes
 .../sailors/wall/as_wall/abcdefg/135/0.png         |  Bin 0 -> 5272 bytes
 .../sailors/wall/as_wall/abcdefg/225/0.png         |  Bin 0 -> 5485 bytes
 .../sailors/wall/as_wall/abcdefg/315/0.png         |  Bin 0 -> 5123 bytes
 .../sailors/wall/as_wall/abcdefg/45/0.png          |  Bin 0 -> 5557 bytes
 .../sailors/wall/as_wall/abcdefgh/135/0.png        |  Bin 0 -> 4804 bytes
 .../sailors/wall/as_wall/abcdefgh/225/0.png        |  Bin 0 -> 4843 bytes
 .../sailors/wall/as_wall/abcdefgh/315/0.png        |  Bin 0 -> 4843 bytes
 .../sailors/wall/as_wall/abcdefgh/45/0.png         |  Bin 0 -> 4836 bytes
 .../sailors/wall/as_wall/abcdeg/135/0.png          |  Bin 0 -> 5487 bytes
 .../sailors/wall/as_wall/abcdeg/225/0.png          |  Bin 0 -> 5996 bytes
 .../sailors/wall/as_wall/abcdeg/315/0.png          |  Bin 0 -> 5490 bytes
 .../buildings/sailors/wall/as_wall/abcdeg/45/0.png |  Bin 0 -> 5953 bytes
 .../buildings/sailors/wall/as_wall/abce/135/0.png  |  Bin 0 -> 6032 bytes
 .../buildings/sailors/wall/as_wall/abce/225/0.png  |  Bin 0 -> 6526 bytes
 .../buildings/sailors/wall/as_wall/abce/315/0.png  |  Bin 0 -> 6242 bytes
 .../buildings/sailors/wall/as_wall/abce/45/0.png   |  Bin 0 -> 6568 bytes
 .../buildings/sailors/wall/as_wall/abcef/135/0.png |  Bin 0 -> 6064 bytes
 .../buildings/sailors/wall/as_wall/abcef/225/0.png |  Bin 0 -> 6016 bytes
 .../buildings/sailors/wall/as_wall/abcef/315/0.png |  Bin 0 -> 5995 bytes
 .../buildings/sailors/wall/as_wall/abcef/45/0.png  |  Bin 0 -> 6192 bytes
 .../buildings/sailors/wall/as_wall/abcf/135/0.png  |  Bin 0 -> 6489 bytes
 .../buildings/sailors/wall/as_wall/abcf/225/0.png  |  Bin 0 -> 6299 bytes
 .../buildings/sailors/wall/as_wall/abcf/315/0.png  |  Bin 0 -> 6426 bytes
 .../buildings/sailors/wall/as_wall/abcf/45/0.png   |  Bin 0 -> 6478 bytes
 .../buildings/sailors/wall/as_wall/abe/135/0.png   |  Bin 0 -> 6148 bytes
 .../buildings/sailors/wall/as_wall/abe/225/0.png   |  Bin 0 -> 6796 bytes
 .../buildings/sailors/wall/as_wall/abe/315/0.png   |  Bin 0 -> 6446 bytes
 .../buildings/sailors/wall/as_wall/abe/45/0.png    |  Bin 0 -> 6771 bytes
 .../buildings/sailors/wall/as_wall/ac/135/0.png    |  Bin 0 -> 6851 bytes
 .../buildings/sailors/wall/as_wall/ac/225/0.png    |  Bin 0 -> 7282 bytes
 .../buildings/sailors/wall/as_wall/ac/315/0.png    |  Bin 0 -> 6901 bytes
 .../gfx/buildings/sailors/wall/as_wall/ac/45/0.png |  Bin 0 -> 7242 bytes
 .../sailors/wall/as_wall/single/135/0.png          |  Bin 0 -> 6860 bytes
 .../sailors/wall/as_wall/single/225/0.png          |  Bin 0 -> 6896 bytes
 .../sailors/wall/as_wall/single/315/0.png          |  Bin 0 -> 6792 bytes
 .../buildings/sailors/wall/as_wall/single/45/0.png |  Bin 0 -> 6823 bytes
 content/gfx/uh.ico                                 |  Bin 0 -> 82726 bytes
 content/gui/icons/buildmenu/071.png                |  Bin 0 -> 4341 bytes
 content/gui/icons/buildmenu/071_h.png              |  Bin 0 -> 4902 bytes
 content/gui/icons/buildmenu/greyscale/071.png      |  Bin 0 -> 3956 bytes
 .../ingame/tabwidget/overview/overview_barrier.xml |   25 +
 .../xml/ingame/tabwidget/warehouse/buysellmenu.xml |    2 +-
 .../templates/overview_farmproductionline.xml      |    2 +-
 .../ingame/templates/overview_productionline.xml   |    2 +-
 content/gui/xml/ingame/widgets/captains_log.xml    |   13 +-
 content/gui/xml/ingame/widgets/configure_route.xml |    2 +-
 .../gui/xml/ingame/widgets/island_production.xml   |   31 +-
 content/gui/xml/mainmenu/credits.xml               |   26 +-
 content/gui/xml/mainmenu/mainmenu.xml              |    2 +-
 .../gui/xml/mainmenu/singleplayer/sp_random.xml    |   10 +-
 .../gui/xml/mainmenu/templates/game_settings.xml   |    2 +-
 content/logging.conf                               |    4 -
 content/objects/buildings/barrier.yaml             |   24 +
 content/objects/buildings/brickyard.yaml           |   12 +
 content/objects/buildings/pastryshop.yaml          |   17 +-
 .../objects/gui_buildmenu/build_menu_per_tier.yaml |    4 +
 .../objects/gui_buildmenu/build_menu_per_type.yaml |    3 +
 content/packages/unknown-horizons.6                |   10 +-
 content/packages/win_installer_banner.bmp          |  Bin 154544 -> 0 bytes
 content/packages/win_installer_header.bmp          |  Bin 25820 -> 0 bytes
 content/packages/win_installer_splash.bmp          |  Bin 300054 -> 0 bytes
 content/scenarios/The_Unknown_et.yaml              |    4 +-
 content/scenarios/The_Unknown_hr.yaml              |   10 +-
 .../{The_Unknown_et.yaml => The_Unknown_nb.yaml}   |   64 +-
 content/scenarios/tutorial_de.yaml                 |   72 +-
 content/scenarios/tutorial_fr.yaml                 |    6 +-
 content/scenarios/tutorial_it.yaml                 |  160 +-
 content/scenarios/tutorial_nb.yaml                 |  142 +-
 content/scenarios/tutorial_nl.yaml                 |  130 +-
 content/scenarios/tutorial_pt_BR.yaml              |  221 ++-
 content/scenarios/tutorial_ru.yaml                 |  223 ++-
 content/scenarios/tutorial_sk.yaml                 |   18 +-
 development/__init__.py                            |    2 +-
 development/all_images.py                          |    5 +-
 development/combat_ai/__init__.py                  |    2 +-
 development/combat_ai/diplomacy_graphs.py          |    7 +-
 development/compare_string_lengths_in_pos.py       |   23 +-
 development/compile_translation_win.py             |   11 +-
 development/compress_map.py                        |   15 +-
 development/create_pot.sh                          |    9 +-
 development/create_scenario_pot.sh                 |    2 +-
 development/create_windows_installer.sh            |   72 -
 development/docstringer.py                         |    7 +-
 development/extract_strings_from_objects.py        |   11 +-
 development/extract_strings_from_sqlite.py         |    5 +-
 development/extract_strings_from_xml.py            |   17 +-
 development/generate_credits.py                    |    4 +-
 development/networkclient.py                       |   79 +-
 development/nsi.template                           |  160 --
 development/nsiscripter.py                         |   96 --
 development/pre-commit                             |    2 +-
 development/print_db_data.py                       |  115 +-
 development/print_profile_output.py                |    8 +-
 development/run_mypy.sh                            |   30 +
 development/stringpreviewwidget.py                 |    2 +-
 development/time_uh.py                             |    7 +-
 development/translate_scenario.py                  |   11 +-
 development/update_translations.py                 |    9 +-
 doc/AUTHORS.md                                     |    8 +-
 doc/CHANGELOG.md                                   |    8 +-
 doc/LICENSE                                        |    7 +-
 horizons/__init__.py                               |    2 +-
 horizons/ai/__init__.py                            |    2 +-
 horizons/ai/aiplayer/__init__.py                   |   92 +-
 horizons/ai/aiplayer/areabuilder.py                |   13 +-
 horizons/ai/aiplayer/basicbuilder.py               |   10 +-
 horizons/ai/aiplayer/behavior/__init__.py          |    2 +-
 .../ai/aiplayer/behavior/behaviorcomponents.py     |    5 +-
 horizons/ai/aiplayer/behavior/diplomacysettings.py |    2 +-
 horizons/ai/aiplayer/behavior/movecallbacks.py     |    3 +-
 horizons/ai/aiplayer/behavior/profile.py           |   17 +-
 horizons/ai/aiplayer/building/__init__.py          |    6 +-
 horizons/ai/aiplayer/building/boatbuilder.py       |    5 +-
 horizons/ai/aiplayer/building/brickyard.py         |    5 +-
 horizons/ai/aiplayer/building/charcoalburner.py    |    5 +-
 horizons/ai/aiplayer/building/claydeposit.py       |    6 +-
 horizons/ai/aiplayer/building/claypit.py           |    7 +-
 horizons/ai/aiplayer/building/distillery.py        |    5 +-
 horizons/ai/aiplayer/building/doctor.py            |    3 +-
 .../ai/aiplayer/building/fakeresourcedeposit.py    |    7 +-
 horizons/ai/aiplayer/building/farm.py              |   11 +-
 horizons/ai/aiplayer/building/field.py             |    5 +-
 horizons/ai/aiplayer/building/firestation.py       |    3 +-
 horizons/ai/aiplayer/building/fishdeposit.py       |    3 +-
 horizons/ai/aiplayer/building/fisher.py            |    7 +-
 horizons/ai/aiplayer/building/irondeposit.py       |    6 +-
 horizons/ai/aiplayer/building/ironmine.py          |    7 +-
 horizons/ai/aiplayer/building/lumberjack.py        |   10 +-
 horizons/ai/aiplayer/building/saltponds.py         |    3 +-
 horizons/ai/aiplayer/building/signalfire.py        |    5 +-
 horizons/ai/aiplayer/building/smeltery.py          |    5 +-
 horizons/ai/aiplayer/building/stonedeposit.py      |    6 +-
 horizons/ai/aiplayer/building/stonemason.py        |    5 +-
 horizons/ai/aiplayer/building/stonepit.py          |    7 +-
 horizons/ai/aiplayer/building/tobacconist.py       |    5 +-
 horizons/ai/aiplayer/building/toolmaker.py         |    5 +-
 horizons/ai/aiplayer/building/tree.py              |    3 +-
 horizons/ai/aiplayer/building/villagebuilding.py   |    7 +-
 horizons/ai/aiplayer/building/weaver.py            |    5 +-
 horizons/ai/aiplayer/buildingevaluator.py          |    5 +-
 horizons/ai/aiplayer/combat/__init__.py            |    2 +-
 horizons/ai/aiplayer/combat/combatmanager.py       |    6 +-
 horizons/ai/aiplayer/combat/fleet.py               |    3 +-
 horizons/ai/aiplayer/combat/unitmanager.py         |    3 +-
 horizons/ai/aiplayer/constants.py                  |    7 +-
 horizons/ai/aiplayer/goal/__init__.py              |    2 +-
 horizons/ai/aiplayer/goal/boatbuilder.py           |    3 +-
 horizons/ai/aiplayer/goal/combatship.py            |    3 +-
 horizons/ai/aiplayer/goal/depositcoverage.py       |   12 +-
 horizons/ai/aiplayer/goal/doctor.py                |    3 +-
 horizons/ai/aiplayer/goal/donothing.py             |    5 +-
 horizons/ai/aiplayer/goal/enlargecollectorarea.py  |   12 +-
 horizons/ai/aiplayer/goal/feederchaingoal.py       |    3 +-
 horizons/ai/aiplayer/goal/firestation.py           |    3 +-
 horizons/ai/aiplayer/goal/foundfeederisland.py     |    5 +-
 .../ai/aiplayer/goal/improvecollectorcoverage.py   |   13 +-
 horizons/ai/aiplayer/goal/productionchaingoal.py   |    5 +-
 horizons/ai/aiplayer/goal/settlementgoal.py        |    9 +-
 horizons/ai/aiplayer/goal/signalfire.py            |    3 +-
 horizons/ai/aiplayer/goal/storagespace.py          |    7 +-
 horizons/ai/aiplayer/goal/tent.py                  |    3 +-
 horizons/ai/aiplayer/goal/tradingship.py           |    3 +-
 horizons/ai/aiplayer/internationaltrademanager.py  |   11 +-
 horizons/ai/aiplayer/landmanager.py                |   10 +-
 horizons/ai/aiplayer/mission/__init__.py           |    2 +-
 horizons/ai/aiplayer/mission/domestictrade.py      |    5 +-
 horizons/ai/aiplayer/mission/foundsettlement.py    |   11 +-
 horizons/ai/aiplayer/mission/internationaltrade.py |   15 +-
 .../ai/aiplayer/mission/preparefoundationship.py   |    9 +-
 .../ai/aiplayer/mission/specialdomestictrade.py    |    9 +-
 horizons/ai/aiplayer/personality/__init__.py       |    6 +-
 horizons/ai/aiplayer/personality/default.py        |    5 +-
 horizons/ai/aiplayer/personality/other.py          |    5 +-
 horizons/ai/aiplayer/personalitymanager.py         |    5 +-
 horizons/ai/aiplayer/productionbuilder.py          |   27 +-
 horizons/ai/aiplayer/productionchain.py            |    3 +-
 horizons/ai/aiplayer/resourcemanager.py            |   14 +-
 horizons/ai/aiplayer/roadplanner.py                |    3 +-
 horizons/ai/aiplayer/settlementfounder.py          |    8 +-
 horizons/ai/aiplayer/settlementmanager.py          |   47 +-
 .../ai/aiplayer/specialdomestictrademanager.py     |    9 +-
 horizons/ai/aiplayer/strategy/__init__.py          |    2 +-
 horizons/ai/aiplayer/strategy/condition.py         |    5 +-
 horizons/ai/aiplayer/strategy/mission/__init__.py  |    2 +-
 .../strategy/mission/chaseshipsandattack.py        |    3 +-
 .../ai/aiplayer/strategy/mission/pirateroutine.py  |    5 +-
 horizons/ai/aiplayer/strategy/mission/scouting.py  |    2 +-
 .../ai/aiplayer/strategy/mission/surpriseattack.py |    5 +-
 horizons/ai/aiplayer/strategy/strategymanager.py   |    5 +-
 horizons/ai/aiplayer/trademanager.py               |   21 +-
 horizons/ai/aiplayer/unitbuilder.py                |    7 +-
 horizons/ai/aiplayer/villagebuilder.py             |   21 +-
 horizons/ai/generic.py                             |   11 +-
 horizons/ai/pirate.py                              |   15 +-
 horizons/ai/trader.py                              |    4 +-
 horizons/command/__init__.py                       |    2 +-
 horizons/command/building.py                       |   12 +-
 horizons/command/diplomacy.py                      |    6 +-
 horizons/command/game.py                           |   10 +-
 horizons/command/misc.py                           |    3 +-
 horizons/command/production.py                     |    5 +-
 horizons/command/sounds.py                         |    5 +-
 horizons/command/uioptions.py                      |    3 +-
 horizons/command/unit.py                           |   10 +-
 horizons/component/__init__.py                     |    6 +-
 horizons/component/ambientsoundcomponent.py        |    7 +-
 horizons/component/collectingcomponent.py          |    5 +-
 horizons/component/coloroverlaycomponent.py        |   11 +-
 horizons/component/commandablecomponent.py         |    3 +-
 horizons/component/componentholder.py              |   16 +-
 horizons/component/depositcomponent.py             |   11 +-
 horizons/component/fieldbuilder.py                 |    3 +-
 horizons/component/healthcomponent.py              |    6 +-
 horizons/component/inventoryoverlaycomponent.py    |   11 +-
 horizons/component/namedcomponent.py               |    6 +-
 horizons/component/restrictedpickup.py             |    3 +-
 horizons/component/selectablecomponent.py          |    8 +-
 horizons/component/stancecomponent.py              |   14 +-
 horizons/component/storagecomponent.py             |    9 +-
 horizons/component/tradepostcomponent.py           |   34 +-
 horizons/constants.py                              |  109 +-
 horizons/editor/__init__.py                        |    2 +-
 horizons/editor/gui.py                             |   20 +-
 horizons/editor/intermediatemap.py                 |    4 +-
 horizons/editor/session.py                         |   11 +-
 horizons/editor/worldeditor.py                     |    6 +-
 horizons/engine/__init__.py                        |    4 +-
 horizons/engine/engine.py                          |   14 +-
 horizons/engine/generate_atlases.py                |   41 +-
 horizons/engine/pychan_util.py                     |   22 +-
 horizons/engine/settings.py                        |    9 +-
 horizons/engine/sound.py                           |    2 +-
 horizons/entities.py                               |    9 +-
 horizons/ext/__init__.py                           |    2 +-
 horizons/ext/polib.py                              | 1749 -------------------
 horizons/ext/typing.py                             | 1794 ++++++++++++++++++++
 horizons/extscheduler.py                           |    4 +-
 horizons/globals.py                                |   12 +-
 horizons/gui/__init__.py                           |    4 +-
 horizons/gui/gui.py                                |   23 +-
 horizons/gui/i18n.py                               |    2 +-
 horizons/gui/ingamegui.py                          |   48 +-
 horizons/gui/keylisteners/__init__.py              |    9 +-
 horizons/gui/keylisteners/ingamekeylistener.py     |   18 +-
 horizons/gui/keylisteners/keyconfig.py             |    3 +-
 horizons/gui/keylisteners/mainlistener.py          |   19 +-
 horizons/gui/modules/__init__.py                   |   20 +-
 horizons/gui/modules/aidataselection.py            |   16 +-
 horizons/gui/modules/editorstartmenu.py            |    7 +-
 horizons/gui/modules/help.py                       |    2 +-
 horizons/gui/modules/hotkeys_settings.py           |   16 +-
 horizons/gui/modules/ingame.py                     |   10 +-
 horizons/gui/modules/loadingscreen.py              |   69 +-
 horizons/gui/modules/multiplayermenu.py            |  118 +-
 horizons/gui/modules/pausemenu.py                  |   11 +-
 horizons/gui/modules/playerdataselection.py        |   20 +-
 horizons/gui/modules/select_savegame.py            |   54 +-
 horizons/gui/modules/settings.py                   |   40 +-
 horizons/gui/modules/singleplayermenu.py           |  190 ++-
 horizons/gui/mousetools/__init__.py                |   18 +-
 horizons/gui/mousetools/attackingtool.py           |    5 +-
 horizons/gui/mousetools/buildingtool.py            |   48 +-
 horizons/gui/mousetools/cursortool.py              |    7 +-
 horizons/gui/mousetools/navigationtool.py          |   20 +-
 horizons/gui/mousetools/pipettetool.py             |   10 +-
 horizons/gui/mousetools/selectiontool.py           |    8 +-
 horizons/gui/mousetools/tearingtool.py             |   50 +-
 horizons/gui/mousetools/tilelayingtool.py          |   11 +-
 horizons/gui/style.py                              |    2 +-
 horizons/gui/tabs/__init__.py                      |   38 +-
 horizons/gui/tabs/barrackstabs.py                  |   24 +-
 .../unitproduction.py => gui/tabs/barriertab.py}   |   38 +-
 horizons/gui/tabs/boatbuildertabs.py               |   82 +-
 horizons/gui/tabs/buildingtabs.py                  |   17 +-
 horizons/gui/tabs/buildrelatedtab.py               |   14 +-
 horizons/gui/tabs/buildtabs.py                     |   47 +-
 horizons/gui/tabs/buyselltab.py                    |   35 +-
 horizons/gui/tabs/diplomacytab.py                  |    4 +-
 horizons/gui/tabs/enemybuildingtabs.py             |    9 +-
 horizons/gui/tabs/inventorytab.py                  |   11 +-
 horizons/gui/tabs/mainsquaretabs.py                |   41 +-
 horizons/gui/tabs/overviewtab.py                   |   16 +-
 horizons/gui/tabs/productiontabs.py                |   33 +-
 horizons/gui/tabs/residentialtabs.py               |   23 +-
 horizons/gui/tabs/selectmultitab.py                |   19 +-
 horizons/gui/tabs/shiptabs.py                      |   52 +-
 horizons/gui/tabs/tabinterface.py                  |    7 +-
 horizons/gui/tabs/tabwidget.py                     |    8 +-
 horizons/gui/tabs/tradetab.py                      |   16 +-
 horizons/gui/translations.py                       |  813 ++++-----
 horizons/gui/util.py                               |   26 +-
 horizons/gui/widgets/__init__.py                   |    2 +-
 horizons/gui/widgets/buysellinventory.py           |    3 +-
 horizons/gui/widgets/container.py                  |    2 +-
 horizons/gui/widgets/fpsdisplay.py                 |    2 +-
 horizons/gui/widgets/icongroup.py                  |    3 +-
 horizons/gui/widgets/imagebutton.py                |   15 +-
 horizons/gui/widgets/imagefillstatusbutton.py      |   16 +-
 horizons/gui/widgets/inventory.py                  |   15 +-
 horizons/gui/widgets/logbook.py                    |   31 +-
 horizons/gui/widgets/messagewidget.py              |   33 +-
 horizons/gui/widgets/minimap.py                    |  210 +--
 horizons/gui/widgets/pickbeltwidget.py             |    2 +-
 horizons/gui/widgets/playersoverview.py            |    3 +-
 horizons/gui/widgets/playerssettlements.py         |   12 +-
 horizons/gui/widgets/playersships.py               |   20 +-
 horizons/gui/widgets/productionoverview.py         |  116 +-
 horizons/gui/widgets/progressbar.py                |    6 +-
 horizons/gui/widgets/resourceoverviewbar.py        |   40 +-
 horizons/gui/widgets/routeconfig.py                |   62 +-
 horizons/gui/widgets/statswidget.py                |    7 +-
 horizons/gui/widgets/stepslider.py                 |   91 +-
 horizons/gui/widgets/tooltip.py                    |    7 +-
 horizons/gui/widgets/tradehistoryitem.py           |    5 +-
 horizons/gui/widgets/unitoverview.py               |   15 +-
 horizons/gui/windows.py                            |   18 +-
 horizons/i18n/__init__.py                          |   60 +-
 horizons/i18n/objecttranslations.py                |  337 ++--
 horizons/i18n/voice.py                             |   80 +-
 horizons/main.py                                   |  211 +--
 horizons/manager.py                                |   22 +-
 horizons/messaging/__init__.py                     |    2 +-
 horizons/messaging/message.py                      |    5 +-
 horizons/messaging/messagebus.py                   |    3 +-
 horizons/messaging/queuingmessagebus.py            |   15 +-
 horizons/messaging/simplemessagebus.py             |    5 +-
 horizons/mpsession.py                              |   32 +-
 horizons/network/__init__.py                       |    6 +-
 horizons/network/common.py                         |    8 +-
 horizons/network/connection.py                     |   28 +-
 horizons/network/libs/darwin-x64-26/enet.so        |  Bin 0 -> 185776 bytes
 horizons/network/libs/darwin-x64-27/enet.so        |  Bin 0 -> 346460 bytes
 horizons/network/libs/darwin-x86/enet.so           |  Bin 0 -> 185776 bytes
 horizons/network/libs/freebsd-x64/enet.so          |  Bin 0 -> 190492 bytes
 horizons/network/libs/freebsd-x86/enet.so          |  Bin 0 -> 177794 bytes
 horizons/network/libs/linux-x64/enet.so            |  Bin 0 -> 169464 bytes
 horizons/network/libs/linux-x86/enet.so            |  Bin 0 -> 155157 bytes
 horizons/network/libs/windows-x64-26/enet.pyd      |  Bin 0 -> 130560 bytes
 horizons/network/libs/windows-x64-27/enet.pyd      |  Bin 0 -> 130560 bytes
 horizons/network/libs/windows-x86-26/enet.pyd      |  Bin 0 -> 105472 bytes
 horizons/network/libs/windows-x86-27/enet.pyd      |  Bin 0 -> 105984 bytes
 horizons/network/networkinterface.py               |   21 +-
 horizons/network/packets/__init__.py               |    7 +-
 horizons/network/packets/client.py                 |   37 +-
 horizons/network/packets/server.py                 |    5 +-
 horizons/network/server.py                         |   57 +-
 horizons/savegamemanager.py                        |    7 +-
 horizons/scenario/__init__.py                      |    8 +-
 horizons/scenario/actions.py                       |   36 +-
 horizons/scenario/conditions.py                    |   43 +-
 horizons/scenario/scenarioeventhandler.py          |   30 +-
 horizons/scheduler.py                              |   12 +-
 horizons/session.py                                |   52 +-
 horizons/spsession.py                              |   14 +-
 horizons/timer.py                                  |    9 +-
 horizons/util/__init__.py                          |    2 +-
 horizons/util/atlasloading.py                      |   87 +
 horizons/util/atlasloadingthread.py                |   55 -
 horizons/util/buildingindexer.py                   |    2 +-
 horizons/util/changelistener.py                    |    3 +-
 horizons/util/checkupdates.py                      |   15 +-
 horizons/util/cmdlineoptions.py                    |   14 +-
 horizons/util/color.py                             |   63 +-
 horizons/util/dbreader.py                          |    5 +-
 horizons/util/difficultysettings.py                |    5 +-
 horizons/util/inventorychecker.py                  |    6 +-
 horizons/util/lastactiveplayersettlementmanager.py |    5 +-
 horizons/util/living.py                            |    2 +-
 horizons/util/loaders/__init__.py                  |    2 +-
 horizons/util/loaders/actionsetloader.py           |   12 +-
 horizons/util/loaders/jsondecoder.py               |    3 +-
 horizons/util/loaders/loader.py                    |   11 +-
 horizons/util/loaders/sqliteanimationloader.py     |    4 +-
 horizons/util/loaders/sqliteatlasloader.py         |    5 +-
 horizons/util/loaders/tilesetloader.py             |   10 +-
 horizons/util/pathfinding/__init__.py              |    2 +-
 horizons/util/pathfinding/pather.py                |    8 +-
 horizons/util/pathfinding/pathfinder.py            |  113 ++
 horizons/util/pathfinding/pathfinding.py           |   40 +-
 horizons/util/pathfinding/pathnodes.py             |   33 +-
 horizons/util/pathfinding/roadpathfinder.py        |  110 --
 horizons/util/preloader.py                         |   92 +
 horizons/util/pychananimation.py                   |    3 +-
 horizons/util/pychanchildfinder.py                 |    2 +-
 horizons/util/python/__init__.py                   |   26 +-
 horizons/util/python/callback.py                   |    2 +-
 horizons/util/python/decorators.py                 |   45 +-
 horizons/util/python/defaultweakkeydictionary.py   |    3 +-
 horizons/util/python/registry.py                   |   32 +-
 horizons/util/python/singleton.py                  |    2 +-
 horizons/util/python/weaklist.py                   |    3 +-
 horizons/util/python/weakmethod.py                 |    3 +-
 horizons/util/python/weakmethodlist.py             |    3 +-
 horizons/util/random_map.py                        |   54 +-
 horizons/util/savegameaccessor.py                  |   10 +-
 horizons/util/savegameupgrader.py                  |   15 +-
 horizons/util/shapes/__init__.py                   |    2 +-
 horizons/util/shapes/annulus.py                    |    7 +-
 horizons/util/shapes/circle.py                     |    7 +-
 horizons/util/shapes/distances.py                  |    9 +-
 horizons/util/shapes/point.py                      |    5 +-
 horizons/util/shapes/radiusshape.py                |    5 +-
 horizons/util/shapes/rect.py                       |    7 +-
 horizons/util/startgameoptions.py                  |   11 +-
 horizons/util/tile_orientation.py                  |   76 +
 horizons/util/uhdbaccessor.py                      |   14 +-
 horizons/util/worldobject.py                       |   10 +-
 horizons/util/yamlcache.py                         |   16 +-
 horizons/util/yamlcachestorage.py                  |    6 +-
 horizons/view.py                                   |    7 +-
 horizons/world/__init__.py                         |    4 +-
 horizons/world/buildability/__init__.py            |    2 +-
 horizons/world/buildability/binarycache.py         |    3 +-
 horizons/world/buildability/connectedareacache.py  |    3 +-
 horizons/world/buildability/freeislandcache.py     |    3 +-
 horizons/world/buildability/partialbinarycache.py  |    3 +-
 .../buildability/potentialroadconnectivitycache.py |    3 +-
 horizons/world/buildability/settlementcache.py     |    3 +-
 .../world/buildability/simplecollectorareacache.py |    3 +-
 horizons/world/buildability/terraincache.py        |    3 +-
 horizons/world/building/__init__.py                |   11 +-
 horizons/world/building/buildable.py               |   58 +-
 horizons/world/building/building.py                |   10 +-
 horizons/world/building/buildingresourcehandler.py |    4 +-
 horizons/world/building/nature.py                  |   21 +-
 horizons/world/building/path.py                    |   81 +-
 horizons/world/building/production.py              |   19 +-
 horizons/world/building/settler.py                 |   28 +-
 horizons/world/building/storages.py                |   17 +-
 horizons/world/building/unitproduction.py          |   10 +-
 horizons/world/building/war.py                     |   57 +-
 horizons/world/buildingowner.py                    |    5 +-
 horizons/world/concreteobject.py                   |    4 +-
 horizons/world/diplomacy.py                        |    3 +-
 horizons/world/disaster/__init__.py                |    7 +-
 horizons/world/disaster/blackdeathdisaster.py      |    7 +-
 .../world/disaster/buildinginfluencingdisaster.py  |   15 +-
 horizons/world/disaster/disastermanager.py         |   13 +-
 horizons/world/disaster/firedisaster.py            |    5 +-
 horizons/world/ground.py                           |    7 +-
 horizons/world/ingametype.py                       |    7 +-
 horizons/world/island.py                           |   27 +-
 horizons/world/managers/__init__.py                |    2 +-
 .../managers/productionfinishediconmanager.py      |   12 +-
 horizons/world/managers/statusiconmanager.py       |   15 +-
 horizons/world/player.py                           |   23 +-
 horizons/world/playerstats.py                      |   16 +-
 horizons/world/production/__init__.py              |    2 +-
 horizons/world/production/producer.py              |   36 +-
 horizons/world/production/production.py            |    8 +-
 horizons/world/production/productionline.py        |    3 +-
 horizons/world/production/unitproduction.py        |    5 +-
 horizons/world/production/utilization.py           |    3 +-
 horizons/world/providerhandler.py                  |    7 +-
 horizons/world/resourcehandler.py                  |   10 +-
 horizons/world/settlement.py                       |   28 +-
 horizons/world/status.py                           |   23 +-
 horizons/world/storage.py                          |   13 +-
 horizons/world/traderoute.py                       |   17 +-
 horizons/world/units/__init__.py                   |   13 +-
 horizons/world/units/animal.py                     |   16 +-
 horizons/world/units/collectors/__init__.py        |    8 +-
 horizons/world/units/collectors/animalcollector.py |    8 +-
 .../world/units/collectors/buildingcollector.py    |   20 +-
 horizons/world/units/collectors/collector.py       |   37 +-
 horizons/world/units/fightingship.py               |   10 +-
 horizons/world/units/groundunit.py                 |   12 +-
 horizons/world/units/movingobject.py               |   20 +-
 horizons/world/units/pirateship.py                 |    3 +-
 horizons/world/units/ship.py                       |   32 +-
 horizons/world/units/unit.py                       |   14 +-
 horizons/world/units/unitexeptions.py              |    4 +-
 horizons/world/units/weapon.py                     |   10 +-
 horizons/world/units/weaponholder.py               |   22 +-
 horizons/world/worldutils.py                       |   15 +-
 mypy.ini                                           |    5 +
 po/scenarios/af/The_Unknown.po                     |    2 +-
 po/scenarios/af/tutorial.po                        |    2 +-
 po/scenarios/bg/The_Unknown.po                     |    2 +-
 po/scenarios/bg/tutorial.po                        |    2 +-
 po/scenarios/ca at valencia/The_Unknown.po            |    2 +-
 po/scenarios/ca at valencia/tutorial.po               |    2 +-
 po/scenarios/da/The_Unknown.po                     |    2 +-
 po/scenarios/da/tutorial.po                        |    2 +-
 po/scenarios/de/tutorial.po                        |  158 +-
 po/scenarios/el/The_Unknown.po                     |    2 +-
 po/scenarios/el/tutorial.po                        |    2 +-
 po/scenarios/eo/The_Unknown.po                     |    2 +-
 po/scenarios/eo/tutorial.po                        |    2 +-
 po/scenarios/es/The_Unknown.po                     |   13 +-
 po/scenarios/es/tutorial.po                        |   11 +-
 po/scenarios/et/The_Unknown.po                     |   21 +-
 po/scenarios/fi/The_Unknown.po                     |   23 +-
 po/scenarios/fr/tutorial.po                        |  204 +--
 po/scenarios/frp/The_Unknown.po                    |    2 +-
 po/scenarios/frp/tutorial.po                       |    2 +-
 po/scenarios/ga/The_Unknown.po                     |    2 +-
 po/scenarios/ga/tutorial.po                        |    2 +-
 po/scenarios/hi/The_Unknown.po                     |    2 +-
 po/scenarios/hi/tutorial.po                        |    2 +-
 po/scenarios/hr/The_Unknown.po                     |   20 +-
 po/scenarios/hu/tutorial.po                        |   11 +-
 po/scenarios/id/The_Unknown.po                     |    2 +-
 po/scenarios/id/tutorial.po                        |    2 +-
 po/scenarios/it/tutorial.po                        |   18 +-
 po/scenarios/ko/The_Unknown.po                     |    2 +-
 po/scenarios/ko/tutorial.po                        |    2 +-
 po/scenarios/lt/The_Unknown.po                     |    2 +-
 po/scenarios/lt/tutorial.po                        |    2 +-
 po/scenarios/lv/The_Unknown.po                     |    2 +-
 po/scenarios/lv/tutorial.po                        |    2 +-
 po/scenarios/ml/The_Unknown.po                     |    2 +-
 po/scenarios/ml/tutorial.po                        |    2 +-
 po/scenarios/nb/The_Unknown.po                     |   74 +-
 po/scenarios/nb/tutorial.po                        |   19 +-
 po/scenarios/nl/tutorial.po                        |  281 +--
 po/scenarios/pt_BR/tutorial.po                     |   15 +-
 po/scenarios/ro/The_Unknown.po                     |    2 +-
 po/scenarios/ro/tutorial.po                        |    2 +-
 po/scenarios/ru/tutorial.po                        |   22 +-
 po/scenarios/sk/The_Unknown.po                     |    2 +-
 po/scenarios/sk/tutorial.po                        |   20 +-
 po/scenarios/sl/The_Unknown.po                     |    2 +-
 po/scenarios/sl/tutorial.po                        |    2 +-
 po/scenarios/th/The_Unknown.po                     |    2 +-
 po/scenarios/th/tutorial.po                        |    2 +-
 po/scenarios/uk/tutorial.po                        |   15 +-
 po/scenarios/vi/The_Unknown.po                     |    2 +-
 po/scenarios/vi/tutorial.po                        |    2 +-
 po/scenarios/zh_CN/The_Unknown.po                  |    2 +-
 po/scenarios/zh_CN/tutorial.po                     |    2 +-
 po/scenarios/zh_TW/The_Unknown.po                  |    2 +-
 po/scenarios/zh_TW/tutorial.po                     |    2 +-
 po/scenarios/zu/The_Unknown.po                     |    2 +-
 po/scenarios/zu/tutorial.po                        |    2 +-
 po/uh-server/af.po                                 |   46 +-
 po/uh-server/bg.po                                 |   48 +-
 po/uh-server/ca.po                                 |   46 +-
 po/uh-server/ca at valencia.po                        |   46 +-
 po/uh-server/cs.po                                 |   46 +-
 po/uh-server/da.po                                 |   48 +-
 po/uh-server/de.po                                 |   46 +-
 po/uh-server/el.po                                 |   46 +-
 po/uh-server/eo.po                                 |   48 +-
 po/uh-server/es.po                                 |   46 +-
 po/uh-server/et.po                                 |   46 +-
 po/uh-server/fi.po                                 |   58 +-
 po/uh-server/fr.po                                 |   46 +-
 po/uh-server/frp.po                                |   48 +-
 po/uh-server/ga.po                                 |   46 +-
 po/uh-server/gl.po                                 |   46 +-
 po/uh-server/hi.po                                 |   46 +-
 po/uh-server/hr.po                                 |   46 +-
 po/uh-server/hu.po                                 |   46 +-
 po/uh-server/id.po                                 |   46 +-
 po/uh-server/it.po                                 |   46 +-
 po/uh-server/ja.po                                 |   46 +-
 po/uh-server/ko.po                                 |   46 +-
 po/uh-server/lt.po                                 |   48 +-
 po/uh-server/lv.po                                 |   46 +-
 po/uh-server/ml.po                                 |   46 +-
 po/uh-server/nb.po                                 |   46 +-
 po/uh-server/nl.po                                 |   46 +-
 po/uh-server/pl.po                                 |   46 +-
 po/uh-server/pt.po                                 |   70 +-
 po/uh-server/pt_BR.po                              |   46 +-
 po/uh-server/ro.po                                 |   48 +-
 po/uh-server/ru.po                                 |   46 +-
 po/uh-server/sk.po                                 |   52 +-
 po/uh-server/sl.po                                 |   46 +-
 po/uh-server/sr.po                                 |   46 +-
 po/uh-server/sv.po                                 |   46 +-
 po/uh-server/th.po                                 |   46 +-
 po/uh-server/tr.po                                 |   46 +-
 po/uh-server/uk.po                                 |   46 +-
 po/uh-server/unknown-horizons-server.pot           |   48 +-
 po/uh-server/vi.po                                 |   46 +-
 po/uh-server/zh_CN.po                              |   52 +-
 po/uh-server/zh_TW.po                              |   48 +-
 po/uh-server/zu.po                                 |   46 +-
 po/uh/af.po                                        |  964 ++++++-----
 po/uh/bg.po                                        |  964 ++++++-----
 po/uh/ca.po                                        |  968 ++++++-----
 po/uh/ca at valencia.po                               |  969 ++++++-----
 po/uh/cs.po                                        |  974 ++++++-----
 po/uh/da.po                                        |  964 ++++++-----
 po/uh/de.po                                        |  980 +++++------
 po/uh/el.po                                        |  962 ++++++-----
 po/uh/eo.po                                        |  964 ++++++-----
 po/uh/es.po                                        | 1007 +++++------
 po/uh/et.po                                        |  971 ++++++-----
 po/uh/fi.po                                        | 1099 ++++++------
 po/uh/fr.po                                        | 1055 ++++++------
 po/uh/frp.po                                       |  964 ++++++-----
 po/uh/ga.po                                        |  962 ++++++-----
 po/uh/gl.po                                        |  970 ++++++-----
 po/uh/hi.po                                        |  962 ++++++-----
 po/uh/hr.po                                        |  968 ++++++-----
 po/uh/hu.po                                        |  972 +++++------
 po/uh/id.po                                        | 1046 ++++++------
 po/uh/it.po                                        |  971 ++++++-----
 po/uh/ja.po                                        |  968 ++++++-----
 po/uh/ko.po                                        |  968 ++++++-----
 po/uh/lt.po                                        |  964 ++++++-----
 po/uh/lv.po                                        |  962 ++++++-----
 po/uh/ml.po                                        |  962 ++++++-----
 po/uh/nb.po                                        | 1098 ++++++------
 po/uh/nl.po                                        |  989 +++++------
 po/uh/pl.po                                        |  971 ++++++-----
 po/uh/pt.po                                        |  990 +++++------
 po/uh/pt_BR.po                                     |  971 ++++++-----
 po/uh/ro.po                                        |  964 ++++++-----
 po/uh/ru.po                                        |  971 ++++++-----
 po/uh/sk.po                                        |  978 +++++------
 po/uh/sl.po                                        |  971 ++++++-----
 po/uh/sr.po                                        |  962 ++++++-----
 po/uh/sv.po                                        |  968 ++++++-----
 po/uh/th.po                                        |  962 ++++++-----
 po/uh/tr.po                                        |  968 ++++++-----
 po/uh/uk.po                                        |  970 ++++++-----
 po/uh/unknown-horizons.pot                         |  966 ++++++-----
 po/uh/vi.po                                        |  962 ++++++-----
 po/uh/zh_CN.po                                     |  987 +++++------
 po/uh/zh_TW.po                                     | 1051 ++++++------
 po/uh/zu.po                                        |  962 ++++++-----
 po/voices/af.po                                    |    2 +-
 po/voices/bg.po                                    |    2 +-
 po/voices/ca.po                                    |    5 +-
 po/voices/ca at valencia.po                           |    2 +-
 po/voices/cs.po                                    |    2 +-
 po/voices/da.po                                    |    2 +-
 po/voices/de.po                                    |    2 +-
 po/voices/el.po                                    |    2 +-
 po/voices/es.po                                    |    2 +-
 po/voices/et.po                                    |    2 +-
 po/voices/fi.po                                    |   39 +-
 po/voices/fr.po                                    |    2 +-
 po/voices/ga.po                                    |    2 +-
 po/voices/gl.po                                    |    2 +-
 po/voices/hi.po                                    |    2 +-
 po/voices/hr.po                                    |    2 +-
 po/voices/hu.po                                    |    2 +-
 po/voices/id.po                                    |    2 +-
 po/voices/it.po                                    |    2 +-
 po/voices/ja.po                                    |    2 +-
 po/voices/ko.po                                    |    2 +-
 po/voices/lt.po                                    |    2 +-
 po/voices/lv.po                                    |    2 +-
 po/voices/ml.po                                    |    2 +-
 po/voices/nb.po                                    |    2 +-
 po/voices/nl.po                                    |    2 +-
 po/voices/pl.po                                    |    2 +-
 po/voices/pt.po                                    |    2 +-
 po/voices/pt_BR.po                                 |    2 +-
 po/voices/ro.po                                    |    2 +-
 po/voices/ru.po                                    |    2 +-
 po/voices/sl.po                                    |    2 +-
 po/voices/sr.po                                    |    2 +-
 po/voices/sv.po                                    |    2 +-
 po/voices/th.po                                    |    2 +-
 po/voices/tr.po                                    |    2 +-
 po/voices/uk.po                                    |    2 +-
 po/voices/vi.po                                    |    2 +-
 po/voices/zh_CN.po                                 |    2 +-
 po/voices/zu.po                                    |    2 +-
 requirements.txt                                   |    3 +
 run_server.py                                      |    5 +-
 run_tests.py                                       |   14 +-
 run_uh.bat                                         |   12 +-
 run_uh.py                                          |   39 +-
 setup.cfg                                          |    6 +-
 setup.py                                           |    7 +-
 setup_mac.py                                       |    2 +-
 stage_build_mac.py                                 |   29 +-
 tests/__init__.py                                  |    5 +-
 {horizons/ext => tests}/dummy.py                   |    6 +-
 tests/game/__init__.py                             |    8 +-
 tests/game/long/__init__.py                        |    2 +-
 tests/game/long/test_ai_long.py                    |    4 +-
 tests/game/long/test_ai_quick.py                   |    4 +-
 tests/game/long/test_ai_very_long.py               |    4 +-
 tests/game/long/test_load_save_long.py             |    4 +-
 tests/game/test_blackdeath.py                      |    4 +-
 tests/game/test_bugs.py                            |   15 +-
 tests/game/test_buildings.py                       |    7 +-
 tests/game/test_combat.py                          |   19 +-
 tests/game/test_example.py                         |    6 +-
 tests/game/test_farm.py                            |    5 +-
 tests/game/test_fire.py                            |    5 +-
 tests/game/test_load_save.py                       |   14 +-
 tests/game/test_production.py                      |    6 +-
 tests/game/test_remove_buildings.py                |   11 +-
 tests/game/test_savegame_upgrade.py                |    5 +-
 tests/game/test_settlement_range.py                |    8 +-
 tests/game/test_settler.py                         |    8 +-
 tests/game/test_status_icons.py                    |   12 +-
 tests/game/test_traderoute.py                      |    3 +-
 tests/game/utils.py                                |    6 +-
 tests/gui/__init__.py                              |    7 +-
 tests/gui/cooperative.py                           |    6 +-
 tests/gui/helper.py                                |  136 +-
 tests/gui/ingame/__init__.py                       |    2 +-
 tests/gui/ingame/test_boatbuilder.py               |   73 +-
 tests/gui/ingame/test_bugs.py                      |  116 +-
 tests/gui/ingame/test_build.py                     |   25 +-
 tests/gui/ingame/test_dialogs.py                   |   19 +-
 tests/gui/ingame/test_diplomacy.py                 |   10 +-
 tests/gui/ingame/test_generated.py                 |   40 +-
 tests/gui/ingame/test_hud.py                       |   18 +-
 tests/gui/ingame/test_keys.py                      |    2 +-
 tests/gui/ingame/test_logbook.py                   |   16 +-
 tests/gui/ingame/test_selection.py                 |   10 +-
 tests/gui/ingame/test_trade.py                     |  128 --
 tests/gui/ingame/test_traderoute.py                |   52 +-
 tests/gui/ingame/test_warehouse.py                 |    6 +-
 tests/gui/ingame/test_windows.py                   |   36 +-
 tests/gui/logger.py                                |   24 +-
 tests/gui/menu/__init__.py                         |    2 +-
 tests/gui/menu/test_mainmenu.py                    |   14 +-
 tests/gui/menu/test_multiplayer.py                 |   33 +-
 tests/gui/menu/test_saveload.py                    |   45 +-
 tests/gui/menu/test_singleplayer.py                |   30 +-
 tests/gui/scenarios/__init__.py                    |    2 +-
 tests/gui/scenarios/helper.py                      |    5 +-
 tests/gui/scenarios/test_simple.py                 |   13 +-
 tests/gui/scenarios/test_tutorial.py               |   87 +-
 tests/gui/test_editor.py                           |   24 +-
 tests/gui/test_example.py                          |   13 +-
 tests/gui/test_helper_find.py                      |  224 +++
 tests/gui/test_internal.py                         |   27 +-
 tests/gui/test_mousetools.py                       |   14 +-
 tests/gui/test_unicode.py                          |    3 +-
 tests/unittests/__init__.py                        |    2 +-
 tests/unittests/gui/__init__.py                    |    2 +-
 tests/unittests/gui/test_window_manager.py         |    4 +-
 tests/unittests/misc/test_paths.py                 |   18 +-
 tests/unittests/test_i18n.py                       |  104 ++
 tests/unittests/test_main.py                       |    3 +-
 tests/unittests/test_messages.py                   |    6 +-
 tests/unittests/test_network.py                    |    2 +-
 tests/unittests/test_scheduler.py                  |    4 +-
 tests/unittests/test_timer.py                      |   10 +-
 tests/unittests/util/__init__.py                   |    2 +-
 tests/unittests/util/test_color.py                 |    8 +-
 .../{world/test_world.py => util/test_python.py}   |   26 +-
 tests/unittests/util/test_registry.py              |   34 +-
 tests/unittests/util/test_shapes.py                |    3 +-
 tests/unittests/util/test_tile_orientation.py      |  112 ++
 tests/unittests/world/__init__.py                  |    2 +-
 tests/unittests/world/buildability/__init__.py     |    2 +-
 .../world/buildability/test_connectedareacache.py  |    4 +-
 .../world/buildability/test_partialbinarycache.py  |    6 +-
 tests/unittests/world/component/__init__.py        |    2 +-
 .../world/component/test_healthcomponent.py        |    8 +-
 .../world/component/test_namedcomponent.py         |    3 +-
 .../world/component/test_tradepostcomponent.py     |    5 +-
 tests/unittests/world/production/__init__.py       |    2 +-
 .../world/production/test_productionline.py        |    5 +-
 tests/unittests/world/test_component.py            |    2 +-
 tests/unittests/world/test_ingametype_classes.py   |   81 +
 tests/unittests/world/test_storage.py              |    9 +-
 tests/unittests/world/test_world.py                |    5 +-
 tests/unittests/world/units/__init__.py            |    2 +-
 tests/unittests/world/units/collectors/__init__.py |    2 +-
 .../world/units/collectors/test_collector.py       |   10 +-
 tests/utils.py                                     |    2 +-
 842 files changed, 32228 insertions(+), 30193 deletions(-)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/unknown-horizons.git



More information about the Pkg-games-commits mailing list