mirror of https://github.com/FreeCol/freecol.git
Merge branch 'master' into slim
This commit is contained in:
commit
633176a976
|
@ -1112,6 +1112,8 @@ model.ability.dressMissionary.name=Экіпіроўка місіянэра
|
|||
model.ability.dressMissionary.shortDescription=Робіць адзінку (не экспэрта) місіянэрам.
|
||||
model.ability.electFoundingFather.name=Выбар бацькоў-заснавальнікаў
|
||||
model.ability.electFoundingFather.shortDescription=Гэтая нацыя мае магчымасьць выбіраць бацькоў-заснавальнікаў
|
||||
model.ability.evadeAttack.name=Унікнуць атакі
|
||||
model.ability.evadeAttack.shortDescription=Гэтая адзінка мае здольнасьць унікаць атакаў.
|
||||
model.ability.expertMissionary.name=Дасьведчаны місіянэр
|
||||
model.ability.expertMissionary.shortDescription=Гэтая адзінка можа дзейнічаць як дасьведчаны місіянэр
|
||||
model.ability.expertPioneer.name=Здольнасьць дзейнічаць як дасьведчаны першапраходзец
|
||||
|
@ -1126,6 +1128,8 @@ model.ability.export.name=Экспарт тавараў
|
|||
model.ability.export.shortDescription=Можа экспартаваць тавары непасрэдна ў Эўропу
|
||||
model.ability.foundColony.name=Заснаваць калёнію
|
||||
model.ability.foundColony.shortDescription=Гэтая адзінка можа засноўваць новыя калёніі
|
||||
model.ability.foundInLostCity.name=Знойдзены ў загубленых гарадох
|
||||
model.ability.foundInLostCity.shortDescription=Тып адзінкі, знойдзенай у загубленых гарадох
|
||||
model.ability.foundsColonies.name=Засноўвае калёніі
|
||||
model.ability.foundsColonies.shortDescription=Гэтая нацыя мае здольнасьць засноўваць новыя калёніі.
|
||||
model.ability.hasPort.name=Выхад да мора
|
||||
|
@ -1138,6 +1142,8 @@ model.ability.inciteNatives.name=Падбухторваць абарыгенаў
|
|||
model.ability.inciteNatives.shortDescription=Гэтая адзінка можа падбухторваць абарыгенаў супраць варожай нацыі
|
||||
model.ability.independenceDeclared.name=Дэклярацыя незалежнасьці
|
||||
model.ability.independenceDeclared.shortDescription=Гэтая краіна абвясьціла сваю незалежнасьць
|
||||
model.ability.independentNation.name=Незалежная нацыя
|
||||
model.ability.independentNation.shortDescription=Незалежная нацыя
|
||||
model.ability.mercenaryUnit.name=Адзінка-найміт
|
||||
model.ability.mercenaryUnit.shortDescription=Гэтая адзінка знаходзіцца ў войску наймітаў
|
||||
model.ability.mounted.name=Вершнік
|
||||
|
@ -1168,6 +1174,10 @@ model.ability.repairUnits.name=Рамантаваньне адзінак
|
|||
model.ability.repairUnits.shortDescription=Можа рамантаваць вызначаныя тыпы пашкоджаных адзінак
|
||||
model.ability.royalExpeditionaryForce.name=Каралеўскія экспэдыцыйныя сілы
|
||||
model.ability.royalExpeditionaryForce.shortDescription=Гэтая нацыя зьяўляецца Каралеўскімі экспэдыцыйнымі сіламі
|
||||
model.ability.rumoursAlwaysPositive.name=Чуткі заўсёды станоўчыя
|
||||
model.ability.rumoursAlwaysPositive.shortDescription=Дасьледаваньне чутак заўсёды мае станоўчы вынік
|
||||
model.ability.seeAllColonies.name=Бачыць усе калёніі
|
||||
model.ability.seeAllColonies.shortDescription=Можа бачыць усе замежныя калёніі
|
||||
model.ability.speakWithChief.shortDescription=Гэтая адзінка можа размаўляць з правадыром індыянскага паселішча
|
||||
model.ability.spyOnColony.name=Шпіёніць за калёніяй
|
||||
model.ability.spyOnColony.shortDescription=Гэтая адзінка можа шпіёніць за замежнымі калёніямі
|
||||
|
@ -1626,6 +1636,8 @@ model.resource.tobacco.name=Тытунь
|
|||
model.resource.tobacco.description=Глеба гэтых лугоў выдатна падыходзіць для вырошчваньня тытуню.
|
||||
model.role.name=Роля
|
||||
model.role.default.name=Дапомна
|
||||
model.role.dragoon.noequipment=няма мушкетаў
|
||||
model.role.infantry.name=Пяхота
|
||||
model.role.missionary.name=Місіянэр
|
||||
model.role.missionary.noequipment=не ўпаўнаважаны
|
||||
model.role.missionary.equipment=Біблія
|
||||
|
@ -1861,6 +1873,11 @@ model.colony.stance.war=%nation% атакуе вас пры любой магч
|
|||
model.colony.unbuildable=%colony% ня можа пабудаваць %object% за гэты час. %object% быў выдалены з чаргі на будоўлю.
|
||||
model.colony.veryBadGovernment=Урад %colony% вельмі неэфэктыўны. Уводзяцца высокія штрафы на вытворчасьць.
|
||||
model.colony.veryGoodGovernment=Эфэктыўнасьць ураду палепшылася! Бунтоўныя настроі ў %colony% цяпер роўныя ці большыя за %number% {{plural:%number%|one=адсотак|few=адсоткі|other=адсоткаў}}.
|
||||
model.colonyTile.claim=(прэтэндуе на %direction%)
|
||||
model.diplomaticTrade.receive.contact=Братэрскае прывітаньне ад славутай нацыі %nation%.
|
||||
model.diplomaticTrade.receive.diplomatic=Давайце дамаўляцца з %nation%.
|
||||
model.diplomaticTrade.receive.trade=Давайце разглядзім гандлёвую прапанову нацыі %nation%.
|
||||
model.diplomaticTrade.receive.tribute=%nation% патрабуе ад нас даніну!
|
||||
model.diplomaticTrade.send.contact=Мы сустрэлі прадстаўнікоў нацыі %nation%.
|
||||
model.diplomaticTrade.send.diplomatic=Давайце абмяркуем нашую дыпляматычную сытуацыю з %nation%.
|
||||
model.diplomaticTrade.send.trade=Дазвольце нам прапанаваць гандаль з нацыяй %nation% у %settlement%.
|
||||
|
@ -1898,6 +1915,7 @@ model.indianSettlement.mostHatedUnknown=Невядома
|
|||
model.indianSettlement.nameUnknown=Невядомая
|
||||
model.indianSettlement.skillNone=Нічога
|
||||
model.indianSettlement.skillUnknown=Невядомае
|
||||
model.indianSettlement.lastSale=Прадаў %goodsType% за %price% у %turn%
|
||||
model.indianSettlement.tension.angry=Ваяры племені %nation% занятыя трэнаваньнем у стральбе. Жанчыны і дзеці хаваюцца ў намётах.
|
||||
model.indianSettlement.tension.content=Людзі племені %nation% занятыя працаю. Іхнія дзеці весела гуляюцца ў хованкі.
|
||||
model.indianSettlement.tension.displeased=Людзі племені %nation% занятыя працаю. Іхніх дзяцей нідзе не відаць, а старыя нахмураныя.
|
||||
|
@ -1985,6 +2003,7 @@ model.nation.turkish.name={{tag:|country=Атаманская імпэрыя|peo
|
|||
model.nation.german.name={{tag:|country=Сьвяшчэнная Рымская імпэрыя|people=Немцы|default=Нямецкі}}
|
||||
model.nation.prussian.name={{tag:|country=Прусія|people=Прусы|default=Прускі}}
|
||||
model.nation.austrian.name={{tag:|country=Аўстрыя|people=Аўстрыйцы|default=Аўстрыйскі}}
|
||||
model.advantages.none.name=Няма
|
||||
model.advantages.none.shortDescription=Ніякіх перавагаў для якіх-кольвек нацыяў. Галоўным чынам прызначанае для шматкарыстальніцкіх гульняў.
|
||||
model.advantages.fixed.shortDescription=Усе нацыі карыстаюцца сваімі дапомнымі перавагамі. Гэта патрэбна дзеля эмуляцыі арыгінальнай гульні.
|
||||
model.nationState.aiOnly.name=толькі кампутар
|
||||
|
@ -2210,6 +2229,7 @@ model.unit.hardyPioneer.noMoreTools=%location%: Ваш цягавіты піян
|
|||
error.couldNotLoad=Адбылася памылка пад час спробы загрузкі гульні з файлу %name%
|
||||
error.couldNotSave=Адбылася памылка пад час спробы захаваньня гульні ў файл %name%
|
||||
main.defaultPlayerName=Імя гульца
|
||||
main.userDir.badDir=Недаступны для запісу каталёг: %name%
|
||||
main.userDir.badConfig=Благі каталёг канфігурацыі карыстальніка: %name%
|
||||
main.userDir.badData=Благі каталёг зьвестак карыстальніка: %name%
|
||||
main.userDir.badCache=Благі каталёг кэшу карыстальніка: %name%
|
||||
|
@ -2388,11 +2408,13 @@ tradeRoute.loadStop.noLoad.left=%goodsList% (няма месца)
|
|||
tradeRoute.loadStop.noLoad.noUnload=%goodsType% (няма куды выгружаць)
|
||||
tradeRoute.loadStop.unexpected=На борце знойдзеныя нечаканыя %goodsList%.
|
||||
tradeRoute.prefix=%route%, %unit%:%data%
|
||||
tradeRoute.unloadStop.unload=Разгружана %goodsList%.
|
||||
tradeRoute.unloadStop.unload.fail=%amount% %goodsType% (нечаканая частковая загруза, %more% засталося)
|
||||
tradeRoute.unloadStop.unload.keep=%amount% %goodsType% (%more% засталося)
|
||||
tradeRoute.unloadStop.unload.overflow=%amount% %goodsType% (%more% перапоўнена)
|
||||
tradeRoute.unloadStop.noUnload=Не загружана %goodsList%.
|
||||
tradeRoute.unloadStop.noUnload.fail=%goods% нечакана няўдала
|
||||
tradeRoute.wait=Няма чаго рабіць, чакае.
|
||||
traderoute.warehouseCapacity=Пасьля выгрузкі %unit% у %colony% сховішча калёніі будзе перапоўнена. %amount% %goods% будзе выкінута. Вы ўсё роўна жадаеце выгрузіць тавары?
|
||||
twoTurnsPerYear=Пачынаючы з %year% за год будзе праводзіцца %amount% хадоў замест аднаго!
|
||||
connection.io=Памылка ўводу/вываду: %message%
|
||||
|
@ -2400,13 +2422,16 @@ server.badColor=Памылковы колер: %color%
|
|||
server.badNation=Памылковая нацыя: %nation%
|
||||
server.badNationType=Памылковы тып нацыі: %nationType%
|
||||
server.couldNotConnect=Немагчыма далучыцца да сэрвэра.
|
||||
server.couldNotLogin=Немагчыма ўвасьці на сэрвэр.
|
||||
server.errorStartingGame=Адбылася памылка пад час пачатку гульні.\n%extra%
|
||||
server.incompatibleVersions=Захаваная гульня, якую Вы спрабуеце загрузіць, несумяшчальная з гэтай вэрсіяй FreeCol.
|
||||
server.initialize=Памылкі ініцыялізацыі сэрвэра
|
||||
server.invalidPlayerNations=Перад пачаткам гульні неабходна, каб кожны гулец выбраў унікальную нацыю.
|
||||
server.maximumPlayers=Прабачце, дасягнутая максымальная колькасьць гульцоў.
|
||||
server.missingUserName=У запыце на ўваход бракуе імені карыстальніка.
|
||||
server.missingVersion=У запыце на ўваход бракуе вэрсіі FreeCol.
|
||||
server.noRouteToServer=Сэрвэр ня можа быць публічным, бо ня зможа злучыцца з мэтасэрвэрам.
|
||||
server.noSuchPlayer=У гульні адсутнічае гулец з назвай: %player%
|
||||
server.notAllReady=Ня ўсе гульцы гатовыя пачаць гульню!
|
||||
server.onlyAdminCanLaunch=Прабачце, толькі адміністратар сэрвэра можа пачаць гульню.
|
||||
server.reject=Сэрвэр ня можа гэта зрабіць.
|
||||
|
@ -2437,7 +2462,10 @@ scoutSettlement.tributeAgree=Мы згодныя заплаціць %amount% з
|
|||
scoutSettlement.tributeDisagree=Мы не выканаем Вашых патрабаваньняў. А цяпер пакіньце нашую зямлю!
|
||||
colopedia.birthAndDeath=Нараджэньне і сьмерць
|
||||
colopedia.description=Апісаньне
|
||||
colopedia.probability=Імавернасьць
|
||||
colopedia.type=Тып
|
||||
colopedia.buildings.autoBuilt=Будуецца аўтаматычна, пасьля заснаваньня новай калёніі.
|
||||
colopedia.buildings.basicProduction=Асноўная вытворчасьць
|
||||
colopedia.buildings.cost=Кошт
|
||||
colopedia.buildings.modifiers={{plural:%number%|one=Мадыфікатар|few=Мадыфікатары|many=Мадыфікатараў|other=Мадыфікатары|default=Мадыфікатар}}
|
||||
colopedia.buildings.notes=Заўвагі
|
||||
|
@ -2447,12 +2475,15 @@ colopedia.buildings.specialist=Спэцыяліст
|
|||
colopedia.buildings.teaches=Навучае
|
||||
colopedia.buildings.workplaces=Працоўныя месцы
|
||||
colopedia.buildings.requiredPopulation=%number% {{plural:%number%|one=каляніст|few=каляністы|many=каляністаў}}
|
||||
colopedia.concepts.education.name=Адукацыя
|
||||
colopedia.concepts.education.description=<html><p>Найэфэктыўнейшы спосаб навучыць вашых каляністаў — гэта пабудаваць <a href="http:///id/model.building.schoolhouse">школу</a> і прызначыць экспэртную адзінку настаўнікам. Тады настаўнік ператворыць <a href="http:///id/model.unit.freeColonist">вольнага пасяленца</a> у экспэрта таго ж тыпу. Таксама настаўнікі могуць паляпшаць <a href="http:///id/model.unit.pettyCriminal">дробных злачынцаў</a> у <a href="http:///id/model.unit.indenturedServant">найманых працаўнікоў</a>, а найманых працаўнікоў — у вольных пасяленцаў.</p><p>Некаторыя ўменьні можна яшчэ пераняць у тубыльцаў, паслаўшы вольнага пасяленца ці найманага працаўніка адзін ход пражыць у туземным паселішчы. Яшчэ некаторыя ўменьні можна атрымаць з досьведам, адаслаўшы вольнага каляніста працаваць на плітцы калёніі. Вольныя каляністы, працуючы ў палёх і лясох вакол вашых калёніяў, назапашваюць да 200 пунктаў досьведу, што складае да чатырох адсоткаў посьпеху ўдасканаленьня.</p></html>
|
||||
colopedia.concepts.efficiency.name=Эфэктыўнасьць
|
||||
colopedia.concepts.efficiency.description=<html><p>Эфэктыўнасьць вашых калёніяў залежыць ад папулярнасьці ў іх ідэяў незалежнасьці. Калі 50 адсоткаў каляністаў падтрымліваюць ідэю паўстаньня, калёнія атрымлівае +1 бонус вытворчасьці. Калі 100 адсоткаў каляністаў становяцца паўстанцамі, бонус вытворчасьці вырастае да +2.</p><p>Зь іншага боку, калі колькасьць раялістаў перавышае <i>мяжу благога валадараньня</i>, калёнія атрымлівае -1 страту ў вытворчасьці. Калі колькасьць раялістаў перавышае <i>мяжу вельмі благога валадараньня</i>, штраф вытворчасьці ўзрастае да -2. Гэтыя два вымярэньні залежаць ад узроўню складанасьці, іх можна спраўдзіць у <a href="http:///action/difficultyAction">справаздачы па ўзроўні складанасьці</a>.</p><p>Каб павялічыць эфэктыўнасьць калёніі, трэба зьмяншаць ейнае насельніцтва ці вырабляць больш <a href="http:///id/model.goods.bells">званоў свабоды</a>.</p></html>
|
||||
colopedia.concepts.fortification.name=Умацаваньне
|
||||
colopedia.concepts.fortification.description=<html><p>Каб павысіць уласную абароназдольнасьць, адзінкі могуць <em>умацоўваць</em> сябе на плітцы (будуючы часовыя траншыі і перашкоды). Поўнае ўмацаваньне займае адзін ход. Таксама фартыфікацыя аберагае адзінкі ад трапляньня ў засады, а ўмацаваная артылерыя не апынецца „ў адкрытым полі“, хоць напад пашкодзіць умацаваньні. Фартыфікацыя надае толькі абарончы бонус пры адсутнасьці іншых прыдатных абарончых уласьцівасьцяў, таму бонус недаступны пры ўмацаваньні на гарах ці ў калёніі, дзе існуе форт ці фартэцыя.</p></html>
|
||||
colopedia.concepts.independence.name=Незалежнасьць
|
||||
colopedia.concepts.independence.description=<html><p>Вы пачынаеце гульню дасьледнікам, маючы ў кіраваньні купку аддзелаў. Манарх разьлічвае, што вы заснуяцё ў Новым сьвеце калёнію і прывезяцё ў родны порт скарбы ды экзатычныя тавары. Але вы маеце іншыя пляны: зьбіраецеся заснаваць незалежную нацыю.</p><p>Каб абвясьціць незалежнасьць, вам трэба пераканаць у гэтым ня меней за 50% насельніцтва вашых калёніяў. Гэта можна зрабіць, вырабляючы <a href="http:///id/model.goods.bells">званы свабоды</a>, што будзе павялічваць і <a href="http:///id/colopedia.concepts.efficiency">эфэктыўнасьць</a> вашых калёніяў.</p><p>Як можна здагадацца, манарх не адпусьціць вас проста так. Пасьля абвяшчэньне незалежнасьці давядзецца змагацца з <a href="http:///id/colopedia.concepts.ref">Каралеўскімі экспэдыцыйнымі сіламі</a> (КЭС) і разьбіць іх. Калі КЭС захопіць усе вашыя ўзьбярэжныя калёніі ці прынамсі 90% вашага насельніцтва, вы прайграеце сваю барацьбу за незалежнасьць.</p></html>
|
||||
colopedia.concepts.interventionForce.name=Інтэрвэнцыйныя сілы
|
||||
colopedia.concepts.interventionForce.description=<html><p>Любая спроба вашых калёніяў абвясьціць <a href="http:///id/colopedia.concepts.independence">незалежнасьць</a> немінуча аслабіць вашую родную краіну. Гэта будзе ў інтарэсах ворагаў вашай радзімы. З гэтай прычыны адзін зь іх выправіць <i>Сілы ўварваньня</i>, каб падтрымаць вас у <i>вайне за незалежнасьць</i> з <a href="http:///id/colopedia.concepts.ref">Каралеўскімі экспэдыцыйнымі сіламі</a> пры ўмове, што вы зможаце выпускаць дастатковую колькасьць <a href="http:///id/model.goods.bells">званоў свабоды</a>.</p><p>Цягам гульні <i>Інтэрвэнцыйныя войскі</i> і <a href="http:///id/colopedia.concepts.ref">Каралеўскія экспэдыцыйныя сілы</a> будуць папаўняцца новымі адзінкамі.</p></html>
|
||||
colopedia.concepts.ref.name=Каралеўскія экспэдыцыйныя сілы
|
||||
colopedia.concepts.ref.description=<html><p>Кароль не такі глупы, каб давяраць усялякаму канкістадорскаму зброду і рэлігійным фанатыкам, якія не жадаюць плаціць падаткі і схіляцца перад справядлівай каралеўскай уладай. З гэтай прычыны манарх трымае <i>Каралеўскія экспэдыцыйныя сілы</i> (КЭС), гатовыя здушыць любыя спробы абвяшчэньня <a href="http:///id/colopedia.concepts.independence">незалежнасьці</a> і выхаду з складу роднай дзяржавы.</p><p><i>Каралеўскія экспэдыцыйныя сілы</i> часткова ўраўнаважваюцца <a href="http:///id/colopedia.concepts.interventionForce">Інтэрвэнцыйнымі войскамі</a>, якія будуць накіраваныя замежнай дзяржавай, што падтрымлівае вашыя памкненьні. Гэтыя войскі рушаць, калі вы вырабіце дастатковую колькасьць <a href="http:///id/model.goods.bells">званоў свабоды</a>. Час ад часу новыя падразьдзяленьні будуць дадавацца як у <i>Каралеўскія экспэдыцыйныя сілы</i>, так і ў <a href="http:///id/colopedia.concepts.interventionForce">Інтэрвэнцыйныя войскі</a>.</p></html>
|
||||
|
@ -2537,6 +2568,7 @@ report.colony.growing.description=%colony% можа вырасьці на {{plur
|
|||
report.colony.growing.summary.description=Агульны лік каляністаў, які можа далучыцца да калёніяў на гэтым кантынэнце бяз шкоды для вытворчасьці
|
||||
report.colony.improve.description=Адзінкі, якія могуць палепшыць вытворчасьць.
|
||||
report.colony.improve.header=Палепшыць
|
||||
report.colony.improving.description=%colony% %location%: Каб вырабіць яшчэ %amount% %goods%, замяніце %oldUnit% на %unit%
|
||||
report.colony.making.blocking.description=%colony%: %amount% %goods% неабходна для %buildable% {{plural:%turns%|one=на наступным %turns% ходзе|few=на наступных %turns% хадах|many=на наступных %turns% хадах}}
|
||||
report.colony.making.constructing.description=%colony%: %buildable% скончыцца {{plural:%turns%|one=праз %turns% ход|few=праз %turns% хады|many=праз %turns% хадоў}}
|
||||
report.colony.making.description=Чым займаецца калёнія
|
||||
|
@ -2548,6 +2580,7 @@ report.colony.name.header=Калёнія
|
|||
report.colony.production.description=%colony%: вырабляецца %amount% %goods%
|
||||
report.colony.production.export.description=%colony%: вырабляецца %amount% %goods% (экспартуецца звыш %export%)
|
||||
report.colony.production.header=Агульная вытворчасьць %goods%
|
||||
report.colony.production.maxConsumption.description=%colony%: спажываецца %amount% %goods% (можа спажываць на %more% болей)
|
||||
report.colony.production.waste.description=%colony%: вырабляецца %amount% %goods%, сховішча будзе перапоўненае, %waste% будзе страчана
|
||||
report.colony.tile.clearForest.header=В
|
||||
report.colony.tile.clearForest.header.description=Лік плітак калёніі, якія атрымаюць выгаду ад ачышчэньня.
|
||||
|
@ -2676,6 +2709,8 @@ confirmDeclarationDialog.defaultCountry=Злучаныя Штаты %nation%
|
|||
confirmDeclarationDialog.defaultNation=Свабодныя {{tag:country|%nation%}}
|
||||
confirmDeclarationDialog.enterCountry=З гэтага моманту наша краіна будзе вядома як
|
||||
confirmDeclarationDialog.enterNation=кожны грамадзянін нашай вялікай нацыі павінен ганарыцца тым, што ён будзе вядомы як
|
||||
flag.background.label=Фон
|
||||
flag.backgroundColors.label=Колеры фону
|
||||
flag.decoration.BEND=Тальмах
|
||||
flag.decoration.BEND_SINISTER=Левы тальмах
|
||||
flag.decoration.CHEVRON=Шаўрон
|
||||
|
@ -2719,6 +2754,10 @@ negotiationDialog.demand=%nation% патрабуе ад %otherNation%
|
|||
negotiationDialog.exchange=у абмен на
|
||||
negotiationDialog.offer=%nation% прапануюць %otherNation%
|
||||
negotiationDialog.send=Даслаць
|
||||
negotiationDialog.title.contact=Сустрэча зь землякамі-эўрапейцамі
|
||||
negotiationDialog.title.diplomatic=Дыпляматычныя перамовы
|
||||
negotiationDialog.title.trade=Гандлёвыя перамовы
|
||||
negotiationDialog.title.tribute=Патрабаваньне даніны
|
||||
negotiationDialog.euBuyPrice=(%priceTotal% у Эўропе)
|
||||
negotiationDialog.euSalePrice=(%priceTotal% у Эўропе)
|
||||
editSettlementDialog.removeSettlement=Зруйнаваць паселішча
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
# Author: Steeve815
|
||||
# Author: Strayblues
|
||||
# Author: YaronSh
|
||||
# Author: דגש
|
||||
# Author: דגש חזק
|
||||
# Author: דניאל ב.
|
||||
# Author: המקיסט
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,5 +1,6 @@
|
|||
# Messages for Italian (italiano)
|
||||
# Exported from translatewiki.net
|
||||
# Author: Ajeje Brazorf
|
||||
# Author: Alexmar983
|
||||
# Author: Aushulz
|
||||
# Author: Beta16
|
||||
|
@ -2383,7 +2384,7 @@ highseas.no=No, restiamo in queste acque.
|
|||
highseas.text=Siamo in alto mare, Vostra Eccellenza. Ci vorranno %number% {{plural:%number%|one=turno|other=turni}} per giungere in Europa. Dobbiamo salpare?
|
||||
highseas.yes=Sì, per questa rotta.
|
||||
indianDemand.food.no=Spiacenti, i nostri depositi sono vuoti!
|
||||
indianDemand.food.text=Il popolo %nation% è in ristrettezze. Chiediamo ai coloni di %colony% di condividere con noi l'abbondanza dei loro raccolti finchè dura la carestia. Per favore, dateci %amount% unità di cibo.
|
||||
indianDemand.food.text=Il popolo %nation% è in ristrettezze. Chiediamo ai coloni di %colony% di condividere con noi l'abbondanza dei loro raccolti finché dura la carestia. Per favore, dateci %amount% unità di cibo.
|
||||
indianDemand.food.yes=Condivideremo con piacere.
|
||||
indianDemand.gold.no=Andate via, ladri!
|
||||
indianDemand.gold.text=I coloni di %colony% hanno commesso innumerevoli atrocità contro il popolo %nation%. Chiediamo %amount% unità d'oro come risarcimento.
|
||||
|
@ -2768,7 +2769,7 @@ findSettlementPanel.displayOnlyEuropean=Trovare solo insediamenti europei
|
|||
findSettlementPanel.displayOnlyNatives=Trovare solo insediamenti nativi
|
||||
findSettlementPanel.name=Trova insediamento
|
||||
firstContactDialog.meeting.natives=Incontra i nativi
|
||||
firstContactDialog.meeting.natives.tutorial=Abbiamo incontrato dei Nativi. Invia i tuoi Esploratori nei loro villaggi per saperne di più sul loro conto, e i tuoi Servitori a Contratto e Coloni Liberi affinchè imparino da essi. Invia le tue navi e le tue diligenze nei loro insediamenti, se desideri commerciare.
|
||||
firstContactDialog.meeting.natives.tutorial=Abbiamo incontrato dei Nativi. Invia i tuoi Esploratori nei loro villaggi per saperne di più sul loro conto, e i tuoi Servitori a Contratto e Coloni Liberi affinché imparino da essi. Invia le tue navi e le tue diligenze nei loro insediamenti, se desideri commerciare.
|
||||
firstContactDialog.welcomeOffer.text=Il popolo %nation% vi porge il benvenuto. Siamo una gloriosa nazione di %camps% %settlementType%. Per celebrare la nostra amicizia, generosamente vi offriamo in dono la terra che state occupando. Accettate il nostro trattato impegnandovi a rimanere in pace con noi come fratelli?
|
||||
firstContactDialog.welcomeSimple.text=Il popolo %nation% vi porge il benvenuto. Siamo una gloriosa nazione di %camps% %settlementType%. Accettate un trattato con noi per rimanere in pace come fratelli?
|
||||
abandonColony.no=Annulla
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
# Author: Tark
|
||||
# Author: Ti4goc
|
||||
# Author: Tiago Aquino <tiagoaquino007@hotmail.com>
|
||||
# Author: Unamane
|
||||
# Author: Vitorvicentevalente
|
||||
# Author: Waldir
|
||||
# Author: Waldyrious
|
||||
|
@ -2877,8 +2878,7 @@ report.trade.unitsSold=Unidades compradas ou vendidas
|
|||
report.turn.filter=Não mostrar este tipo de mensagens (%type%)
|
||||
report.turn.ignore=Ignorar esta mensagem (Colónia: %colony%, Mercadorias: %goods%)
|
||||
report.turn.playerNation={{tag:country|%nation%}} de %player%
|
||||
# Fuzzy
|
||||
aboutPanel.copyright=Todos os direitos reservados © 2002-2019 A Equipa do FreeCol
|
||||
aboutPanel.copyright=Direitos de autor © 2002-2021 A Equipa do FreeCol
|
||||
aboutPanel.legalDisclaimer=O FreeCol é software livre: pode redistribuí-lo ou modificá-lo nos termos da GNU General Public License tal como publicada pela Free Software Foundation, versão 2 da Licença ou qualquer versão posterior.
|
||||
aboutPanel.manual=Descarregamento do Manual do FreeCol
|
||||
aboutPanel.officialSite=Sítio oficial:
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
# Author: Liuxinyu970226
|
||||
# Author: Macofe
|
||||
# Author: Mark
|
||||
# Author: Matěj Suchánek
|
||||
# Author: McDutchie
|
||||
# Author: Meno25
|
||||
# Author: MuratTheTurkish
|
||||
|
@ -43,7 +44,7 @@
|
|||
|
||||
chilly=Value for:\n* {{Msg-freecol|Model.option.temperature.name}}
|
||||
cold={{Identical|Cold}}\n\nValue for:\n* {{Msg-freecol|Model.option.temperature.name}}
|
||||
dry=Value for:\n* {{Msg-freecol|Model.option.humidity.name}}interplacents degress§
|
||||
dry=Value for:\n* {{Msg-freecol|Model.option.humidity.name}}
|
||||
hot={{Identical|Hot}}\n\nValue for:\n* {{Msg-freecol|Model.option.temperature.name}}
|
||||
temperate=Value for:\n* {{Msg-freecol|Model.option.temperature.name}}\n{{Identical|Temperate}}
|
||||
veryDry=Value for:\n* {{Msg-freecol|Model.option.humidity.name}}
|
||||
|
|
|
@ -276,7 +276,7 @@ public final class InGameController extends FreeColClientHolder {
|
|||
|
||||
// Successfully found a unit to display
|
||||
if (player.hasNextActiveUnit()) {
|
||||
getGUI().changeView(player.getNextActiveUnit());
|
||||
getGUI().changeView(player.getNextActiveUnit(), false);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -311,7 +311,12 @@ public final class InGameController extends FreeColClientHolder {
|
|||
; // If messages are displayed they probably refer to the
|
||||
// current unit, so do not update it.
|
||||
} else {
|
||||
if (updateUnit || active == null || !active.couldMove()
|
||||
// Update the unit if asked to, or none present, or the
|
||||
// current one is out of moves (but not in Europe or newly
|
||||
// bought/trained units get immediately deselected), or has
|
||||
// been captured.
|
||||
if (updateUnit || active == null
|
||||
|| (!active.couldMove() && !active.isInEurope())
|
||||
|| !getMyPlayer().owns(active)) {
|
||||
// Tile is displayed if no new active unit is found,
|
||||
// useful when the last unit might have died
|
||||
|
@ -782,7 +787,7 @@ public final class InGameController extends FreeColClientHolder {
|
|||
if (getGUI().isPanelShowing()) return false; // Clear the panel first
|
||||
|
||||
final Player player = getMyPlayer();
|
||||
final Unit active = getGUI().getActiveUnit();
|
||||
Unit active = getGUI().getActiveUnit();
|
||||
boolean ret = true;
|
||||
|
||||
// Ensure the goto mode sticks.
|
||||
|
@ -795,7 +800,7 @@ public final class InGameController extends FreeColClientHolder {
|
|||
for (Unit unit : transform(player.getUnits(), tradePred,
|
||||
Function.<Unit>identity(),
|
||||
tradeRouteUnitComparator)) {
|
||||
getGUI().changeView(unit);
|
||||
getGUI().changeView(unit, false);
|
||||
if (!moveToDestination(unit, messages)) {
|
||||
ret = false;
|
||||
break;
|
||||
|
@ -820,15 +825,20 @@ public final class InGameController extends FreeColClientHolder {
|
|||
// Process all units.
|
||||
while (player.hasNextGoingToUnit()) {
|
||||
Unit unit = player.getNextGoingToUnit();
|
||||
getGUI().changeView(unit);
|
||||
getGUI().changeView(unit, false);
|
||||
// Move the unit as much as possible
|
||||
if (!moveToDestination(unit, null)) {
|
||||
ret = false;
|
||||
break;
|
||||
}
|
||||
// This was the active unit, but we are confident it can not
|
||||
// do anything else useful, so do not reselect it below
|
||||
if (active == unit) active = null;
|
||||
}
|
||||
nextModelMessage(); // Might have LCR messages to display
|
||||
if (ret) { // If no unit issues, restore previously active unit
|
||||
getGUI().changeView(active, false);
|
||||
}
|
||||
// Might have LCR messages to display
|
||||
nextModelMessage();
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -893,24 +903,29 @@ public final class InGameController extends FreeColClientHolder {
|
|||
* @param unit The {@code Unit} to move.
|
||||
* @param messages An optional list in which to retain any
|
||||
* trade route {@code ModelMessage}s generated.
|
||||
* @return True if automatic movement can proceed.
|
||||
* @return True if all is well with the unit, false if the unit
|
||||
* should be selected and examined by the user.
|
||||
*/
|
||||
private boolean moveToDestination(Unit unit, List<ModelMessage> messages) {
|
||||
final Player player = getMyPlayer();
|
||||
Location destination;
|
||||
Location destination = unit.getDestination();
|
||||
PathNode path;
|
||||
boolean ret;
|
||||
if (!requireOurTurn()
|
||||
|| unit.isAtSea()
|
||||
|| unit.getMovesLeft() <= 0
|
||||
|| unit.getState() == UnitState.SKIPPED) {
|
||||
return true;
|
||||
ret = true; // invalid, should not be here
|
||||
} else if (unit.getTradeRoute() != null) {
|
||||
return followTradeRoute(unit, messages);
|
||||
} else if ((destination = unit.getDestination()) == null) {
|
||||
return true;
|
||||
ret = followTradeRoute(unit, messages);
|
||||
} else if (destination == null) {
|
||||
ret = true; // also invalid, but trade route check needed first
|
||||
} else if (!changeState(unit, UnitState.ACTIVE)) {
|
||||
return true;
|
||||
ret = true; // another error case
|
||||
} else if ((path = unit.findPath(destination)) == null) {
|
||||
// No path to destination. Give the player a chance to do
|
||||
// something about it, but default to skipping this unit as
|
||||
// the path blockage is most likely just transient
|
||||
StringTemplate src = unit.getLocation()
|
||||
.getLocationLabelFor(player);
|
||||
StringTemplate dst = destination.getLocationLabelFor(player);
|
||||
|
@ -922,26 +937,34 @@ public final class InGameController extends FreeColClientHolder {
|
|||
.addStringTemplate("%destination%", dst);
|
||||
getGUI().showInformationPanel(unit, template);
|
||||
changeState(unit, UnitState.SKIPPED);
|
||||
return false;
|
||||
} else {
|
||||
ret = false;
|
||||
} else if (!movePath(unit, path)) {
|
||||
ret = false; // ask the player to resolve the movePath problem
|
||||
} if (unit.isAtLocation(destination)) {
|
||||
final Colony colony = (unit.hasTile()) ? unit.getTile().getColony()
|
||||
: null;
|
||||
// Clear ordinary destinations if arrived.
|
||||
getGUI().changeView(unit);
|
||||
if (!movePath(unit, path)) return false;
|
||||
|
||||
if (unit.isAtLocation(destination)) {
|
||||
if (!askClearGotoOrders(unit)) return false;
|
||||
|
||||
Colony colony = (unit.hasTile()) ? unit.getTile().getColony()
|
||||
: null;
|
||||
if (colony != null) {
|
||||
if (!checkCashInTreasureTrain(unit)) {
|
||||
dispColonyPanel(colony, unit);
|
||||
}
|
||||
return false;
|
||||
if (!askClearGotoOrders(unit)) {
|
||||
ret = false; // Should not happen. Desync? Ask the user.
|
||||
} else if (colony != null) {
|
||||
// Always ask to be selected if arriving at a colony
|
||||
// unless the unit cashed in (and thus gone), and bring
|
||||
// up the colony panel so something can be done with the
|
||||
// unit
|
||||
if (checkCashInTreasureTrain(unit)) {
|
||||
ret = true;
|
||||
} else {
|
||||
dispColonyPanel(colony, unit);
|
||||
ret = false;
|
||||
}
|
||||
} else {
|
||||
// If the unit has moves left, select it
|
||||
ret = unit.getMovesLeft() == 0;
|
||||
}
|
||||
return true;
|
||||
} else { // Still in transit, do not select
|
||||
ret = true;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1189,6 +1212,9 @@ public final class InGameController extends FreeColClientHolder {
|
|||
// the goto orders because they have failed.
|
||||
if (!askClearGotoOrders(unit)) result = false;
|
||||
}
|
||||
// Force redisplay of unit information
|
||||
getGUI().changeView(unit, true);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -1764,7 +1790,7 @@ public final class InGameController extends FreeColClientHolder {
|
|||
|
||||
} else if (settlement instanceof IndianSettlement) {
|
||||
askServer().newNativeTradeSession(unit, (IndianSettlement)settlement);
|
||||
getGUI().changeView(unit); // Will be deselected on losing moves
|
||||
getGUI().changeView(unit, false); // Will be deselected on losing moves
|
||||
|
||||
} else {
|
||||
throw new RuntimeException("Bogus settlement: "
|
||||
|
@ -3947,11 +3973,11 @@ public final class InGameController extends FreeColClientHolder {
|
|||
|
||||
invokeLater(() -> {
|
||||
Unit current = gui.getActiveUnit();
|
||||
gui.changeView(unit);
|
||||
gui.changeView(unit, false);
|
||||
UnitWas uw = new UnitWas(unit);
|
||||
nativeTrade(nt, act, nti, prompt);
|
||||
uw.fireChanges();
|
||||
gui.changeView(current);
|
||||
gui.changeView(current, false);
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -4417,7 +4443,7 @@ public final class InGameController extends FreeColClientHolder {
|
|||
Unit newUnit = askEmigrate(player.getEurope(),
|
||||
MigrationType.migrantIndexToSlot(index));
|
||||
if (newUnit != null) {
|
||||
getGUI().changeView(newUnit);
|
||||
getGUI().changeView(newUnit, false);
|
||||
updateGUI(null, false);
|
||||
}
|
||||
return newUnit != null;
|
||||
|
@ -4921,7 +4947,7 @@ public final class InGameController extends FreeColClientHolder {
|
|||
&& (newUnit = europeWas.getNewUnit()) != null;
|
||||
if (ret) {
|
||||
europeWas.fireChanges();
|
||||
getGUI().changeView(newUnit);
|
||||
getGUI().changeView(newUnit, false);
|
||||
updateGUI(null, false);
|
||||
}
|
||||
return ret;
|
||||
|
|
|
@ -1560,8 +1560,10 @@ public class GUI extends FreeColClientHolder {
|
|||
* MapEditorController, TilePopup, QuickActionMenu, UnitLabel
|
||||
*
|
||||
* @param unit The {@code Unit} to select.
|
||||
* @param force Set true if the unit is the same, but *has*
|
||||
* changed in some way (e.g. moves left).
|
||||
*/
|
||||
public void changeView(Unit unit) {}
|
||||
public void changeView(Unit unit, boolean force) {}
|
||||
|
||||
/**
|
||||
* Change to map transform mode, and select a transform.
|
||||
|
|
|
@ -674,7 +674,7 @@ public class SwingGUI extends GUI {
|
|||
// Update the view, somehow. Try really hard to find a tile
|
||||
// to focus on
|
||||
if (active != null) {
|
||||
changeView(active);
|
||||
changeView(active, false);
|
||||
if (tile == null) {
|
||||
tile = active.getTile();
|
||||
if (tile == null) {
|
||||
|
@ -684,7 +684,7 @@ public class SwingGUI extends GUI {
|
|||
} else if (tile != null) {
|
||||
changeView(tile);
|
||||
} else {
|
||||
changeView((Unit)null);
|
||||
changeView((Unit)null, false);
|
||||
}
|
||||
this.mapViewer.changeFocus(tile);
|
||||
}
|
||||
|
@ -1197,14 +1197,14 @@ public class SwingGUI extends GUI {
|
|||
* {@inheritDoc}
|
||||
*/
|
||||
@Override
|
||||
public void changeView(Unit unit) {
|
||||
public void changeView(Unit unit, boolean force) {
|
||||
boolean change = changeViewMode(ViewMode.MOVE_UNITS);
|
||||
change |= changeActiveUnit(unit);
|
||||
if (unit != null) {
|
||||
// Bring the selected tile along with the unit.
|
||||
change |= changeSelectedTile(unit.getTile(), true);
|
||||
}
|
||||
changeDone(change);
|
||||
changeDone(change || force);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1326,7 +1326,7 @@ public class SwingGUI extends GUI {
|
|||
}
|
||||
}
|
||||
}
|
||||
changeView(other);
|
||||
changeView(other, false);
|
||||
} else { // Select the tile under the unit if it is not ours
|
||||
changeView(tile);
|
||||
}
|
||||
|
|
|
@ -218,7 +218,7 @@ public final class TilePopup extends JPopupMenu {
|
|||
.template("activateAllUnits"));
|
||||
activateAllItem.addActionListener((ActionEvent ae) -> {
|
||||
for (Unit unit : tile.getUnitList()) igc.clearOrders(unit);
|
||||
gui.changeView(tile.getFirstUnit());
|
||||
gui.changeView(tile.getFirstUnit(), false);
|
||||
});
|
||||
add(activateAllItem);
|
||||
}
|
||||
|
@ -370,6 +370,7 @@ public final class TilePopup extends JPopupMenu {
|
|||
|
||||
/**
|
||||
* Adds a unit entry to this popup.
|
||||
*
|
||||
* @param menu a {@code Container} value
|
||||
* @param unit The unit that will be represented on the popup.
|
||||
* @param enabled The initial state for the menu item.
|
||||
|
@ -387,7 +388,7 @@ public final class TilePopup extends JPopupMenu {
|
|||
JMenuItem menuItem = new JMenuItem(text);
|
||||
menuItem.setFont(this.font);
|
||||
menuItem.addActionListener((ActionEvent ae) -> {
|
||||
gui.changeView(unit);
|
||||
gui.changeView(unit, false);
|
||||
});
|
||||
if (indent) {
|
||||
menuItem.setFont(menuItem.getFont().deriveFont(Font.ITALIC));
|
||||
|
|
|
@ -94,7 +94,7 @@ public class ChangeAction extends UnitAction {
|
|||
if (tile.getColony() != null) {
|
||||
getGUI().showColonyPanel(tile.getColony(), unit);
|
||||
} else if (unit.isOnCarrier()) {
|
||||
getGUI().changeView(unit.getCarrier());
|
||||
getGUI().changeView(unit.getCarrier(), false);
|
||||
} else {
|
||||
boolean activeUnitFound = false;
|
||||
for (Unit u : tile.getUnitList()) {
|
||||
|
@ -103,7 +103,7 @@ public class ChangeAction extends UnitAction {
|
|||
} else if (activeUnitFound
|
||||
&& u.getState() == Unit.UnitState.ACTIVE
|
||||
&& u.getMovesLeft() > 0) {
|
||||
getGUI().changeView(u);
|
||||
getGUI().changeView(u, false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -111,7 +111,7 @@ public class ChangeAction extends UnitAction {
|
|||
u -> (u != unit
|
||||
&& u.getState() == Unit.UnitState.ACTIVE
|
||||
&& u.getMovesLeft() > 0));
|
||||
if (active != null) getGUI().changeView(active);
|
||||
if (active != null) getGUI().changeView(active, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -59,7 +59,7 @@ public class ToggleViewModeAction extends MapboardAction {
|
|||
gui.changeView(gui.getSelectedTile());
|
||||
break;
|
||||
case TERRAIN:
|
||||
gui.changeView(gui.getActiveUnit());
|
||||
gui.changeView(gui.getActiveUnit(), false);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
|
|
@ -212,7 +212,7 @@ public final class EndTurnDialog extends FreeColConfirmDialog {
|
|||
if (wrapper.unit.isInEurope()) {
|
||||
getGUI().showEuropePanel();
|
||||
} else {
|
||||
getGUI().changeView(wrapper.unit);
|
||||
getGUI().changeView(wrapper.unit, false);
|
||||
if (wrapper.unit.getColony() != null) {
|
||||
getGUI().showColonyPanel(wrapper.unit.getColony(),
|
||||
wrapper.unit);
|
||||
|
|
|
@ -333,7 +333,7 @@ public final class UnitLabel extends FreeColLabel
|
|||
break;
|
||||
case ACTIVATE_UNIT:
|
||||
igc.changeState(this.unit, UnitState.ACTIVE);
|
||||
getGUI().changeView(this.unit);
|
||||
getGUI().changeView(this.unit, false);
|
||||
break;
|
||||
case FORTIFY:
|
||||
igc.changeState(this.unit, UnitState.FORTIFYING);
|
||||
|
|
|
@ -108,26 +108,34 @@ public class GoodsTypePanel extends MigPanel implements DropTarget {
|
|||
* Do not repaint, that will be done top down.
|
||||
*
|
||||
* @param label The {@code GoodsTypeLabel} to add.
|
||||
* @return True if the label was added.
|
||||
*/
|
||||
public void addLabel(GoodsTypeLabel label) {
|
||||
public boolean addLabel(GoodsTypeLabel label) {
|
||||
if (label != null
|
||||
&& (!this.unique || findLabel(label.getType()) == null)) {
|
||||
add(label);
|
||||
Component ret = super.add(label);
|
||||
revalidate();
|
||||
repaint();
|
||||
return ret != null;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove labels that correspond to a given goods type.
|
||||
*
|
||||
* @param gt The {@code GoodsType} to remove.
|
||||
* @return True if the goods were removed.
|
||||
*/
|
||||
public void removeGoodsType(GoodsType gt) {
|
||||
public boolean removeGoodsType(GoodsType gt) {
|
||||
Component child = findLabel(gt);
|
||||
if (child != null) {
|
||||
remove(child);
|
||||
super.remove(child);
|
||||
revalidate();
|
||||
repaint();
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Implement DropTarget
|
||||
|
@ -141,10 +149,8 @@ public class GoodsTypePanel extends MigPanel implements DropTarget {
|
|||
* {@inheritDoc}
|
||||
*/
|
||||
public Component add(Component comp, boolean editState) {
|
||||
if (comp instanceof GoodsTypeLabel) {
|
||||
addLabel((GoodsTypeLabel)comp);
|
||||
return comp;
|
||||
}
|
||||
if (comp instanceof GoodsTypeLabel
|
||||
&& addLabel((GoodsTypeLabel)comp)) return comp;
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -506,13 +506,21 @@ public final class InfoPanel extends FreeColPanel
|
|||
|
||||
boolean updated = false;
|
||||
InfoPanelMode oldMode = changeMode(InfoPanelMode.UNIT);
|
||||
if (oldMode != InfoPanelMode.UNIT || unit != this.unit) {
|
||||
if (unit != this.unit) {
|
||||
// Only update the PCLs when the unit changes
|
||||
if (this.unit != null) {
|
||||
this.unit.removePropertyChangeListener(this);
|
||||
GoodsContainer gc = this.unit.getGoodsContainer();
|
||||
if (gc != null) gc.removePropertyChangeListener(this);
|
||||
}
|
||||
unit.addPropertyChangeListener(this);
|
||||
GoodsContainer gc = unit.getGoodsContainer();
|
||||
if (gc != null) gc.addPropertyChangeListener(this);
|
||||
this.unit = fillUnitPanel(unit);
|
||||
updated = true;
|
||||
}
|
||||
// Always call fillUnitPanel because while the unit may not
|
||||
// change, its annotations (such as moves left) might
|
||||
this.unit = fillUnitPanel(unit);
|
||||
updated = true;
|
||||
logger.info("InfoPanel " + ((updated) ? "updated " : "maintained ")
|
||||
+ oldMode + " -> " + this.mode + " with unit " + unit);
|
||||
}
|
||||
|
|
|
@ -503,7 +503,7 @@ public final class QuickActionMenu extends JPopupMenu {
|
|||
freeColClient.getInGameController()
|
||||
.changeState(tempUnit, Unit.UnitState.ACTIVE);
|
||||
}
|
||||
gui.changeView(tempUnit);
|
||||
gui.changeView(tempUnit, false);
|
||||
});
|
||||
menuItem.setEnabled(!isUnitAtSea);
|
||||
this.add(menuItem);
|
||||
|
|
|
@ -177,7 +177,7 @@ public final class TradeRouteInputPanel extends FreeColPanel
|
|||
private class StopGoodsTypesPanel extends GoodsTypePanel {
|
||||
|
||||
public StopGoodsTypesPanel() {
|
||||
super(false);
|
||||
super(new MigLayout("wrap 10"), false);
|
||||
}
|
||||
|
||||
// Interface DropTarget
|
||||
|
|
|
@ -29,8 +29,12 @@ public class FreeColSeed {
|
|||
|
||||
public static final long DEFAULT_SEED = 0L;
|
||||
|
||||
/** The seed to use for pseudo-random number generators. */
|
||||
private static long freeColSeed = DEFAULT_SEED;
|
||||
|
||||
|
||||
/** Has a seed been set? */
|
||||
private static boolean seeded = false;
|
||||
|
||||
|
||||
/**
|
||||
* Gets the seed for the PRNG.
|
||||
|
@ -41,6 +45,15 @@ public class FreeColSeed {
|
|||
return FreeColSeed.freeColSeed;
|
||||
}
|
||||
|
||||
/**
|
||||
* Has the game been seeded?
|
||||
*
|
||||
* @return True if a seed has been set.
|
||||
*/
|
||||
public static boolean hasFreeColSeed() {
|
||||
return FreeColSeed.seeded;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a new seed.
|
||||
*/
|
||||
|
@ -57,6 +70,7 @@ public class FreeColSeed {
|
|||
public static boolean setFreeColSeed(String arg) {
|
||||
try {
|
||||
FreeColSeed.freeColSeed = Long.parseLong(arg);
|
||||
FreeColSeed.seeded = true;
|
||||
return true;
|
||||
} catch (NumberFormatException nfe) {}
|
||||
return false;
|
||||
|
|
|
@ -379,7 +379,7 @@ public class DebugUtils {
|
|||
// Note "game" is no longer valid after reconnect.
|
||||
Unit unit = freeColClient.getGame()
|
||||
.getFreeColGameObject(sUnit.getId(), Unit.class);
|
||||
if (unit != null) gui.changeView(unit);
|
||||
if (unit != null) gui.changeView(unit, false);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -538,7 +538,7 @@ public class DebugUtils {
|
|||
server.getInGameController().debugChangeOwner(sUnit, sPlayer);
|
||||
|
||||
Player myPlayer = freeColClient.getMyPlayer();
|
||||
if (myPlayer.owns(unit)) gui.changeView(unit);
|
||||
if (myPlayer.owns(unit)) gui.changeView(unit, true);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -917,8 +917,7 @@ public class DebugUtils {
|
|||
}
|
||||
}
|
||||
Unit unit = units.get(0);
|
||||
gui.changeView(); // force active unit update
|
||||
gui.changeView(unit);
|
||||
gui.changeView(unit, true);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -106,7 +106,12 @@ public class FreeColXMLReader extends StreamReaderDelegate
|
|||
/** The read scope to apply. */
|
||||
private ReadScope readScope;
|
||||
|
||||
/** A cache of uninterned objects. */
|
||||
/**
|
||||
* A cache of uninterned objects. Uninterned reads add to this list
|
||||
* so that they can refer to sub-objects correctly. However there is no
|
||||
* obvious place to clear this cache, so we do that in replaceScope
|
||||
* as you can not expect to reference the same object across scopes.
|
||||
*/
|
||||
private Map<String, FreeColObject> uninterned
|
||||
= new HashMap<String, FreeColObject>();
|
||||
|
||||
|
@ -241,6 +246,12 @@ public class FreeColXMLReader extends StreamReaderDelegate
|
|||
*/
|
||||
public ReadScope replaceScope(ReadScope newReadScope) {
|
||||
ReadScope ret = this.readScope;
|
||||
|
||||
if (this.readScope != newReadScope) {
|
||||
// Take the opportunity to clear the uninterned object cache
|
||||
// as they can not be the same across scopes
|
||||
this.uninterned.clear();
|
||||
}
|
||||
this.readScope = newReadScope;
|
||||
return ret;
|
||||
}
|
||||
|
|
|
@ -326,7 +326,13 @@ public final class FreeColServer {
|
|||
// NationOptions will be read from the saved game.
|
||||
Session.clearAll();
|
||||
|
||||
if (FreeColSeed.hasFreeColSeed()) {
|
||||
// A seed has been specified on the command line, so override
|
||||
// the PRNG from savegame.
|
||||
this.random = new Random(FreeColSeed.getFreeColSeed());
|
||||
}
|
||||
this.inGameController.setRandom(this.random);
|
||||
|
||||
this.mapGenerator = null;
|
||||
registerWithMetaServer();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue