You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(87) |
Jun
(46) |
Jul
(19) |
Aug
(2) |
Sep
(143) |
Oct
(74) |
Nov
(6) |
Dec
(122) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(182) |
Feb
(125) |
Mar
(11) |
Apr
(30) |
May
|
Jun
(57) |
Jul
(49) |
Aug
(124) |
Sep
(77) |
Oct
(78) |
Nov
(102) |
Dec
(256) |
2007 |
Jan
(217) |
Feb
(128) |
Mar
(303) |
Apr
(235) |
May
(373) |
Jun
(248) |
Jul
(230) |
Aug
(297) |
Sep
(138) |
Oct
(103) |
Nov
(96) |
Dec
(99) |
2008 |
Jan
(127) |
Feb
(140) |
Mar
(135) |
Apr
(100) |
May
(149) |
Jun
(115) |
Jul
(116) |
Aug
(95) |
Sep
(55) |
Oct
(120) |
Nov
(117) |
Dec
(153) |
2009 |
Jan
(201) |
Feb
(134) |
Mar
(119) |
Apr
(110) |
May
(104) |
Jun
(95) |
Jul
(130) |
Aug
(77) |
Sep
(83) |
Oct
(80) |
Nov
(97) |
Dec
(159) |
2010 |
Jan
(210) |
Feb
(147) |
Mar
(146) |
Apr
(153) |
May
(125) |
Jun
(177) |
Jul
(150) |
Aug
(105) |
Sep
(108) |
Oct
(123) |
Nov
(142) |
Dec
(119) |
2011 |
Jan
(145) |
Feb
(47) |
Mar
(163) |
Apr
(133) |
May
(120) |
Jun
(130) |
Jul
(201) |
Aug
(129) |
Sep
(127) |
Oct
(111) |
Nov
(95) |
Dec
(237) |
2012 |
Jan
(103) |
Feb
(72) |
Mar
(61) |
Apr
(75) |
May
(67) |
Jun
(101) |
Jul
(64) |
Aug
(90) |
Sep
(54) |
Oct
(83) |
Nov
(73) |
Dec
(97) |
2013 |
Jan
(67) |
Feb
(5) |
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <sti...@us...> - 2022-01-18 19:35:43
|
Revision: 10494 http://sourceforge.net/p/freecol/code/10494 Author: stiangre Date: 2022-01-18 19:35:41 +0000 (Tue, 18 Jan 2022) Log Message: ----------- Adding readme explaining this directory is only for historical purposes. Added Paths: ----------- freecol/README.md Added: freecol/README.md =================================================================== --- freecol/README.md (rev 0) +++ freecol/README.md 2022-01-18 19:35:41 UTC (rev 10494) @@ -0,0 +1 @@ +This is the old FreeCol code prior to migration to Git. Property changes on: freecol/README.md ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sie...@us...> - 2013-03-11 04:55:27
|
Revision: 10472 http://freecol.svn.sourceforge.net/freecol/?rev=10472&view=rev Author: siebrand Date: 2013-03-11 04:55:19 +0000 (Mon, 11 Mar 2013) Log Message: ----------- Localisation updates from http://translatewiki.net. Modified Paths: -------------- freecol/trunk/data/strings/FreeColMessages_br.properties freecol/trunk/data/strings/FreeColMessages_cs_CZ.properties freecol/trunk/data/strings/FreeColMessages_es_ES.properties freecol/trunk/data/strings/FreeColMessages_fr.properties freecol/trunk/data/strings/FreeColMessages_ia.properties freecol/trunk/data/strings/FreeColMessages_it_IT.properties freecol/trunk/data/strings/FreeColMessages_nl_BE.properties freecol/trunk/data/strings/FreeColMessages_pl_PL.properties freecol/trunk/data/strings/FreeColMessages_pt_BR.properties freecol/trunk/data/strings/FreeColMessages_qqq.properties Modified: freecol/trunk/data/strings/FreeColMessages_br.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_br.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_br.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -368,7 +368,9 @@ model.option.enhancedMissionaries.name=Misionerie aet war-raok model.option.enhancedMissionaries.shortDescription=Gwellaat a ra ar visionerien ar c'henwerzh ur gêriadenn ha reiñ a reont gwelusted d'an trowardroioù. model.option.giftProbability.name=Tebegenn prof +model.option.giftProbability.shortDescription=Dregantad a chansoù dre dro e vo profet gant ur c'hampadur henbroidi beoc'hus gant un dreistniver d'ur c'hampadur mignoned europat tost model.option.demandProbability.name=Goulenn hervez doare +model.option.demandProbability.shortDescription=Dregantad a chansoù dre dro e c'houlenno ur c'hampadur henvroidi enebour un truaj d'ur c'hampadur enebourien tost model.option.continueFoundingFatherRecruitment.name=Kenderc'hel da duda Tadoù diazezerien model.option.continueFoundingFatherRecruitment.shortDescription=Kenderc'hel da duta Tadoù diazezerien ur wech grataet an dizalc'hiezh. model.option.settlementLimitModifier.name=Kemmañ harz ar c'hêriadennoù @@ -1063,13 +1065,13 @@ indianSettlement.mostHatedUnknown=Dianav indianSettlement.wantedGoodsUnknown=Dianav indianSettlement.wantedGoodsNone=Hini ebet -# Fuzzy -indianSettlement.tension.happy=Izili hor broad zo o tañsal, laouen, tro-dro d'o zantad tan en ur ganañ kanaouenn o hendadoù. +indianSettlement.tension.happy=Izili ar vroad %nation% zo o tañsal, laouen, tro-dro d'o zantad tan en ur ganañ kanaouenn o hendadoù. indianSettlement.tension.content=Emañ izili ar vroad %nation% o labourat. Emañ o bugale o c'hoari disoursi o c'hoari toull-kuzh. indianSettlement.tension.displeased=Emañ izili ar vroad %nation% o labourat. Ne c'haller ket gwelet o bugale hag o hendaddoù zo pennoù teñval outo. indianSettlement.tension.angry=Emañ paotred dispont ar vroad %nation% o c'hourdoniñ war gwennoù. Chomet eo ar maouezed hag ar vugale da guzhat en teltennoù. indianSettlement.tension.hateful=Emañ paotred dispont ar vroad %nation% o prientiñ o armoù. Gwisket o deus o gourizioù kinklet gant lêr-penn o enebourien. Evit doare e vez implijet ar post-jahinañ reoliek. indianSettlement.alarmIncrease.tension.content=Penn %nation% e %settlement% a salud e vignoned eus %enemy%. Laouen omp o welet emañ ar c'henlabour o kreskiñ etrezomp. Prederiet omp avat abalamour d'ho trevadennerien zo oc'h aloubiñ hon douaroù. +indianSettlement.alarmIncrease.tension.angry=Penn %nation% à %settlement% a ro da c'houzout emañ ar re galonek o c'hoant d'ober ar brezel ouzh an %enemy% evit skarzhañ ho trevadennerien aloubus hag ho prezelourien lorc'hus warhon douaroù. indianSettlement.mission.tension.happy=Mision staliet, laouen eo %nation% o tegemer ho relijion nevez. indianSettlement.mission.tension.content=Mision staliet, prez zo war %nation% da zizoleiñ ho relijion nevez. indianSettlement.mission.tension.displeased=Mision staliet, feuket eo %nation%. Modified: freecol/trunk/data/strings/FreeColMessages_cs_CZ.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_cs_CZ.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_cs_CZ.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -302,6 +302,8 @@ direction.NW=severozápad server.reject=Toto nemůže server udělat. server.trade.noGoods=Nemůžete obchodovat se zbožím, které není přítomno. +main.javaVersion=Pro spuštění FreeCol je doporučena Java verze %minVersion% nebo lepší\n(nalezena verze %version%, pro přeskočení této kontroly použijte parametr --no-java-check). +main.memory=Pro JVM je nutné přiřadit více než %memory% bajtů paměti.\nRestartujte FreeCol s parametry: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=SOUBOR VOLEB cli.arg.debuglevel=ČÍSLO cli.arg.debugRun=TAHŮ[,SAVENAME] @@ -326,8 +328,9 @@ cli.error.home.notExists=Domovský adresář %string% neexistuje. cli.error.home.noRead=Nemohu číst z %string%. cli.error.home.noWrite=Nemohu zapisovat do %string%. -# Fuzzy -cli.freecol-data=nastaví ADRESÁŘ pro data FreeCol (obsahuje podadresář 'images') +cli.error.save=Nelze načíst uloženou hru %string%. +cli.error.timeout=%string% je příliš krátký (méně než %minimum%) +cli.freecol-data=nastaví ADRESÁŘ pro data FreeCol (obsahuje podadresář 'base') cli.font=nastavit výchozí písmo cli.help=zobrazí tuto nápovědu cli.home-directory=nastaví domácí ADRESÁŘ pro FreeCol (výchozí je uživatelův domovský adresář) @@ -1127,6 +1130,8 @@ server.invalidPlayerNations=Všichni hráči si musí před zahájením hry zvolit unikátní národ. server.timeOut=Při připojování k serveru došlo k Timeoutu. server.errorStartingGame=Během spouštění hry došlo k chybě. +server.load=Nelze načíst uloženou hru +server.initialize=Chyba při inicializaci serveru displayTileTextAction.EMPTY.name=Nezobrazovat text v polích displayTileTextAction.NAMES.name=Zobrazovat jména polí displayTileTextAction.OWNERS.name=Zobrazovat vlastníky polí @@ -1242,6 +1247,7 @@ sentryUnit=Hlídka clearUnitOrders=Zrušit příkazy leaveTown=Opustit město +board=Naložit %unit% clearSpeciality=Zrušit specializaci clearSpeciality.areYouSure=Jste si jistý, že chcete %oldUnit% degradovat na %unit%? clearSpeciality.impossible=Jednotka %unit% nemůže být degradována! @@ -2471,8 +2477,7 @@ model.source.ambushBonus.name=Přepadový bonus model.source.artilleryInTheOpen.name=Nekrytá Artilerie model.source.zeroThreshold.name=Žádná negativní produkce -# Fuzzy -model.source.finalResult.name=Celkový výsledek +model.source.finalResult.name=Výsledek jednotky model.source.baseDefence.name=Základní obrana model.source.fortified.name=Opevněný model.source.artilleryAgainstRaid.name=Artilerie proti útoku Modified: freecol/trunk/data/strings/FreeColMessages_es_ES.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_es_ES.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_es_ES.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -1480,8 +1480,7 @@ model.disaster.effect.damagedUnit.name=Daños a las unidades model.disaster.effect.lossOfUnit.name=Pérdida de unidades model.disaster.effect.lossOfMoney=%amount% de oro se ha perdido. -# Fuzzy -model.disaster.effect.lossOfGoods=%goods% se han perdido. +model.disaster.effect.lossOfGoods=%amount% %goods% se han perdido. model.disaster.effect.lossOfTileProduction=Campos y bosques fueron dañados. Se aplicarán sanciones a la producción. model.disaster.effect.lossOfBuildingProduction=Los edificios fueron dañados. Aplicarán sanciones a la producción. model.disaster.effect.lossOfBuilding=%building% fue destruido. Modified: freecol/trunk/data/strings/FreeColMessages_fr.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_fr.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_fr.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -1268,6 +1268,7 @@ sentryUnit=Mettre en veille clearUnitOrders=Effacer les ordres leaveTown=Quitter la ville +# Fuzzy board=Tableau de %unit% clearSpeciality=Oublier la spécialité clearSpeciality.areYouSure=Êtes-vous certain de vouloir abaisser %oldUnit% à %unit% ? Modified: freecol/trunk/data/strings/FreeColMessages_ia.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ia.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_ia.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -25,6 +25,7 @@ false=False more=plus... none=Nulle +many=multes nothing=Nihil all=Totes notApplicable.short=N/A @@ -191,6 +192,10 @@ filter.gameOptions=Optiones de joco FreeCol (*.fgo) filter.gameOptionsAndSavedGames=Optiones de joco e partitas salveguardate de FreeCol (*.fgo e *.fsg) filter.xml=XML (Linguage de marcation extensibile). +freecol.map.Africa=Africa +freecol.map.Australia=Australia +freecol.map.America_large=America (grande) +freecol.map.Caribbean_basin=Mar Caribe underRepair=In reparation (%turns% {{plural:%turns%|one=torno|other=tornos}} restante) EventPanel.DISCOVER_PACIFIC=Vos discoperi le Oceano Pacific. EventPanel.FIRST_LANDING=Prime disbarcamento in le Nove Mundo. @@ -234,6 +239,7 @@ menuBar.debug.addImmigration=Adder immigration menuBar.debug.addLiberty=Adder libertate a cata colonia menuBar.debug.stepRandomNumberGenerator=Avantiar le generator de numeros aleatori +menuBar.debug.displayUnits=Monstrar unitates menuBar.debug.randomValue=Valor del generator de numeros aleatori: %value% menuBar.debug.displayPanels=Monstrar pannellos menuBar.debug.displayMonarchPanel=Monstrar le pannello Monarcha @@ -289,6 +295,8 @@ direction.NW=nord-west server.reject=Le servitor non pote facer isto. server.trade.noGoods=Tu non pote commerciar benes que non es presente. +main.javaVersion=Java version %minVersion% o melior es recommendate pro executar FreeCol\n(%version% detegite, usa --no-java-check pro saltar iste verification). +main.memory=Es necessari assignar plus de %memory% bytes de memoria pro usar le JVM.\nReinitia FreeCol con: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=FILE DE OPTIONES cli.arg.debuglevel=NUMERO cli.arg.debugRun=TURNS[,SAVENAME] @@ -313,8 +321,9 @@ cli.error.home.notExists=Le directorio initial %string% non existe. cli.error.home.noRead=Non pote leger de %string%. cli.error.home.noWrite=Non pote scriber a %string%. -# Fuzzy -cli.freecol-data=defini le DIRECTORIO de datos de FreeCol (ha un subdirecotrio nominate 'images') +cli.error.save=Impossibile leger le joco salveguardate %string%. +cli.error.timeout=%string% es toppo curte (minus de %minimum%) +cli.freecol-data=defini le DIRECTORIO de datos de FreeCol (ha un subdirectorio nominate 'base') cli.font=predefinir le typo de litteras cli.help=presenta iste texto de adjuta cli.home-directory=defini le DIRECTORIO initial de FreeCol (predefinite como le directorio personal del usator) @@ -962,6 +971,7 @@ noClaimReason.worked=Un altere stabilimento usa jam iste terra. noClaimReason.europeans=Iste terra es revindicate per un altere nation europee. noClaimReason.natives=Iste terra es revindicate per un tribo indigena. +noClaimReason.occupied=Iste territorio es occupate per un inimico periculose. noAddReason.already_present=Jam presente in iste loco. noAddReason.wrong_type=Typo incorrecte pro iste loco. noAddReason.capacity_exceeded=Il non resta spatio sufficiente in iste loco. @@ -1030,6 +1040,7 @@ move.noAccessWar=Nos non pote commerciar con le %nation% durante le guerra. move.noAccessWater=Nostre %unit% debe abbordar ante de entrar in le stabilimento. move.noAttackWater=Nostre %unit% debe atterrar ante de attaccar. +move.noTile=Nostre %unit% non es sur le carta! notYourTurn=Il non es ancora tu torno! twoTurnsPerYear=A partir del anno %year%, il habera duo tornos per anno, in loco de un! payForBuilding.text=Vole tu pagar %amount% de auro a fin de completar iste edificio? @@ -1049,9 +1060,22 @@ indianSettlement.mostHatedUnknown=Incognite indianSettlement.wantedGoodsUnknown=Incognite indianSettlement.wantedGoodsNone=Nulle +indianSettlement.tension.happy=Le membros del nation %nation% dansa felicemente circa lor foco de campo, cantante le cantiones de lor ancestres. +indianSettlement.tension.content=Le membros del nation %nation% es occupate a travaliar. Lor infantes joca allegremente le joco de celamento. +indianSettlement.tension.displeased=Le membros del nation %nation% es occupate a travaliar. Lor infantes se absconde, e lor ancianos arruga le fronte. +indianSettlement.tension.angry=Le bravos del nation %nation% se occupa practicante le tiro de precision. Le feminas e infantes se cela in lor tentas. +indianSettlement.tension.hateful=Le bravos del nation %nation% agita lor armas. Illes ha adornate lor cincturas con le scalps de lor inimicos, e lor palos de tortura monstra le signos de uso intensive. +indianSettlement.alarmIncrease.tension.content=Le chef del %nation% a %settlement% saluta su amicos le %enemy%. Nos es felice de vider crescer le cooperation inter nos, ma nos es preoccupate per le invasiones de vostre colonos in nostre terras. +indianSettlement.alarmIncrease.tension.angry=Le chef del %nation% a %settlement% adverti que le bravos appella apertemente al guerra con le %enemy%, pro disembarassar nos de vostre colonos arrogante e belligerente que invade nostre terras. +indianSettlement.mission.tension.happy=Mission fundate. Le %nation% se approxima a tu nove religion con gaudio. +indianSettlement.mission.tension.content=Mission fundate. Le %nation% se approxima a tu nove religion con curiositate. +indianSettlement.mission.tension.displeased=Mission fundate. Le %nation% se senti offendite. +indianSettlement.mission.tension.angry=Missionario capturate. Le %nation% rejecta tu nove religion. +indianSettlement.mission.tension.hateful=Missionario sacrificate. Le %nation% se ride de tu nove religion. indianSettlement.mission.enemyDenounce=Un missionario del %enemy% accusava nostre missionario in %settlement% de heresia, ma le %nation% rejectava le inculpation. indianSettlement.mission.noDenounce=Le %nation% rejecta le accusationes de heresia, e executa tu missionario como false propheta. indianSettlement.mission.denounced=Tu missionario a %settlement% ha essite denunciate e executate! +indianSettlement.mission.destroyed=Vostre missionario a %settlement% ha morite in le destruction del stabilimento. indianSettlement.capitalBurned=Tu ha incinerate %name%, le capital del %nation%. Le %nation% se rende a tu poter! learnSkill.text=Vole tu viver inter le indigenas e devenir un %skill%? learnSkill.yes=Si, me placerea @@ -1099,6 +1123,8 @@ server.invalidPlayerNations=Tote le jocatores debe seliger un nation unic ante que le partita pote comenciar. server.timeOut=Tempore limite excedite pro tentar connecter al servitor. server.errorStartingGame=Un error occurreva durante le comenciamento del partita. +server.load=Impossibile cargar le joco salveguardate +server.initialize=Error de initialisation del servitor displayTileTextAction.EMPTY.name=Non monstrar texto in tegulas displayTileTextAction.NAMES.name=Monstrar nomines de tegulas displayTileTextAction.OWNERS.name=Monstrar proprietarios de tegulas @@ -1214,6 +1240,7 @@ sentryUnit=Sentinella clearUnitOrders=Cancellar ordines leaveTown=Quitar citate +board=Imbarcar in %unit% clearSpeciality=Rader specialitate clearSpeciality.areYouSure=Es tu secur de voler degradar %oldUnit% a %unit%? clearSpeciality.impossible=%unit% non pote esser degradate! @@ -1395,9 +1422,9 @@ model.unit.goodsStolen=Un %enemyUnit% del %enemyNation% fura %amount% %goods% in %colony%! model.unit.indianPlunder=Un %enemyUnit% del %enemyNation% rapina %amount% ex %colony%. model.unit.burnMissions=%enemyNation% incendia le missiones del %nation%! +model.unit.nativeSettlementContact=Tu incontra exploratores %nation% de %settlement%. model.unit.automaticDefence=Tu %unit% in %colony% ha prendite le armas pro defender le colonia! -# Fuzzy -model.unit.attrition=Tu %unit% ha essite inglutite per le jungla! +model.unit.attrition=Tu %unit% a %location% ha essite inglutite per le jungla! model.unit.confirmCancelWork=Nos es occupate a meliorar iste terreno (%turns% tornos remanente). Vole tu que nos cessa? model.unit.occupation.active=- model.unit.occupation.fortified=F @@ -1455,8 +1482,7 @@ model.disaster.effect.damagedUnit.name=Damnos a unitates model.disaster.effect.lossOfUnit.name=Perdita de unitates model.disaster.effect.lossOfMoney=%amount% de auro ha essite perdite. -# Fuzzy -model.disaster.effect.lossOfGoods=%goods% ha essite perdite. +model.disaster.effect.lossOfGoods=%amount% %goods% ha essite perdite. model.disaster.effect.lossOfTileProduction=Campos e forestes ha essite damnificate. Sanctiones essera applicate al production. model.disaster.effect.lossOfBuildingProduction=Edificios ha essite damnificate. Sanctiones essera applicate al production. model.disaster.effect.lossOfBuilding=%building% ha essite destruite. @@ -2296,16 +2322,14 @@ report.colony.making.educating.description=%colony%: %teacher% se gradua {{plural:%turns%|one=le proxime torno|other=in %turns% tornos}} report.colony.improve.header=Meliorar report.colony.improve.description=Unitates que poterea meliorar le production respectivemente al unitate que actualmente exeque le carga -# Fuzzy -report.colony.improving.description=<HTML>%colony%: Pro facer %amount% plus %goods%<BR>Reimplacia %oldUnit% per %unit%</HTML> +report.colony.improving.description=%colony%: Pro facer %amount% plus %goods%, reimplacia %oldUnit% per %unit% report.colony.grow.header=+ report.colony.grow.description=Numero de unitates de que le colonia pote crescer sin nocer al production report.colony.growing.description=%colony% pote crescer de {{plural:%amount%|one=1 unitate|other=%amount% unitates}} sin nocer al production report.colony.shrinking.description=%colony% debe discrescer de {{plural:%amount%|one=1 unitate|other=%amount% unitates}} pro meliorar le production report.colony.wanted.header=Desirate report.colony.wanted.description=Unitates que iste colonia poterea utilisar productivemente -# Fuzzy -report.colony.wanting.description=<HTML>%colony%: Pro facer %amount% plus %goods%<BR>Adde %unit%</HTML> +report.colony.wanting.description=%colony%: Pro facer %amount% plus %goods%, adde %unit% report.trade.unitsSold=Unitates acquirite o vendite report.trade.beforeTaxes=Receptas ante taxas report.trade.afterTaxes=Receptas post taxas @@ -2377,8 +2401,7 @@ model.source.ambushBonus.name=Bonus de imboscada model.source.artilleryInTheOpen.name=Artilleria in campo aperte model.source.zeroThreshold.name=Nulle production negative -# Fuzzy -model.source.finalResult.name=Resultato final +model.source.finalResult.name=Resultato del unitate model.source.baseDefence.name=Defensa de base model.source.fortified.name=Fortificate model.source.artilleryAgainstRaid.name=Artilleria contra incursion Modified: freecol/trunk/data/strings/FreeColMessages_it_IT.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_it_IT.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_it_IT.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -8,6 +8,7 @@ # Author: GreenFox # Author: McDutchie # Author: Melos +# Author: Nemo bis # Author: Ribez # Author: Rippitippi # Author: Stefano-c @@ -1499,7 +1500,7 @@ model.monarch.action.RAISE_TAX_ACT.no=Datemi la libertà o datemi la morte! model.monarch.colonyGoodsParty.harbour=I tuoi coloni di %colony% hanno gettato %amount% unità di %goods% nella baia in segno di protesta contro questa ingiusta tassazione da parte della Corona! model.monarch.colonyGoodsParty.landLocked=I vostri coloni di %colony% hanno bruciato %amount% unità di %goods% sulla piazza del mercato in segno di protesta contro questa ingiusta tassazione da parte della Corona! -model.monarch.action.LOWER_TAX_WAR=Per celebrare la Nostra recente vittoria contro i In order to celebrate Our recent victory against gli infidi {{tag:people|%nation%}}, Abbiamo gentilmente deciso di abbassare le tue tasse del %difference%%. Le tasse adesso sono al %newTax%%. +model.monarch.action.LOWER_TAX_WAR=Per celebrare la Nostra recente vittoria contro gli infidi {{tag:people|%nation%}}, abbiamo graziosamente deciso di abbassare le tue tasse del %difference%%. Le tasse adesso sono al %newTax%%. model.monarch.action.LOWER_TAX_WAR.no=Viva! model.monarch.action.LOWER_TAX_OTHER=Per celebrare {{tag:%number%|0=il Nostro recente matrimonio|1=il Nostro recente matrimonio con la Nostra seconda moglie|2=la nascita di un Principe ereditario|3=la nascita di un figlio della Reale Dinastia|4=la nascita di una figlia della Reale Dinastia}},Abbiamo gentilmente deciso di abbassare le tue tasse del %difference%%. Le tasse adesso sono al %newTax%%. model.monarch.action.LOWER_TAX_OTHER.no=Viva il re! Modified: freecol/trunk/data/strings/FreeColMessages_nl_BE.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_nl_BE.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_nl_BE.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -1052,8 +1052,7 @@ model.unit.indianPlunder=Een %enemyUnit% van %enemyNation% plundert %amount% in %colony%. model.unit.burnMissions=%enemyNation% verbrandt %nation% missieposten! model.unit.automaticDefence=Je %unit% in %colony% heeft de wapens opgenomen om de kolonie te verdedigen! -# Fuzzy -model.unit.attrition=Je %unit% is opgeslokt door het oerwoud! +model.unit.attrition=Je %unit% bij %location% is opgeslokt door het oerwoud! model.unit.confirmCancelWork=We verbeteren momenteel dit terrein (nog %turns% beurten). Wil je dat we hiermee stoppen? model.unit.occupation.active=- model.unit.occupation.activeNoMovesLeft=0 Modified: freecol/trunk/data/strings/FreeColMessages_pl_PL.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -1250,6 +1250,7 @@ sentryAction.name=Czuwaj tilePopupAction.name=Pokaż płytkę skipUnitAction.name=Pomiń +skipUnitAction.accelerator=SPACJA toggleViewModeAction.name=Przełącz widok tradeRouteAction.name=Szlaki handlowe unloadAction.name=Wyładuj Modified: freecol/trunk/data/strings/FreeColMessages_pt_BR.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -306,6 +306,7 @@ direction.NW=noroeste server.reject=O servidor não pode fazer isso. server.trade.noGoods=Você não pode trocar bens que não estão presentes. +# Fuzzy main.javaVersion=É recomendada a versão do Java %minVersion% ou mais recente para executar o Freecol (%version% detetada, use --no-java-check para verificar). main.memory=É necessário atribuir mais de %memory% bytes de memória para a JVM.\n Reinicie o FreeCol com: java - Xmx %minMemory% M-jar FreeCol.jar cli.arg.clientOptions=ARQUIVO DE OPÇÕES Modified: freecol/trunk/data/strings/FreeColMessages_qqq.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-03-04 11:46:54 UTC (rev 10471) +++ freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-03-11 04:55:19 UTC (rev 10472) @@ -89,6 +89,7 @@ colonyPanel.buildings={{Identical|Buildings}} abstractUnit={{Identical|Unit}} colonist=[[File:Freecol-colopedia-depot.png|thumb]] +spring={{Identical|Spring}} year.YEAR={{Optional}} year.SPRING=[[Image:Freecol-colopedia-prairie.jpg|thumb]] trainDialog.done={{Identical|Done}} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sie...@us...> - 2013-03-04 11:47:06
|
Revision: 10471 http://freecol.svn.sourceforge.net/freecol/?rev=10471&view=rev Author: siebrand Date: 2013-03-04 11:46:54 +0000 (Mon, 04 Mar 2013) Log Message: ----------- Localisation updates from http://translatewiki.net. Modified Paths: -------------- freecol/trunk/data/strings/FreeColMessages_br.properties freecol/trunk/data/strings/FreeColMessages_hu.properties freecol/trunk/data/strings/FreeColMessages_ja.properties freecol/trunk/data/strings/FreeColMessages_qqq.properties freecol/trunk/data/strings/FreeColMessages_ru.properties Modified: freecol/trunk/data/strings/FreeColMessages_br.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_br.properties 2013-02-24 16:49:14 UTC (rev 10470) +++ freecol/trunk/data/strings/FreeColMessages_br.properties 2013-03-04 11:46:54 UTC (rev 10471) @@ -1546,7 +1546,7 @@ model.message.MARKET_PRICES=Prizioù ar Marc'had model.message.LOST_CITY_RUMOUR=Brudoù diwar ur Geoded Kollet model.message.MISSING_GOODS=Marc'hadourezh a vank -model.message.TUTORIAL=Deskiant +model.message.TUTORIAL=Tutorial model.message.COMBAT_RESULT=Disoc'hoù an emgann model.message.GIFT_GOODS=Profoù an Indianed model.message.DEMANDS=Goulennoù an henvroidi @@ -2003,7 +2003,7 @@ model.history.SPANISH_SUCCESSION=%loserNation% a lez holl o zrevadennoù en Douar Nevez da %nation%. model.diplomacy.attack.ceaseFire=Sinet hoc'h eus un harz-brezel gant ar %nation%. Ha sur oc'h e fell deoc'h tagañ anezho? model.diplomacy.attack.peace=E peoc'h emaoc'h gant %nation%. Ha sur oc'h e fell deoc'h disklêriañ ar brezel? -model.diplomacy.attack.alliance=N'oc'h ket evit tagañ ur vroad kevredet! Ha fellout a ra deoc'h terriñ ho emglev gant %nation% ha disklêriañ ar brezel? +model.diplomacy.attack.alliance=N'oc'h ket evit tagañ ur vroad kevredet ! Ha fellout a ra deoc'h terriñ ho emglev gant %nation% ha disklêriañ ar brezel ? model.diplomacy.attack.confirm=Ya, lezit da vont chas ar brezel! model.diplomacy.WAR.declared=Keloù fall, Ho Meurdez, disklêriet eo bet ar brezel a-enep deomp gant %nation% ! model.diplomacy.WAR.others=Ho Meurdez, %attacker% o deus disklêriet ar brezel da %defender%. Modified: freecol/trunk/data/strings/FreeColMessages_hu.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_hu.properties 2013-02-24 16:49:14 UTC (rev 10470) +++ freecol/trunk/data/strings/FreeColMessages_hu.properties 2013-03-04 11:46:54 UTC (rev 10471) @@ -375,6 +375,8 @@ model.option.saveProductionOverflow.shortDescription=A kalapácsok, harangok és keresztek túlcsordulásának elraktározása. model.option.allowStudentSelection.name=Diák választás engedélyezése model.option.allowStudentSelection.shortDescription=Lehetővé teszi a diákok manuális kiválasztását +model.option.naturalDisasters.name=Természeti katasztrófák +model.option.naturalDisasters.shortDescription=A természeti katasztrófák eélye körönként. gameOptions.victoryConditions.name=Győzelmi feltételek gameOptions.victoryConditions.shortDescription=A győzelemhez szükséges feltételek beállításai. model.option.victoryDefeatREF.name=Első független játékos @@ -384,45 +386,67 @@ model.option.victoryDefeatHumans.name=Emberi játékosok legyőzése model.option.victoryDefeatHumans.shortDescription=Bámelyik játékos aki legyőzi a többi emberi játékost, győz. gameOptions.years.name=Év-beállítások +gameOptions.years.shortDescription=Különböző kitüntetett évek beállításait tartalmazza. model.option.startingYear.name=Kezdő év +model.option.startingYear.shortDescription=Az év, amelyben a játék elindul. model.option.seasonYear.name=Szezon év +model.option.seasonYear.shortDescription=Az első olyan év, amely két körre bomlik. +model.option.lastYear.name=A játék utolsó éve model.option.mandatoryColonyYear.name=Kötelező kolónia éve +model.option.mandatoryColonyYear.shortDescription=Az év, amelytől kezdve kötelező kolóniát birtokolni. model.option.lastYear.shortDescription=A játék legutolsó éve model.option.lastColonialYear.name=Az utolsó gyarmati év +model.option.lastColonialYear.shortDescription=Az utolsó év a koloniális játékosnak. gameOptions.prices.name=Kezdeti árak gameOptions.prices.shortDescription=A különféle áruk kiindulási árfekvése. model.option.food.minimumPrice.name=Élelem minimális kezdeti ára model.option.food.maximumPrice.name=Élelem maximális kezdeti ára +model.option.food.spread.name=Az étel vételi és eladási ára közötti különbség model.option.sugar.minimumPrice.name=Cukor minimális kezdeti ára model.option.sugar.maximumPrice.name=Cukor maximális kezdeti ára +model.option.sugar.spread.name=A cukor vételi és eladási ára közötti különbség model.option.tobacco.minimumPrice.name=Dohány minimális kezdeti ára model.option.tobacco.maximumPrice.name=Dohány maximális kezdeti ára +model.option.tobacco.spread.name=A dohány vételi és eladási ára közötti különbség model.option.cotton.minimumPrice.name=Gyapot minimális kezdeti ára model.option.cotton.maximumPrice.name=Gyapot maximális kezdeti ára +model.option.cotton.spread.name=A gyapot vételi és eladási ára közötti különbség model.option.furs.minimumPrice.name=Prém minimális kezdeti ára model.option.furs.maximumPrice.name=Prém maximális kezdeti ára +model.option.furs.spread.name=A prém vételi és eladási ára közötti különbség model.option.lumber.minimumPrice.name=Fa minimális kezdeti ára model.option.lumber.maximumPrice.name=Fa maximális kezdeti ára +model.option.lumber.spread.name=A fa vételi és eladási ára közötti különbség model.option.ore.minimumPrice.name=Érc minimális kezdeti ára model.option.ore.maximumPrice.name=Érc maximális kezdeti ára +model.option.ore.spread.name=Az érc vételi és eladási ára közötti különbség model.option.silver.minimumPrice.name=Ezüst minimális kezdeti ára model.option.silver.maximumPrice.name=Ezüst maximális kezdeti ára +model.option.silver.spread.name=Az ezüst vételi és eladási ára közötti különbség model.option.rum.minimumPrice.name=Rum minimális kezdeti ára model.option.rum.maximumPrice.name=Rum maximális kezdeti ára +model.option.rum.spread.name=A rum vételi és eladási ára közötti különbség model.option.cigars.minimumPrice.name=Szivar minimális kezdeti ára model.option.cigars.maximumPrice.name=Szivar maximális kezdeti ára +model.option.cigars.spread.name=A szivar vételi és eladási ára közötti különbség model.option.cloth.minimumPrice.name=Szövet minimális kezdeti ára model.option.cloth.maximumPrice.name=Szövet maximális kezdeti ára +model.option.cloth.spread.name=A szövet vételi és eladási ára közötti különbség model.option.coats.minimumPrice.name=Kabát minimális kezdeti ára model.option.coats.maximumPrice.name=Kabát maximális kezdeti ára +model.option.coats.spread.name=A kabát vételi és eladási ára közötti különbség model.option.tools.minimumPrice.name=Szerszám minimális kezdeti ára model.option.tools.maximumPrice.name=Szerszám maximális kezdeti ára +model.option.tools.spread.name=Az eszközök vételi és eladási ára közötti különbség model.option.muskets.minimumPrice.name=Muskéták minimális kezdeti ára model.option.muskets.maximumPrice.name=Muskéta minimális kezdeti ára +model.option.muskets.spread.name=A muskéták vételi és eladási ára közötti különbség model.option.tradeGoods.minimumPrice.name=Kereskedelmi áruk minimális kezdeti ára model.option.tradeGoods.maximumPrice.name=Kereskedelmi áru maximális kezdeti ára +model.option.tradeGoods.spread.name=A kereskedelmi áruk vételi és eladási ára közötti különbség model.option.horses.minimumPrice.name=Lovak minimális kezdeti ára model.option.horses.maximumPrice.name=Lovak maximális kezdeti ára +model.option.horses.spread.name=A ló vételi és eladási ára közötti különbség model.option.startingMoney.name=Induló tőke model.option.startingMoney.shortDescription=A játék elején kapott arany mennyisége model.option.crossesIncrement.name=Kereszt növekmény Modified: freecol/trunk/data/strings/FreeColMessages_ja.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ja.properties 2013-02-24 16:49:14 UTC (rev 10470) +++ freecol/trunk/data/strings/FreeColMessages_ja.properties 2013-03-04 11:46:54 UTC (rev 10471) @@ -195,7 +195,7 @@ gotoEurope=ヨーロッパに行く attackTileOdds=攻撃!(成功率: %chance%%) dumpCargo=投棄した積荷 -tile=タイル(%x%、%y%) +tile=タイル (%x%、%y%) filter.savedGames=FreeColのセーブデータ (*.fsg) filter.gameOptions=FreeColのオプションデータ (*.fgo) filter.gameOptionsAndSavedGames=FreeColのセーブデータまたはオプションデータ (*.fgoまたは*.fsg) @@ -261,7 +261,7 @@ menuBar.debug.memoryManager.maxMemory=最大 menuBar.debug.memoryManager.gc=ガベージコレクタを実行 menuBar.report=報告 -menuBar.statusLine=スコア:%score% | ゴールド:%gold% | 税金:%tax%% | 年数:%year% +menuBar.statusLine=スコア: %score% | ゴールド: %gold% | 税金: %tax%% | 年: %year% findSettlementDialog.name=入植地を探す metaServer.couldNotConnect=申し訳ありません。メタ・サーバーに接続できませんでした。後でもう一度試してください。 metaServer.communicationError=メタ・サーバーとの通信中にエラーが発生しました。後でもう一度試してください。 @@ -2149,8 +2149,8 @@ report.allColonies=全%number%植民地 report.production=製品 report.units=ユニット -report.atSea=(海上) -report.onLand=(陸上) +report.atSea=(海上) +report.onLand=(陸上) report.numberOfColonies=植民地数 report.numberOfUnits=ユニット数 report.militaryStrength=陸軍力 Modified: freecol/trunk/data/strings/FreeColMessages_qqq.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-02-24 16:49:14 UTC (rev 10470) +++ freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-03-04 11:46:54 UTC (rev 10471) @@ -34,17 +34,25 @@ and={{Identical|And}} load={{Identical|Load}} unload=[[Image:Freecol-europe.png|thumb]]{{Identical|Unload}} +fill={{Identical|Load}} rename={{Identical|Rename}} abilities=[[Image:FreeCol-Colopedia-abilities.png|thumb]] modifiers=[[Image:FreeCol-Colopedia-abilities.png|thumb]]\n\nA '''modifier''' as a game concept is an element that modifies the way an ability is used. +true={{Identical|True}} +false={{Identical|False}} more={{Identical|More}} none={{Identical|None}} nothing={{Identical|Nothing}} all={{Identical|All}} +notApplicable.short={{Identical|N/A}} +rules={{Identical|Rule}} +difficulty={{Identical|Difficulty}} +Test={{Identical|Test}} Music={{Identical|Music}} Current={{Identical|Current}}\nThe message is used in the audio options dialog (select Preferences -> Audio) and refers to the currently selected audio output device. help={{Identical|Help}} list.add={{Identical|Add}} +list.remove={{Identical|Remove}} list.edit={{Identical|Edit}} file.browse={{Identical|Browse}} FileChooser.openButtonText={{Identical|OK}} @@ -53,17 +61,23 @@ height={{Identical|Height}} name={{Identical|Name}} port={{Identical|Port}} +players={{Identical|Player}} connect={{Identical|Connect}} availability=This is a column header with possible values: not available, available, AI only. It means if a nation can be played (and is available=not yet choosen by someone else) by a human player. nationState.AVAILABLE={{Identical|Available}} +nationState.NOT_AVAILABLE={{Identical|Not available}} small={{Identical|Small}} medium={{Identical|Medium}} large={{Identical|Large}}\nCan refer to "amount of X, where X can be villages, rivers and such" in addition to map size. normal={{Identical|Normal}} chilly=Type of climate. +hot={{Identical|Hot}} +startGame={{Identical|Start game}} gameOptions={{Identical|Game options}} playerOptions.NONE={{Identical|None}} +playerOptions.SELECTABLE={{Identical|Selectable}} player={{Identical|Player}} +nation={{Identical|Nation}} color={{Identical|Color}} moves=See http://www.freecol.org/images/screen-0.8.0-large.jpg sonsOfLiberty=Abbreviation of "Sons of Liberty @@ -264,9 +278,10 @@ colopediaAction.SKILLS.name=[[Image:Freecol-colopedia-depot.png|thumb]] colopediaAction.BUILDINGS.name=[[Image:Freecol-colopedia-depot.png|thumb]]\n{{Identical|Buildings}} colopediaAction.FATHERS.name=[[Image:Freecol-colopedia-depot.png|thumb]] -colopediaAction.NATIONS.name=[[Image:Freecol-colopedia-depot.png|thumb]] +colopediaAction.NATIONS.name=[[Image:Freecol-colopedia-depot.png|thumb]]\n{{Identical|Nation}} endTurnAction.name={{Identical|End turn}} fortifyAction.name={{Identical|Fortify}} +loadAction.name={{Identical|Load}} miniMapZoomInAction.name={{identical|Zoom In}} miniMapZoomOutAction.name={{identical|Zoom Out}} newAction.name={{Identical|New}}[[Image:Freecol-mainmenu.png|thumb]] @@ -453,10 +468,13 @@ report.requirements.misusedExperts=The English version uses {{plural:2|%unit%}} to indicate an unknown number of units greater than one. Replace the number 2 with the number best suitable for your language. report.requirements.severalExperts=The English version uses {{plural:2|%unit%}} to indicate an unknown number of units greater than one. Replace the number 2 with the number best suitable for your language. report.requirements.canTrainExperts=The English version uses {{plural:2|%unit%}} to indicate an unknown number of units greater than one. Replace the number 2 with the number best suitable for your language. +report.highScores.difficulty={{Identical|Difficulty}} +report.highScores.nation={{Identical|Nation}} report.highScores.turn={{Identical|Year}} report.production.update={{Identical|Update}} aboutPanel.version={{Identical|Version}} model.source.colonyGoodsParty.name=This is a reference to the [[wikipedia:Boston_Tea_Party|Boston Tea ‘Party’]].\nBut can occur with any FreeCol GoodsType, rather than Tea.\n\nWhen the monarch raises taxes and the colonists refuse to pay, they protest by\ndumping some goods. It is an odd feature, intended to simulate the Boston Tea\nParty, however as FreeCol does not have tea, but allows dumping of all movable\ngoods types, we tend to call it a Goods Party. Following a Goods Party, the\ncolony where the goods was dumped gets a time-limited bonus to its production\nof liberty. The added string is needed to display this bonus in the list of\nproduction modifiers. model.region.river.name={{Identical|River}} +model.region.land.name={{Identical|Region}} model.region.center.name={{Identical|Center}} installer.Music={{Identical|Music}} Modified: freecol/trunk/data/strings/FreeColMessages_ru.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ru.properties 2013-02-24 16:49:14 UTC (rev 10470) +++ freecol/trunk/data/strings/FreeColMessages_ru.properties 2013-03-04 11:46:54 UTC (rev 10471) @@ -1495,7 +1495,7 @@ model.market.priceIncrease=В %market% цена %goods% поднялась до %sell%/%buy%. model.market.priceDecrease=В %market% цена %goods% упала до %sell%/%buy%. model.market.independent=Европа -model.monarch.action.RAISE_TAX_WAR=Мы с сожалением вынужден сообщить Вам, что недавние неудачи в нашей войне с {{tag:country|%nation%}} не оставили нам иного выбора, как увеличение вашего налог на %amount% %. Если вы не согласны, мы будем вынуждены бойкотировать ваши %goods%! +model.monarch.action.RAISE_TAX_WAR=Мы с сожалением вынуждены сообщить Вам, что недавние неудачи в нашей войне с {{tag:country|%nation%}} не оставили нам иного выбора, как увеличить ваш налог на %amount% %. Если вы не согласны, мы будем вынуждены бойкотировать ваш %goods%! model.monarch.action.RAISE_TAX_WAR.yes=Мы принимаем model.monarch.action.RAISE_TAX_WAR.no=Нет налогообложения без представительства! model.monarch.action.RAISE_TAX_ACT=Различные акты неповиновения, совершаемые незаконопослушными поселенцами %newWorld%, не оставляют нам иного выбора, кроме как принять новый {{tag:%number%|0=Navigation|1=Tea|2=Wool|3=Hat|4=Molasses|5=Stamp}} Закон, поднимающий налог до %amount%. Если вы не примете эти условия, мы бойкотируем ваши %goods%! This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sie...@us...> - 2013-02-24 16:49:23
|
Revision: 10470 http://freecol.svn.sourceforge.net/freecol/?rev=10470&view=rev Author: siebrand Date: 2013-02-24 16:49:14 +0000 (Sun, 24 Feb 2013) Log Message: ----------- Localisation updates from http://translatewiki.net. Modified Paths: -------------- freecol/trunk/data/strings/FreeColMessages_br.properties freecol/trunk/data/strings/FreeColMessages_fi.properties freecol/trunk/data/strings/FreeColMessages_oc.properties freecol/trunk/data/strings/FreeColMessages_pt_PT.properties freecol/trunk/data/strings/FreeColMessages_qqq.properties Modified: freecol/trunk/data/strings/FreeColMessages_br.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_br.properties 2013-02-16 05:17:43 UTC (rev 10469) +++ freecol/trunk/data/strings/FreeColMessages_br.properties 2013-02-24 16:49:14 UTC (rev 10470) @@ -128,6 +128,8 @@ colonyPanel.populationTooSmall=Pobladur %number% colonyPanel.units=Unvezioù colonyPanel.buildings=Savadurioù +colonyPanel.colonyUnits=Unvevzioù an Drevadenn +outsideOfColony.name=E-maez an drevadenn inPort.name=Er porzh producing.name=O produiñ : turns=troioù @@ -198,6 +200,7 @@ freecol.map.Africa=Afrika freecol.map.Australia=Aostralia freecol.map.America_large=Amerika (ledan) +freecol.map.Caribbean_basin=Diazad ar C'harib underRepair=O vezañ dreset (%turns% {{plural:%turns%|one=tro|other=tro}} a chom EventPanel.DISCOVER_PACIFIC=\nDizoleiñ a rit eus ar Meurvor Habas EventPanel.FIRST_LANDING=Dilestradur kentañ er Bed Nevez. @@ -241,6 +244,7 @@ menuBar.debug.addImmigration=Ouzhpennañ enbroerezh menuBar.debug.addLiberty=Ouzhpennañ frankiz da bep trevadenn menuBar.debug.stepRandomNumberGenerator=Lañsañ ar c'haner niveroù dargouezhek. +menuBar.debug.displayUnits=Diskwel an unvezioù menuBar.debug.randomValue=Talvoud ar c'haner niveroù dargouezhek: %value% menuBar.debug.displayPanels=Diskwel panelloù menuBar.debug.displayMonarchPanel=Diskwel panell ar Roue @@ -296,6 +300,8 @@ direction.NW=gwalarn server.reject=Ne c'hell ket ar servijer ober se. server.trade.noGoods=Ne c'hellit ket eskemm madoù n'int ket amañ. +main.javaVersion=An doare %minVersion% eus Java pe un doare gwelloc'h egetañ zo erbedet evit lakaat FreeCol da vont en-dro %version% detektet, implijit --no-java-check evit lammañ ar gwiriekadur-mañ). +main.memory=Rankout a reot deverkañ muioc'h %memory% okted memor d'ar JVM.\nAdloc'hit FreeCol gant java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=RESTR DIBARZHIOÙ cli.arg.debuglevel=NIVER cli.arg.debugRun=TROIOÙ [,SAVENAME] @@ -320,8 +326,9 @@ cli.error.home.notExists=N'eus ket deus ar c'havlec'h dave %string%. cli.error.home.noRead=Ne c'haller ket lenn adalek %string%. cli.error.home.noWrite=Ne c'haller ket skrivañ war %string%. -# Fuzzy -cli.freecol-data=fichañ KAVLEC'H roadoù FreeCol (evel iskavlec'h anvet 'images') +cli.error.save=Ne c'haller ket lenn al lodenn saveteet %string%. +cli.error.timeout=Re verr eo %string% (nemet %minimum%) +cli.freecol-data=fichañ KAVLEC'H roadoù FreeCol (evel iskavlec'h anvet 'base') cli.font=termeniñ ar font dre ziouer cli.help=diskouez ar skramm skoazell-mañ cli.home-directory=fichañ KAVLEC'H tarzh FreeCol (dre ziouer evit an implijer tarzh) @@ -354,12 +361,14 @@ model.option.turnsToSail.shortDescription=An niver a droadennoù bourzh ret evit merdeiñ eus Europa war-du ar Bed Nevez. model.option.amphibiousMoves.name=Fiñvadennoù dre vor model.option.amphibiousMoves.shortDescription=Aotren mont tre diouzhtu en trevadennoù adalek unvezioù ar morlu. +model.option.emptyTraders.name=Unvezioù kenwerzh goullo model.option.emptyTraders.shortDescription=Aotren an unvezioù kenwerzh goullo d'ober kenwerzh gant kampoù ar vroidi. model.option.settlementActionsContactChief.name=Mont e darempred gant ar Penn model.option.settlementActionsContactChief.shortDescription=An holl oberoù gant ur gêriadenn a ya e darempred gant he fenn hag a vevez ar bonuz a anaoudegezh. model.option.enhancedMissionaries.name=Misionerie aet war-raok model.option.enhancedMissionaries.shortDescription=Gwellaat a ra ar visionerien ar c'henwerzh ur gêriadenn ha reiñ a reont gwelusted d'an trowardroioù. model.option.giftProbability.name=Tebegenn prof +model.option.demandProbability.name=Goulenn hervez doare model.option.continueFoundingFatherRecruitment.name=Kenderc'hel da duda Tadoù diazezerien model.option.continueFoundingFatherRecruitment.shortDescription=Kenderc'hel da duta Tadoù diazezerien ur wech grataet an dizalc'hiezh. model.option.settlementLimitModifier.name=Kemmañ harz ar c'hêriadennoù @@ -1034,6 +1043,7 @@ move.noAccessWar=Ne c'hellomp ket kenwerzhañ gant %nation% p' emaomp o brezeliñ move.noAccessWater=Hor %unit% a rank mont war an douar a-raok mont e-barzh an trevadenn. move.noAttackWater=Ret eo da %unit% douarañ a-raok gallout tagañ. +move.noTile=N'emañ ket hon %unit% war ar gartenn ! notYourTurn=N'eo ket ho tro c'hoazh ! twoTurnsPerYear=Adalek %year% e vo div dro dre vloaz, e-lec'h unan ! payForBuilding.text=Ha c'hoant ho pefe da baeañ %amount% aour a-benn peursevel ar savadur-mañ ? @@ -1053,9 +1063,22 @@ indianSettlement.mostHatedUnknown=Dianav indianSettlement.wantedGoodsUnknown=Dianav indianSettlement.wantedGoodsNone=Hini ebet +# Fuzzy +indianSettlement.tension.happy=Izili hor broad zo o tañsal, laouen, tro-dro d'o zantad tan en ur ganañ kanaouenn o hendadoù. +indianSettlement.tension.content=Emañ izili ar vroad %nation% o labourat. Emañ o bugale o c'hoari disoursi o c'hoari toull-kuzh. +indianSettlement.tension.displeased=Emañ izili ar vroad %nation% o labourat. Ne c'haller ket gwelet o bugale hag o hendaddoù zo pennoù teñval outo. +indianSettlement.tension.angry=Emañ paotred dispont ar vroad %nation% o c'hourdoniñ war gwennoù. Chomet eo ar maouezed hag ar vugale da guzhat en teltennoù. +indianSettlement.tension.hateful=Emañ paotred dispont ar vroad %nation% o prientiñ o armoù. Gwisket o deus o gourizioù kinklet gant lêr-penn o enebourien. Evit doare e vez implijet ar post-jahinañ reoliek. +indianSettlement.alarmIncrease.tension.content=Penn %nation% e %settlement% a salud e vignoned eus %enemy%. Laouen omp o welet emañ ar c'henlabour o kreskiñ etrezomp. Prederiet omp avat abalamour d'ho trevadennerien zo oc'h aloubiñ hon douaroù. +indianSettlement.mission.tension.happy=Mision staliet, laouen eo %nation% o tegemer ho relijion nevez. +indianSettlement.mission.tension.content=Mision staliet, prez zo war %nation% da zizoleiñ ho relijion nevez. +indianSettlement.mission.tension.displeased=Mision staliet, feuket eo %nation%. +indianSettlement.mission.tension.angry=Misioner prizoniet, %nation% a nac'h degemer ho relijion nevez. +indianSettlement.mission.tension.hateful=Misioner aberzhet, %nation% a ra goap ouzh ho relijion nevez. indianSettlement.mission.enemyDenounce=Ur misioner %enemy% en deus tamallet hor misioner e %settlement% da vezañ disivouder, met an %nation% en deus distaolet ar c'hlemm. indianSettlement.mission.noDenounce=%nation% a nac'h an damalladenn falskrediñ hag a gas d'ar marv ho misioner evel ar falsprofed m'eo. indianSettlement.mission.denounced=Ho misioner a oa e %settlement% a zo bet diskulhiet ha kaset d'ar marv! +indianSettlement.mission.destroyed=Marvet eo ho misioner e %settlement% pa'z eo bet distrujet ar c'hampadur-se. indianSettlement.capitalBurned=Devet hoc'h eus %name%, kêrbenn ar %nation%. Ar %nation% a ra bremañ diouzh ho menn! learnSkill.text=Ha c'hoant ho pefe da vevañ e-touez ar bobl henvroat ha dont da vezañ %skill%? learnSkill.yes=Ya, laouen @@ -1220,6 +1243,7 @@ sentryUnit=Gedour clearUnitOrders=Nullañ an urzhioù leaveTown=Kuitaat kêr +board=Taolenn %unit% clearSpeciality=Nullañ an arbennigezh clearSpeciality.areYouSure=Ha sur oc'h e fell deoc'h argilañ %oldUnit% da %unit%? clearSpeciality.impossible=%unit% ne c'hell ket bezañ argilet! @@ -1401,9 +1425,9 @@ model.unit.goodsStolen=%enemyUnit% %enemyNation% a laer %amount% %goods% digant %colony%! model.unit.indianPlunder=%enemyUnit% %enemyNation% en deus preizhet %amount% e %colony%. model.unit.burnMissions=%enemyNation% en deus peget an tan e misionoù %nation%! +model.unit.nativeSettlementContact=En em gavet oc'h gant skouted %nation% eus %settlement%. model.unit.automaticDefence=Tapet eo bet e armoù gant ho %unit% e %colony% evit he zifenn! -# Fuzzy -model.unit.attrition=Lonket eo bet ho %unit% gant an natur gouez! +model.unit.attrition=Lonket eo bet ho %unit% e %location% gant an natur gouez! model.unit.confirmCancelWork=O wellaat emaomp an dachenn-se endeo (%turns% tro a chom). Ha c'hoant hoc'h eus e chomfemp a-sav? model.unit.occupation.active=- model.unit.occupation.fortified=K @@ -2449,7 +2473,6 @@ model.source.ambushBonus.name=Bonuz spi-brezel model.source.artilleryInTheOpen.name=Artilheri war an dizolo model.source.zeroThreshold.name=Produiñ negativel ebet -# Fuzzy model.source.finalResult.name=Disoc'h dibenn model.source.baseDefence.name=Difenn diazez model.source.fortified.name=Kreñvaet Modified: freecol/trunk/data/strings/FreeColMessages_fi.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_fi.properties 2013-02-16 05:17:43 UTC (rev 10469) +++ freecol/trunk/data/strings/FreeColMessages_fi.properties 2013-02-24 16:49:14 UTC (rev 10470) @@ -5,6 +5,7 @@ # Author: Jl # Author: Jylha # Author: Kulmalukko +# Author: Lliehu # Author: Midorime # Author: Nike # Author: Silvonen @@ -48,6 +49,7 @@ list.down=Alas list.edit=Muokkaa file.browse=Selaa… +FileChooser.openButtonText=OK option.remove=Tyhjennä width=Leveys height=Korkeus @@ -107,7 +109,6 @@ sonsOfLiberty=IK building=Rakennus goods=Tavarat -# Fuzzy goldAmount=%amount% {{plural:%amount%|one=kultaraha|other=kultarahaa}} cargoOnCarrier=Lasti # Fuzzy @@ -184,6 +185,7 @@ tension.displeased=Tyytymätön tension.angry=Vihainen tension.hateful=Pillastunut +tension.unknown=Tuntematon tension=jännite noSuchFile=Valittua tiedostoa ei ole olemassa tai se ei kelpaa. gotoThisTile=Mene tähän ruutuun @@ -195,6 +197,8 @@ filter.gameOptions=FreeCol-peliasetukset (*.fgo) filter.gameOptionsAndSavedGames=FreeCol-pelit ja -peliasetukset (*.fgo ja *.fsg) filter.xml=XML (Laajennettava merkkauskieli). +freecol.map.Africa=Afrikka +freecol.map.Australia=Australia underRepair=Korjauksessa (%turns% {{plural:%turns%|one=vuoro|other=vuoroa}} jäljellä) EventPanel.MEETING_EUROPEANS=Tapaat muita eurooppalaisia. He kilpailevat kanssasi maa-alueista ja rikkauksista, ja voivat julistaa sodan sinulle. Kun Jan de Witt liittyy mannermaakongressiin, voit käydä kauppaa heidän kanssaan. EventPanel.MEETING_NATIVES=Tapaat alkuperäisväestöä. Lähetä tiedustelijasi heidän kyläänsä oppiaksesi lisää heistä, ja voit lähettää määräaikaispalvelijasi ja siirtolaisesi oppiin heille. Lähetä laivasi ja vankkurikaravaanisi heidän kyläänsä, jos haluat käydä kauppaa heidän kanssaan. Modified: freecol/trunk/data/strings/FreeColMessages_oc.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_oc.properties 2013-02-16 05:17:43 UTC (rev 10469) +++ freecol/trunk/data/strings/FreeColMessages_oc.properties 2013-02-24 16:49:14 UTC (rev 10470) @@ -205,7 +205,7 @@ EventPanel.MEETING_AZTEC=Rencontratz la nacion Aztèca. EventPanel.MEETING_INCA=Rencontratz la nacion Inca. tutorial.startGame=Aprèp de meses a vogar sus l'ocean, arribatz enfin al larg de las còstas d'un continent desconegut. Fasètz vela cap a {{tag:%direction%|west=l'oèst|east=l'èst|default=jol vent}} per descobrir lo Mond Novèl e lo reïvindicar al nom de la Corona. -tutorial.buildColony=Construsissètz una colonia en quichant sus la tòca %build_colony_key% o en clicant sus %build_colony_menu_item% dins lo menut %orders_menu_item%.\n\nSeretz prevengut se l'endrech causit es pas ideal per s'i establir. +tutorial.buildColony=Construsissètz una colonia en quichant sus la tòca %build_colony_key% o en clicant sus %build_colony_menu_item% dins lo menú %orders_menu_item%.\n\nSeretz prevengut se l'endrech causit es pas ideal per s'i establir. Colony=Colonia Settlement=Règlament NewWorld=Mond Novèl @@ -918,7 +918,7 @@ reportHistoryAction.name=Rapòrt d'Istoric reportProductionAction.name=Rapòrt de produccion reportHighScoresAction.name=Marcas mai nautas -showMainAction.name=Retorn al menut +showMainAction.name=Retorn al menú retireAction.name=Se retirar saveAction.name=Enregistrar scaleMapAction.name=Dimensionar la mapa @@ -1355,8 +1355,8 @@ model.unit.masterSugarPlanter.description=Lo mèstre plantaire de cana de sucre... endevinatz qué ! model.unit.masterCottonPlanter.description=Lo mèstre plantaire de coton es especializat dins la cultura del coton. model.unit.masterTobaccoPlanter.description=Lo mèstre plantaire de tabat es especializat dins la cultura del tabat. -model.unit.firebrandPreacher.description=Lo predicator fanatic augmenta la libertat religiosa de vòstras colonias (simbolizada per de croses), la quala augmentarà a son torn lo nombre d'emigrants cap al Monde Novèl. -model.unit.elderStatesman.description=Lo vièlh politician afisca lo desir d'independéncia dels colons (simbolizat per las campanas de la libertat), qu'augmenta lo taus d'apartenéncia als Filhs de la Libertat dins vòstras colonias. +model.unit.firebrandPreacher.description=Lo predicator fanatic aumenta la libertat religiosa de vòstras colonias (simbolizada per de croses), la quala aumentarà a son torn lo nombre d'emigrants cap al Monde Novèl. +model.unit.elderStatesman.description=Lo vièlh politician afisca lo desir d'independéncia dels colons (simbolizat per las campanas de la libertat), qu'aumenta lo taus d'apartenéncia als Filhs de la Libertat dins vòstras colonias. model.unit.masterCarpenter.description=Lo mèstre carpentièr es especializat dins la construccion de bastiments e d'unas unitats coma los vaissèls. model.unit.masterDistiller.description=Lo mèstre distillaire es especializat dins la fabricacion de ròm. model.unit.masterWeaver.description=Lo mèstre teisseire es especializat dins la fabricacion de teissuts. @@ -1685,35 +1685,35 @@ model.building.customHouse.name=Pòst de doanas model.building.townHall.description=L'Ostal comun, que pòt pas èsser melhorat, pòt conténer tres colons per la produccion de campanas de la libertat. Son efièch pòt èsser augmentat per la construccion d'una estampariá e d'un jornal. model.building.carpenterHouse.description=La menusarià pòt èsser melhorada en Rèssec quora la populacion atenh 3 colons.\nAqueste bastiment permet la conversion de fusta en martèls necessaris per construire tota mena de bastiments.\n\nAutomaticament construch al moment de la fondacion d'una colonia novèla. -model.building.lumberMill.description=Lo rèssec que pòt pas èsser melhorat, augmenta la produccion de martèls. Los martèls son necessaris per construire tota mena de bastiments. +model.building.lumberMill.description=Lo rèssec que pòt pas èsser melhorat, aumenta la produccion de martèls. Los martèls son necessaris per construire tota mena de bastiments. model.building.blacksmithHouse.description=La farga, que pòt èsser melhorada en Fabrica d'acièr, servís a transformar lo mineral en aisinas. Las aisinas servisson a construire o a melhorar d'unes bastiments. Las aisinas tanben pòdon èsser utilizadas per las òbras exterioras dels pionièrs o per la produccion de mosquets. Quora la colonia a atench una populacion de 8, la farga pòt èsser remplaçada per una usina siderurgica pro qu'Adam Smith aja rejunch lo congrès continental. model.building.blacksmithShop.description=La Fabrica d'acièr, que pòt èsser melhorada en usina siderurgica, servís a transformar lo mineral en aisinas. Las aisinas servisson a construire o a melhorar d'unes bastiments. Las aisinas pòdon tanben èsser utilizadas per las òbras exterioras dels pionièrs o per la produccion de mosquets. Quora la colonia a atench una populacion de 8, la farga pòt èsser remplaçada per una usina siderurgica pro qu'Adam Smith aja rejunch lo congrès continental.\n\nUna fabrica d'acièr melhora la produccion d'aisinas. model.building.ironWorks.description=L'usina siderurgica, que pòt pas èsser melhorada, servís a transformar lo mineral en aisinas. Las aisinas servisson a construire o a melhorar d'unes bastiments. Las aisinas pòdon tanben èsser utilizadas per las òbras exterioras dels pionièrs o per la produccion de mosquets. Quora la colonia a atench una populacion de 8, la farga pòt èsser remplaçada per una usina siderurgica pro qu'Adam Smith aja rejunch lo congrès continental.\n\nUna usina siderurgica melhora la produccion d'aisinas. model.building.tobacconistHouse.description=L'Ostal del plantaire, que pòt èsser melhorat en talhièr de cigarros, servís a produire de cigarros a partir de tabat.\nQuora la colonia atenh una populacion de 8, pòt èsser melhorada en usina de cigarros, pro qu'Adam Smith aja rejunch lo congrès continental.\n\nAutomaticament construch al moemnt de la fondacion d'una colonia novèla. -model.building.tobacconistShop.description=Lo talhièr de cigarros servís a produire de cigarros a partir de tabat.\nQuora la colonia atenh una populacion de 8, pòt èsser melhorat en usina de cigarros, pro qu'Adam Smith aja rejunch lo congrès continental.\n\nUn talhièr de cigarros augmenta la produccion de cigarros. -model.building.cigarFactory.description=L'usina de cigarros, que pòt pas èsser melhorada, servís a produire de cigarros a partir de tabat.\n\nUna usina de cigarros augmenta la produccion de cigarros. +model.building.tobacconistShop.description=Lo talhièr de cigarros servís a produire de cigarros a partir de tabat.\nQuora la colonia atenh una populacion de 8, pòt èsser melhorat en usina de cigarros, pro qu'Adam Smith aja rejunch lo congrès continental.\n\nUn talhièr de cigarros aumenta la produccion de cigarros. +model.building.cigarFactory.description=L'usina de cigarros, que pòt pas èsser melhorada, servís a produire de cigarros a partir de tabat.\n\nUna usina de cigarros aumenta la produccion de cigarros. model.building.weaverHouse.description=L'ostal del teisseire, que pòt èsser melhorat en filatura, permet de transformar lo coton en teissut. Pòt èsser melhorada en filatura quora la populacion de la colonia atenh 8 e quora Adam Smith a rejunch lo congrès continental. model.building.weaverShop.description=La filatura, que pòt èsser melhorada en usina textila, servís a transformar de coton en teissut. Pòt èsser melhorada en usina textila quora la populacion de la colonia atenh al mens 8 e quora Adam Smith a rejunch lo congrès continental. Permet de melhorar la produccon de teissuts. model.building.textileMill.description=L'usina textila melhora la produccion de teissuts a partir de coton. model.building.distillerHouse.description=L'ostal del destillaire, que pòt èsser melhorat en destillariá, servís a produire de ròm a partir del sucre. Un còp qu'Adam Smith a rejunch lo congrès e que la colonia a atench una populacion de 8, la destillariá pòt èsser remplaçada per una usina d'aigardents. -model.building.rumDistillery.description=La destillariá servís a produire de ròm a partir del sucre. Un còp qu'Adam Smith a rejunch lo congrès e que la colonia a atench una populacion de 8, la destillariá pòt èsser remplaçada per una usina d'aigardents.\n\nUna destillariá augmenta la produccion de Ròm. -model.building.rumFactory.description=L'usina d'aigardents, que pòt èsser melhorada, servís a produire de ròm a partir del sucre.\n\nUna usina d'aigardent augmenta la produccion de Ròm. +model.building.rumDistillery.description=La destillariá servís a produire de ròm a partir del sucre. Un còp qu'Adam Smith a rejunch lo congrès e que la colonia a atench una populacion de 8, la destillariá pòt èsser remplaçada per una usina d'aigardents.\n\nUna destillariá aumenta la produccion de Ròm. +model.building.rumFactory.description=L'usina d'aigardents, que pòt èsser melhorada, servís a produire de ròm a partir del sucre.\n\nUna usina d'aigardent aumenta la produccion de Ròm. model.building.furTraderHouse.description=L'ostal del pelissièr, que pòt èsser melhorat en talhièr de forraduras, servís a produire de pelissas a partir de forraduras. Un còp que la colonia a atench una populacion de 6, pòt èsser melhorada en usina de forraduras pro qu'Adam Smith aja rejunch lo congrès continental. -model.building.furTradingPost.description=Lo talhièr de forraduras servís a produire de pelissas a partir de forraduras. Un còp que la colonia a atench una populacion de 6, pòt èsser melhorat en usina de forraduras pro qu'Adam Smith aja rejunch lo congrès continental. Un talhièr de forraduras augmenta la produccion de pelissas. -model.building.furFactory.description=L'usina de forraduras, que pòt pas èsser melhorada, servís a produire de pelissas a partir de forraduras. Una usina de forraduras augmenta la produccion de pelissas. +model.building.furTradingPost.description=Lo talhièr de forraduras servís a produire de pelissas a partir de forraduras. Un còp que la colonia a atench una populacion de 6, pòt èsser melhorat en usina de forraduras pro qu'Adam Smith aja rejunch lo congrès continental. Un talhièr de forraduras aumenta la produccion de pelissas. +model.building.furFactory.description=L'usina de forraduras, que pòt pas èsser melhorada, servís a produire de pelissas a partir de forraduras. Una usina de forraduras aumenta la produccion de pelissas. model.building.schoolhouse.description=Una colonia amb una populacion de 4 pòt construire una escòla, çò que permet als mèstres-artesans d'ensenhar lors mestièrs a un colon sens competéncias particularas. Tre que la populacion a atench 8, pòt èsser melhorada en Collègi dins lo qual d'autres mestièrs pòdon èsser ensenhats per dos colons. Un còp que la populacion atenh 10, lo collègi pòt èsser remplaçat per una universitat dins la quala totas las competéncias pòdon èsser ensenhadas per tres colons.\n\nUna escòla permet d'ensenhar las competéncias de nivèl 1. model.building.college.description=Una colonia amb una populacion de 4 pòt construire una escòla, çò que permet als mèstres-artesans d'ensenhar lors mestièrs a un colon sens competéncias particularas. Tre que la populacion a atench 8, pòt èsser melhorada en Collègi dins lo qual d'autres mestièrs pòdon èsser ensenhats per dos colons. Un còp que la populacion atenh 10, lo collègi pòt èsser remplaçat per una universitat dins la quala totas las competéncias pòdon èsser ensenhadas per tres colons.\n\nUn collègi permet d'ensenhar las competéncias de nivèl 2. model.building.university.description=Una colonia amb una populacion de 4 pòt construire una escòla, çò que permet als mèstres-artesans d'ensenhar lors mestièrs a un colon sens competéncias particularas. Tre que la population a atench 8, pòt èsser melhorada en Collègi dins lo qual d'autres mestièrs pòdon èsser ensenhats per dos colons. Un còp que la population atenh 10, lo collègi pòt èsser remplaçat per una universitat dins la quala totas las competéncias pòdon èsser ensenhadas per tres colons.\n\nUna universitat permet d'ensenhar las competéncias de nivèl 3. model.building.armory.description=L'armariá es utilizada per produire de mosquets a partir d'aisinas. Tre que la populacion atenh 8, l'armariá pòt èsser melhorada en polverièra e en seguida en arsenal pro qu'Adam smith aja rejunch lo congrès continental.\n\nAprèp sa construccion podètz produire de mosquets e de l'artilhariá. -model.building.magazine.description=La polverièra servís a produire de mosquets a partir d'aisinas. La polverièra pòt èsser melhorada en arsenal pro qu'Adam Smith aja rejunch lo congrès continental.\n\nAprèp sa construccion la produccion de mosquets augmenta de 100%. +model.building.magazine.description=La polverièra servís a produire de mosquets a partir d'aisinas. La polverièra pòt èsser melhorada en arsenal pro qu'Adam Smith aja rejunch lo congrès continental.\n\nAprèp sa construccion la produccion de mosquets aumenta de 100%. model.building.arsenal.description=L'arsenal servís a produire de mosquets a partir d'aisinas.\n\n Aprèp sa construccion, la produccion de mosquets necessita meitat mens d'aisinas. model.building.chapel.description=La capèla es un luòc ont los colons practican lor religion. Una capèla produtz una pichona quantitat de croses mas cap de preire i pòt pas èsser afectat. Per aquò, d'en primièr, i cal construire una glèisa. -model.building.church.description=Una colonia amb una populacion de 3 pòt construire una glèisa, que pòt èsser melhorada en catedrala quora la populacion atenh 8. La libertat religiosa del monde novèl (simbolizat per de croses) causa una emigracion creissenta dempuèi Euròpa.\n\nConstruire una glèisa augmenta la produccion de croses e vos permet de benesir de missionaris. -model.building.cathedral.description=Una colonia amb una populacion de 3 pòt construire una glèisa, que pòt èsser melhorada en catedrala quora la populacion atenh 8.\nLa libertat religiosa del monde novèl (simbolizat per de croses) causa una emigracion creissenta dempuèi Euròpa.\n\nUna catedrala augmenta la produccion de croses. -model.building.stockade.description=La muralha, que pòt èsser construcha tre que la populacion atenh 3 personas, protegís los colons dels atacs. La muralha pòt èsser melhorada en fòrt, que balha una proteccion melhora contra los bombardaments dels corsaris e unitats navalas enemics suls oceans adjacents. Lo fòrt pòt èsser remplaçat per una fortalesa tre que la populacion atenh 8 personas.\n\nConstruire una muralha augmenta la defensa de 100%. +model.building.church.description=Una colonia amb una populacion de 3 pòt construire una glèisa, que pòt èsser melhorada en catedrala quora la populacion atenh 8. La libertat religiosa del monde novèl (simbolizat per de croses) causa una emigracion creissenta dempuèi Euròpa.\n\nConstruire una glèisa aumenta la produccion de croses e vos permet de benesir de missionaris. +model.building.cathedral.description=Una colonia amb una populacion de 3 pòt construire una glèisa, que pòt èsser melhorada en catedrala quora la populacion atenh 8.\nLa libertat religiosa del monde novèl (simbolizat per de croses) causa una emigracion creissenta dempuèi Euròpa.\n\nUna catedrala aumenta la produccion de croses. +model.building.stockade.description=La muralha, que pòt èsser construcha tre que la populacion atenh 3 personas, protegís los colons dels atacs. La muralha pòt èsser melhorada en fòrt, que balha una proteccion melhora contra los bombardaments dels corsaris e unitats navalas enemics suls oceans adjacents. Lo fòrt pòt èsser remplaçat per una fortalesa tre que la populacion atenh 8 personas.\n\nConstruire una muralha aumenta la defensa de 100%. model.building.fort.description=Lo fòrt, que pòt èsser construch aprèp una muralha, protegís los colons dels atacs e bombarda los vaissèls enemics. Lo fòrt pòt èsser remplaçat per una fortalesa quora la populacion atenh 8.\n\nConstruire un fòrt balha un bonús de defensa de 150%. model.building.fortress.description=La fortalesa, que pòt èsser construch aprèp un fòrt, protegís los colons dels atacs e bombarda los vaissèls enemics\n\nConstruire una fortalesa balha un bonús de defensa de 150%. -model.building.depot.description=Un depaus conserva tota mena de produches. Sa capacitat iniciala es de 100 unitats per cada tipe de produch. Pòt èsser melhorat en entrepaus amb una capacitat de 200 unitats per produch. Construire una extension d'entrepaus augmenta la capacitat a 300 unitats per produch. +model.building.depot.description=Un depaus conserva tota mena de produches. Sa capacitat iniciala es de 100 unitats per cada tipe de produch. Pòt èsser melhorat en entrepaus amb una capacitat de 200 unitats per produch. Construire una extension d'entrepaus aumenta la capacitat a 300 unitats per produch. model.building.warehouse.description=Un entrepaus pòt emmagazinar tota mena de produches. Permet de conservar 200 unitats de mai per cada tipe de produch e pòt èsser melhorat amb una extension per n'estocar encara 100 de mai. model.building.warehouseExpansion.description=Una extension d'entrepaus pòt emmagazinar tota mena de produches. Permet de conservar 300 unitats de cada tipe de produch. model.building.country.description=Los pasturals pròchis de vòstra colonia permeton als cavals de pàisser liurament. Construire d'escudariás facilitarà la reproduccion dels cavals. @@ -1722,8 +1722,8 @@ model.building.docks.description=Los cais autorizan la pesca sus las casas pròchas de la colonia. Pòt èsser melhorada en cala seca quora la populacion atenh 4. model.building.drydock.description=La cala seca permet la reparacion de batèus. Quora la populacion atenh 8 pòt èsser melhorada en talhièr de construccion navala. model.building.shipyard.description=Lo talhièr de constroccion naval permet de pescar sus las casas adjacentas de la colonia, permet tanben la reparacion e la construccion de batèus. -model.building.printingPress.description=L'imprimariá, que pòt èsser melhorada en jornal tre que la populacion atenh 4, augmenta la produccion de campanas de la Libertat. -model.building.newspaper.description=Lo jornal, qu'òm pòt construire aprèp una imprimariá tre que la populacion atenh 4, augmenta la produccion de campanas de la libertat. +model.building.printingPress.description=L'imprimariá, que pòt èsser melhorada en jornal tre que la populacion atenh 4, aumenta la produccion de campanas de la Libertat. +model.building.newspaper.description=Lo jornal, qu'òm pòt construire aprèp una imprimariá tre que la populacion atenh 4, aumenta la produccion de campanas de la libertat. model.building.customHouse.description=Lo pòste de doanas, que pòt èsser construch tre que Peter Stuyvesant a rejunch lo congrès continental permet l'exportacion dirècta de bens cap a Euròpa sens l'ajuda de batèus. Permet tanben de comerçar amb de poténcias estrangièras aprèp la declaracion d'independéncia. A mai, se pòt contornar los boicòts. model.foundingFather.adamSmith.name=Adam Smith model.foundingFather.adamSmith.description=Las manufacturas fabrican meitat mai de produches a partir de la meteissa quantitat de matèria primièra. @@ -1779,7 +1779,7 @@ model.foundingFather.paulRevere.text=Paul Revere èra un simple artesan american quora partiguèt a caval prevenir los borrièrs de Lexington de l'arribada dels soldats britanics. Foguèt capturat e liberat mai tard mentre que los britanics devián batre en retracha lo mai rapidament possible aprèp lor desfacha. model.foundingFather.paulRevere.birthAndDeath=1734-1818 model.foundingFather.francisDrake.name=Francis Drake -model.foundingFather.francisDrake.description=La poténcia de fuòc de totes vòstres vaissèls corsaris augmenta de meitat. +model.foundingFather.francisDrake.description=La poténcia de fuòc de totes vòstres vaissèls corsaris aumenta de meitat. model.foundingFather.francisDrake.text=Lo capitani anglés Francis Drake foguèt lo primièr Anglés a far lo torn de la Tèrra. Aqueste corsari venguèt sustot un eròi per sa victòria contra l'Invencible Armada espanhòla. model.foundingFather.francisDrake.birthAndDeath=1542-1596 model.foundingFather.johnPaulJones.name=John Paul Jones @@ -1799,7 +1799,7 @@ model.foundingFather.thomasPaine.text=L'escrivan anglés Thomais Paine emigrèt als Estats Units e prenguèt partit pels insurgits. Son panflet "lo Sens comun" guidèt la pensada dels patriòtas de totas las colonias. model.foundingFather.thomasPaine.birthAndDeath=1737-1809 model.foundingFather.simonBolivar.name=Simon Bolivar -model.foundingFather.simonBolivar.description=La proporcion d'independentistas augmenta de 20 % dins caduna de vòstras colonias. +model.foundingFather.simonBolivar.description=La proporcion d'independentistas aumenta de 20 % dins caduna de vòstras colonias. model.foundingFather.simonBolivar.text=Simón José Antonio de la Santísima Trinidad Bolívar y Palacios liberèt Nòva Granada de l'empresa espanhòla. Liberèt tanben las colonias vesinas e venguènt atal lo primièr president de la Federacion de Granda Colómbia. model.foundingFather.simonBolivar.birthAndDeath=1783-1830 model.foundingFather.benjaminFranklin.name=Benjamin Franklin @@ -1811,7 +1811,7 @@ model.foundingFather.williamBrewster.text=William Brewster èra un paire superior puritan qu'organizèt la colonizacion de Plymouth e Nòva Anglatèrra. model.foundingFather.williamBrewster.birthAndDeath=1567-1644 model.foundingFather.williamPenn.name=William Penn -model.foundingFather.williamPenn.description=Lo nombre de croses dins vòstras colonias augmenta mai lèu de meitat. +model.foundingFather.williamPenn.description=Lo nombre de croses dins vòstras colonias aumenta mai lèu de meitat. model.foundingFather.williamPenn.text=William Penn fondèt e governèt çò que venguènt mai tard la Pennsilvania, per i poder practicar sa religion en tota libertat. La colonia quaker (protestanta) prosperèt tant que Filadelfia venguènt la primièra capitala dels Estats Units de decennis mai tard. model.foundingFather.williamPenn.birthAndDeath=1644-1718 model.foundingFather.fatherJeanDeBrebeuf.name=Paire Jean de Brebeuf @@ -1819,7 +1819,7 @@ model.foundingFather.fatherJeanDeBrebeuf.text=Aqueste missionari jesuita simpatisèt amb los indians Urons e ne convertiguèt un cèrt nombre al cristianisme. Foguèt capturat e tuat pels Iroqueses dins una batalha que gagnèron contra los Urons. model.foundingFather.fatherJeanDeBrebeuf.birthAndDeath=1593-1649 model.foundingFather.juanDeSepulveda.name=Juan de Sepulveda -model.foundingFather.juanDeSepulveda.description=Augmenta l'escasença de 20 % que la populacion dels campaments indigènas se van « convertir » e jónher vòstras colonias. +model.foundingFather.juanDeSepulveda.description=Aumenta l'escasença de 20 % que la populacion dels campaments indigènas se van « convertir » e jónher vòstras colonias. model.foundingFather.juanDeSepulveda.text=Juan Ginés de Sepúlveda èra un teologian espanhòl e fervent defensor del drech per l'Espanha de conquerir, colonizar e evangelizar lo Mond Novèl. model.foundingFather.juanDeSepulveda.birthAndDeath=1781-1872 model.foundingFather.bartolomeDeLasCasas.name=Bartolome de las Casas Modified: freecol/trunk/data/strings/FreeColMessages_pt_PT.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pt_PT.properties 2013-02-16 05:17:43 UTC (rev 10469) +++ freecol/trunk/data/strings/FreeColMessages_pt_PT.properties 2013-02-24 16:49:14 UTC (rev 10470) @@ -1334,6 +1334,8 @@ model.modifier.consumeOnlySurplusProduction.shortDescription=Só consome parte da produção excedentária, não as mercadorias armazenadas. model.modifier.offenceAgainst.name=Ofensiva contra model.modifier.offenceAgainst.shortDescription=Melhora a probabilidade de vitória ao atacar. +model.modifier.tileTypeChangeProduction.name=Rendimento madeireiro +model.modifier.tileTypeChangeProduction.shortDescription=Aumenta a quantidade de madeira produzida ao derrubar florestas. model.colony.colonistStarved=Um colono morreu de fome em %colony%! model.colony.colonyStarved=O último colono de %colony% morreu de fome, deixando a colónia abandonada. model.colony.famineFeared=A fome preocupa os colonos de %colony%. A comida restante será suficiente para %number% jogadas. @@ -1349,6 +1351,10 @@ model.colony.unitChange=Ao entrar na sua colónia, a unidade %oldType% tornou-se em %newType%. model.colony.SoLIncrease=A comunidade Filhos da Liberdade em %colony% subiu para %newSoL% por cento da população! model.colony.SoLDecrease=O sentimento de rebeldia em %colony% caiu para %newSoL% por cento! +model.colony.veryGoodGovernment=O governo tornou-se mais eficiente! A comunidade partidária dos Filhos da Liberdade em %colony% é igual ou excede os %number%% da população. +model.colony.goodGovernment=O governo tornou-se mais eficiente! A comunidade partidária dos Filhos da Liberdade em %colony% é igual ou excede os %number%% da população. +model.colony.lostVeryGoodGovernment=O governo já não é tão eficiente. A comunidade partidária dos Filhos da Liberdade em %colony% já não é igual, nem excede, %number%% da população. Perderam-se alguns bónus de produção. +model.colony.lostGoodGovernment=O governo já não é tão eficiente. A comunidade partidária dos Filhos da Liberdade em %colony% já não é igual, nem excede, %number%% da população. A colónia já não recebe qualquer bónus de produção. model.colony.veryBadGovernment=O governo de %colony% é muito ineficiente. Foram aplicadas penas à produção. model.colony.badGovernment=O governo de %colony% é ineficiente. Foram aplicadas penas leves à produção. model.colony.governmentImproved1=O governo de %colony% melhorou, mas ainda é ineficiente. As penas à produção ainda vigoram. @@ -2289,13 +2295,26 @@ report.labour.canTrain=* Esta colónia pode treinar unidades deste tipo. report.colony.name.header=Colónia report.colony.name.description=A lista de colónias +report.colony.explore.header=E +report.colony.explore.description=Número de terrenos a explorar adjacentes a esta colónia +report.colony.exploring.description=%colony% iria beneficiar da exploração de {{plural:%amount%|one=um terreno|other=%amount% terrenos}} +report.colony.plow.header=A +report.colony.plow.description=Número de terrenos da colónia que iriam beneficiar se fossem arados +report.colony.plowing.description=%colony% iria beneficiar se ara-se {{plural:%amount%|one=um terreno|other=%amount% terrenos}} +report.colony.road.header=E +report.colony.road.description=Número de terrenos da colónia que iriam beneficiar se fosse construída uma estrada +report.colony.roadBuilding.description=%colony% iria beneficiar da construção de {{plural:%amount%|one=uma estrada|other=%amount% estradas}} report.colony.birth.description=Número de turnos até que chegue um novo colono ou que haja fome +report.colony.arriving.description=%colony%: novo %unit% {{plural:%turns%|one=no próximo turno|other=em %turns% turnos}} report.colony.starving.description=%colony%: haverá fome {{plural:%turns%|one=no próximo turno|other=em %turns% turnos}} report.colony.making.header=A fabricar report.colony.making.description=O que esta colónia está a produzir +report.colony.making.noconstruction.description=%colony%: Nada está a ser construído. report.colony.improve.header=Melhorar report.colony.grow.header=+ report.colony.grow.description=Número de unidades que a colónia pode albergar sem prejudicar a produção +report.colony.wanted.header=Procura-se +report.colony.wanted.description=Unidades que poderiam ser produtivas para esta colónia report.colony.wanting.description=%colony%: Para produzir mais %amount% de %goods% adicione %unit% report.trade.unitsSold=Unidades compradas ou vendidas report.trade.beforeTaxes=Receita antes dos impostos @@ -2367,6 +2386,7 @@ model.source.movementPenalty.name=Penalização de movimento model.source.ambushBonus.name=Bónus de Emboscada model.source.artilleryInTheOpen.name=Artilharia em campo aberto +model.source.zeroThreshold.name=Sem produção negativa model.source.finalResult.name=Resultado da Unidade model.source.baseDefence.name=Defesa base model.source.fortified.name=Fortificado Modified: freecol/trunk/data/strings/FreeColMessages_qqq.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-02-16 05:17:43 UTC (rev 10469) +++ freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-02-24 16:49:14 UTC (rev 10470) @@ -90,7 +90,8 @@ negotiationDialog.add={{Identical|Add}} negotiationDialog.nothing={{Identical|Nothing}} transaction.tax={{Optional}} -tension.content=Content as in pleased +tension.content=Content as in pleased.\n{{Identical|Content}} +tension.unknown={{Identical|Unknown}} Colony={{Identical|Colony}} LoadingSavegame.port={{Identical|Port}} menuBar.game=[[Image:Freecol-colopedia-prairie.jpg|thumb]]\n{{Identical|Game}} @@ -106,7 +107,7 @@ endTurnDialog.name={{Identical|End turn}} menuBar.tools.determineHighSeas.distToLandFromHighSeas=The distance from land, measured in tiles. stopCurrentGame.no={{Identical|Cancel}} -stopServer.no=Lihtne +stopServer.no={{Identical|Cancel}} reconnect.no={{Identical|Quit}} cli.arg.dimensions={{FreeCol-CLI}} cli.arg.directory=See also {{msg-freecol|cli.freecol-data}}, {{msg-freecol|cli.home-directory}}.\n{{FreeCol-CLI}} @@ -147,6 +148,7 @@ model.option.buildOnNativeLand.never.name={{Identical|Never}} # Fuzzy model.difficulty.natives.name=Itt nem általában a bennszülöttekről van szó, hanem az amerikai bennszülöttekről, vagyis az indiánokról. +model.difficulty.other.name={{Identical|Other}} model.difficulty.hard.name={{Identical|Hard}} low.name={{Identical|Low}} medium.name={{Identical|Medium}} @@ -182,7 +184,7 @@ clientOptions.gui.enemyMoveAnimationSpeed.slow={{Identical|Slow}}[[Image:Freecol-preferences.png|thumb]] clientOptions.gui.enemyMoveAnimationSpeed.normal={{Identical|Normal}}[[Image:Freecol-preferences.png|thumb]] clientOptions.gui.enemyMoveAnimationSpeed.fast={{Identical|Fast}}[[Image:Freecol-preferences.png|thumb]] -clientOptions.messages.name={{Identical|Messages}} +clientOptions.messages.name={{Identical|Message}} model.option.guiMaxNumberOfGoodsImages.name=[[Image:Freecol-preferences.png|thumb]]\n{{msg-freecol|model.option.guiMaxNumberOfGoodsImages.shortDescription}} model.option.guiMaxNumberOfGoodsImages.shortDescription=[[Image:Freecol-preferences.png|thumb|tooltip]]\n{{msg-freecol|model.option.guiMaxNumberOfGoodsImages.name}} model.option.guiShowWarning.shortDescription=The word "miscellaneous" means "from non-specific categories", "various", "other", "sundry". @@ -248,6 +250,8 @@ indianSettlement.skillUnknown={{Identical|Unknown}} indianSettlement.skillNone={{Identical|None}} indianSettlement.mostHatedNone={{Identical|None}} +indianSettlement.mostHatedUnknown={{Identical|Unknown}} +indianSettlement.wantedGoodsUnknown={{Identical|Unknown}} indianSettlement.wantedGoodsNone={{Identical|None}} scoutSettlement.attack={{Identical|Attack}} scoutColony.attack={{Identical|Attack}} @@ -317,7 +321,7 @@ model.monarch.action.SUPPORT_LAND.no={{Identical|Done}} model.monarch.action.SUPPORT_SEA.no={{Identical|Done}} model.monarch.action.DISPLEASURE.no={{Identical|Done}} -model.message.DEFAULT={{Identical|Messages}} +model.message.DEFAULT={{Identical|Message}} model.message.WARNING={{Identical|Warning}} model.ability.buildCustomHouse.name=They mean '''customs house'''. See http://en.wikipedia.org/wiki/Customs_house model.tile.plains.name=[[Image:Freecol-colopedia-prairie.jpg|thumb]] @@ -366,6 +370,7 @@ model.goods.furs.name={{Identical|Furs}} model.goods.tools.name={{Identical|Tools}} model.goods.muskets.name=[[Image:Freecol-colopedia-indianmuskets.jpg|thumb]] +model.goods.unknown={{Identical|Unknown}} model.goods.muskets.description=[[Image:Freecol-colopedia-indianmuskets.jpg|thumb]] model.goods.fish.description=[[Image:Freecol-colopedia-improvements.jpg|thumb]] model.goods.hammers.description=[[Image:Freecol-colopedia-allbuildings.jpg|thumb]] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sie...@us...> - 2013-02-16 05:17:51
|
Revision: 10469 http://freecol.svn.sourceforge.net/freecol/?rev=10469&view=rev Author: siebrand Date: 2013-02-16 05:17:43 +0000 (Sat, 16 Feb 2013) Log Message: ----------- Localisation updates from http://translatewiki.net. Modified Paths: -------------- freecol/trunk/data/strings/FreeColMessages_br.properties freecol/trunk/data/strings/FreeColMessages_pl_PL.properties freecol/trunk/data/strings/FreeColMessages_qqq.properties Modified: freecol/trunk/data/strings/FreeColMessages_br.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_br.properties 2013-02-10 19:24:29 UTC (rev 10468) +++ freecol/trunk/data/strings/FreeColMessages_br.properties 2013-02-16 05:17:43 UTC (rev 10469) @@ -30,6 +30,7 @@ false=Gaou more=muioc'h... none=Hini ebet +many=kalz nothing=Netra all=Pep tra notApplicable.short=N/P @@ -127,6 +128,8 @@ colonyPanel.populationTooSmall=Pobladur %number% colonyPanel.units=Unvezioù colonyPanel.buildings=Savadurioù +inPort.name=Er porzh +producing.name=O produiñ : turns=troioù turnsToComplete.short=(Troioù: %number%) turnsToComplete.long=(Troioù da echuiñ: %number%) @@ -962,6 +965,7 @@ noClaimReason.worked=Un drevadenn all a denn korvo eus an douar-mañ dija. noClaimReason.europeans=Ur vroad europat all a embann piaouañ an douar-mañ dija. noClaimReason.natives=Ur meuriad engenidik a embann bezañ perc'henn war an douar-mañ. +noClaimReason.occupied=Ac'hub eo ar vro-mañ gant un enebour dañjerus. noAddReason.already_present=El lec'h-mañ emañ dija. noAddReason.wrong_type=Doare direizh evit al lec'h-mañ. noAddReason.capacity_exceeded=N'eus ket plas a-walc'h ken el lec'h-mañ. @@ -1099,6 +1103,8 @@ server.invalidPlayerNations=Pep c'hoarier a rank dibab ur vroad a-raok kregiñ gant ar c'hoari. server.timeOut=Re bell eo padet ar c'hlask kevreañ ouzh ar servijer. server.errorStartingGame=Ur fazi zo bet e-ser kregiñ ar c'hoari. +server.load=N'eus ket bet gallet kargañ ar partiadenn enrollet +server.initialize=Fazi en ur zeraouekaat ar servijer displayTileTextAction.EMPTY.name=Skrid ebet diskouezet er c'harrezennoù displayTileTextAction.NAMES.name=Diskouez anvioù ar c'harrezennoù displayTileTextAction.OWNERS.name=Diskouez perc'henned ar c'harrezennoù Modified: freecol/trunk/data/strings/FreeColMessages_pl_PL.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-02-10 19:24:29 UTC (rev 10468) +++ freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-02-16 05:17:43 UTC (rev 10469) @@ -331,7 +331,7 @@ cli.error.home.noRead=Nie można odczytać %string%. cli.error.home.noWrite=Nie można zapisać na %string%. cli.error.save=Nie można odczytać zapisanej gry %string% . -cli.error.timeout=\n%string%jest zbyt krótki (mniej niż %minimum% ) +cli.error.timeout=%string%jest zbyt krótki (mniej niż %minimum% ) cli.freecol-data=ustaw KATALOG z danymi FreeCol (posiada podkatalog 'base') cli.font=ustaw domyślną czcionkę cli.help=wyświetl ten ekran pomocy Modified: freecol/trunk/data/strings/FreeColMessages_qqq.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-02-10 19:24:29 UTC (rev 10468) +++ freecol/trunk/data/strings/FreeColMessages_qqq.properties 2013-02-16 05:17:43 UTC (rev 10469) @@ -55,6 +55,7 @@ port={{Identical|Port}} connect={{Identical|Connect}} availability=This is a column header with possible values: not available, available, AI only. It means if a nation can be played (and is available=not yet choosen by someone else) by a human player. +nationState.AVAILABLE={{Identical|Available}} small={{Identical|Small}} medium={{Identical|Medium}} large={{Identical|Large}}\nCan refer to "amount of X, where X can be villages, rivers and such" in addition to map size. @@ -92,7 +93,7 @@ tension.content=Content as in pleased Colony={{Identical|Colony}} LoadingSavegame.port={{Identical|Port}} -menuBar.game=[[Image:Freecol-colopedia-prairie.jpg|thumb]] +menuBar.game=[[Image:Freecol-colopedia-prairie.jpg|thumb]]\n{{Identical|Game}} menuBar.view=[[Image:Freecol-colopedia-prairie.jpg|thumb]] menuBar.tools={{Identical|Tools}} menuBar.orders=[[Image:Freecol-colopedia-prairie.jpg|thumb]]\n{{Identical|Order}} @@ -342,7 +343,7 @@ model.tile.mountains.name=[[Image:Freecol-colopedia-prairie.jpg|thumb]] river={{Identical|River}} model.tile.prairie.description=[[Image:Freecol-colopedia-prairie.jpg|thumb]] -model.resource.game.name=This is (wild) animals on tiles. Not something you play :) +model.resource.game.name=This is (wild) animals on tiles. Not something you play :)\n{{Identical|Game}} model.resource.furs.name={{Identical|Furs}} model.resource.cotton.name={{Identical|Cotton}} model.resource.fish.name=[[Image:Freecol-colopedia-improvements.jpg|thumb]] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sie...@us...> - 2013-02-10 19:24:44
|
Revision: 10468 http://freecol.svn.sourceforge.net/freecol/?rev=10468&view=rev Author: siebrand Date: 2013-02-10 19:24:29 +0000 (Sun, 10 Feb 2013) Log Message: ----------- Localisation updates from http://translatewiki.net. Modified Paths: -------------- freecol/trunk/data/strings/FreeColMessages_ang.properties freecol/trunk/data/strings/FreeColMessages_ar.properties freecol/trunk/data/strings/FreeColMessages_hu.properties freecol/trunk/data/strings/FreeColMessages_ko.properties freecol/trunk/data/strings/FreeColMessages_nb_NO.properties freecol/trunk/data/strings/FreeColMessages_nn.properties freecol/trunk/data/strings/FreeColMessages_pl_PL.properties freecol/trunk/data/strings/FreeColMessages_pt_BR.properties freecol/trunk/data/strings/FreeColMessages_pt_PT.properties freecol/trunk/data/strings/FreeColMessages_qqq.properties freecol/trunk/data/strings/FreeColMessages_ru.properties freecol/trunk/data/strings/FreeColMessages_sv_SE.properties freecol/trunk/data/strings/FreeColMessages_zh_CN.properties Modified: freecol/trunk/data/strings/FreeColMessages_ang.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ang.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_ang.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -2,17 +2,17 @@ # Exported from translatewiki.net # Author: Gott wisst -freecol.desktopEntry.GenericName=Endebyrdnesspleȝa +freecol.desktopEntry.GenericName=Gūþcræftpleȝa freecol.desktopEntry.Comment=Stæpcynn endebyrdnesspleȝa ȝeƿorht æfter "Sider Meier's Colonization". ok=Ȝōd -cancel=Onƿende +cancel=Onƿend reset=Eftsete save=Horda display=Ēoƿa yes=Ȝiese no=Nese close=Betȳn -options=Cēosunȝa +options=Cyras and=and load=Forþbrinȝ unload=Onhlad @@ -24,6 +24,7 @@ false=Lēas more=mā... none=Nǣniȝ +many=maniȝ nothing=Nāƿiht all=Eall notApplicable.short=Ne limpþ @@ -38,7 +39,8 @@ list.up=Ūpp list.down=Adūn list.edit=Ādiht -file.browse=Þurhseoh +file.browse=Þurhsēoh +FileChooser.openButtonText=Ȝōd lā option.remove=Fornim width=Brǣdo height=Hīehþu @@ -52,17 +54,17 @@ host=Hām port=Duru players=Pleȝendas -playerNation=%player%es %nation%þēod +playerNation=%player%es %nation% gameState=Ȝamenes byrdness startServerOnPort=Beȝinn þeȝntōl on dura publicServer=Folclīc þeȝntōl defaultPlayerName=Pleȝendnama -getServerList=Fōh þeȝntōlȝetæl +getServerList=Fōh þeȝntōla ȝetæl connect=Ȝeþēod self mid availability=Ȝearuness nationState.AVAILABLE=ȝearu -nationState.AI_ONLY=Synderlīce spearctellere -nationState.NOT_AVAILABLE=ne ȝearu +nationState.AI_ONLY=Synderlīce spearctellend +nationState.NOT_AVAILABLE=nā ȝearu verySmall=Sƿīðe lȳtel small=Lytel medium=Medume ȝrēat @@ -70,7 +72,7 @@ veryLarge=Sƿīðe ȝrēat veryDry=Sƿīðe dryȝe dry=Dryȝe -normal=Ȝeƿunelic +normal=Ȝeƿunelīc wet=Ƿǣt veryWet=Sƿīðe ƿǣt cold=Ceald @@ -79,90 +81,93 @@ warm=Ƿearm hot=Hāt startGame=Beȝinn ȝamen -gameOptions=Ȝamenes cēosunȝa -mapGeneratorOptions=Landscētes setednessa +gameOptions=Ȝamenes cyras +mapGeneratorOptions=Landymelan setednessa iAmReady=Ic eom ȝearu playerOptions.selectPlayers=Cēos pleȝendas playerOptions.europeanPlayers=Europisce pleȝendas playerOptions.nativePlayers=Inlendisce pleȝendas playerOptions.NONE=Nǣniȝ playerOptions.FIXED=Fæsted -playerOptions.SELECTABLE=Cēosendlic +playerOptions.SELECTABLE=Cēosendlīc playerOptions.selectColors=Cēos blēo -playerOptions.nationalAdvantages=Þēodlica duȝuða +playerOptions.nationalAdvantages=Þēodlīca mihta player=Pleȝend nation=Þēod color=Bleoh -advantage=Oferduȝuþ +advantage=Miht moves=Stapas: sonsOfLiberty=Suna Frēodōmes building=Bold goods=Cēapas goldAmount=%amount% {{plural:%amount%|one=ȝoldes|other=ȝoldes|default=ȝoldes}} cargoOnCarrier=Hlæst on berende -cargoOnCarrierLong=Hlæst on %name%scipe (%space% {{plural:%space%|one=setl|other=setlas|default=setla}} left) +cargoOnCarrierLong=Hlæst on %name% (%space% {{plural:%space%|one=setl is ǣmettiȝ|other=setla sind ǣmettiȝ|default=setla sind ǣmettiȝ}}) outsideColony=Ūtan landbūnesse colonyPanel.buyBuilding=Byȝe bold colonyPanel.rebelLabel=Ƿiðersacan: %number% colonyPanel.royalistLabel=Cyninȝfolȝiendas: %number% colonyPanel.bonusLabel=Oferduȝuþ: %number%%extra% colonyPanel.populationLabel=Lēodrǣden: %number% -colonyPanel.minimumColonySize=%object% forestepþ ǣniȝe māran ȝelytlunȝe þǣre lēodrǣdne. +colonyPanel.minimumColonySize=%object% ƿiþstandeþ māran ȝelytlunȝe þǣre lēodrǣdne. colonyPanel.currentlyBuilding=Bold: %buildable% -colonyPanel.buildQueue=Endebyrdness abīdendra bolda -colonyPanel.clickToBuild=Sƿinȝe þā boldstōƿe mid mȳs tō cēosenne bold oþþe ƿiht tō timbrienne. -colonyPanel.compactView=Ȝeþƿoren sihþ +colonyPanel.buildQueue=Endebyrdness bolda tō timbrienne +colonyPanel.clickToBuild=Sƿinȝ þā boldstōƿe mid mȳs tō cēosenne bold oþþe ƿiht þe bēo ȝetimbrod. +colonyPanel.compactView=Ȝelytlod sihþ colonyPanel.showAll=Ēoƿa eall -colonyPanel.unbuildable=%colony% ne cann timbrian %object% hērrihte. %object% ƿæs anumen fram þǣre endebyrdnessa abīdendra bolda. -colonyPanel.notBestTile=%unit%ƿiht cūðe forþberan mā %goods%ƿara on %tile%stede. -colonyPanel.reducePopulation=Ȝif þū ȝelytlie þā lēodrǣdne sƿā þæt hēo sīe læsse þonne %number%, sēo %colony%landbūness ne sceall timbrian %buildable%bold. +colonyPanel.unbuildable=%colony% ne cann timbrian %object% hērrihte. %object% ƿæs anumen fram þǣre endebyrdnesse bolda þa bēon ȝetimbrod. +colonyPanel.notBestTile=%unit% cūðe forþberan mā %goods% on %tile%. +colonyPanel.reducePopulation=Ȝif þū ȝelytlie þā lēodrǣdne sƿā þæt hēo sīe læsse þonne %number%, þonne %colony% ne timbrie %buildable%. colonyPanel.requires=Þearf: %string% colonyPanel.populationTooSmall=Lēodrǣden %number% -colonyPanel.units=Ƿiht +colonyPanel.units=Ƿihta colonyPanel.buildings=Bold +colonyPanel.colonyUnits=Landbūnesse ƿihta +outsideOfColony.name=Būtan landbūnesse +inPort.name=On porte +producing.name=Ƿyrceþ: turns=stapas turnsToComplete.short=(Stapas: %number%) turnsToComplete.long=(Stapas oþ fulfyled: %number%) -waitingFor=Abīdende: sēo %nation%þēod nū ȝǣþ -chooseImmigrant=Cēos þā ānfealdnesse þē ȝeleoreþ fram Europe. -abstractUnit={{plural:%number%|one=ān|other=%number%}} %unit%ƿiht -colonist=%number% {{plural:%number%|one=Landbūend|other=Landbūendas|default=Landbūend}} -colonists=Landbūendas -tories=Ealdþēaƿhealdendas +waitingFor=Abīdende: %nation% nū ȝāþ +chooseImmigrant=Cēos þā ƿihte þe ȝeleore fram Europe. +abstractUnit={{plural:%number%|one=ān|other=%number%}} %unit% +colonist=%number% {{plural:%number%|one=Landsǣta|other=Landsǣtena|default=Landsǣta}} +colonists=Landsǣtan +tories=Þēaƿhealdendas crosses=Rōda -mission=Ǣrend +mission=Forþsendunȝ spring=Lencten autumn=Hærfest year.SPRING=Lencten þæs %year% ȝēares year.AUTUMN=Hærfest þæs %year% ȝēares -warOfIndependence.independenceDeclared=Þissum Dæȝe hæfþ se Ƿitenaȝemōt ȝeseted þā hefiȝostan Fæstrǣdnesse, þe ƿæs ǣniȝre tīde on Ƿīnlande ȝeseted.\n\nIc cnāƿe ƿell ymb þæt Ƿeorc and Blōd and þone Gærsum, þāra þe hit fram Ūs behōfaþ, tō healdenne þisne Fæstrǣd, and tō aƿreðienne and beorȝienne þās Rīcu. Ac nā þȳ læs beȝeondan eallum þǣre Þystre ic sēo þā Lēoman nȳdnimendes Lēohtes and Þrymes. Ic sēo þæt þe se Ende is mā þonne ƿeorþ eallra þāra Endebyrdnessa. And þæt ūru Cildru sculen oferƿinnan and spēdan for þǣm ƿeorcum þisra daȝa, þēah þē ƿē meahtlīce hrēoƿen ymb him, ac ic hopie ōðerlīce.\n\nSe Cyninglica Færenda Here hrāðe cymþ ƿiþ ūsic. Ȝearƿiaþ ūre beorȝas carfullīce þā hƿīle þē ƿē gæderiaþ selƿille menn tō nīƿum Ƿorulddǣliscum Here. +warOfIndependence.independenceDeclared=Þissum Dæȝe hæfþ se Ƿitenaȝemōt ȝeseted þā hefiȝostan Fæstrǣdnesse, þe ƿæs ǣniȝre tīde on Ƿīnlande ȝeseted.\n\nIc cnāƿe ƿell ymb þæt Ƿeorc and Blōd and þone Gærsum, þāra þe hit Ūre behōfaþ, tō healdenne þisne Fæstrǣd, and tō aƿreðienne and beorȝienne þās Rīcu. Ac nā þȳ læs beȝeondan eallre þǣre Þēostre sēo ic þā Bēamas forfæȝeres Lēohtes and Þrymes. Ic sēo þæt þe se Ende is mā þonne ƿeorþ eallra þāra Endebyrdnessa. And þæt ūru Cildru sculen oferƿinnan and spēdan for þǣm Ƿeorcum þisra Daȝa, þēah þē ƿē mihten hrēoƿan ymb hine, ac ic hopie þætte ƿē nā hrēoƿen ymb hine.\n\nSe Cyneaspyrȝunȝhere hraðe cymþ ƿiþ ūsic. Ȝearƿiaþ ūre beorȝas cearfullīce þā hƿīle þe ƿē gæderiaþ ƿilsume menn tō þǣm nīƿan Ƿorulddǣlhere. purchaseDialog.clickOn=Swinȝ ān þisra þinȝa þurh mȳs tō bycȝenne hit. -recruitDialog.clickOn=Sƿinȝ ānne þisra manna mid mȳs tō gæderienne hine. Þū scealt lēanian %money% tō his fære. Hē self cunne lēanian his færes %number% stapum hēræfter. -trainDialog.clickOn=Sƿinȝ ānne þisra manna tō ȝearƿienne hine. -trainDialog.done=Fulfyled +recruitDialog.clickOn=Sƿinȝ ānne þisra manna mid mȳs tō hȳrenne hine. Þū scealt lēanian %money% tō his fære. Hē self cunne lēanian his færes %number% stapa hēræfter. +trainDialog.clickOn=Sƿinȝ ānne þisra manna tō tǣcenne hine. +trainDialog.done=Fulfyled lā quitDialog.areYouSure.text=Ƿilt þū sōþlīce aȝān? retireDialog.areYouSure.text=Ƿilt þū sōþlīce ȝebūȝan? -foundingFatherDialog.nominate=Hāt staðoliend -errorMessage.showLogFile=Īeƿa cranicas +foundingFatherDialog.nominate=Hāt Staðoliend +errorMessage.showLogFile=Īeƿ cranicas tradeItem.colony=Landbūness -tradeItem.colony.long=sēo %colony% landbūness +tradeItem.colony.long=sēo landbūness %colony% tradeItem.gold=Ȝold tradeItem.gold.long=þæt ȝetæl %amount% ȝoldes tradeItem.goods=Cēapas tradeItem.stance=Stede -tradeItem.unit=Ānfealdness -# Fuzzy -negotiationDialog.offer=Abēod -# Fuzzy -negotiationDialog.demand=Crafa -negotiationDialog.summary=Þā %nation% abēodaþ of %offers% ƿiþ %demands%. +tradeItem.unit=Ƿiht +negotiationDialog.offer=Þā %nation% abēodaþ +negotiationDialog.demand=Þā %nation% āsciaþ +negotiationDialog.exchange=ƿiþ +negotiationDialog.summary=Þā %nation% abēodaþ %offers% ƿiþ %demands%. negotiationDialog.accept=Andfōh negotiationDialog.cancel=Onƿend negotiationDialog.send=Send negotiationDialog.add=Besete negotiationDialog.nothing=nāƿiht -negotiationDialog.offerAccepted=Þā %nation% habbaþ andfanȝen þīne cystiȝan abodennesse. -negotiationDialog.offerRejected=Þā %nation% habbaþ aƿended þīne cystiȝan abodennesse. +negotiationDialog.offerAccepted=Þā %nation% habbaþ andfanȝen þīn cystiȝe lāc. +negotiationDialog.offerRejected=Þā %nation% habbaþ aƿend þīn cystiȝe lāc. transaction.purchase=Byȝe %amount% %goods% @%gold% transaction.price=Cēapȝyld:\t%gold% transaction.sale=Cīep %amount% %goods% @%gold% @@ -173,101 +178,111 @@ tension.displeased=Unrōt tension.angry=Ƿrāþ tension.hateful=Hetelīc -tension=Nearumōd -noSuchFile=Þæt ȝecorene ȝeƿithord nis oþþe nis ȝeƿunelic ȝeƿithord. +tension.unknown=Unȝeƿiss +tension=Nearuness +noSuchFile=Þæt ȝecorene ȝeƿithord nis nā, oþþe nis hit ȝeƿunelic ȝeƿithord. gotoThisTile=Ȝā tō þissum stede. gotoEurope=Ȝā tō Europe -attackTileOdds=Ƿinn! (%chance%% ƿēn spēdunȝe) +attackTileOdds=Ƿinn! (%chance%% ƿēn oferdrīfunȝe) dumpCargo=Onhlad hlæst tile=Stede (%x%, %y%) -filter.savedGames=FreeCol hordod ȝamen (*.fsg) -filter.gameOptions=FreeCol ȝamenes cēosunȝa (*.fgo) -filter.gameOptionsAndSavedGames=FreeCol ȝamenes cēosunȝa and hordod ȝamen (*.fgo and *.fsg) -filter.xml=XML (Extensible Markup Language - Ēacniendlīc Ūppmearciende Sprǣc) -underRepair=Ƿēorðende bōteted (%turns% {{plural:%turns%|one=stæpe|other=stapas}} stapas ȝīet tō ƿeorðenne) -EventPanel.MEETING_EUROPEANS=Þū mētst ōðre Europisce menn. Hīe ƿinnaþ ƿiþ þec ymb land and sceatt, and meahtlīce hīe ætfeohten þec. Ac æfter Iohannes de Ƿitt þēode selfne tō þǣm Ƿitenaȝemōte cunne þū macian cēapas mid heom. -EventPanel.MEETING_NATIVES=Þū mētst inlendisceras. Send þīne scēaƿeras tō heora landbūnessum tō leornienne mā be him, and þīn laȝbundene þeȝnas and frēo landbūendas tō leornienne þinȝ fram him. Send þīn scipu and ƿæȝnfloccas tō heora landbūnessum ȝif þū ƿille dōn cēapas mid heom. +filter.savedGames=FreeColes hordod ȝamen (*.fsg) +filter.gameOptions=FreeColes ȝamenes cyras (*.fgo) +filter.gameOptionsAndSavedGames=FreeColes ȝamenes cyras and hordod ȝamen (*.fgo and *.fsg) +filter.xml=XML (Extensible Markup Language - Ēacniendlīc Mearcunȝlīc Sprǣc) +freecol.map.Africa=Affrica +freecol.map.Australia=Sūþland +freecol.map.America_large=Ƿīnland (ȝrēat) +freecol.map.Caribbean_basin=Caribisc Ȝeard +underRepair=Ƿeorðende bōteted (%turns% {{plural:%turns%|one=stæpe|other=stapa}} ȝīet tō ȝelimpenne) +EventPanel.DISCOVER_PACIFIC=Þū fintst þone Sericus Ȝārsecȝ. +EventPanel.FIRST_LANDING=Forme lendunȝ on þǣm Nīƿum Landum. +EventPanel.MEETING_EUROPEANS=Þū mētst ōðre Europisce menn. Hīe ƿinnaþ ƿiþ þec ymb land and sceatt, and mihton hīe ætfeohten þec. Ac æfter Iohannes de Ƿitt þēode selfne tō þǣm Ƿitenaȝemōte cunne þū ȝemanȝian mid heom. +EventPanel.MEETING_NATIVES=Þū mētst inlendisce. Send þīne fōreƿearda tō heora setlum tō leornienne mā be him, and þīn fōreƿeardþeȝnas and þīne ceorlas tō leornienne cræftas fram him. Send þīn scipu and þīne ƿæȝnas tō heora setlum ȝif þū ƿille ȝemanȝian mid heom. EventPanel.MEETING_AZTEC=Þū mētst þā Astecþēode. EventPanel.MEETING_INCA=Þū mētst þā Incena þēode. -tutorial.startGame=Æfter mōnaðer on ðǣm ȝārsecȝe, þū hafast nū ȝecumen tō þǣm strande unȝecūðes landes. Sæȝla {{tag:%direction%|west=ƿest|east=ēast|default=ƿiþ ƿind}} tō findenne þā nīƿan land and tō manienne heora for þǣm cynedōme. -tutorial.buildColony=Ȝesēc tō timbrienne landbūnesse mid sƿenȝe on þǣm cǣȝe %build_colony_key% oþþe þǣre cyre of %build_colony_menu_item% fram þǣm %orders_menu_item% ȝetæle. \n\nÞū bist ȝeteald ȝif þǣr is āƿiht unȝōd mid þǣre timrunȝe þǣre landbūnesse on þǣm ȝecorenan staðole. +tutorial.startGame=Æfter maniȝum mōnaðum on ðǣm ȝārsecȝe eart þū nū ȝecumen tō þǣm strande unȝecūðes landes. Sæȝla {{tag:%direction%|west=ƿest|east=ēast|default=ƿiþ ƿind}} tō findenne þā Nīƿan Land and tō manienne heora for þǣm cynedōme. +tutorial.buildColony=Ȝesēc tō timbrienne Landbūnesse mid sƿenȝe on þǣm cǣȝe %build_colony_key% oþþe þǣm cyre of %build_colony_menu_item% fram þǣm %orders_menu_item% ȝetæle. \n\nÞū bēo ȝeteald ȝif þǣr sīe āƿiht unȝōd mid þǣre timbrunȝe þǣre landbūnesse on þǣm ȝecorenan staðole. Colony=Landbūness Settlement=Setl -NewWorld=Nīƿu land +NewWorld=Nīƿu Land +Ship=Scip LoadingSavegame.title=Forþbrinȝende hordod ȝamen +LoadingSavegame.singlePlayer=Ānpleȝende LoadingSavegame.privateMultiplayer=Ānlēpiȝ maniȝpleȝende -LoadingSavegame.publicMultiplayer=Folclic maniȝpleȝende +LoadingSavegame.publicMultiplayer=Folclīc maniȝpleȝende LoadingSavegame.serverName=Þeȝntōles nama: LoadingSavegame.port=Duru: editor.resource=Hƿeorf oþþe anim sceattfruman. editor.removeSettlement=Anim setl editor.removeSettlement.text=Ƿilt þū animan þis setl? -editor.mapSize=Cēos landscētes micelnesse -buildingToolTip.breeding=Þū þearft hūru %number% {{plural:%number%|%goods%ƿara tō settenne %goods%dēor tō tīemenne. +editor.mapSize=Cēos landymelan micelnesse +buildingToolTip.breeding=Þū þearft hūru %number% {{plural:%number%|%goods%}} tō settenne %goods% tō tīemenne. menuBar.game=Ȝamen menuBar.view=Sihþ menuBar.tools=Tōlas menuBar.orders=Bodu menuBar.colopedia=Coloȝeƿitnessbōc -# Fuzzy -menuBar.teacher=Lǣrunȝe stǣr -menuBar.debug=Find unrihtnessa +menuBar.teacher=Tǣcende %unit% +menuBar.debug=Find dƿild menuBar.debug.showCoordinates=Ēoƿa stedrīm menuBar.debug.showColonyValue=Ēoƿa landbūnesse ƿeorþ -menuBar.debug.showCommonOutpostValue=Īeƿa ȝemǣne hƿīlendsetlƿeorþ +menuBar.debug.showCommonOutpostValue=Īeƿa ȝemǣne hƿīlendsetles ƿeorþ menuBar.debug.skipTurns=Bebūȝ stapas menuBar.debug.stopSkippingTurns=Ne bebūȝ stapas lenȝ -menuBar.debug.addBuilding=Ēacna ǣlce landbūnesse mid boldum -menuBar.debug.addFoundingFather=Ēacna mid staðoliendum fæder -menuBar.debug.runMonarch=Ȝesete þæt nīehtse ƿord þæs cyninȝes +menuBar.debug.addBuilding=Ēacna ǣlce landbūnesse mid bolde +menuBar.debug.addFoundingFather=Ēacna mid Staðoliende +menuBar.debug.runMonarch=Ȝesete þā nīehste dǣde þæs cyninȝes menuBar.debug.addGold=Ēacna mid ȝolde menuBar.debug.addImmigration=Besete ȝeleorunȝe menuBar.debug.addLiberty=Ēacna ǣlce landbūnesse mid frēodōme menuBar.debug.stepRandomNumberGenerator=Stæpa hlīetlīcra rīma forþberend -menuBar.debug.randomValue=Hlotenra rīma forþberan ƿeorþ: %value% +menuBar.debug.displayUnits=Īeƿ ƿihta +menuBar.debug.randomValue=Hlīetlīcra rīma forþberendes ƿeorþ: %value% menuBar.debug.displayPanels=Īeƿ bredu menuBar.debug.displayMonarchPanel=Īeƿ ānƿaldan bred menuBar.debug.displayVictoryPanel=Īeƿ sīȝes bred menuBar.debug.displayEuropeStatus=Īeƿ Europe byrdnesse -menuBar.debug.displayErrorMessage=Īeƿa onȝefremmunȝe ȝeƿrit -menuBar.debug.useAI=Brūc spearctelle -menuBar.debug.revealEntireMap=Ēoƿa fullne landscēte -menuBar.debug.compareMaps=Cnēorlǣc landscēte ymb unsamenettunȝe -menuBar.debug.compareMaps.checkComplete=Cnēorlǣcinȝ is fulfyled. Nǣniȝ unsamenettunȝ ƿæs ȝefunden. -menuBar.debug.compareMaps.problem=Meahtlic hefiȝness is ȝefunden. Bidde þē tō rǣdenne ȝeƿitnesse ȝeƿriten tō understandenne hīe. -menuBar.debug.showResourceKeys=Īeƿ frumena cǣȝa +menuBar.debug.displayErrorMessage=Īeƿ misfenȝes ȝeƿrit +menuBar.debug.useAI=Brūc spearctellend +menuBar.debug.revealEntireMap=Ēoƿa fulle landymelan +menuBar.debug.hideEntireMap=Behȳd fulle landymelan +menuBar.debug.compareMaps=Sēc landymelan unsamenettunȝe +menuBar.debug.compareMaps.checkComplete=Sōcn is fulfyled. Nǣniȝ unsamenettunȝ ƿæs ȝefunden. +menuBar.debug.compareMaps.problem=Meahtlīc hefiȝness is ȝefunden. Rǣd lā þā ȝeƿritenan ȝeƿitnesse tō understandenne hīe. +menuBar.debug.showResourceKeys=Īeƿ sceattfrumena cǣȝa menuBar.debug.statistics=Cȳþþu menuBar.debug.memoryManager=Ȝemyndes dihtere menuBar.debug.memoryManager.freeMemory=Lēas menuBar.debug.memoryManager.totalMemory=Full menuBar.debug.memoryManager.maxMemory=Mǣst -menuBar.debug.memoryManager.gc=Ƿeorca þone adelȝæderiend +menuBar.debug.memoryManager.gc=Sete þone adelȝæderiend ƿyrcan menuBar.report=Rǣd menuBar.statusLine=Mearca ȝet1l: %score% | Ȝold: %gold% | Ȝafolrǣden: %tax%% | Ȝēar: %year% findSettlementDialog.name=Find setl -metaServer.couldNotConnect=Belāda, ne cūðe ȝeþēodan tō þǣm eallþeȝntōle. Bidde þē tō sēcenne eft hēræfter. +metaServer.couldNotConnect=Ƿālā, ne cūðe ic ȝeþēodan tō þǣm eallþeȝntōle. Sēc þū lā eft siþþan. metaServer.communicationError=Þǣr ƿæs ƿōȝ þā hƿīle þe ȝemānsumiende þone eallþeȝntōl. Bidde þē tō ȝesēcenne eft hēræfter. -infoPanel.endTurnPanel.text=Sƿinȝ þone cǣȝ "enter" tō endienne þīne stæpe. +infoPanel.endTurnPanel.text=Sƿinȝ þone cǣȝ "enter" tō endienne þīnne stæpe. endTurnDialog.name=Enda stæpe -endTurnDialog.areYouSure=Þās {{plural:%number%|one=ƿiht bītt|other=ƿihta bīdaþ}} boda, oþþe {{plural:%number%|one=hafaþ|other=habbaþ}} ȝefanȝen bod tō abīdenne. Ƿilt þū sōþlīce nū þīnne stæpe endian? -menuBar.tools.determineHighSeas.distToLandFromHighSeas=Stedas fram lande +endTurnDialog.areYouSure={{plural:%number%|one=Þēos ƿiht bītt|other=Þās ƿihta bīdaþ}} boda, oþþe {{plural:%number%|one=hafaþ|other=habbaþ}} ȝefanȝen bod tō abīdenne. Ƿilt þū sōþlīce nū þīnne stæpe endian? +menuBar.tools.determineHighSeas.distToLandFromHighSeas=Stedas aƿeȝ fram lande menuBar.tools.determineHighSeas.maxDistanceToEdge=Mǣst feorrness oþ þone riman stopCurrentGame.text=Ȝamen ȝǣþ nū ǣr. stopCurrentGame.yes=Enda ȝamen. -stopCurrentGame.no=Onƿende +stopCurrentGame.no=Onƿend stopServer.text=Þeȝntōl nū ǣr ȝǣþ on ȝecorenre dura. stopServer.yes=Enda þeȝntōl stopServer.no=Onƿende -connectController.choicePlayer=Bidde þē tō cēosenne pleȝend. +connectController.choicePlayer=Cēos lā pleȝend: reconnect.text=Se þeȝntōl abītt edþēodunȝe reconnect.yes=Edþēod reconnect.no=Afar failedToSave=Ne cūðe hordian þæt %name% ȝeƿithord! -couldNotSaveGame=Ƿōȝ ȝelamp þā hƿīle þe ȝesēcende tō hordienne þæt ȝamen! -couldNotLoadGame=Ƿōȝ ȝelamp þā hƿīle þe ȝesēcende tō forþbrinȝenne þæt ȝamen! +couldNotSaveGame=Dƿild ȝelamp þā hƿīle þe ic sōhte þæt ȝamen hordian! +couldNotLoadGame=Dƿild ȝelamp þā hƿīle þe ic sōhte þæt ȝamen forþbrinȝan! fileNotFound=Ne cūðe findan þæt ȝeƿithord þurh þone ȝifenan naman. incompatibleVersions=Þæt hordode ȝamen þæt þe þū eart ȝesēcende tō forþbrinȝenne nis ȝenȝe on þisre forþsendnesse FreeColes. -openGame.unimplemented=Þæt opene ƿeorc nis ȝīet ȝebrocen. +openGame.unimplemented=Þæt ȝeƿeald þe openie ȝeƿithord nis ȝīet ȝebrocen. direction.N=norþa direction.NE=norþēasta direction.E=ēasta @@ -277,9 +292,11 @@ direction.W=ƿesta direction.NW=norþƿesta server.reject=Se þeȝntōl ne cann dōn þæt. -server.trade.noGoods=Þū ne canst ȝiefan ƿara þā þū ne hafast hēr. +server.trade.noGoods=Þū ne canst ȝiefan cēapas þā þū ne hafast hēr. +main.javaVersion=Java fadunȝe %minVersion% oþþe beteran fadunȝe āh man habban tō pleȝenne FreeCol.\n(%version% is sēo fadunȝ þe ƿæs funden; brūc --no-java-check tō bebūȝenne þās cnēorlǣcunȝe). +cli.arg.clientOptions=CYRA ȜEǷITHORD cli.arg.debuglevel=RĪM -cli.arg.debugRun=TURNS[,SAVENAME] +cli.arg.debugRun=STAPAS[,SAVENAME] cli.arg.dimensions=BRǢDOxHĪEHÞE cli.arg.directory=EALLȜETÆL cli.arg.file=ȜEǷITHORD @@ -287,11 +304,11 @@ cli.arg.loglevel=SĪÞBŌCHĀD cli.arg.name=NAMA cli.arg.port=DURU -cli.arg.seed=SEED +cli.arg.seed=SǢD cli.arg.timeout=TIMEOUT -cli.check-savegame=cnēorlǣc þæt ȝifene hordode ȝamen ymb ȝestæþþiȝnesse -cli.check-savegame.success=Cnēorlǣcinȝ ymb þǣre ȝestæþþiȝnesse þæs hordodan ȝamenes; cnēorlǣc stīþbōc ymb stafan. -cli.check-savegame.failure=Sēo ȝestæþþiȝnesse cnēorlǣcinȝ ne spēde; cnēorlǣc sīþbōc ymb stafan. +cli.check-savegame=sēc þæs ȝifenan hordodan ȝamenes ȝestæþþiȝnesse +cli.check-savegame.success=Sōcn þǣre ȝestæþþiȝnesse þæs hordodan ȝamenes is fulfyled; sēc sīþbōc ymb stafan. +cli.check-savegame.failure=Sēo þæs hordodan ȝamenes ȝestæþþiȝnesse sōcn aspranȝ; sēc sīþbōc ymb stafan. cli.debug=find unrihtnessa on FreeCol cli.debug-run=Sete ƿyrcan N stapa on unrihtnessfindendre byrdnesse, and þǣræfter cēosendlīce horda ȝamen and aȝā cli.default-locale=sete þā ǣr ȝecorenan stōƿe ȝeƿitnesse (SPRǢC[_LAND[_MISSENLICNESS]]) @@ -299,6 +316,7 @@ cli.error.home.notExists=%string% hāmeallȝetæl nis ȝeƿorden. cli.error.home.noRead=Ne cann rǣdan fram %string%. cli.error.home.noWrite=Ne cann ƿrītan tō %string%. +cli.error.save=Ne cann rǣdan ȝehordod ȝamen %string%. # Fuzzy cli.freecol-data=sete FreeColes ȝeƿitnesse EALLȜETÆL (hafaþ undereallȝetæl þe hāteþ "images") cli.font=sete ǣr ȝeseted stæfcynd @@ -321,7 +339,7 @@ cli.timeout=rīm ēaȝbeartma þā þe se þeȝntōl abītt andsƿære ascunȝe cli.version=ēoƿa þæt forþsendnesse rīm and ȝā ūt cli.windowed=drīf FreeCol mid ȝestefnodum ȝecynde on stede fullīce bescīetedes ȝecyndes -gameOptions.name=Ȝamenes cēosunȝa +gameOptions.name=Ȝamenes cyras gameOptions.shortDescription=Ȝamenes cēosunȝa gameOptions.map.name=Lanscēte gameOptions.map.shortDescription=Cēosunȝa tō þǣm landscētbrede. @@ -347,8 +365,8 @@ model.option.startingPositions.classic=Ealdlīc model.option.startingPositions.random=Hlētlīc model.option.startingPositions.historical=Ȝeƿyrdelīc -gameOptions.colony.name=Landbūnesse cēosunȝa -gameOptions.colony.shortDescription=Befēhþ cēosunȝa ȝesibb þǣm ȝebǣre landbūnesse. +gameOptions.colony.name=Landbūnesse cyras +gameOptions.colony.shortDescription=Befēhþ cyras be þǣm ȝebǣre landbūnessa. model.option.customIgnoreBoycott.name=Cēapsceamul ȝǣþ forþ lēas cēapforbyrda model.option.customIgnoreBoycott.shortDescription=Cēapsceamul cann cīepan ƿara under cēapforbyrde. model.option.expertsHaveConnections.name=Cræftmenn habbaþ staðolas @@ -360,12 +378,12 @@ gameOptions.victoryConditions.name=Sīges þearfa gameOptions.victoryConditions.shortDescription=Setetnessa tō cēosenne hū mann nime siȝe on ȝamene. model.option.victoryDefeatREF.name=Ǣrost pleȝend þe ƿealdeþ selfne -model.option.victoryDefeatREF.shortDescription=Se ǣrosta mennisca pleȝend se þe oferdrīfþ þone Cynefandunȝhere nimþ siȝe on pleȝan. +model.option.victoryDefeatREF.shortDescription=Se forma mennisca pleȝend se þe oferdrīfe þone Cyneaspyrȝunȝhere ȝeƿinne þone pleȝan. model.option.victoryDefeatEuropeans.name=Ealle ōðere Europisce pleȝendas oferƿunnen model.option.victoryDefeatEuropeans.shortDescription=Ǣniȝ pleȝend þe oferƿinnþ ealle ōðere Europisce pleȝendas nimþ siȝe on þǣm ȝamene. model.option.victoryDefeatHumans.name=Ealle ōðere mennisce pleȝendas oferƿunnen model.option.victoryDefeatHumans.shortDescription=Ǣniȝ pleȝend þe oferƿinnþ ealle ōðere mennisce pleȝendas nimþ siȝe on þǣm ȝamene. -gameOptions.years.name=Ȝēares cēosunȝa +gameOptions.years.name=Ȝēares cyras gameOptions.years.shortDescription=Hæfþ cēosunȝa þā sind ȝesibba missenlīcum ānlīcum ȝēarum. model.option.startingYear.name=Forme ȝēar model.option.startingYear.shortDescription=Þæt ȝēar on þǣm þe se pleȝa beȝinþ. @@ -377,6 +395,8 @@ model.option.lastYear.shortDescription=Þæt æftermeste ȝēar þæs pleȝan. model.option.lastColonialYear.name=Æftermest landbūness pleȝȝēar model.option.lastColonialYear.shortDescription=Þæt æftermeste ȝēar þæs pleȝan for landbūnesspleȝende. +gameOptions.prices.name=Forman cēapȝyldas +model.option.food.minimumPrice.name=Læst forma cēapȝyld ǣtes þe sīe meahtlīc model.option.startingMoney.name=Onȝinnunȝe sceatt model.option.startingMoney.shortDescription=Þæt andefen sceattes mid þǣm þū beȝinnst þæt ȝamen. model.option.crossesIncrement.name=Rōda ēacniaþ @@ -433,7 +453,7 @@ model.option.buildOnNativeLand.firstAndUncontacted.shortDescription=Þīn ǣroste landbūnesse cann ƿesan timbron on inlendiscum lande ȝif þæt āȝende folc næbbe ȝeƿorden hniȝen. model.option.buildOnNativeLand.never.name=Nā model.option.buildOnNativeLand.never.shortDescription=Þǣr nis lēaf tō timbrienne on inlendiscum lande. -model.option.expertStartingUnits.name=Andƿīs beȝinnendu ƿiht +model.option.expertStartingUnits.name=Andƿīsa ƿihta þe mann ǣrest hæbbe model.option.expertStartingUnits.shortDescription=Maca eall beȝinnendu ƿiht sƿā andƿīs. model.option.unitsThatUseNoBells.name=Landbūendas þā ne brūcaþ bella. model.option.unitsThatUseNoBells.shortDescription=Þæt rīm landbūnessa on landbūnesse þā þe ne brūcaþ nǣnȝa bella. @@ -445,7 +465,7 @@ model.option.treasureTransportFee.shortDescription=Þæt dǣl hordes þætte þæt cynecynn hielt ƿiþ þā oferferunȝe his. model.option.teleportREF.name=Teleport REF model.option.teleportREF.shortDescription=REF ætēoƿaþ be þǣre ȝelīhtunȝstōƿe for his forman ende. -model.option.shipTradePenalty.name=Scipfeohƿendunȝe ȝeafol +model.option.shipTradePenalty.name=Scipmanȝunȝe ȝeafol model.option.shipTradePenalty.shortDescription=Ȝeafol on hunttēontiȝoðum dǣlum þāra cēapȝylda þā þā inlendiscan hātaþ cēapscipum. model.option.refSize.name=Micelness þæs cynefandunȝheres model.option.refSize.shortDescription=Rīm and cynn ƿihta on þǣm þe se cynefandunȝhere stent. @@ -461,7 +481,7 @@ veryHigh.name=Sƿīðe ȝrēat model.difficulty.veryEasy=Sƿīðe ēaðe model.difficulty.easy=Ēaðē -model.difficulty.medium=Ȝeƿunelic +model.difficulty.medium=Ȝeƿunelīċ model.difficulty.hard=Earfoþ model.difficulty.veryHard=Sƿīðe earfoþ model.difficulty.custom=Ȝecoren @@ -546,7 +566,7 @@ model.option.guiShowSonsOfLiberty.shortDescription=Amearcaþ swā tō ēoƿie Suna Frēodōmes ǣrendȝeƿritu be þǣm onȝinne ǣlces stæpes sƿā ne. model.option.guiShowGovernmentEfficiency.name=Ȝeƿealdes ƿelƿeorces ǣrendȝeƿritu model.option.guiShowGovernmentEfficiency.shortDescription=Amearcaþ swā ēoƿie ȝeƿealdes ƿelƿeorces ǣrendȝeƿritu be þǣm onȝinne ǣlces stæpes sƿā ne. -model.option.guiShowWarehouseCapacity.name=Hordernes mǣþ ǣrendȝeƿritu +model.option.guiShowWarehouseCapacity.name=Hordernes mǣþe ǣrendȝeƿritu model.option.guiShowWarehouseCapacity.shortDescription=Amearcaþ sƿā ēoƿie hordernes mǣðe ǣrendȝeƿritu be þǣm onȝinne ǣlces stæpes sƿā ne. model.option.guiShowUnitImproved.name=Ƿihta betrunȝe ǣrendȝeƿritu model.option.guiShowUnitImproved.shortDescription=Amearcaþ sƿā ēoƿie ƿihta betrunȝe ǣrendȝeƿritu be þǣm onȝinne ǣlces stæpes sƿā ne. @@ -603,8 +623,8 @@ clientOptions.savegames.showSavegameSettings.multiplayer=Synderlīce maniȝpleȝendbǣr hordod ȝamen clientOptions.savegames.showSavegameSettings.always=Ā clientOptions.savegames.autosave.fileprefix=Horda selflīce -clientOptions.savegames.autosave.lastturn=ǣr stæpe -clientOptions.savegames.autosave.beforelastturn=tūƿa ǣr stæpe +clientOptions.savegames.autosave.lastturn=ǣrra stæpe +clientOptions.savegames.autosave.beforelastturn=tūƿa ǣrra stæpe model.option.autosavePeriod.name=Horda selflīce æfter ǣlcum x stapa: model.option.autosavePeriod.shortDescription=Sēo tīd þe ȝelimpþ betƿeox selflicum hordunȝum þisses ȝamenes. Se cǣȝ 0 cann þis ȝelemian. model.option.autosaveGenerations.name=Heald ȝīet x selflīce hordod ȝeƿithord: @@ -705,7 +725,7 @@ model.settlement.aztec.name=Asteca Burȝ model.settlement.aztec.plural=byriȝ model.settlement.aztec.capital.name=Asteca Burȝ -event.firstLanding=Forme belandunȝ on %name%! +event.firstLanding=Forme ȝelandunȝ on %name%! event.meetingNatives=Mētende þā inlendiscan... event.meetingEuropeans=Mētende ōðre Europisce. event.meetingAztec=Sēo Astecƿaru... @@ -724,7 +744,7 @@ sellProposition.nothing=Nāƿiht sellProposition.cancel=Onƿend trade.nothingToSell=Hīȝ lā, ƿē nabbaþ nāƿiht tō cīepenne hēr nū! -trade.noTrade=Cēap ne ȝelamp. +trade.noTrade=Se cēap ne ȝelamp. buy.text=Sēo %nation%þēod wile cīepan heora %goods%ƿara ƿiþ %gold%: buy.takeOffer=Andfōh þā bēodunȝe buy.moreGold=Ābidd læssan cēapȝyldes @@ -744,7 +764,7 @@ declareIndependence.enterCountry=Hēræfter, ūre land biþ ȝecūþ sƿā declareIndependence.enterNation=and ǣlc burȝmann on ūrum þrymfæstan lande biþ ƿlanc tō ƿesenne ȝecūþ sƿā declareIndependence.announce=Þā landbūnessa of %oldNation% habbaþ aboden selfƿeald fram %ruler% and sind nū ȝecūþ sƿā þā %newNation%. -indianLand.text=Þis land is āht fram þǣm %player%. Ƿilt þū: +indianLand.text=Þis land lōcaþ tō %player%. Ƿilt þū: indianLand.pay=Abēod %amount% ȝoldes ƿiþ þæt land indianLand.take=Nim þæt is rihtlīce ūre indianLand.cancel=Forlǣt þæt land @@ -841,7 +861,7 @@ nameColony.notUnique=Þū ǣr nū hafast landbūnesse þe hāteþ %name%! renameColony.text=Bidde þē tō ȝieldenne nīƿne naman tō ūrre nīƿan landbūnesse: renameColony.yes=Nemne eft -renameColony.no=Onƿende +renameColony.no=Onƿend renameUnit.text=Bidde þē tō ȝieldenne nīƿne naman tō ūrum ƿihte: renameUnit.yes=Nemne eft renameUnit.no=Onƿende @@ -851,7 +871,7 @@ defeated.text=Þū hafast ȝeƿorden oferdrifen! Ƿilt þū: defeated.yes=Abīdan and ƿæccan defeated.no=Faran -victory.text=Þū hafast siȝe! +victory.text=Þū hafast ȝeƿunnen! victory.yes=Afar victory.continue=Pleȝ ȝīet lenȝer victory.noEuropeans=Se sīȝeȝrund tō oferƿinnenne ealle ōðre Europisce is fulfyled. Oþþe lǣt inlǣd ōðre Europisce þēode, oþþe ēacna mid mā sīȝeȝrunda. @@ -1102,7 +1122,7 @@ model.ability.electFoundingFather.shortDescription=Þēos þēod cann staðoliende fæderas cēosan. model.ability.canRecruitUnit.name=Ȝædera ƿiht model.ability.canRecruitUnit.shortDescription=Þēos þēod cann ƿiht ȝæderian. -model.ability.royalExpeditionaryForce.name=Cynefandunȝhere +model.ability.royalExpeditionaryForce.name=Cyneaspyrȝunȝhere model.ability.royalExpeditionaryForce.shortDescription=Þēos þēod is cynefanduȝhere. model.ability.ambushPenalty.name=Besǣtunȝe oferhȳrness model.ability.ambushPenalty.shortDescription=Þēos þēod adrīehþ besǣtunȝoferhȳrnesse. @@ -1134,7 +1154,7 @@ model.ability.produceInWater.shortDescription=Ƿiht cunnon brūcan ƿæterstedas and ēac landstedas. model.ability.repairUnits.name=Bēt ƿiht model.ability.repairUnits.shortDescription=Cann bētan sumu ȝecynd derodra ƿihta. -model.ability.export.name=Āber ƿara +model.ability.export.name=Āber cēapas model.ability.export.shortDescription=Cann āberan ƿara tō Europe rihte. model.ability.dressMissionary.name=Scrȳd bodan model.ability.dressMissionary.shortDescription=Āƿend ƿiht tō (uncræftiȝum) bodan. @@ -1155,7 +1175,7 @@ model.modifier.warehouseStorage.name=Hordernes hordunȝ model.modifier.warehouseStorage.shortDescription=Hordernes hordunȝ model.modifier.warehouseStorage.description=Hordernes hordunȝ -model.modifier.minimumColonySize.name=Lǣst landbūnesse micelness +model.modifier.minimumColonySize.name=Læst landbūnesse micelness þe sīe meahtlīc model.modifier.minimumColonySize.shortDescription=Lǣst landbūnesse micelness model.modifier.breedingDivisor.name=Micelness flocca model.modifier.breedingDivisor.shortDescription=Sēo micelness ānes flocces. Missenlīce floccas cunnon andƿearde ƿesan. @@ -1165,7 +1185,7 @@ model.modifier.consumeOnlySurplusProduction.shortDescription=Brȳcþ synderlīce dǣl þæs oferēacan forþbǣro, nā hordoda ƿara. model.modifier.offenceAgainst.name=Abylȝness ƿiþ model.modifier.offenceAgainst.shortDescription=Bēteþ þā ƿēne þæt þū oferƿinne þǣr þū onrǣse. -model.colony.colonistStarved=Landbūend hafaþ þurh hunȝor on þǣre %colony%landbūnesse ȝecƿolen! +model.colony.colonistStarved=Landsǣta hafaþ þurh hunȝor on þǣre %colony%landbūnesse ȝecƿolen! model.colony.colonyStarved=Se æftermesta landbūend on %colony% hæfþ þurh hunȝor ȝecƿolen, and sēo landbūness is nū ǣmettiȝ. model.colony.famineFeared=Mann drǣt hunȝorȝēar on %colony%. Synderlīce %number% dǣla fōdan ȝīet bīdaþ. model.colony.buildNeedPop=Ƿē ne cunnon timbrian %building% on %colony%! Ƿē þurfon māran lēodrǣdnesse. @@ -1191,7 +1211,7 @@ model.unit.indianSurprise=Sēo %nation%þēod macaþ undersmȳhþ %colony% landbūnesse, þe eȝsaþ ūre landbūendas. Þǣre %nation%þēode hēafodmann sæȝþ þætte hēo ne dyde hit. model.unit.colonyCaptured=Þū hafast andfanȝen %colony%. %amount% ȝyldenra clūta ƿǣron besyrod! model.unit.colonyCapturedBy=Se %player% hafaþ andfōn %colony%. %amount% ȝyldenra clūta ƿǣron besyrod! -model.unit.colonyBurning=Sēo landbūness of %colony% hafaþ ȝeƿorden fullīce brunnen be %nation% %unit%; %amount% ȝyldenra clūta ƿǣron besyrod! +model.unit.colonyBurning=Sēo %colony% landbūness ƿæs fullīce brunnen be %nation% %unit%; %amount% ȝyldenra clūta ƿǣron besyrod! model.unit.colonyBurning.other=Þǣre %nation%þēode landbūnesse of %colony% hafaþ ȝeƿorden fullīce ȝebrunnen be þǣre %attackerNation%þēode! model.unit.unitPromoted=Þǣre %nation%þēode %oldName% hafaþ ȝeƿorden ȝeƿenden tō %unit%ƿihte. model.unit.unitEducated=On %colony%landbūnesse, %oldName%ƿiht hafaþ ȝeƿorden %unit%ƿiht þurh lāre. @@ -1260,6 +1280,9 @@ model.player.independence.unitsAcquired=Þās Cynefandunȝheres ƿiht habbaþ ȝeseald hīe tō þīnum siȝeƿihtum: %units% model.player.continentalArmyMuster=Tō aƿreðienne þīne ȝesƿutelunȝe selfƿealdes, %number% {{plural:%number%|%oldUnit%ƿihta}} on %colony%landbūnesse {{plural:%number%|one=ƿæs|other=ƿǣron}} ȝesetta tō {{plural:%number%|%unit%ƿihta}}! model.event.declareIndependence.name=Cȳþ selfƿeald +model.disaster.tornado.name=Þoden +model.disaster.disease.name=Ādl +model.disaster.hurricane.name=ȝestun model.stance.war=Ƿīȝ model.stance.peace=Friþ model.stance.cease_fire=Ne scēot mā @@ -1281,6 +1304,7 @@ # Fuzzy model.monarch.action.ADD_TO_REF=Se Cynescipe hafaþ ȝeīht þone Cynefandunȝhere mid %additon%ƿihte. Landbūnesslādmenn ȝecȳðaþ ƿærlīcnesse. model.monarch.action.ADD_TO_REF.no=Fulfremed +model.monarch.action.DECLARE_PEACE.no=Fulfyled lā model.monarch.action.DECLARE_WAR=Sēo ƿlencu %nation%þēode fornȳdeþ ūs tō farenne on herȝoðe ƿiþ hīe! model.monarch.action.DECLARE_WAR.no=Fulfremed model.monarch.action.SUPPORT_LAND=Tō aƿreðienne þec on þīnum landbūnessƿīȝum hafaþ þæt cynecynn ȝecoren tō ȝiefenne þē sume ȝlēaƿe rincas (%addition%). @@ -1333,7 +1357,7 @@ model.tile.borealForest.name=Norðanƿeald model.tile.arctic.name=Īsceald land model.tile.ocean.name=Ȝārsecȝ -model.tile.lake.name=Laȝu +model.tile.lake.name=Lacu model.tile.highSeas.name=Hēahsǣ model.tile.hills.name=Hyllas model.tile.mountains.name=Beorȝas @@ -1492,7 +1516,8 @@ model.unit.soldier.name=Rinc (%unit%ƿiht) model.unit.dragoon.name=Horsrinc (%unit%ƿiht) model.unit.missionary.name=Boda (%unit%ƿiht) -model.unit.role.scout=Scēaƿere +model.unit.role.default=Nǣniȝ +model.unit.role.scout=Fōreƿeard model.unit.role.pioneer=Forþȝanȝend model.unit.role.soldier=Rinc model.unit.role.dragoon=Horsrinc @@ -1500,12 +1525,13 @@ model.unit.unarmed.name=Unƿǣpned model.unit.armed.name=Ƿǣpned model.unit.mounted.name=Horsrīdende +model.unit.changeWork=Ƿend ƿeorc model.unit.workingAs=Ƿyrcende sƿā model.unit.expertFarmer.workingAs=Eorþlinȝ model.unit.expertFisherman.workingAs=Fiscere -model.unit.expertFurTrapper.workingAs=Fellfōnd +model.unit.expertFurTrapper.workingAs=Fellhunta model.unit.expertSilverMiner.workingAs=Seolfordelfend -model.unit.expertLumberJack.workingAs=Holtfyllend +model.unit.expertLumberJack.workingAs=Ƿudumann model.unit.expertOreMiner.workingAs=Ārdelfend model.unit.masterSugarPlanter.workingAs=Sƿētelsettend model.unit.masterCottonPlanter.workingAs=Bēamƿolsettend @@ -1519,7 +1545,7 @@ model.unit.masterFurTrader.workingAs=Fellcīepend model.unit.masterBlacksmith.workingAs=Īsensmiþ model.unit.masterGunsmith.workingAs=Scēotendsearƿa smiþ -model.unit.seasonedScout.workingAs=Scēaƿere +model.unit.seasonedScout.workingAs=Fōreƿeard model.unit.hardyPioneer.workingAs=Forþȝanȝend model.unit.veteranSoldier.workingAs=Rinc model.unit.jesuitMissionary.workingAs=Ȝodspellere @@ -2126,3 +2152,4 @@ installer.FreeColLanguage.autodetect=Find selflīce be pleȝan onȝinne installer.FreeColLanguage.description=Þū mōst hēræfter ƿendan þās ȝesetednessa þurh þā nytte þæs forþberunȝa ȝetæles on þǣm pleȝan. installer.UserFiles=Ic bidde þē þā stōƿe for brūcendānlīcum ȝesetednessum and pleȝhord: +installer.UserFiles.home=Þæs brūcendes hāmeallȝetæl Modified: freecol/trunk/data/strings/FreeColMessages_ar.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ar.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_ar.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -6,6 +6,7 @@ # Author: Imksa # Author: Meno25 # Author: OsamaK +# Author: Tarawneh # Author: زكريا freecol.desktopEntry.GenericName=لعبة استراتيجية @@ -30,6 +31,7 @@ false=خطأ more=المزيد... none=لا شيء +many=العديد nothing=لا شيء all=جميع notApplicable.short=غير مطبق @@ -127,6 +129,8 @@ colonyPanel.populationTooSmall=التعداد السكاني %number% colonyPanel.units=وحدات colonyPanel.buildings=مباني +colonyPanel.colonyUnits=وحدات المستعمرة +outsideOfColony.name=خارج المستعمرة turns=يدور turnsToComplete.short=(أدوار: %number%) turnsToComplete.long=(الأدوار للاكتمال: %number%) @@ -180,6 +184,7 @@ tension.displeased=غير راض tension.angry=غاضب tension.hateful=مفعم بالكراهية +tension.unknown=مجهول tension=توتر noSuchFile=الملف المحدد غير موجود أو ليس ملفا عاديا. gotoThisTile=اذهب إلى هذه التلة @@ -191,7 +196,13 @@ filter.gameOptions=خيارات لعبة فري كول (*.fgo) filter.gameOptionsAndSavedGames=خيارات لعبة فري كول وألعاب فري كول المحفوظة (*.fgo and *.fsg) filter.xml=XML (لغة التوصيف الموسعة). +freecol.map.Africa=أفريقيا +freecol.map.Australia=أستراليا +freecol.map.America_large=أمريكيا (ضخم) +freecol.map.Caribbean_basin=الحوض الكاريبي underRepair=قيد الإصلاح (%turns% {{جمع:%turns%|one = turn|other = يتحول}} الأيسر) +EventPanel.DISCOVER_PACIFIC=أنت تستكشف المحيط الهادي. +EventPanel.FIRST_LANDING=الرسو الأول في العالم الجديد EventPanel.MEETING_EUROPEANS=تقابل زملاء أوروبيين. سيتنافسون معك على الأرض والثروات، وربما يعلنون الحرب ضدك. لكن بعد أن ينضم جان دي ويت إلى الكونجرس القاري، يمكنك أن تتاجر معهم. EventPanel.MEETING_NATIVES=تقابل السكان الأصليين. أرسل كشافتك إلى مستوطناتهم لمعرفة المزيد حولهم، وخدامك ومستعمريك الأحرار للتعلم منهم. أرسل سفنك وقطاراتك لمستوطناتهم إذا كنت ترغب في التجارة معهم. EventPanel.MEETING_AZTEC=تقابل أمة الأزتك. @@ -232,6 +243,7 @@ menuBar.debug.addImmigration=أضف هجرة menuBar.debug.addLiberty=إضافة الحرية لكل مستعمرة menuBar.debug.stepRandomNumberGenerator=خطوة مولد الأرقام العشوائي +menuBar.debug.displayUnits=أظهر الوحدات menuBar.debug.randomValue=قيمة الرقم المولد عشوائيا: %value% menuBar.debug.displayPanels=اعرض اللوحات menuBar.debug.displayMonarchPanel=أظهر لوحة العاهل @@ -341,6 +353,8 @@ model.option.explorationPoints.shortDescription=هل ينبغي أن يتم منح نقاط الاستكشاف لكل الاكتشافات؟ model.option.turnsToSail.shortDescription=عدد الدورات التي المطلوبة للإبحار من أوروبا إلى العالم الجديد. model.option.amphibiousMoves.name=التحركات البرمائية +model.option.emptyTraders.name=وحدات تجارية خاوية +model.option.emptyTraders.shortDescription=إسمح للوحدات التجارية الخاوية بالتبادل التجاري مع السكان الاصليين model.option.startingPositions.classic=كلاسيكي model.option.startingPositions.random=عشوائي model.option.startingPositions.historical=تاريخي @@ -363,8 +377,34 @@ model.option.victoryDefeatHumans.shortDescription=أي لاعب يهزم كل اللاعبين البشر الآخرين يكسب اللعبة. gameOptions.years.name=خيارات السنة model.option.startingYear.name=سنة البدء +model.option.startingYear.shortDescription=العام الذي تبدأ به اللعبة. model.option.seasonYear.name=موسم السنة model.option.mandatoryColonyYear.name=سنة مستعمرة إلزامية +gameOptions.prices.name=الأسعار المبدئية +gameOptions.prices.shortDescription=مدى الاسعار المبدئية لبضائع مختلفة. +model.option.food.minimumPrice.name=الحد الأدنى للسعر المبدئي للطعام +model.option.food.maximumPrice.name=الحد الأعلى للسعر المبدئي للطعام +model.option.food.spread.name=فرق سعري شراء و بيع الطعام +model.option.sugar.minimumPrice.name=الحد الأدنى للسعر المبدئي للسكر +model.option.sugar.maximumPrice.name=الحد الأعلى للسعر المبدئي للسكر +model.option.sugar.spread.name=فرق سعري شراء و بيع السكر +model.option.tobacco.minimumPrice.name=الحد الأدنى للسعر المبدئي للتبغ +model.option.tobacco.maximumPrice.name=الحد الأعلى للسعر المبدئي للتبغ +model.option.tobacco.spread.name=فرق سعري شراء و بيع التبغ +model.option.cotton.minimumPrice.name=الحد الأدنى للسعر المبدئي للقطن +model.option.cotton.maximumPrice.name=الحد الأعلى للسعر المبدئي للقطن +model.option.cotton.spread.name=فرق سعري شراء و بيع القطن +model.option.furs.minimumPrice.name=الحد الأدنى للسعر المبدئي للفراء +model.option.furs.maximumPrice.name=الحد الأعلى للسعر المبدئي للفراء +model.option.furs.spread.name=فرق سعري شراء و بيع الفراء +model.option.lumber.minimumPrice.name=الحد الأدنى للسعر المبدئي للخشب المنشور +model.option.lumber.maximumPrice.name=الحد الأعلى للسعر المبدئي للخشب المنشور +model.option.lumber.spread.name=فرق سعري شراء و بيع الخشب المنشور +model.option.ore.minimumPrice.name=الحد الأدنى للسعر المبدئي للمواد الخام +model.option.ore.maximumPrice.name=الحد الأعلى للسعر المبدئي للمواد الخام +model.option.ore.spread.name=فرق سعري شراء و بيع المواد الخام +model.option.horses.minimumPrice.name=الحد الأدنى للسعر المبدئي للجياد +model.option.horses.maximumPrice.name=الحد الأعلى للسعر المبدئي للجياد model.option.startingMoney.name=نقود البدء model.option.badGovernmentLimit.name=حد حكومة سيء model.option.taxAdjustment.name=تعديل الضريبة Modified: freecol/trunk/data/strings/FreeColMessages_hu.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_hu.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_hu.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -334,6 +334,7 @@ cli.no-intro=intro átugrása cli.no-sound=a FreeCol futtatása hangok nélkül cli.private=magánkiszolgáló indítása (a metakiszolgálón nem lesz közzétéve) +cli.seed=Egy alapszám (SEED) megadása a ál-véletlenszám generátornak. cli.server-name=NAME név megadása a kiszolgálónak cli.server=önálló kiszolgáló indítása a megadott porton cli.splash=a játék betöltése közben kép megjelenítése a FILE állományból @@ -356,6 +357,8 @@ model.option.emptyTraders.shortDescription=Lehetővé teszi az üres kereskedelmi egységek kereskedelmét az indián településekkel. model.option.settlementActionsContactChief.name=Törzsfő kapcsolat model.option.settlementActionsContactChief.shortDescription=Minden, a településsel kapcsolatos akció egyben találkozás a törzsfőnökkel és elfogyasztja felderítői bónuszt. +model.option.enhancedMissionaries.name=Továbbfejlesztett misszionáriusok +model.option.enhancedMissionaries.shortDescription=A misszionáriusok fejlesztik a település kereskedelmét, a tanított szakmákat, és láthatóvá teszik a környéket. model.option.giftProbability.name=Ajándék esélye model.option.demandProbability.name=Követelés valószínűsége model.option.demandProbability.shortDescription=Annak a körönkénti százalékos esélye, hogy egy dühös indián település adót követel egy közeli zavaró európai településtől. Modified: freecol/trunk/data/strings/FreeColMessages_ko.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ko.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_ko.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -487,7 +487,7 @@ model.option.landGeneratorType.shortDescription=사용할 땅 생성기의 종류 설정 옵션. model.option.distanceToHighSea.name=심해와의 거리 model.option.distanceToHighSea.shortDescription=해안과 외양 사이의 우선되는 거리 -model.option.riverNumber.name=강의 개수 +model.option.riverNumber.name=강의 수 model.option.riverNumber.shortDescription=생성된 지도에서 강의 개수를 설정하기위한 선택사항입니다. model.option.mountainNumber.name=산의 개수 model.option.mountainNumber.shortDescription=생성된지도에 산의 개수를 설정하기위한 선택사항입니다. Modified: freecol/trunk/data/strings/FreeColMessages_nb_NO.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_nb_NO.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_nb_NO.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -1,4 +1,4 @@ -# Messages for Norwegian Bokmål (norsk (bokmål)) +# Messages for Norwegian Bokmål (norsk bokmål) # Exported from translatewiki.net # Author: Harald Khan # Author: Laaknor Modified: freecol/trunk/data/strings/FreeColMessages_nn.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_nn.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_nn.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -1,4 +1,4 @@ -# Messages for Norwegian Nynorsk (norsk (nynorsk)) +# Messages for Norwegian Nynorsk (norsk nynorsk) # Exported from translatewiki.net # Author: Harald Khan # Author: Nghtwlkr Modified: freecol/trunk/data/strings/FreeColMessages_pl_PL.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -304,6 +304,8 @@ direction.NW=północny zachód server.reject=Serwer nie może wykonać polecenia. server.trade.noGoods=Nie można hadlować towarami, których nie ma. +main.javaVersion=Wersja Java %minVersion% lub wyższa jest zalecana, aby uruchomić FreeCol\n( %version% wykryte, użyj --no-java-check aby pominąć sprawdzanie wersji). +main.memory=Musisz przydzielić więcej niż %memory% bajtów pamięci dla JVM. Uruchom ponownie FreeCol z parametrem: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=USTAWIENIA cli.arg.debuglevel=LICZBA cli.arg.debugRun=Tury[,SAVENAME] @@ -328,8 +330,9 @@ cli.error.home.notExists=Katalog docelowy %string% nie istnieje. cli.error.home.noRead=Nie można odczytać %string%. cli.error.home.noWrite=Nie można zapisać na %string%. -# Fuzzy -cli.freecol-data=ustaw KATALOG z danymi FreeCol (posiada podkatalog „images”) +cli.error.save=Nie można odczytać zapisanej gry %string% . +cli.error.timeout=\n%string%jest zbyt krótki (mniej niż %minimum% ) +cli.freecol-data=ustaw KATALOG z danymi FreeCol (posiada podkatalog 'base') cli.font=ustaw domyślną czcionkę cli.help=wyświetl ten ekran pomocy cli.home-directory=ustaw KATALOG domowy FreeCol (domyślnie: domowy użytkownika) @@ -1259,6 +1262,7 @@ sentryUnit=Czuwaj clearUnitOrders=Cofnij rozkaz leaveTown=Opuść osadę +board=Załaduj na pokład %unit% clearSpeciality=Wyczyść zawód clearSpeciality.areYouSure=Czy jesteś pewien, że chcesz zdegradować %oldUnit% do %unit%? clearSpeciality.impossible=%unit% nie może zostać zdegradowany! Modified: freecol/trunk/data/strings/FreeColMessages_pt_BR.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-01-27 19:45:49 UTC (rev 10467) +++ freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-02-10 19:24:29 UTC (rev 10468) @@ -8,6 +8,7 @@ # Author: Everton137 # Author: GKnedo # Author: Giro720 +# Author: Jesielt # Author: Kaao # Author: Luckas Blade # Author: ManoDbo @@ -61,8 +62,8 @@ integerAboveZero=Por favor use um número inteiro maior que zero. newLanguageSelected=Idioma definido como %language%. Você precisará reiniciar o jogo para que as alterações tenham efeito. autodetectLanguageSelected=Você escolheu a seleção automática de idioma. Ela entrará em vigor após a reinicialização do jogo. -singlePlayerGame=Iniciar um jogo solo -joinMultiPlayerGame=Se juntar a um jogo em rede +singlePlayerGame=Partida individual +joinMultiPlayerGame=Juntar-se a um jogo em rede startMultiplayerGame=Iniciar um jogo em rede name=Nome host=Servidor @@ -155,7 +156,7 @@ autumn=Outono year.SPRING=Primavera de %year% year.AUTUMN=Outono de %year% -warOfIndependence.independenceDeclared=Neste Dia, o Congresso aprovou a mais importante Resolução já aprovada na América.\n\nEstou bem ciente do Trabalho e Sangue e Tesouro que Nos irá custar manter esta Declaração, e suportar e defender estes Estados. No entanto, através de toda a Escuridão, posso vislumbrar os Raios de deslumbrante Luz e Glória. Consigo ver que o Fim mais do que justifica todos os Meios. E que a Posteridade triunfará naquela Transação de Dias, mesmo apesar de podermos arrepender-nos, o que, confio em Deus, não acontecerá.\n\nEm breve, a Força Expedicionária Real estará sobre nós. Preparai as nossas defesas enquanto angariamos voluntários para um novo Exército Continental. +warOfIndependence.independenceDeclared=Neste dia, o Congresso aprovou a mais importante resolução já aprovada na América.\n\nEstou bem ciente do trabalho, sangue e tesouro que vai nos custar manter esta Declaração e apoiar e defender estes Estados. No entanto, através de toda a escuridão, posso vislumbrar os raios de deslumbrante Luz e Glória. Consigo ver que o fim mais do que justifica todos os meios, e que a Posteridade triunfará naquela transação de dias, embora possamos nos arrepender, o que, confio em Deus, não acontecerá.\n\nEm breve, a Força Expedicionária Real estará sobre nós. Prepare as nossas defesas enquanto angariamos voluntários para um novo Exército Continental. purchaseDialog.clickOn=Clique nos itens seguintes para comprá-los. recruitDialog.clickOn=Clique em um dos seguintes indivíduos para recrutá-lo. Você terá que pagar %money% moedas de ouro para sua passagem. Ele será capaz de pagar sua própria passagem em %number% turnos. trainDialog.clickOn=Clique em um dos indivíduos seguintes para treiná-lo @@ -173,6 +174,7 @@ tradeItem.unit=Unidade negotiationDialog.offer=Os %nation% oferecerem negotiationDialog.demand=Os %nation% exigem +negotiationDialog.exchange=em troca por negotiationDialog.summary=O Povo %nation% oferece %offers% em troca de %demands%. negotiationDialog.accept=Aceitar negotiationDialog.cancel=Rejeitar @@ -256,13 +258,17 @@ menuBar.debug.displayVictoryPanel=Mostrar o painel de Vitória menuBar.debug.displayEuropeStatus=Mostrar a situação da Europa menuBar.debug.displayErrorMessage=Mostrar mensagem de erro +menuBar.debug.useAI=Usar AI menuBar.debug.revealEntireMap=Revelar mapa inteiro +menuBar.debug.hideEntireMap=Esconder o mapa inteiro menuBar.debug.compareMaps=Procurar desincronização no mapa. menuBar.debug.compareMaps.checkComplete=Busca completa. Desincronização não encontrada. menuBar.debug.compareMaps.problem=Provável problema descoberto. Leia as informações para entender o erro. menuBar.debug.statistics=Estatísticas menuBar.debug.memoryManager=Gestor de Memória +menuBar.debug.memoryManager.freeMemory=Livre menuBar.debug.memoryManager.totalMemory=Total +menuBar.debug.memoryManager.maxMemory=Máx menuBar.debug.memoryManager.gc=Executar limpeza de memória menuBar.report=Relatórios menuBar.statusLine=Pontos: %score% | Ouro: %gold% | Imposto: %tax%% | Ano: %year% @@ -301,7 +307,10 @@ server.reject=O servidor não pode fazer isso. server.trade.noGoods=Você não pode trocar bens que não estão presentes. main.javaVersion=É recomendada a versão do Java %minVersion% ou mais recente para executar o Freecol (%version% detetada, use --no-java-check para verificar). +main.memory=É necessário atribuir mais de %memory% bytes de memória para a JVM.\n Reinicie o FreeCol com: java - Xmx %minMemory% M-jar FreeCol.jar +cli.arg.clientOptions=ARQUIVO DE OPÇÕES cli.arg.debuglevel=NÚMERO +cli.arg.debugRun=TURNOS[,NOMEGRAVADO] cli.arg.dimensions=LARGURAxALTURA cli.arg.directory=DIRETÓRIO cli.arg.file=ARQUIVO @@ -309,15 +318,22 @@ cli.arg.loglevel=NIVELDOREGISTRO cli.arg.name=NOME cli.arg.port=PORTA +cli.arg.seed=SEMENTE +cli.arg.timeout=TEMPO LIMITE cli.check-savegame=checa o corrompimento do jogo salvo cli.check-savegame.success=A verificação de consistência terminou, verifique o log para maiores detalhes. cli.check-savegame.failure=A verificação de consistência falhou, verifique o log para maiores detalhes. +cli.clientOptions=Arquivo XML que contém as opções de utilizador do cliente cli.debug=depurar o FreeCol +cli.debug-run=executar N turnos em modo de debug, depois, opcionalmente, gravar e sair cli.default-locale=define a localidade padrão (LINGUA[_PAIS[_VARIANTE]]) +cli.error.clientOptions=Ignorando o arquivo ilegível de opções do cliente: %string% cli.error.port=%string% não é um número de porta válido. cli.error.home.notExists=Diretório %string% não existe. cli.error.home.noRead=Impossível ler de %string%. cli.error.home.noWrite=Impossível gravar em %string%. +cli.error.save=Não foi possível ler o jogo salvo %string%. +cli.error.timeout=%string%é muito pequeno (menos de %minimum%) cli.freecol-data=define o DIRETÓRIO de dados do FreeCol (tem um subdiretório chamado 'base') cli.font=definir a fonte padrão cli.help=exibe esta tela de ajuda @@ -331,10 +347,12 @@ cli.no-intro=pular a introdução cli.no-sound=executa o FreeCol sem som cli.private=inicia um servidor privado (não publicado no metaservidor) +cli.seed=fornece uma SEMENTE para o gerador de números pseudo-aleatórios cli.server-name=especifica um NOME personalizado para o servidor cli.server=inicia um servidor stand-alone na porta especificada cli.splash=exibe um ARQUIVO de imagem como tela inical enquanto carrega o jogo cli.tc=carrega a "conversão total" com o NOME dado +cli.timeout=número de segundos que o servidor espera por uma resposta à pergunta cli.version=exibe o número de versão e encerra cli.windowed=executa o FreeCol em modo janela, em vez de modo tela cheia gameOptions.name=Opções de Jogo @@ -348,10 +366,23 @@ model.option.turnsToSail.name=Turnos para navegar model.option.turnsToSail.shortDescription=O número de turnos que leva navegar da Europa para o Novo Mundo. model.option.amphibiousMoves.name=Movimentos amfíbios +model.option.settlementActionsContactChief.name=Contacto com o chefe +model.option.settlementActionsContactChief.shortDescription=Todas as interações com um acampamento nativo contactam o chefe e consomem o bônus de reconhecimento. model.option.enhancedMissionaries.name=Missionários melhorados model.option.enhancedMissionaries.shortDescription=Missões missionárias melhoram o comércio, habilidades ensinadas e dar visibilidade ao redor. +model.option.giftProbability.name=Probabilidade de receber presente +model.option.giftProbability.shortDescription=Porcentagem por turno de chance que uma assentamento nativo pacífico oferecê-lo excedentes de produção como um presente para um assentamento europeu amigável nas proximidades. +model.option.demandProbability.name=Probabilidade de receber exigências +model.option.demandProbability.shortDescription=Porcentagem por turno de chance que uma assentamento nativo com raiva vai exigir tributos para um assentamento europeu chato nas proximidades. +model.option.continueFoundingFatherRecruitment.name=Continuar a recrutar Pais Fundadores +model.option.continueFoundingFatherRecruitment.shortDescription=Continuar a recrutar Pais Fundadores após o reconhecimento da independência. +model.option.settlementLimitModifier.name=Modificador de limite dos assentamentos. +model.option.settlementLimitModifier.shortDescription=Adicionada uma quantidade limite, como o número de carroça-vagão construíveis. model.option.startingPositions.name=Posições iniciais +model.option.startingPositions.shortDescription=Determina as posições iniciais dos jogadores europeus. +model.option.startingPositions.classic=Clássico model.option.startingPositions.random=Aleatório +model.option.startingPositions.historical=Histórico gameOptions.colony.name=Opcões da Colônia gameOptions.colony.shortDescription=Contém opções relacionadas ao comportamento das colônias. model.option.customIgnoreBoycott.name=Casa de Comércio ignora boicote @@ -362,6 +393,10 @@ model.option.saveProductionOverflow.shortDescription=Guarda o excedente de martelos, sinos e cruzes. model.option.allowStudentSelection.name=Permitir seleção de estudantes model.option.allowStudentSelection.shortDescription=Permite a atribuição de estudantes manual, em vez de automática +model.option.enableUpkeep.name=Edifícios precisam de manutenção +model.option.enableUpkeep.shortDescription=Pagar a manutenção dos edifícios ou sofrer uma penalização de produção. +model.option.naturalDisasters.name=Desastres naturais +model.option.naturalDisasters.shortDescription=Probabilidade de ocorrência de desastres naturais por turno. gameOptions.victoryConditions.name=Condições de Vitória gameOptions.victoryConditions.shortDescription=Ajustes para decidir como o jogo poderá ser vencido. model.option.victoryDefeatREF.name=Primeiro jogador a ganhar a Independência @@ -371,7 +406,17 @@ model.option.victoryDefeatHumans.name=Todos os outros jogadores humanos terem sido vencidos model.option.victoryDefeatHumans.shortDescription=O jogador que derrotar os outros jogadores humanos vence o jogo. gameOptions.years.name=Opções de ano +gameOptions.years.shortDescription=Contém opções relacionadas a vários anos especiais. model.option.startingYear.name=Ano de início +model.option.startingYear.shortDescription=O ano em que o jogo começa. +model.option.seasonYear.name=Ano das temporadas +model.option.seasonYear.shortDescription=O primeiro ano em que há duas temporadas. +model.option.lastYear.name=Último ano do jogo +model.option.mandatoryColonyYear.name=Ano da colônia obrigatória +model.option.mandatoryColonyYear.shortDescription=O ano no qual é obrigatório possuir uma colônia. +model.option.lastYear.shortDescription=O último ano do jogo. +model.option.lastColonialYear.name=Último ano colonial do jogo +model.option.lastColonialYear.shortDescription=O último ano do jogo para um jogador colonial. gameOptions.prices.name=Preços iniciais gameOptions.prices.shortDescription=As faixas de preços iniciais de vários produtos. model.option.food.minimumPrice.name=Preço inicial mínimo de comida @@ -440,25 +485,59 @@ model.option.equipScoutCheat.name=Equipar Batedor model.option.equipScoutCheat.shortDescription=Percentual de chance por turno de um jogador AI equipar uma unidade na Europa como um batedor, gratuitamente. model.option.landUnitCheat.name=Conseguir unidade terrestre +model.option.landUnitCheat.shortDescription=Porcentagem de change por turno que um jogador AI ganhar gratuitamente uma unidade terrestre útil na Europa. model.option.offensiveNavalUnitCheat.name=Conseguir unidade naval de ataque model.option.transportNavalUnitCheat.name=Conseguir unidade naval de transporte model.option.landPriceFactor.name=Fator de preço da terra model.option.landPriceFactor.shortDescription=Aumento do custo da compra de terras indígenas +model.option.foundingFatherFactor.name=Fator do Pai Fundador +model.option.foundingFatherFactor.shortDescription=Aumento do custo de eleger um novo Pai Fundador. +model.option.arrearsFactor.name=Fator de dívidas em atraso +model.option.arrearsFactor.shortDescription=Aumenta as suas dívidas em atraso nos impostos europeus. model.option.nativeConvertProbability.name=Probabilidade de converter nativos +model.option.nativeConvertProbability.shortDescription=Aumenta a ... [truncated message content] |
From: <mp...@us...> - 2013-02-01 00:54:53
|
Revision: 10493 http://sourceforge.net/p/freecol/code/10493 Author: mpope Date: 2013-02-01 00:54:50 +0000 (Fri, 01 Feb 2013) Log Message: ----------- Merge git.f8fc2acb: Lots of ColonyPanel cleanup, fixing BR#2511 in passing. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/client/gui/panel/CargoPanel.java freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java freecol/trunk/src/net/sf/freecol/client/gui/panel/DragListener.java freecol/trunk/src/net/sf/freecol/client/gui/panel/QuickActionMenu.java Modified: freecol/trunk/src/net/sf/freecol/client/gui/panel/CargoPanel.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/panel/CargoPanel.java 2013-02-01 00:18:39 UTC (rev 10492) +++ freecol/trunk/src/net/sf/freecol/client/gui/panel/CargoPanel.java 2013-02-01 00:54:50 UTC (rev 10493) @@ -120,7 +120,8 @@ * Initialize this CargoPanel. */ public void initialize() { - setCarrier(null); + carrier = null; + addPropertyChangeListeners(); } /** Modified: freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java 2013-02-01 00:18:39 UTC (rev 10492) +++ freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java 2013-02-01 00:54:50 UTC (rev 10493) @@ -128,38 +128,54 @@ COLONY_UNITS = 6, SETGOODS = 7; - private final JPanel netProductionPanel = new JPanel(); - private final PopulationPanel populationPanel = new PopulationPanel(); + /** The <code>Colony</code> this panel is displaying. */ + private Colony colony; + // Inherits PortPanel.pressListener and PortPanel.defaultTransferHandler + private final MouseListener releaseListener = new DropListener(); + + private final ImageLibrary imageLibrary = getLibrary(); + + + // Subparts + // Inherits protected PortPanel.cargoPanel and PortPanel.inPortPanel private final JComboBox nameBox; + private final JPanel netProductionPanel = new JPanel(); + + private final PopulationPanel populationPanel; + private final OutsideColonyPanel outsideColonyPanel; private final WarehousePanel warehousePanel; - private final TilePanel tilePanel; + private final TilesPanel tilesPanel; private final BuildingsPanel buildingsPanel; private final ConstructionPanel constructionPanel; + - private final MouseListener releaseListener; + // Buttons + private final JButton unloadButton + = new JButton(Messages.message("unload")); - private Colony colony; + private final JButton fillButton + = new JButton(Messages.message("fill")); - private JButton unloadButton = new JButton(Messages.message("unload")); + private final JButton warehouseButton + = new JButton(Messages.message("warehouseDialog.name")); - private JButton fillButton = new JButton(Messages.message("fill")); + private final JButton buildQueueButton + = new JButton(Messages.message("colonyPanel.buildQueue")); - private JButton warehouseButton = new JButton(Messages.message("warehouseDialog.name")); + private final JButton colonyUnitsButton + = new JButton(Messages.message("colonyPanel.colonyUnits")); - private JButton buildQueueButton = new JButton(Messages.message("colonyPanel.buildQueue")); - - private JButton colonyUnitsButton = new JButton(Messages.message("colonyPanel.colonyUnits")); - - private JButton setGoodsButton + private final JButton setGoodsButton = (FreeColDebugger.isInDebugMode(FreeColDebugger.DebugMode.MENUS)) - ? new JButton("Set Goods") : null; + ? new JButton("Set Goods") + : null; /** @@ -217,15 +233,16 @@ warehousePanel = new WarehousePanel(); - tilePanel = new TilePanel(freeColClient); + tilesPanel = new TilesPanel(freeColClient); buildingsPanel = new BuildingsPanel(); + populationPanel = new PopulationPanel(); + cargoPanel = new ColonyCargoPanel(freeColClient); defaultTransferHandler = new DefaultTransferHandler(freeColClient, gui, this); pressListener = new DragListener(freeColClient, gui, this); - releaseListener = new DropListener(); JScrollPane outsideColonyScroll = new JScrollPane(outsideColonyPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, @@ -239,7 +256,7 @@ JScrollPane warehouseScroll = new JScrollPane(warehousePanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); - JScrollPane tilesScroll = new JScrollPane(tilePanel, + JScrollPane tilesScroll = new JScrollPane(tilesPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); JScrollPane buildingsScroll = new JScrollPane(buildingsPanel, @@ -342,8 +359,12 @@ } /** - * Gets the <code>Colony</code>-pointer in use. + * Gets the <code>Colony</code> in use. * + * Try to use this at the top of all the routines that need the colony, + * to get a stable value. There have been nasty races when the colony + * changes out from underneath us, and more may be lurking. + * * @return The <code>Colony</code>. */ public synchronized final Colony getColony() { @@ -369,12 +390,12 @@ } /** - * Gets the <code>TilePanel</code>-object in use. + * Gets the <code>TilesPanel</code>-object in use. * - * @return The <code>TilePanel</code>. + * @return The <code>TilesPanel</code>. */ - public final TilePanel getTilePanel() { - return tilePanel; + public final TilesPanel getTilesPanel() { + return tilesPanel; } public void updateConstructionPanel() { @@ -385,6 +406,10 @@ inPortPanel.update(); } + public void updatePopulationPanel() { + populationPanel.update(); + } + public void updateWarehousePanel() { warehousePanel.update(); } @@ -397,11 +422,12 @@ buildingsPanel.update(); } - public void updateTilePanel() { - tilePanel.update(); + public void updateTilesPanel() { + tilesPanel.update(); } public void updateProductionPanel() { + final Colony colony = getColony(); final Specification spec = colony.getSpecification(); // TODO: find out why the cache needs to be explicitly invalidated colony.invalidateCache(); @@ -429,16 +455,12 @@ * construction displays. */ private void updateProduction() { - updateTilePanel(); + updateTilesPanel(); updateBuildingsPanel(); updateProductionPanel(); updateConstructionPanel(); } - private void sortBuildings(List<Building> buildings) { - Collections.sort(buildings); - } - /** * Analyzes an event and calls the right external methods to take * care of the user's request. @@ -446,7 +468,7 @@ * @param event The incoming action event */ public void actionPerformed(ActionEvent event) { - Colony colony = getColony(); + final Colony colony = getColony(); String command = event.getActionCommand(); if (OK.equals(command)) { closeColonyPanel(); @@ -499,7 +521,7 @@ getController().leaveShip(u); } cargoPanel.update(); - outsideColonyPanel.update(); + updateOutsideColonyPanel(); } unloadButton.setEnabled(false); fillButton.setEnabled(false); @@ -509,13 +531,14 @@ * Fill goods from the carrier currently selected to capacity. */ private void fill() { + final Colony colony = getColony(); Unit unit = getSelectedUnit(); if (unit != null && unit.isCarrier()) { for (Goods goods : unit.getGoodsContainer().getGoods()) { int space = GoodsContainer.CARGO_SIZE - goods.getAmount(); - int count = getColony().getGoodsCount(goods.getType()); + int count = colony.getGoodsCount(goods.getType()); if (space > 0 && count > 0) { - Goods newGoods = new Goods(goods.getGame(), getColony(), + Goods newGoods = new Goods(goods.getGame(), colony, goods.getType(), Math.min(space, count)); getController().loadCargo(newGoods, unit); @@ -529,6 +552,7 @@ * carrier with some cargo. */ private void updateCarrierButtons() { + final Colony colony = getColony(); unloadButton.setEnabled(false); fillButton.setEnabled(false); if (isEditable() && selectedUnitLabel != null) { @@ -536,7 +560,7 @@ if (unit != null && unit.isCarrier() && unit.hasCargo()) { unloadButton.setEnabled(true); for (Goods goods : unit.getGoodsList()) { - if (getColony().getGoodsCount(goods.getType()) > 0) { + if (colony.getGoodsCount(goods.getType()) > 0) { fillButton.setEnabled(true); break; } @@ -588,7 +612,7 @@ * @return A list of units on the colony tile. */ public List<Unit> getUnitList() { - return colony.getTile().getUnitList(); + return getColony().getTile().getUnitList(); } /** @@ -641,34 +665,35 @@ inPortPanel.initialize(); warehousePanel.initialize(); buildingsPanel.initialize(); - tilePanel.initialize(); + tilesPanel.initialize(); outsideColonyPanel.initialize(); updateProductionPanel(); - populationPanel.update(); + updatePopulationPanel(); constructionPanel.setColony(colony); - inPortPanel.setName(colony.getName() + " - port"); + inPortPanel.setName(colony.getName() + " " + Messages.message("port")); } /** * Closes the <code>ColonyPanel</code>. */ public void closeColonyPanel() { - if (getColony().getUnitCount() == 0) { + final Colony colony = getColony(); + if (colony.getUnitCount() == 0) { if (getGUI().showConfirmDialog("abandonColony.text", "abandonColony.yes", "abandonColony.no")) { getGUI().removeFromCanvas(this); - getController().abandonColony(getColony()); + getController().abandonColony(colony); } } else { - BuildableType buildable = getColony().getCurrentlyBuilding(); + BuildableType buildable = colony.getCurrentlyBuilding(); if (buildable != null - && buildable.getRequiredPopulation() > getColony().getUnitCount() + && buildable.getRequiredPopulation() > colony.getUnitCount() && !getGUI().showConfirmDialog(null, StringTemplate.template("colonyPanel.reducePopulation") - .addName("%colony%", getColony().getName()) + .addName("%colony%", colony.getName()) .addAmount("%number%", buildable.getRequiredPopulation()) .add("%buildable%", buildable.getNameKey()), "ok", "cancel")) { @@ -683,7 +708,7 @@ } buildingsPanel.cleanup(); warehousePanel.cleanup(); - tilePanel.cleanup(); + tilesPanel.cleanup(); constructionPanel.removePropertyChangeListeners(); cargoPanel.setCarrier(null); outsideColonyPanel.cleanup(); @@ -706,10 +731,11 @@ * from the Colony Panel allowing keyboard access to said units. */ private void generateColonyUnitsMenu() { + final Colony colony = getColony(); JPopupMenu colonyUnitsMenu = new JPopupMenu("Colony Units"); - ImageLibrary imageLibrary = super.getLibrary(); ImageIcon unitIcon = null; - final QuickActionMenu unitMenu = new QuickActionMenu(getFreeColClient(), getGUI(), this); + final QuickActionMenu unitMenu + = new QuickActionMenu(getFreeColClient(), getGUI(), this); Tile colonyTile = colony.getTile(); int unitNumber = 0; JMenuItem subMenu = null; @@ -722,8 +748,9 @@ unitIcon = imageLibrary.getUnitImageIcon(unit, 0.5); String nominative = Messages.message(StringTemplate.template( goodsType.getNameKey()).addAmount("%amount%", producing)); - String menuTitle = new String(Messages.message(unit.getLabel()) + " " + - Messages.message("producing.name") + " " + producing + " " + nominative); + String menuTitle = new String(Messages.message(unit.getLabel()) + + " " + Messages.message("producing.name") + + " " + producing + " " + nominative); subMenu = new JMenuItem(menuTitle, unitIcon); subMenu.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -737,12 +764,14 @@ Building workingInBuilding = unit.getWorkLocation(); if(workingInBuilding != null){ GoodsType goodsType = unit.getWorkType(); - int producing = workingInBuilding.getProductionOf(unit, workingInBuilding.getGoodsOutputType()); + int producing = workingInBuilding.getProductionOf(unit, + workingInBuilding.getGoodsOutputType()); unitIcon = imageLibrary.getUnitImageIcon(unit, 0.5); - String nominative = Messages.message(StringTemplate.template( - goodsType.getNameKey()).addAmount("%amount%", producing)); - String menuTitle = new String(Messages.message(unit.getLabel()) + " " + - Messages.message("producing.name") + " " + producing + " " + nominative); + String nominative = Messages.message(StringTemplate.template(goodsType.getNameKey()) + .addAmount("%amount%", producing)); + String menuTitle = new String(Messages.message(unit.getLabel()) + + " " + Messages.message("producing.name") + + " " + producing + " " + nominative); subMenu = new JMenuItem(menuTitle, unitIcon); subMenu.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -812,10 +841,12 @@ } colonyUnitsMenu.show(getGUI().getCanvas(), 0, 0); } + /** * Add property change listeners needed by this ColonyPanel. */ private void addPropertyChangeListeners() { + final Colony colony = getColony(); if (colony != null) { colony.addPropertyChangeListener(this); colony.getGoodsContainer().addPropertyChangeListener(this); @@ -827,6 +858,7 @@ * Remove the property change listeners of ColonyPanel. */ private void removePropertyChangeListeners() { + final Colony colony = getColony(); if (colony != null) { colony.removePropertyChangeListener(this); colony.getGoodsContainer().removePropertyChangeListener(this); @@ -840,6 +872,7 @@ * @param event The <code>PropertyChangeEvent</code> to handle. */ public void propertyChange(PropertyChangeEvent event) { + final Colony colony = getColony(); if (!isShowing() || colony == null) return; String property = event.getPropertyName(); logger.finest(colony.getName() + " change " + property @@ -851,14 +884,14 @@ } else if (Unit.CARGO_CHANGE.equals(property)) { updateInPortPanel(); } else if (ColonyChangeEvent.POPULATION_CHANGE.toString().equals(property)) { - populationPanel.update(); + updatePopulationPanel(); updateProductionPanel(); // food production changes } else if (ColonyChangeEvent.BONUS_CHANGE.toString().equals(property)) { ModelMessage msg = colony.checkForGovMgtChangeMessage(); if (msg != null) { getGUI().showInformationMessage(colony, msg); } - populationPanel.update(); + updatePopulationPanel(); } else if (ColonyChangeEvent.UNIT_TYPE_CHANGE.toString().equals(property)) { FreeColGameObject object = (FreeColGameObject) event.getSource(); UnitType oldType = (UnitType) event.getOldValue(); @@ -867,7 +900,7 @@ StringTemplate.template("model.colony.unitChange") .add("%oldType%", oldType.getNameKey()) .add("%newType%", newType.getNameKey())); - updateTilePanel(); + updateTilesPanel(); } else if (property.startsWith("model.goods.")) { // Changes to warehouse goods count may affect building production // which requires a view update. @@ -907,6 +940,7 @@ super.update(); // May have un/loaded cargo, "Unload" could have changed validity updateCarrierButtons(); + updatePopulationPanel(); } } @@ -948,6 +982,7 @@ * Update this population panel. */ public void update() { + final Colony colony = getColony(); final int uc = colony.getUnitCount(); final int solPercent = colony.getSoL(); final int rebels = Colony.calculateRebels(uc, solPercent); @@ -1005,11 +1040,14 @@ public final class OutsideColonyPanel extends UnitPanel implements DropTarget { + /** + * Create this OutsideColonyPanel. + */ public OutsideColonyPanel() { super(ColonyPanel.this, null, ColonyPanel.this.isEditable()); setLayout(new MigLayout("wrap 4, fill, insets 0")); setBorder(BorderFactory.createTitledBorder(BorderFactory.createEmptyBorder(), - Messages.message("outsideColony"))); + Messages.message("outsideColony"))); } /** @@ -1017,7 +1055,9 @@ */ @Override public void initialize() { + final Colony colony = getColony(); cleanup(); + super.initialize(); if (colony != null) setName(colony.getName() + " - port"); } @@ -1068,6 +1108,7 @@ @Override protected void addPropertyChangeListeners() { + final Colony colony = getColony(); if (colony != null) { colony.getTile().addPropertyChangeListener(Tile.UNIT_CHANGE, this); @@ -1076,17 +1117,13 @@ @Override protected void removePropertyChangeListeners() { + final Colony colony = getColony(); if (colony != null) { colony.getTile().removePropertyChangeListener(Tile.UNIT_CHANGE, this); } } - @Override - public String getUIClassID() { - return "OutsideColonyPanelUI"; - } - public boolean accepts(Unit unit) { return !unit.isCarrier(); } @@ -1094,6 +1131,11 @@ public boolean accepts(Goods goods) { return false; } + + @Override + public String getUIClassID() { + return "OutsideColonyPanelUI"; + } } /** @@ -1102,14 +1144,22 @@ */ public final class ColonyInPortPanel extends InPortPanel { + /** + * Creates this ColonyInPortPanel. + */ public ColonyInPortPanel() { super(ColonyPanel.this, null, ColonyPanel.this.isEditable()); + setLayout(new MigLayout("wrap 3, fill, insets 0")); setBorder(BorderFactory.createTitledBorder(BorderFactory.createEmptyBorder(), - Messages.message("inPort"))); + Messages.message("inPort"))); } + /** + * Initialize this ColonyInPortPanel. + */ public void initialize() { + final Colony colony = getColony(); if (colony != null) { setName(colony.getName() + " - port"); super.initialize(); @@ -1153,6 +1203,7 @@ * Update this WarehousePanel. */ private void update() { + final Colony colony = getColony(); removeAll(); if (colony == null) return; @@ -1215,22 +1266,29 @@ return add(comp); } + /** + * Add the property change listeners to this panel. + */ private void addPropertyChangeListeners() { - Colony colony = getColony(); + final Colony colony = getColony(); if (colony != null) { colony.getGoodsContainer().addPropertyChangeListener(this); } } + /** + * Remove the property change listeners from this panel. + */ private void removePropertyChangeListeners() { - Colony colony = getColony(); + final Colony colony = getColony(); if (colony != null) { colony.getGoodsContainer().removePropertyChangeListener(this); } } public void propertyChange(PropertyChangeEvent event) { - logger.finest(getColony().getName() + "-warehouse change " + final Colony colony = getColony(); + logger.finest(colony.getName() + "-warehouse change " + event.getPropertyName() + ": " + event.getOldValue() + " -> " + event.getNewValue()); @@ -1260,7 +1318,13 @@ /** The parent colony panel. */ private final ColonyPanel colonyPanel; + private MouseAdapter mouseAdapter = new MouseAdapter() { + public void mousePressed(MouseEvent e) { + getGUI().showBuildQueuePanel(getColony()); + } + }; + /** * Creates this BuildingsPanel. */ @@ -1273,25 +1337,16 @@ * Initializes the game data in this buildings panel. */ public void initialize() { + final Colony colony = getColony(); + if (colony == null) return; cleanup(); - if (colony == null) return; - MouseAdapter mouseAdapter = new MouseAdapter() { - public void mousePressed(MouseEvent e) { - getGUI().showBuildQueuePanel(getColony()); - } - }; - List<Building> buildings = colony.getBuildings(); - sortBuildings(buildings); + Collections.sort(buildings); for (Building building : buildings) { ASingleBuildingPanel aSBP = new ASingleBuildingPanel(building); - if (colonyPanel.isEditable()) { - aSBP.addMouseListener(releaseListener); - aSBP.setTransferHandler(defaultTransferHandler); - } + aSBP.initialize(); aSBP.setOpaque(false); - aSBP.addMouseListener(mouseAdapter); add(aSBP); } @@ -1327,7 +1382,6 @@ return "BuildingsPanelUI"; } - /** * This panel is a single line (one building) in the * <code>BuildingsPanel</code>. @@ -1346,9 +1400,12 @@ @Override public void initialize() { - super.initialize(); - - update(); + if (colonyPanel.isEditable()) { + addMouseListener(releaseListener); + setTransferHandler(defaultTransferHandler); + addMouseListener(mouseAdapter); + addPropertyChangeListeners(); + } } @Override @@ -1453,7 +1510,7 @@ /** * A panel that displays the tiles in the immediate area around the colony. */ - public final class TilePanel extends FreeColPanel { + public final class TilesPanel extends FreeColPanel { /** The parent colony panel. */ private final ColonyPanel colonyPanel; @@ -1463,11 +1520,11 @@ /** - * Creates a TilePanel. + * Creates a TilesPanel. * * @param freeColClient The container <code>FreeColClient</code>. */ - public TilePanel(FreeColClient freeColClient) { + public TilesPanel(FreeColClient freeColClient) { super(freeColClient, freeColClient.getGUI()); this.colonyPanel = ColonyPanel.this; @@ -1480,8 +1537,9 @@ * Initialize the game data in this Tile panel. */ public void initialize() { + final Colony colony = getColony(); + if (colony == null) return; cleanup(); - if (colony == null) return; Tile tile = colony.getTile(); tiles[0][0] = tile.getNeighbourOrNull(Direction.N); @@ -1499,10 +1557,11 @@ for (int y = 0; y < 3; y++) { if (tiles[x][y] == null) continue; ColonyTile colonyTile = colony.getColonyTile(tiles[x][y]); - ASingleTilePanel p = new ASingleTilePanel(colonyTile, x, y); - p.initialize(); - add(p, new Integer(layer)); - layer++; + ASingleTilePanel aSTP = new ASingleTilePanel(colonyTile, + x, y); + aSTP.initialize(); + aSTP.setOpaque(false); + add(aSTP, new Integer(layer++)); } } @@ -1510,7 +1569,7 @@ } /** - * Update this tile panel. + * Update this tiles panel. */ public void update() { for (Component component : getComponents()) { @@ -1522,7 +1581,7 @@ } /** - * Clean up this tile panel. + * Clean up this tiles panel. */ public void cleanup() { for (Component component : getComponents()) { @@ -1535,14 +1594,15 @@ @Override public void paintComponent(Graphics g) { + final Colony colony = getColony(); g.setColor(Color.black); g.fillRect(0, 0, getWidth(), getHeight()); + if (colony == null) return; - if (colony == null) return; final Tile tile = colony.getTile(); final TileType tileType = tile.getType(); - final ImageLibrary lib = getLibrary(); - final Image image = lib.getTerrainImage(tileType, tile.getX(), tile.getY()); + final Image image = imageLibrary.getTerrainImage(tileType, + tile.getX(), tile.getY()); int tileWidth = image.getWidth(null) / 2; int tileHeight = image.getHeight(null) / 2; for (int x = 0; x < 3; x++) { @@ -1586,8 +1646,8 @@ setOpaque(false); final Tile tile = colonyTile.getTile(); final TileType tileType = tile.getType(); - final Image image = getLibrary() - .getTerrainImage(tileType, tile.getX(), tile.getY()); + final Image image = imageLibrary.getTerrainImage(tileType, + tile.getX(), tile.getY()); // Size and position: final int width = image.getWidth(null); final int height = image.getHeight(null); @@ -1596,14 +1656,24 @@ } /** + * Gets the colony tile this panel is handling. + * + * @return The colony tile. + */ + public ColonyTile getColonyTile() { + return colonyTile; + } + + /** * Initialize this single tile panel. */ public void initialize() { - cleanup(); - - addPropertyChangeListeners(); - addMouseListener(pressListener); - update(); + if (colonyPanel.isEditable()) { + addMouseListener(releaseListener); + setTransferHandler(defaultTransferHandler); + addMouseListener(pressListener); + addPropertyChangeListeners(); + } } /** @@ -1628,17 +1698,14 @@ ProductionInfo info = colony.getProductionInfo(colonyTile); if (info != null) { for (AbstractGoods ag : info.getProduction()) { - ProductionLabel productionLabel = new ProductionLabel(getFreeColClient(), getGUI(), ag); + ProductionLabel productionLabel + = new ProductionLabel(getFreeColClient(), + getGUI(), ag); productionLabel.addMouseListener(pressListener); add(productionLabel); } } } - - if (colonyPanel.isEditable()) { - setTransferHandler(defaultTransferHandler); - addMouseListener(releaseListener); - } } /** @@ -1724,8 +1791,8 @@ * @return True if the unit succeeds. */ private boolean tryWork(Unit unit) { + final Colony colony = getColony(); Tile tile = colonyTile.getWorkTile(); - Colony colony = getColony(); Player player = unit.getOwner(); if (tile.getOwningSettlement() != colony) { @@ -1849,10 +1916,6 @@ public boolean accepts(Goods goods) { return false; } - - public ColonyTile getColonyTile() { - return colonyTile; - } } } } Modified: freecol/trunk/src/net/sf/freecol/client/gui/panel/DragListener.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/panel/DragListener.java 2013-02-01 00:18:39 UTC (rev 10492) +++ freecol/trunk/src/net/sf/freecol/client/gui/panel/DragListener.java 2013-02-01 00:54:50 UTC (rev 10493) @@ -30,7 +30,7 @@ import net.sf.freecol.client.FreeColClient; import net.sf.freecol.client.gui.GUI; -import net.sf.freecol.client.gui.panel.ColonyPanel.TilePanel.ASingleTilePanel; +import net.sf.freecol.client.gui.panel.ColonyPanel.TilesPanel.ASingleTilePanel; import net.sf.freecol.common.model.GoodsType; import net.sf.freecol.common.model.Unit; @@ -154,4 +154,4 @@ } -} \ No newline at end of file +} Modified: freecol/trunk/src/net/sf/freecol/client/gui/panel/QuickActionMenu.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/panel/QuickActionMenu.java 2013-02-01 00:18:39 UTC (rev 10492) +++ freecol/trunk/src/net/sf/freecol/client/gui/panel/QuickActionMenu.java 2013-02-01 00:54:50 UTC (rev 10493) @@ -40,7 +40,7 @@ import net.sf.freecol.client.gui.GUI; import net.sf.freecol.client.gui.ImageLibrary; import net.sf.freecol.client.gui.i18n.Messages; -import net.sf.freecol.client.gui.panel.ColonyPanel.TilePanel.ASingleTilePanel; +import net.sf.freecol.client.gui.panel.ColonyPanel.TilesPanel.ASingleTilePanel; import net.sf.freecol.client.gui.panel.UnitLabel.UnitAction; import net.sf.freecol.common.model.Ability; import net.sf.freecol.common.model.AbstractGoods; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-02-01 00:18:45
|
Revision: 10492 http://sourceforge.net/p/freecol/code/10492 Author: mpope Date: 2013-02-01 00:18:39 +0000 (Fri, 01 Feb 2013) Log Message: ----------- Fix bogus combat test. Modified Paths: -------------- freecol/trunk/test/src/net/sf/freecol/common/model/CombatTest.java Modified: freecol/trunk/test/src/net/sf/freecol/common/model/CombatTest.java =================================================================== --- freecol/trunk/test/src/net/sf/freecol/common/model/CombatTest.java 2013-01-31 23:34:15 UTC (rev 10491) +++ freecol/trunk/test/src/net/sf/freecol/common/model/CombatTest.java 2013-02-01 00:18:39 UTC (rev 10492) @@ -487,8 +487,10 @@ Tile tile1 = map.getTile(5, 8); Tile tile2 = map.getTile(4, 8); - Unit colonial = new ServerUnit(game, tile1, french, colonialRegularType, muskets, horses); - Unit regular = new ServerUnit(game, tile1, french, kingsRegularType, muskets, horses); + Unit colonial = new ServerUnit(game, tile1, french, colonialRegularType, + muskets, horses); + Unit regular = new ServerUnit(game, tile2, refPlayer, kingsRegularType, + muskets, horses); // (regular + muskets + horses) * attack bonus float offence = (4 + 2 + 1) * 1.5f; @@ -497,10 +499,10 @@ float defence = 3 + 1 + 1 + 1; assertEquals(defence, combatModel.getDefencePower(regular, colonial)); - List<CombatResult> result = combatModel.generateAttackResult(random, regular, colonial); + List<CombatResult> result + = combatModel.generateAttackResult(random, regular, colonial); assertEquals(CombatResult.LOSE, result.get(0)); assertEquals(CombatResult.LOSE_EQUIP, result.get(1)); - refPlayer.csCombat(regular, colonial, result, random, new ChangeSet()); // (regular + muskets) * attack bonus @@ -510,10 +512,11 @@ // slaughter King's Regular result = combatModel.generateAttackResult(random, colonial, regular); assertEquals(CombatResult.WIN, result.get(0)); - assertEquals("King's Regular should be slaughtered upon losing all equipment.", + assertEquals("Regular should be slaughtered upon losing all equipment.", CombatResult.SLAUGHTER_UNIT, result.get(1)); - regular = new ServerUnit(game, tile1, french, kingsRegularType, muskets, horses); + regular = new ServerUnit(game, tile1, french, kingsRegularType, + muskets, horses); result = combatModel.generateAttackResult(random, regular, colonial); assertEquals(CombatResult.WIN, result.get(0)); @@ -532,8 +535,5 @@ assertEquals(CombatResult.WIN, result.get(0)); assertEquals(CombatResult.CAPTURE_UNIT, result.get(1)); refPlayer.csCombat(regular, colonial, result, random, new ChangeSet()); - } - - } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-31 23:34:19
|
Revision: 10491 http://sourceforge.net/p/freecol/code/10491 Author: mpope Date: 2013-01-31 23:34:15 +0000 (Thu, 31 Jan 2013) Log Message: ----------- Merge git.bd1429a: Ensure directional tile improvements are correctly connected. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/client/gui/panel/MapEditorTransformPanel.java freecol/trunk/src/net/sf/freecol/common/model/Colony.java freecol/trunk/src/net/sf/freecol/common/model/Game.java freecol/trunk/src/net/sf/freecol/common/model/LostCityRumour.java freecol/trunk/src/net/sf/freecol/common/model/Map.java freecol/trunk/src/net/sf/freecol/common/model/Player.java freecol/trunk/src/net/sf/freecol/common/model/Resource.java freecol/trunk/src/net/sf/freecol/common/model/Tile.java freecol/trunk/src/net/sf/freecol/common/model/TileImprovement.java freecol/trunk/src/net/sf/freecol/common/model/TileImprovementStyle.java freecol/trunk/src/net/sf/freecol/common/model/TileImprovementType.java freecol/trunk/src/net/sf/freecol/common/model/TileItem.java freecol/trunk/src/net/sf/freecol/common/model/TileItemContainer.java freecol/trunk/src/net/sf/freecol/server/generator/River.java freecol/trunk/src/net/sf/freecol/server/generator/SimpleMapGenerator.java freecol/trunk/src/net/sf/freecol/server/model/ServerColony.java freecol/trunk/src/net/sf/freecol/server/model/ServerUnit.java freecol/trunk/test/src/net/sf/freecol/common/model/MovementTest.java freecol/trunk/test/src/net/sf/freecol/common/model/TileImprovementTest.java freecol/trunk/test/src/net/sf/freecol/common/model/TileItemContainerTest.java freecol/trunk/test/src/net/sf/freecol/common/model/TileTest.java freecol/trunk/test/src/net/sf/freecol/server/ai/mission/PioneeringMissionTest.java Modified: freecol/trunk/src/net/sf/freecol/client/gui/panel/MapEditorTransformPanel.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/panel/MapEditorTransformPanel.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/client/gui/panel/MapEditorTransformPanel.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -274,13 +274,8 @@ tile.getSpecification().getTileImprovementType("model.improvement.river"); if (tile.getType().canHaveImprovement(riverType)) { - TileItemContainer tic = tile.getTileItemContainer(); - if (tic == null) { - tic = new TileItemContainer(tile.getGame(), tile); - tile.setTileItemContainer(tic); - } int oldMagnitude = TileImprovement.NO_RIVER; - TileImprovement river = tic.getRiver(); + TileImprovement river = tile.getRiver(); if (river == null) { river = new TileImprovement(tile.getGame(), tile, riverType); river.setStyle(TileImprovementStyle.getInstance("0000")); @@ -289,8 +284,8 @@ } if (magnitude != oldMagnitude) { - tic.addRiver(magnitude, river.getStyle()); - RiverSection mysection = new RiverSection(river.getStyle().getConnections()); + tile.addRiver(magnitude, river.getStyle().getString()); + RiverSection mysection = new RiverSection(river.getConnections()); // for each neighboring tile for (Direction direction : Direction.longSides) { Tile t = tile.getNeighbourOrNull(direction); @@ -308,7 +303,7 @@ // update the other tile river branch Direction otherDirection = direction.getReverseDirection(); RiverSection oppositesection = - new RiverSection(otherRiver.getStyle().getConnections()); + new RiverSection(otherRiver.getConnections()); oppositesection.setBranch(otherDirection, tile.getRiver().getMagnitude()); otherRiver.setStyle(TileImprovementStyle.getInstance(oppositesection.encodeStyle())); // update the current tile river branch Modified: freecol/trunk/src/net/sf/freecol/common/model/Colony.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/Colony.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/Colony.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -2222,7 +2222,7 @@ } TileImprovement road = getTile().getRoad(); if (road != null && road.isVirtual()) { - getTile().getTileItemContainer().removeTileItem(road); + getTile().removeRoad(); } objects.addAll(super.disposeList()); return objects; Modified: freecol/trunk/src/net/sf/freecol/common/model/Game.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/Game.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/Game.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -812,54 +812,40 @@ } /** - * Checks the integrity of this <code>Game</code - * by checking if there are any - * {@link FreeColGameObject#isUninitialized() uninitialized objects}. + * Checks the integrity of this <code>Game</code>. + * + * - Detects {@link FreeColGameObject#isUninitialized() uninitialized} + * <code>FreeColGameObject</code>s. + * - Detects and fixes map inconsistencies + * - Detects and fixes player inconsistencies * - * Detected problems gets written to the log. - * - * @return <code>true</code> if the <code>Game</code> has - * been loaded properly. + * @return True if there were no problems found. */ public boolean checkIntegrity() { - List<String> brokenObjects = new ArrayList<String>(); boolean ok = true; Iterator<FreeColGameObject> iterator = getFreeColGameObjectIterator(); while (iterator.hasNext()) { FreeColGameObject fgo = iterator.next(); if (fgo.isUninitialized()) { - brokenObjects.add(fgo.getId()); - logger.warning("Uninitialized object: " + fgo.getId() + " (" + fgo.getClass() + ")"); + logger.warning("Uninitialized object: " + fgo.getId() + + " (" + fgo.getClass() + ")"); ok = false; } } + Map map = getMap(); + if (map != null) ok &= map.fixIntegrity(); + for (Player player : getPlayers()) { + ok &= player.fixIntegrity(); + } if (ok) { logger.info("Game integrity ok."); } else { logger.warning("Game integrity test failed."); - fixIntegrity(brokenObjects); } return ok; } /** - * Try to fix integrity problems - */ - private boolean fixIntegrity(List<String> list){ - // try to update Units who may have missing info - for(Player player : this.getPlayers()){ - for(Unit unit : player.getUnits()){ - if(unit.getOwner() == null){ - logger.warning("Fixing " + unit.getId() + ": owner missing"); - unit.setOwner(player); - } - } - } - return false; - } - - - /** * Gets the <code>MapGeneratorOptions</code> that is associated with this * {@link Game}. * @return <code>OptionGroup</code> Modified: freecol/trunk/src/net/sf/freecol/common/model/LostCityRumour.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/LostCityRumour.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/LostCityRumour.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -142,10 +142,11 @@ this.name = newName; } + + // Interface TileItem + /** - * Get the <code>ZIndex</code> value. - * - * @return an <code>int</code> value + * {@inheritDoc} */ public final int getZIndex() { return RUMOUR_ZINDEX; Modified: freecol/trunk/src/net/sf/freecol/common/model/Map.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/Map.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/Map.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -2068,6 +2068,19 @@ } } + /** + * Fix any map integrity problems. + * + * @return True if there were no problems. + */ + public boolean fixIntegrity() { + boolean result = true; + for (Tile t : getAllTiles()) { + result &= t.fixIntegrity(); + } + return result; + } + // Location interface. // getId() inherited. Modified: freecol/trunk/src/net/sf/freecol/common/model/Player.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/Player.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/Player.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -1468,6 +1468,24 @@ } /** + * Try to fix integrity problems with units that have no owner. + * + * @return True if there were no problems, false if problems were found + * and corrected. + */ + public boolean fixIntegrity() { + boolean result = true; + for (Unit unit : getUnits()) { + if (unit.getOwner() == null) { + logger.warning("Fixing " + unit.getId() + ": owner missing"); + unit.setOwner(this); + result = false; + } + } + return result; + } + + /** * Gets the price to this player for a proposed unit. * * @param au The proposed <code>AbstractUnit</code>. Modified: freecol/trunk/src/net/sf/freecol/common/model/Resource.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/Resource.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/Resource.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -117,15 +117,6 @@ } /** - * Get the <code>ZIndex</code> value. - * - * @return an <code>int</code> value - */ - public final int getZIndex() { - return RESOURCE_ZINDEX; - } - - /** * Returns the best GoodsType */ public GoodsType getBestGoodsType() { @@ -179,20 +170,29 @@ return quantity; } + /* TODO: what was this for? Named resources, such as Lost Crazy Russian Gold Mine? + public void setName(String newName) { + // do nothing + } + */ + + // Interface TileItem + /** * {@inheritDoc} */ + public final int getZIndex() { + return RESOURCE_ZINDEX; + } + + /** + * {@inheritDoc} + */ public boolean isTileTypeAllowed(TileType tileType) { return tileType.canHaveResourceType(getType()); } - /* TODO: what was this for? Named resources, such as Lost Crazy Russian Gold Mine? - public void setName(String newName) { - // do nothing - } - */ - /** * This method writes an XML-representation of this object to the given * stream. Modified: freecol/trunk/src/net/sf/freecol/common/model/Tile.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/Tile.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/Tile.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -207,6 +207,19 @@ } } + /** + * Fix any tile integrity problems. + * + * @return True if there were no problems. + */ + public boolean fixIntegrity() { + boolean result = true; + for (TileImprovement ti : getTileImprovements()) { + result &= ti.fixIntegrity(); + } + return result; + } + // ------------------------------------------------------------ static methods /** * Creates a temporary copy of this tile for planning purposes. @@ -1177,7 +1190,65 @@ return this; } + /** + * Adds a river to this tile. + * + * @param magnitude The magnitude of the river to be created + * @param style The river style. + * @return The new river added, or the existing river TileImprovement. + */ + public TileImprovement addRiver(int magnitude, String style) { + if (magnitude == TileImprovement.NO_RIVER) return null; + TileImprovementType riverType = getSpecification() + .getTileImprovementType("model.improvement.river"); + TileImprovement river = new TileImprovement(getGame(), this, riverType); + river.setTurnsToComplete(0); + river.setMagnitude(magnitude); + river.setStyle(TileImprovementStyle.getInstance(style)); + if (!add(river)) return null; + river.updateConnections(); + return river; + } + + /** + * Removes a river from this tile. + * + * @return The removed river. + */ + public TileImprovement removeRiver() { + TileImprovement river = getRiver(); + return (river == null || !remove(river)) ? null : river; + } + + /** + * Adds a road to this tile. It is not necessarily complete. + * + * @return The new road added, or the existing one. + */ + public TileImprovement addRoad() { + TileImprovementType roadType = getSpecification() + .getTileImprovementType("model.improvement.road"); + TileImprovement road = new TileImprovement(getGame(), this, roadType); + road.setMagnitude(1); + if (!add(road)) return null; + road.setStyle(road.getRoadStyleFromMap()); + road.updateConnections(); + return road; + } + + /** + * Removes a road from this tile. + * + * @return The removed road. + */ + public TileImprovement removeRoad() { + TileImprovement road = getRoad(); + return (road == null || !remove(road)) ? null : road; + } + + + /** * Adds a <code>Locatable</code> to this Location. * * @param locatable The <code>Locatable</code> to add to this Location. @@ -1206,7 +1277,7 @@ public boolean remove(Locatable locatable) { if (locatable instanceof TileItem) { Player old = getOwner(); - tileItemContainer.addTileItem((TileItem) locatable); + tileItemContainer.removeTileItem((TileItem) locatable); updatePlayerExploredTiles(old); return true; } else { Modified: freecol/trunk/src/net/sf/freecol/common/model/TileImprovement.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/TileImprovement.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/TileImprovement.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -19,6 +19,8 @@ package net.sf.freecol.common.model; +import java.util.EnumMap; +import java.util.Map; import java.util.logging.Logger; import javax.xml.stream.XMLStreamException; @@ -35,15 +37,7 @@ private static Logger logger = Logger.getLogger(TileImprovement.class.getName()); - private TileImprovementType type; - private int turnsToComplete; - /** - * Default is type.getMagnitude(), but this will override. - */ - private int magnitude; - - /** * River magnitudes */ public static final int NO_RIVER = 0; @@ -51,13 +45,19 @@ public static final int LARGE_RIVER = 2; public static final int FJORD_RIVER = 3; + /** The type of this improvement. */ + private TileImprovementType type; + /** Turns remaining until the improvement is complete, if any. */ + private int turnsToComplete; + /** - * To store the style of multi-image TileImprovements (eg. rivers) - * Rivers have 4 directions {NE=1, SE=3, SW=9, NW=27}, and 3 levels (see above) - * @see Map - * @see net.sf.freecol.server.generator.River + * The improvement magnitude. Default is type.getMagnitude(), but + * this will override. */ + private int magnitude; + + /** Image and overlay style information for the improvement. */ private TileImprovementStyle style; /** @@ -67,8 +67,10 @@ */ private boolean virtual; - // ------------------------------------------------------------ constructor + /** Cached bitmap of connections by direction, derived from style. */ + private long connected = 0L; + /** * Creates a standard <code>TileImprovement</code>-instance. * @@ -88,6 +90,7 @@ this.turnsToComplete = tile.getType().getBasicWorkTurns() + type.getAddWorkTurns(); } this.magnitude = type.getMagnitude(); + this.connected = 0L; } public TileImprovement(Game game, XMLStreamReader in) throws XMLStreamException { @@ -96,229 +99,347 @@ } /** - * Initiates a new <code>TileImprovement</code> with the given ID. The object - * should later be initialized by calling either + * Instantiates a new <code>TileImprovement</code> with the given + * ID. The object should later be initialized by calling either * {@link #readFromXML(XMLStreamReader)} or * {@link #readFromXMLElement(Element)}. * - * @param game The <code>Game</code> in which this object belong. + * @param game The <code>Game</code> in which this object belongs. * @param id The unique identifier for this object. */ public TileImprovement(Game game, String id) { super(game, id); } - // ------------------------------------------------------------ retrieval methods - + /** + * Gets the type of this tile improvement. + * + * @return The type of this improvement. + */ public TileImprovementType getType() { return type; } - public int getMagnitude() { - return magnitude; + /** + * Gets a key for message routines. + * + * @return The name key. + */ + public String getNameKey() { + return type.getNameKey(); } - public void setMagnitude(int magnitude) { - this.magnitude = magnitude; + /** + * Is this <code>TileImprovement</code> a road? + * TODO: deprecate? + * + * @return True if this is a road improvement. + */ + public boolean isRoad() { + return "model.improvement.road".equals(type.getId()); } /** - * Get the <code>Virtual</code> value. + * Is this <code>TileImprovement</code> a river? + * TODO: deprecate? * - * @return a <code>boolean</code> value + * @return True if this is a river improvement. */ - public final boolean isVirtual() { - return virtual; + public boolean isRiver() { + return "model.improvement.river".equals(type.getId()); } /** - * Set the <code>Virtual</code> value. + * How many turns remain until this improvement is complete? * - * @param newVirtual The new Virtual value. + * @return The current turns to completion. */ - public final void setVirtual(final boolean newVirtual) { - this.virtual = newVirtual; + public int getTurnsToComplete() { + return turnsToComplete; } /** - * Is this <code>TileImprovement</code> a road? - * @return a <code>boolean</code> value + * Is this improvement complete? + * + * @return True if complete. */ - public boolean isRoad() { - return getType().getId().equals("model.improvement.road"); + public boolean isComplete() { + return turnsToComplete <= 0; } /** - * Is this <code>TileImprovement</code> a river? - * @return a <code>boolean</code> value + * Sets the turns required to complete the improvement. + * + * @param turns The new turns to completion. */ - public boolean isRiver() { - return getType().getId().equals("model.improvement.river"); + public void setTurnsToComplete(int turns) { + turnsToComplete = turns; } - public String getNameKey() { - return getType().getNameKey(); + /** + * Gets the magnitude of this improvement. + * + * @return The magnitude of this immprovement. + */ + public int getMagnitude() { + return magnitude; } /** - * Returns a textual representation of this object. - * @return A <code>String</code> of either: - * <ol> - * <li>NAME (#TURNS turns left) (eg. Road (2 turns left) ) if it is under construction - * <li>NAME (eg. Road) if it is complete - * </ol> + * Sets the magnitude of this improvement. + * + * @param magnitude The new magnitude. */ - public String toString() { - if (turnsToComplete > 0) { - return getType().getId() + " (" + Integer.toString(turnsToComplete) + " turns left)"; - } else { - return getType().getId(); - } + public void setMagnitude(int magnitude) { + this.magnitude = magnitude; } /** - * @return the current turns to completion. + * Gets the style of this improvement. + * + * @return The style */ - public int getTurnsToComplete() { - return turnsToComplete; + public TileImprovementStyle getStyle() { + return style; } /** - * Update the turns required to complete the improvement. + * Sets the style of this improvement. * - * @param turns an <code>int</code> value + * @param style The new style. */ - public void setTurnsToComplete(int turns) { - turnsToComplete = turns; + public void setStyle(TileImprovementStyle style) { + this.style = style; } /** - * Get the <code>ZIndex</code> value. + * Is this a virtual improvement? * - * @return an <code>int</code> value + * @return True if this is a virtual improvement. */ - public final int getZIndex() { - return type.getZIndex(); + public final boolean isVirtual() { + return virtual; } - public boolean isComplete() { - return turnsToComplete <= 0; + /** + * Set the virtual status of this improvement. + * Used for the roads in a colony center tile. + * + * @param virtual The new virtual value. + */ + public final void setVirtual(final boolean virtual) { + this.virtual = virtual; } - public EquipmentType getExpendedEquipmentType() { - return type.getExpendedEquipmentType(); + /** + * Is this TileImprovement connected to a similar TileImprovement + * on a neighbouring tile? + * + * @param direction The <code>Direction</code> to check. + * @return True if this improvement is connected. + */ + public boolean isConnectedTo(Direction direction) { + return (connected & (1 << direction.ordinal())) != 0; } - public int getExpendedAmount() { - return type.getExpendedAmount(); + /** + * Sets the connection status in a given direction. + * + * @param direction The <code>Direction</code> to set. + * @param value The new status for the connection. + */ + public void setConnected(Direction direction, boolean value) { + boolean now = isConnectedTo(direction); + if (now != value) { + if (value) { + connected |= 1 << direction.ordinal(); + } else { + connected &= ~(1 << direction.ordinal()); + } + } + style = TileImprovementStyle.getInstance(encodeConnections()); } /** - * Returns the bonus (if any). - * @param goodsType a <code>GoodsType</code> value - * @return an <code>int</code> value + * Encode a style string suitable for TileImprovementStyle.getInstance. */ - public int getBonus(GoodsType goodsType) { - if (!isComplete()) { - return 0; + private String encodeConnections() { + String s = new String(); + for (Direction d : Direction.values()) { + s = s.concat((isConnectedTo(d)) ? Integer.toString(magnitude) :"0"); } - return type.getBonus(goodsType); + return s; } /** - * Returns the bonus Modifier (if any). - * @param goodsType a <code>GoodsType</code> value - * @return a <code>Modifier</code> value + * Gets a map of connection-direction to magnitude. + * + * @return A map of the connections. */ - public Modifier getProductionModifier(GoodsType goodsType) { - if (!isComplete()) { - return null; + public Map<Direction, Integer> getConnections() { + Map<Direction, Integer> result + = new EnumMap<Direction, Integer>(Direction.class); + for (Direction d : Direction.values()) { + if (isConnectedTo(d)) result.put(d, magnitude); } - return type.getProductionModifier(goodsType); + return result; } /** + * Gets the production bonus this improvement provides for a given type + * of goods. + * + * @param goodsType The <code>GoodsType</code> to test. + * @return A production bonus, or zero if none applicable. + */ + public int getBonus(GoodsType goodsType) { + return (isComplete()) ? type.getBonus(goodsType) : 0; + } + + /** + * Gets a Modifier for the production bonus this improvement provides + * for a given type of goods. + * + * @param goodsType The <code>GoodsType</code> to test. + * @return A production <code>Modifier</code>, or null if none applicable. + */ + public Modifier getProductionModifier(GoodsType goodsType) { + return (isComplete()) ? type.getProductionModifier(goodsType) : null; + } + + + /** * Calculates the movement cost on the basis of connected tile * improvements. * - * @param fromTile a <code>Tile</code> value - * @param targetTile a <code>Tile</code> value - * @param moveCost Original movement cost - * @return The movement cost after any change + * @param direction The <code>Direction</code> to move. + * @param moveCost The original movement cost. + * @return The movement cost with this improvement. */ - public int getMoveCost(Tile fromTile, Tile targetTile, int moveCost) { - if (isComplete()) { - if (style == null) { - // implicitly connected to all neighbouring tiles - return type.getMoveCost(moveCost); - } else { - Direction direction = targetTile.getMap().getDirection(targetTile, fromTile); - // TODO: fix this properly, roads are getting bogus styles - boolean connected = (isRiver()) - ? style != null && style.isConnectedTo(direction) - : (isRoad()) - ? fromTile.hasRoad() && targetTile.hasRoad() - : false; - if (connected) return type.getMoveCost(moveCost); - } - } - return moveCost; + public int getMoveCost(Direction direction, int moveCost) { + return (isComplete() && isConnectedTo(direction)) + ? type.getMoveCost(moveCost) + : moveCost; } /** - * Returns any change of TileType - * @return The new TileType. + * What type of tile does this improvement change a given type to? + * + * @param tileType The original <code>TileType</code>. + * @return The <code>TileType</code> that results from completing this + * improvement, or null if nothing changes. */ public TileType getChange(TileType tileType) { - if (!isComplete()) { - return null; - } - return type.getChange(tileType); + return (isComplete()) ? type.getChange(tileType) : null; } /** - * Returns the Style of this Improvement - used for Rivers - * @return The style + * Can a unit build this improvement? + * + * @param unit A <code>Unit</code> to do the building. + * @return True if the supplied unit can build this improvement. */ - public TileImprovementStyle getStyle() { - return style; + public boolean isWorkerAllowed(Unit unit) { + return (unit == null || isComplete()) ? false + : type.isWorkerAllowed(unit); } + /** - * Sets the Style of this Improvement - used for Rivers - * @param style The style + * Fixes any tile improvement style discontinuities. + * + * We check only if this improvement is not connected to a neighbour + * that *is* connected to this one, and connect this one. + * + * TODO: drop this one day when we never have style discontinuities. + * This alas is not the case in 0.10.x. + * + * @return True if the style was coherent, false if a problem was + * found and corrected. */ - public void setStyle(TileImprovementStyle style) { - this.style = style; + public boolean fixIntegrity() { + final Tile tile = getTile(); + boolean result = true; + for (Tile t : tile.getSurroundingTiles(1)) { + Direction dForward = tile.getDirection(t); + Direction dReverse = dForward.getReverseDirection(); + for (TileImprovement ti : t.getTileImprovements()) { + if (getType() == ti.getType() + && !isConnectedTo(dForward) + && ti.isConnectedTo(dReverse)) { + setConnected(dForward, true); + result = false; + logger.warning("Connecting improvement " + this + + " at " + tile + " to " + t); + } + } + } + return result; } /** - * Returns <code>true</code> if this TileImprovement is connected - * to a similar TileImprovement on the given tile. + * Updates the connections from the current style. * - * @param direction a <code>Direction</code> value - * @return a <code>boolean</code> value + * Public for the test suite. */ - public boolean isConnectedTo(Direction direction) { - return style == null ? false : style.isConnectedTo(direction); + public void updateConnections() { + connected = 0L; + if (style != null) { + Direction[] directions = (isRoad()) ? Direction.values() + : Direction.longSides; + String mask = style.getMask(); + for (int i = 0; i < directions.length; i++) { + if (mask.charAt(i) != '0') { + connected |= 1L << directions[i].ordinal(); + } + } + } } /** - * Checks if a given worker can work at this Improvement + * Work out what the road style at this tile should be by checking + * neighbouring tiles for roads. + * + * @return A suitable TileImprovementStyle. */ - public boolean isWorkerAllowed(Unit unit) { - if (unit == null) { - return false; + public TileImprovementStyle getRoadStyleFromMap() { + if (!isRoad()) return null; + final Tile tile = getTile(); + String s = new String(); + for (Direction d : Direction.values()) { + Tile t = tile.getNeighbourOrNull(d); + s = s.concat((t != null && t.hasRoad()) ? "1" : "0"); } - if (isComplete()) { - return false; + return TileImprovementStyle.getInstance(s); + } + + /** + * Updates the connections from/to this road improvement. + * + * @param connect If true, add connections, otherwise remove them. + */ + public void updateRoadConnections(boolean connect) { + if (!isRoad() || !isComplete()) return; + final Tile tile = getTile(); + for (Tile t : tile.getSurroundingTiles(1)) { + if (t.hasRoad()) { + t.getRoad().setConnected(t.getDirection(tile), connect); + } } - return type.isWorkerAllowed(unit); } + // Interface TileItem + /** * {@inheritDoc} */ + public final int getZIndex() { + return type.getZIndex(); + } + + /** + * {@inheritDoc} + */ public boolean isTileTypeAllowed(TileType tileType) { return type.isTileTypeAllowed(tileType); } @@ -396,16 +517,44 @@ magnitude = Integer.parseInt(in.getAttributeValue(null, "magnitude")); - style = TileImprovementStyle.getInstance(in.getAttributeValue(null, "style")); + str = in.getAttributeValue(null, "style"); + if (str == null) { + style = null; + // @compat 0.10.5 + } else if (str.length() < 4) { + String old = TileImprovementStyle.decodeOldStyle(str, isRoad()); + if (old == null) { + logger.warning("Ignoring bogus old TileImprovementStyle: " + + str); + } else { + style = TileImprovementStyle.getInstance(old); + } + // end compatibility code + } else { + style = TileImprovementStyle.getInstance(str); + if (style == null) { + logger.warning("Ignoring bogus TileImprovementStyle: " + str); + } + } + updateConnections(); virtual = getAttribute(in, "virtual", false); + } + /** + * Gets a textual representation of this object. + * + * @return The id and turns to complete if any. + */ + public String toString() { + return getType().getId() + ((turnsToComplete <= 0) ? "" + : " (" + Integer.toString(turnsToComplete) + " turns left)"); } /** * Gets the tag name of the root element representing this object. * - * @return "tileImprovement". + * @return "tileimprovement". */ public static String getXMLElementTagName() { return "tileimprovement"; Modified: freecol/trunk/src/net/sf/freecol/common/model/TileImprovementStyle.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/TileImprovementStyle.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/TileImprovementStyle.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -19,7 +19,6 @@ package net.sf.freecol.common.model; -import java.util.EnumMap; import java.util.HashMap; import java.util.Map; @@ -46,125 +45,135 @@ */ public class TileImprovementStyle { - private String style; + /** Cache all TileImprovementStyles. */ + private static final Map<String, TileImprovementStyle> cache + = new HashMap<String, TileImprovementStyle>(); - private String mask; + /** A key for the tile improvement style. */ + private final String style; - private Map<Direction, Integer> connections = - new EnumMap<Direction, Integer>(Direction.class); + /** A key for the forest overlay, derived from the above. */ + private final String mask; - private static final Map<String, TileImprovementStyle> cache = - new HashMap<String, TileImprovementStyle>(); + /** + * Private constructor, only called in getInstance() below. + * + * @param style The (decoded) style. + */ + private TileImprovementStyle(String style) { + this.style = style; - private TileImprovementStyle(String input) { + String s = new String(); + for (int i = 0; i < style.length(); i++) { + char c = style.charAt(i); + if (Character.digit(c, Character.MAX_RADIX) < 0) break; + s = s.concat((c == '0') ? "0" : "1"); + } + this.mask = s; + } - Direction[] directions = (input.length() < 8) - ? Direction.longSides : Direction.values(); + // @compat 0.10.5 + /** + * Decode the old base-3 encoded style format. + * + * @param input An old style string. + * @param allDirections If true extend the string to contain a value for + * all directions, if not, extend the string only for the long sides. + * @return The style in the new format. + */ + public static String decodeOldStyle(String input, boolean allDirections) { + Direction[] directions = (allDirections) ? Direction.values() + : Direction.longSides; - // @compat 0.10.5 - if (input.length() < 4) { - // must be an old style - style = new String(); + String style = new String(); + try { int value = Integer.parseInt(input); for (int index = 0; index < 4; index++) { int magnitude = value % 3; - style = style.concat(Integer.toString(magnitude, Character.MAX_RADIX)); - connections.put(directions[index], magnitude); + style = style.concat(Integer.toString(magnitude, + Character.MAX_RADIX)); value /= 3; } - // end @compat - } else { - style = input; - char[] chars = new char[directions.length]; - for (int index = 0; index < directions.length; index++) { - int magnitude = Integer.parseInt(style.substring(index, index + 1), - Character.MAX_RADIX); - connections.put(directions[index], magnitude); - } + } catch (NumberFormatException nfe) { + return null; } - this.mask = new String(); - for (Direction direction : directions) { - mask = mask.concat((getConnection(direction) == 0) ? "0" : "1"); + while (style.length() < directions.length) { + style = style.concat("0"); } + return style; } + // @end compatibility code - /** - * Return the instance identified by the given string. + * Gets the style corresponding to the given string. * - * @param key a <code>String</code> value - * @return a <code>TileImprovementStyle</code> value + * @param key The key to look up. + * @return The corresponding <code>TileImprovementStyle</code>. */ public static TileImprovementStyle getInstance(String key) { - if (key == null || "".equals(key)) { - return null; - } else { - TileImprovementStyle result = cache.get(key); - if (result == null) { - result = new TileImprovementStyle(key); - cache.put(key, result); - if (result.getString() != key) { - cache.put(result.getString(), result); - } + if (key == null || "".equals(key)) return null; + + TileImprovementStyle result = cache.get(key); + if (result == null) { + result = new TileImprovementStyle(key); + cache.put(key, result); + if (result.getString() != key) { + cache.put(result.getString(), result); } - return result; } + return result; } + /** + * Gets a new style derived from a base version but with an added + * connection in a given direction. + * + * @param direction The new direction to connect to. + * @param base The base style (may be null). + * @param magnitude The magnitude of the new connection. + * @param allDirections The style must include all directions. + * @return A new style. + */ + public static TileImprovementStyle getConnectedStyle(Direction direction, + TileImprovementStyle base, int magnitude, boolean allDirections) { + String style = (base == null) ? decodeOldStyle("0", allDirections) + : base.getString(); + int index = direction.ordinal(); + if (style.length() < Direction.NUMBER_OF_DIRECTIONS) index /= 2; + String result = ((index == 0) ? "" : style.substring(0, index-1)) + + Integer.toString(magnitude) + + ((index+1 == style.length()) ? "" : style.substring(index+1)); + return getInstance(result); + } + + /** - * Return a string suitable for looking up an appropriate tile + * Gets the key suitable for looking up an appropriate tile * improvement image. * - * @return a <code>String</code> value + * @return The tile improvement lookup key. */ public String getString() { return style; } - public String toString() { - return style; - } - /** - * Return a string suitable for looking up an appropriate overlay + * Gets the key suitable for looking up an appropriate overlay * (forest) image. * - * @return a <code>String</code> value + * @return The overlay lookup key. */ public String getMask() { return mask; } - public Map<Direction, Integer> getConnections() { - return new EnumMap<Direction, Integer>(connections); - } - + /** - * Return the magnitude of the TileImprovement in the given - * direction. - * - * @param direction a <code>Direction</code> value - * @return an <code>int</code> value + * {@inheritDoc} */ - public int getConnection(Direction direction) { - if (connections.containsKey(direction)) { - return connections.get(direction); - } else { - return 0; - } + public String toString() { + return style; } - - /** - * Return <code>true</code> if the tile improvement is connected - * to a similar improvement on the given tile. - * - * @param direction a <code>Direction</code> value - * @return a <code>boolean</code> value - */ - public boolean isConnectedTo(Direction direction) { - return getConnection(direction) > 0; - } - -} \ No newline at end of file +} Modified: freecol/trunk/src/net/sf/freecol/common/model/TileImprovementType.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/TileImprovementType.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/TileImprovementType.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -58,8 +58,7 @@ private List<RandomChoice<Disaster>> disasters = new ArrayList<RandomChoice<Disaster>>(); - private int movementCost; - private float movementCostFactor; + private int movementCost = -1; /** * The layer a TileItem belongs to. Items with higher zIndex @@ -276,28 +275,20 @@ } /** - * Performs reduction of the movement-cost. - * @param moveCost Original movement cost - * @return The movement cost after any change + * Possibly reduces the cost of moving due to this tile + * improvement type. + * + * Only applies if movementCost is positive (see spec). Do not + * return zero from a movement costing routine or units get free + * moves! + * + * @param originalCost The original movement cost. + * @return The movement cost after any change. */ - public int getMoveCost(int moveCost) { - int cost = moveCost; - if (movementCostFactor >= 0) { - float cost2 = cost * movementCostFactor; - cost = (int)cost2; - if (cost < cost2) { - cost++; - } - } - if (movementCost > 0) { - // Only >0 values are meaningful (see spec). - // Do not return zero from a movement costing routine or - // units get free moves! - if (movementCost < cost) { - cost = movementCost; - } - } - return cost; + public int getMoveCost(int originalCost) { + return (movementCost > 0 && movementCost < originalCost) + ? movementCost + : originalCost; } /** @@ -444,7 +435,6 @@ natural = getAttribute(in, "natural", false); addWorkTurns = getAttribute(in, "add-work-turns", 0); movementCost = getAttribute(in, "movement-cost", 0); - movementCostFactor = -1; magnitude = getAttribute(in, "magnitude", 1); requiredImprovementType = getSpecification().getType(in, Modified: freecol/trunk/src/net/sf/freecol/common/model/TileItem.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/TileItem.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/TileItem.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -120,6 +120,7 @@ return 0; } + /** * Get the <code>ZIndex</code> value. * Modified: freecol/trunk/src/net/sf/freecol/common/model/TileItemContainer.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/TileItemContainer.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/common/model/TileItemContainer.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -349,7 +349,8 @@ for (TileItem item : tileItems) { if (item instanceof TileImprovement && ((TileImprovement) item).isComplete()) { - moveCost = Math.min(moveCost, ((TileImprovement) item).getMoveCost(fromTile, targetTile, moveCost)); + moveCost = Math.min(moveCost, + ((TileImprovement)item).getMoveCost(targetTile.getDirection(fromTile), moveCost)); } } return moveCost; @@ -505,45 +506,8 @@ // ------------------------------------------------------------ manipulation methods - /** - * Creates a river <code>TileImprovement</code> and adds to this Tile/Container. - * Checking for overwrite is done by {@link #addTileItem}. - * @param magnitude The Magnitude of the river to be created - * @param style an <code>int</code> value - * @return The new river added, or the existing river TileImprovement - */ - public TileImprovement addRiver(int magnitude, TileImprovementStyle style) { - if (magnitude == TileImprovement.NO_RIVER) { - return null; - } - TileImprovement river = new TileImprovement(getGame(), tile, getSpecification() - .getTileImprovementType("model.improvement.river")); - river = (TileImprovement) addTileItem(river); - river.setMagnitude(magnitude); - river.setStyle(style); - invalidateCache(); - return river; - } /** - * Removes the river <code>TileImprovement</code> from this Tile/Container. - */ - // Change neighbours' River Style with {@link #adjustNeighbourRiverStyle}. - public TileImprovement removeRiver() { - Iterator<TileItem> iterator = tileItems.iterator(); - while (iterator.hasNext()) { - TileItem item = iterator.next(); - if (item instanceof TileImprovement && ((TileImprovement) item).isRiver()) { - iterator.remove(); - invalidateCache(); - return (TileImprovement) item; - } - } - return null; - } - - - /** * This method writes an XML-representation of this object to * the given stream. * Modified: freecol/trunk/src/net/sf/freecol/server/generator/River.java =================================================================== --- freecol/trunk/src/net/sf/freecol/server/generator/River.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/server/generator/River.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -451,14 +451,12 @@ logger.fine("Added fjord (magnitude: " + section.getSize() + ") to tile at " + section.getPosition()); } else if (section.getSize() > TileImprovement.NO_RIVER) { - TileItemContainer container = tile.getTileItemContainer(); - if (container == null) { - container = new TileItemContainer(tile.getGame(), tile); - tile.setTileItemContainer(container); - } - container.addRiver(section.getSize(), TileImprovementStyle.getInstance(section.encodeStyle())); - logger.fine("Added river (magnitude: " + section.getSize() + - ") to tile at " + section.getPosition()); + String style = section.encodeStyle(); + tile.addRiver(section.getSize(), style); + logger.fine("Added river" + + "(magnitude: " + section.getSize() + + " style: " + style + + ") at " + section.getPosition()); } region.addTile(tile); oldSection = section; Modified: freecol/trunk/src/net/sf/freecol/server/generator/SimpleMapGenerator.java =================================================================== --- freecol/trunk/src/net/sf/freecol/server/generator/SimpleMapGenerator.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/server/generator/SimpleMapGenerator.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -997,15 +997,9 @@ ct.setType(t); TileImprovementType plowType = map.getSpecification() .getTileImprovementType("model.improvement.plow"); - TileImprovementType roadType = map.getSpecification() - .getTileImprovementType("model.improvement.road"); - TileImprovement road = new TileImprovement(game, ct, roadType); - road.setTurnsToComplete(0); TileImprovement plow = new TileImprovement(game, ct, plowType); plow.setTurnsToComplete(0); - ct.setTileItemContainer(new TileItemContainer(game, ct)); - ct.getTileItemContainer().addTileItem(road); - ct.getTileItemContainer().addTileItem(plow); + ct.add(plow); break; } } Modified: freecol/trunk/src/net/sf/freecol/server/model/ServerColony.java =================================================================== --- freecol/trunk/src/net/sf/freecol/server/model/ServerColony.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/server/model/ServerColony.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -88,12 +88,10 @@ established = game.getTurn(); tile.setOwner(owner); if (!tile.hasRoad()) { - TileImprovement road - = new TileImprovement(game, tile, - spec.getTileImprovementType("model.improvement.road")); + TileImprovement road = tile.addRoad(); road.setTurnsToComplete(0); road.setVirtual(true); - tile.add(road); + road.updateRoadConnections(true); } ColonyTile colonyTile = new ServerColonyTile(game, this, tile); Modified: freecol/trunk/src/net/sf/freecol/server/model/ServerUnit.java =================================================================== --- freecol/trunk/src/net/sf/freecol/server/model/ServerUnit.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/src/net/sf/freecol/server/model/ServerUnit.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -237,6 +237,7 @@ if (ti.isComplete()) { setState(UnitState.ACTIVE); setWorkLeft(-1); + if (ti.isRoad()) ti.updateRoadConnections(true); } else { // Otherwise do work int amount = (getType().hasAbility(Ability.EXPERT_PIONEER)) @@ -407,8 +408,8 @@ } // Expend equipment - EquipmentType type = ti.getExpendedEquipmentType(); - changeEquipment(type, -ti.getExpendedAmount()); + EquipmentType type = ti.getType().getExpendedEquipmentType(); + changeEquipment(type, -ti.getType().getExpendedAmount()); for (Unit unit : tile.getUnitList()) { if (unit.getWorkImprovement() != null && unit.getWorkImprovement().getType() == ti.getType() Modified: freecol/trunk/test/src/net/sf/freecol/common/model/MovementTest.java =================================================================== --- freecol/trunk/test/src/net/sf/freecol/common/model/MovementTest.java 2013-01-31 11:42:02 UTC (rev 10490) +++ freecol/trunk/test/src/net/sf/freecol/common/model/MovementTest.java 2013-01-31 23:34:15 UTC (rev 10491) @@ -25,19 +25,34 @@ public class MovementTest extends FreeColTestCase { + private static final TileType hills + = spec().getTileType("model.tile.hills"); + private static final TileType ocean + = spec().getTileType("model.tile.ocean"); + private static final TileType plains + = spec().getTileType("model.tile.plains"); - TileType plains = spec().getTileType("model.tile.plains"); - TileType hills = spec().getTileType("model.tile.hills"); - TileType ocean = spec().getTileType("model.tile.ocean"); + private static final UnitType braveType + = spec().getUnitType("model.unit.brave"); + private static final UnitType colonistType + = spec().getUnitType("model.unit.freeColonist"); + private static final UnitType galleonType + = spec().getUnitType("model.unit.galleon"); - UnitType galleonType = spec().getUnitType("model.unit.galleon"); - UnitType colonistType = spec().getUnitType("model.unit.freeColonist"); - UnitType braveType = spec().getUnitType("model.unit.brave"); + private static final EquipmentType horses + = spec().getEquipmentType("model.equipment.horses"); + private static final EquipmentType indianHorses + = spec().getEquipmentType("model.equipment.indian.horses"); + private static final EquipmentType indianMuskets + = spec().getEquipmentType("model.equipment.indian.muskets"); + private static final EquipmentType muskets + = spec().getEquipmentType("model.equipment.muskets"); + + private static final TileImprovementType riverType + = spec().getTileImprovementType("model.improvement.river"); + private static final TileImprovementType roadType + = spec().getTileImprovementType("model.improvement.road"); - EquipmentType horses = spec().getEquipmentType("model.equipment.horses"); - EquipmentType muskets = spec().getEquipmentType("model.equipment.muskets"); - EquipmentType indianHorses = spec().getEquipmentType("model.equipment.indian.horses"); - EquipmentType indianMuskets = spec().getEquipmentType("model.equipment.indian.muskets"); public void testMoveFromPlainsToPlains() throws Exception { @@ -61,8 +76,7 @@ assertTrue("No improvements", tile2.getTileImprovements().isEmpty()); TileImprovement ti = new TileImprovement(game, tile2, spec().getTileImprovementType("model.improvement.plow")); ti.setTurnsToComplete(0); - tile2.setTileItemContainer(new TileItemContainer(game, tile2)); - tile2.getTileItemContainer().addTileItem(ti); + tile2.add(ti); assertTrue("Plowed", tile2.getCompletedTileImprovements().size() == 1); assertEquals(moveCost, colonist.getMoveCost(tile2)); assertEquals(Math.min(moveCost, colonistType.getMovement()), @@ -101,30 +115,29 @@ tile1.setExploredBy(dutch, true); tile2.setExploredBy(dutch, true); - TileImprovementType roadType = spec().getTileImprovementType("model.improvement.road"); - TileImprovement road1 = new TileImprovement(game, tile1, roadType); + TileImprovement road1 = tile1.addRoad(); assertTrue(road1.isRoad()); assertFalse(road1.isComplete()); road1.setTurnsToComplete(0); assertTrue(road1.isComplete()); - tile1.setTileItemContainer(new TileItemContainer(game, tile1)); - tile1.getTileItemContainer().addTileItem(road1); - assertTrue(tile1.hasRoad()); + road1.updateRoadConnections(true); + assertEquals(road1, tile1.getRoad()); - TileImprovement road2 = new TileImprovement(game, tile2, roadType); + TileImprovement road2 = tile2.addRoad(); road2.setTurnsToComplete(0); - tile2.setTileItemContainer(new TileItemContainer(game, tile2)); - tile2.getTileItemContainer().addTileItem(road2); + road2.updateRoadConnections(true); assertTrue(road2.isComplete()); - assertTrue(tile2.hasRoad()); + assertEquals(road2, tile2.getRoad()); + + assertTrue(road1.isConnectedTo(tile1.getDirection(tile2))); + assertTrue(road2.isConnectedTo(tile2.getDirection(tile1))); +System.err.println("TMARoad " + tile1.getDirection(tile2)); Unit colonist = new ServerUnit(game, tile1, dutch, colonistType); - int moveCost = 1; assertEquals(moveCost, colonist.getMoveCost(tile2)); assertEquals(Math.min(moveCost, colonistType.getMovement()), colonist.getMoveCost(tile2)); - } public void testMoveAlongRiver() throws Exception { @@ -137,28 +150,32 @@ Tile tile2 = tile1.getAdjacentTile(Map.Direction.NE); tile1.setExploredBy(dutch, true); tile2.setExploredBy(dutch, true); + assertEquals(Map.Direction.NE, map.getDirection(tile1, tile2)); + assertEquals(Map.Direction.SW, map.getDirection(tile2, tile1)); - TileImprovementType riverType = spec().getTileImprovementType("model.improvement.river"); - TileImprovement river1 = new TileImprovement(game, tile1, riverType); + TileImprovement river1 = tile1.addRiver(1, "0101"); assertTrue(river1.isRiver()); assertTrue(river1.isComplete()); - tile1.setTileItemContainer(new TileItemContainer(game, tile1)); - tile1.getTileItemContainer().addTileItem(river1); assertTrue(tile1.hasRiver()); - TileImprovement river2 = new TileImprovement(game, tile2, riverType); - river2.setTurnsToComplete(0); - tile2.setTileItemContainer(new TileItemContainer(game, tile2)); - tile2.getTileItemContainer().addTileItem(river2); + TileImprovement river2 = tile2.addRiver(1, "0101"); + assertTrue(river2.isRiver()); assertTrue(river2.isComplete()); assertTrue(tile2.hasRiver()); + assertFalse(river1.isConnectedTo(Map.Direction.NE)); + assertTrue (river1.isConnectedTo(Map.Direction.SE)); + assertFalse(river1.isConnectedTo(Map.Direction.SW)); + assertTrue (river1.isConnectedTo(Map.Direction.NW)); + assertFalse(river2.isConnectedTo(Map.Direction.NE)); + assertTrue (river2.isConnectedTo(Map.Direction.SE)); + assertFalse(river2.isConnectedTo(Map.Direction.SW)); + assertTrue (river2.isConnectedTo(Map.Direction.NW)); + Unit colonist = new ServerUnit(game, tile1, dutch, colonistType); +System.err.println("TMAR"); - // rivers run parallel, no cost reduction - river1.setStyle(TileImprovementStyle.getInstance("0101")); - river2.setStyle(TileImprovementStyle.getInstance("0101")); - + // rivers start parallel, no cost reduction int moveCost = 3; assertEquals(moveCost, colonist.getMoveCost(tile2)); assertEquals(Math.min(moveCost, colonistType.getMovement()), @@ -166,17 +183,23 @@ // rivers are connected, cost reduction applies river1.setStyle(TileImprovementStyle.getInstance("1000")); - assertEquals(Map.Direction.NE, map.getDirection(tile1, tile2)); - assertTrue(tile1.getRiver().getStyle().isConnectedTo(Map.Direction.NE)); river2.setStyle(TileImprovementStyle.getInstance("0010")); - assertEquals(Map.Di... [truncated message content] |
From: <mp...@us...> - 2013-01-31 11:42:04
|
Revision: 10490 http://sourceforge.net/p/freecol/code/10490 Author: mpope Date: 2013-01-31 11:42:02 +0000 (Thu, 31 Jan 2013) Log Message: ----------- Merge git.3d77fa7: Add AI mission success counting scripts. Added Paths: ----------- freecol/trunk/test/bin/ freecol/trunk/test/bin/btan.sh freecol/trunk/test/bin/fclogscore.sh freecol/trunk/test/bin/stats.awk Added: freecol/trunk/test/bin/btan.sh =================================================================== --- freecol/trunk/test/bin/btan.sh (rev 0) +++ freecol/trunk/test/bin/btan.sh 2013-01-31 11:42:02 UTC (rev 10490) @@ -0,0 +1,100 @@ +#! /bin/sh +# btan.sh +# Analyze bigtest run +# +# Usage: +# btan.sh <tag> < <fc-log-score-output> +# +if test "x$1" = "x" ; then name=Unknown ; else name="$1" ; fi +name=`date +%Y%m%d`-"$name" +STATS=stats # Where is the stats awk script? +blockitstate=y + + +blockit () { + if test "$blockitstate" = "y" ; then + echo -n " " + blockitstate=n + else + echo + blockitstate=y + fi +} + +statit () { + statitMEAN=0 ; statitSD=0 + eval `$STATS | sed -e 's/^n=[^ ]* *mean=\([^ ]*\) *sd=\(.*\)$/statitMEAN="\1";statitSD="\2"/' -` + printf "%7.3f ~ %7.3f" "$statitMEAN" "$statitSD" +} + +tmp=`mktemp btan.XXXXXXXX` +trap "rm -f '$tmp'" 0 +cat - > "$tmp" +runs=`sed -n -e 's/^run: .*colonies: n=\([0-9]*\) mean=\([\.0-9]*\) sd=\([\.0-9]*\)$/NC="\1";MEAN="\2";SD="\3"/p' "$tmp"` + +N=0 +for r in $runs ; do N=`expr $N + 1`; done +echo "$name x $N" + + +echo -n "Builds " +sed -n -e 's/^Count builds: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Cashins " +sed -n -e 's/^Count cashins: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Colony# " +(for r in $runs ; do eval $r ; echo $NC ; done) | statit +blockit + +echo -n "ColonySize " +(for r in $runs ; do eval $r ; echo $MEAN ; done) | statit +blockit + +echo -n "Defences " +sed -n -e 's/^Count defences: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Missions " +sed -n -e 's/^Count missions: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Native Demands" +sed -n -e 's/^Count demands: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Native Gifts " +sed -n -e 's/^Count gifts: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Pioneerings " +sed -n -e 's/^Count pioneerings: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Piracies " +sed -n -e 's/^Count piracies: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Scoutings " +sed -n -e 's/^Count scoutings: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Seek+Destroys " +sed -n -e 's/^Count seek+dests: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Transports " +sed -n -e 's/^Count transports: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Turn Speed " +sed -n -e 's/^Average turn: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +echo -n "Wishes " +sed -n -e 's/^Count wishes: *\(.*\)$/\1/p' "$tmp" | statit +blockit + +test "$blockitstate" = "y" || echo Property changes on: freecol/trunk/test/bin/btan.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/x-sh \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: freecol/trunk/test/bin/fclogscore.sh =================================================================== --- freecol/trunk/test/bin/fclogscore.sh (rev 0) +++ freecol/trunk/test/bin/fclogscore.sh 2013-01-31 11:42:02 UTC (rev 10490) @@ -0,0 +1,44 @@ +#! /bin/sh +# fclogscore +# Analyze FC log +# +# Usage: +# fclogscore.sh <freecol-log-file>... +# +STATS=stats.awk # Where is the stats awk script? + +statit () { + statitMEAN=0 ; statitSD=0 + eval `$STATS | sed -e 's/^n=[^ ]* *mean=\([^ ]*\) *sd=\(.*\)$/statitMEAN="\1";statitSD="\2"/' -` + printf "%7.3f" "$statitMEAN" +} + +countinlog () { + echo -n 'Count builds: ' ; grep -c 'AI colony builder completed' "$1" + echo -n 'Count cashins: ' ; grep -c 'AI treasureTrain completed' "$1" + echo -n 'Count defences: ' ; grep -c 'AI defender completed' "$1" + echo -n 'Count missions: ' ; grep -c 'AI missionary completed' "$1" + echo -n 'Count demands: ' ; grep -c 'AI native demander completed' "$1" + echo -n 'Count gifts: ' ; grep -c 'AI native gifter completed' "$1" + echo -n 'Count pioneerings: ' ; grep -c 'AI pioneer completed' "$1" + echo -n 'Count piracies: ' ; grep -c 'AI privateer completed' "$1" + echo -n 'Count scoutings: ' ; grep -c 'AI scout completed' "$1" + echo -n 'Count seek+dests: ' ; grep -c 'AI seek+destroyer attacking' "$1" + echo -n 'Count transports: ' ; grep -c 'AI transport completed' "$1" + echo -n 'Count wishes: ' ; grep -c 'AI wisher completed' "$1" + echo -n 'Average turn: ' + avg=`sed -n -e 's/^.*duration = \(.*\)ms$/\1/p' "$1" | statit` + echo "scale=3; $avg / 1000.0" | bc +# echo "########## Spanish Succession" +# sed -n -e '{ s/^\t\(INFO: Spanish succession.*\)/\1/p ; T ; n ; p }' "$1" +} + +for f in ${1+"$@"} ; do + if test -r "$f" ; then + countinlog "$f" + else + echo "can not read: $f" >&2 + exit 1 + fi +done +exit 0 Property changes on: freecol/trunk/test/bin/fclogscore.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/x-sh \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: freecol/trunk/test/bin/stats.awk =================================================================== --- freecol/trunk/test/bin/stats.awk (rev 0) +++ freecol/trunk/test/bin/stats.awk 2013-01-31 11:42:02 UTC (rev 10490) @@ -0,0 +1,22 @@ +#!/usr/bin/awk -f +BEGIN { n = 0; m = 0.0; } { + if (NF == 1) { + n++; + a[$1]++; + m += $1; + } else if (NF == 2) { + n += $1; + a[$2] += $1; + m += $1 * $2; + } +} END { + v = 0.0; + if (n != 0) { + m /= n; + for (x in a) { + v += (x - m) * (x - m) * a[x]; + } + v = sqrt(v / n); + } + printf "n=%d mean=%f sd=%f\n", n, m, v; +} Property changes on: freecol/trunk/test/bin/stats.awk ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/x-awk \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-31 11:29:41
|
Revision: 10489 http://sourceforge.net/p/freecol/code/10489 Author: mpope Date: 2013-01-31 11:29:38 +0000 (Thu, 31 Jan 2013) Log Message: ----------- Merge git.82e34ad: Fix odd recruit price increase, contributed by wintertime. Modified Paths: -------------- freecol/trunk/data/rules/classic/specification.xml Modified: freecol/trunk/data/rules/classic/specification.xml =================================================================== --- freecol/trunk/data/rules/classic/specification.xml 2013-01-31 11:09:46 UTC (rev 10488) +++ freecol/trunk/data/rules/classic/specification.xml 2013-01-31 11:29:38 UTC (rev 10489) @@ -2190,7 +2190,7 @@ <optionGroup id="model.difficulty.medium" editable="false"> <optionGroup id="model.difficulty.immigration"> <integerOption id="model.option.crossesIncrement" value="10"/> - <integerOption id="model.option.recruitPriceIncrease" value="40"/> + <integerOption id="model.option.recruitPriceIncrease" value="30"/> <integerOption id="model.option.lowerCapIncrease" value="0"/> <integerOption id="model.option.priceIncrease.artillery" value="100"/> <booleanOption id="model.option.priceIncreasePerType" value="true"/> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-31 11:09:50
|
Revision: 10488 http://sourceforge.net/p/freecol/code/10488 Author: mpope Date: 2013-01-31 11:09:46 +0000 (Thu, 31 Jan 2013) Log Message: ----------- Merge git.bc112fc: Improved window size detection, contributed by wintertime. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/FreeCol.java freecol/trunk/src/net/sf/freecol/client/FreeColClient.java freecol/trunk/src/net/sf/freecol/client/gui/GUI.java Modified: freecol/trunk/src/net/sf/freecol/FreeCol.java =================================================================== --- freecol/trunk/src/net/sf/freecol/FreeCol.java 2013-01-31 11:03:23 UTC (rev 10487) +++ freecol/trunk/src/net/sf/freecol/FreeCol.java 2013-01-31 11:09:46 UTC (rev 10488) @@ -537,17 +537,16 @@ if (line.hasOption("windowed")) { String dimensions = line.getOptionValue("windowed"); - if (dimensions == null) { - windowSize = new Dimension(-1, -1); - } else { - String[] xy = dimensions.split("[^0-9]"); - if (xy.length == 2) { + String[] xy; + if (dimensions != null + && (xy = dimensions.split("[^0-9]")) != null + && xy.length == 2) { + try { windowSize = new Dimension(Integer.parseInt(xy[0]), Integer.parseInt(xy[1])); - } else { - usageError = true; - } + } catch (NumberFormatException nfe) {} } + if (windowSize == null) windowSize = new Dimension(-1, -1); } } catch (ParseException e) { Modified: freecol/trunk/src/net/sf/freecol/client/FreeColClient.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/FreeColClient.java 2013-01-31 11:03:23 UTC (rev 10487) +++ freecol/trunk/src/net/sf/freecol/client/FreeColClient.java 2013-01-31 11:09:46 UTC (rev 10488) @@ -178,10 +178,10 @@ gui.displaySplashScreen(splashFilename); // Determine the window size. - gui.setWindowed(size != null); - final Dimension windowSize = (size == null) ? null + final Dimension windowSize = (headless || size == null) ? null : (size.width <= 0 || size.height <= 0) ? gui.determineWindowSize() : size; + gui.setWindowed(size != null); logger.info("Window size is " + windowSize); // Control Modified: freecol/trunk/src/net/sf/freecol/client/gui/GUI.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/GUI.java 2013-01-31 11:03:23 UTC (rev 10487) +++ freecol/trunk/src/net/sf/freecol/client/gui/GUI.java 2013-01-31 11:09:46 UTC (rev 10488) @@ -25,10 +25,12 @@ import java.awt.Graphics2D; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; +import java.awt.HeadlessException; import java.awt.Image; import java.awt.Point; import java.awt.Rectangle; import java.awt.Toolkit; +import java.awt.Insets; import java.awt.image.BufferedImage; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; @@ -120,7 +122,10 @@ /** * The space not being used in windowed mode. */ - private static final int DEFAULT_WINDOW_SPACE = 50; + private static final int DEFAULT_SCREEN_INSET_WIDTH = 0; + private static final int DEFAULT_SCREEN_INSET_HEIGHT = 32; + private static final int DEFAULT_WINDOW_INSET_WIDTH = 6; + private static final int DEFAULT_WINDOW_INSET_HEIGHT = 30; @@ -148,7 +153,7 @@ * with the default MapViewer. */ private MapViewer colonyTileGUI; - + private ImageLibrary imageLibrary; private SoundPlayer soundPlayer; @@ -247,20 +252,53 @@ return canvas.containsInGameComponents(); } + /** + * Estimate size of client area for a window of maximum size. + */ public Dimension determineWindowSize() { - Rectangle bounds = GraphicsEnvironment.getLocalGraphicsEnvironment() - .getMaximumWindowBounds(); - Dimension size = new Dimension(bounds.width - DEFAULT_WINDOW_SPACE, - bounds.height - DEFAULT_WINDOW_SPACE); + final GraphicsEnvironment lge + = GraphicsEnvironment.getLocalGraphicsEnvironment(); + final GraphicsDevice gd; + try { + gd = lge.getDefaultScreenDevice(); + } catch (HeadlessException e) { + return null; + } + + // Get max size of window including border. + Rectangle bounds = lge.getMaximumWindowBounds(); + + // Do we trust getMaximumWindowBounds? + // Check the insets for evidence the taskbar has been missed. + Insets insets = Toolkit.getDefaultToolkit() + .getScreenInsets(gd.getDefaultConfiguration()); + if (insets != null && insets.top <= 0 && insets.bottom <= 0) { + bounds.height -= DEFAULT_SCREEN_INSET_HEIGHT; + } + if (insets != null && insets.left <= 0 && insets.right <= 0) { + bounds.width -= DEFAULT_SCREEN_INSET_WIDTH; + } + + // TODO: find better way to get size of window title and + // border. The information is only available from getInsets + // when a window is already displayable. + Dimension size + = new Dimension(bounds.width - DEFAULT_WINDOW_INSET_WIDTH, + bounds.height - DEFAULT_WINDOW_INSET_HEIGHT); + logger.info("Screen = " + Toolkit.getDefaultToolkit().getScreenSize() + + "\nBounds = " + gd.getDefaultConfiguration().getBounds() + + "\nMaxBounds = " + lge.getMaximumWindowBounds() + + "\nInsets = " + insets + + "\n => " + size); return size; } - public void displayChat(String senderNme, String message, boolean privateChat) { + + public void displayChat(String senderNme, String message, + boolean privateChat) { canvas.displayChat(senderNme, message, privateChat); - } - /** * Tells the map controls that a chat message was received. * @@ -503,7 +541,7 @@ public void setActiveUnit(Unit unitToActivate) { mapViewer.setActiveUnit(unitToActivate); - if (unitToActivate != null + if (unitToActivate != null && !freeColClient.getMyPlayer().owns(unitToActivate)) { canvas.repaint(0, 0, canvas.getWidth(), canvas.getHeight()); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-31 11:03:26
|
Revision: 10487 http://sourceforge.net/p/freecol/code/10487 Author: mpope Date: 2013-01-31 11:03:23 +0000 (Thu, 31 Jan 2013) Log Message: ----------- Merge git.2770eb9: Partially fixes BR.2510 Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java Modified: freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java 2013-01-29 07:58:59 UTC (rev 10486) +++ freecol/trunk/src/net/sf/freecol/client/gui/panel/ColonyPanel.java 2013-01-31 11:03:23 UTC (rev 10487) @@ -1425,7 +1425,12 @@ } getController().work(unit, building); - return true; + // check to see if the unit actually starts working at the building + // some units like a teacher may not have actually started working there + if(unit.getWorkBuilding() == building){ + return true; + } + return false; } @Override This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-29 07:59:02
|
Revision: 10486 http://sourceforge.net/p/freecol/code/10486 Author: mpope Date: 2013-01-29 07:58:59 +0000 (Tue, 29 Jan 2013) Log Message: ----------- Merge git.698ef62: Fix data loss and simplify ReceivingThread. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java Modified: freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java 2013-01-28 06:55:46 UTC (rev 10485) +++ freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java 2013-01-29 07:58:59 UTC (rev 10486) @@ -78,140 +78,105 @@ * @param in The input stream in which this object should get the data * from. */ - FreeColNetworkInputStream(InputStream in) { + public FreeColNetworkInputStream(InputStream in) { this.in = in; } /** + * Prepares the input stream for a new message. + * Makes the subsequent calls to <code>read</code> return the data + * instead of <code>-1</code>. + */ + public void enable() { + wait = false; + } + + /** * Fills the buffer with data. * - * @return <i>true</i> if the buffer has been filled with data, and - * <i>false</i> if an error occured. - * @exception IOException if thrown by the underlying stream. + * @return True if a non-zero amount of data was read into the buffer. + * @exception IOException is thrown by the underlying read. + * @exception IllegalStateException if the buffer is not empty. */ private boolean fill() throws IOException { + if (!empty) throw new IllegalStateException("Not empty."); + int r; - if (bStart < bEnd || empty && bStart == bEnd) { - if (empty) { - bStart = 0; - bEnd = 0; - } + if (bStart < bEnd) { r = in.read(buffer, bEnd, BUFFER_SIZE - bEnd); } else if (bStart == bEnd) { - throw new IllegalStateException(); + bStart = bEnd = 0; // Might as well resync. + r = in.read(buffer, bEnd, BUFFER_SIZE - bEnd); } else { r = in.read(buffer, bEnd, bStart - bEnd); } + if (r <= 0) return false; - if (r <= 0) { - logger.fine("Could not read data from stream."); - return false; - } - empty = false; bEnd += r; - if (bEnd == BUFFER_SIZE) { - bEnd = 0; - } + if (bEnd >= BUFFER_SIZE) bEnd = 0; return true; } /** - * Prepares the input stream for a new message. - * Makes the subsequent calls to <code>read</code> return the data - * instead of <code>-1</code>. - */ - public void enable() { - wait = false; - } - - /** * Reads a single byte. * + * @return The byte read, or -1 on error or "end" of stream. * @see #read(byte[], int, int) + * @exception IOException is thrown by the underlying read. */ public int read() throws IOException { if (wait) return -1; - if (empty) { - if (!fill()) { - wait = true; - return -1; - } + if (empty && !fill()) { + wait = true; + return -1; } - if (buffer[bStart] == END_OF_STREAM) { - bStart++; - if (bStart == BUFFER_SIZE) { - bStart = 0; - } - if (bStart == bEnd) { - empty = true; - } + int ret = buffer[bStart]; + bStart++; + if (bStart >= BUFFER_SIZE) bStart = 0; + if (bStart == bEnd) empty = true; + + if (ret == END_OF_STREAM) { wait = true; - return -1; - } else { - bStart++; - if (bStart == bEnd || bEnd == 0 && bStart == BUFFER_SIZE) { - empty = true; - } - if (bStart == BUFFER_SIZE) { - bStart = 0; - return buffer[BUFFER_SIZE - 1]; - } else { - return buffer[bStart - 1]; - } + ret = -1; } + return ret; } /** * Reads from the buffer and returns the data. * - * @param b The place where the data will be put. - * @param off The offset to use when writing the data to - * <code>b</code>. - * @param len Number of bytes to read. - * @return The actual number of bytes read and <code>-1</code> if the - * message has ended, that is; if the token - * {@link #END_OF_STREAM} is encountered. + * @param b The buffer to put the data in. + * @param off The offset to use when writing the data. + * @param len The maximum number of bytes to read. + * @return The actual number of bytes read, or -1 if the + * message has ended ({@link #END_OF_STREAM} was encountered). */ public int read(byte[] b, int off, int len) throws IOException { if (wait) return -1; - if (empty) { - if (!fill()) { + int n = 0; + for (; n < len; n++) { + if (empty && !fill()) { wait = true; - return -1; + break; } - } - int r = 0; - for (; r < len; r++) { - if (buffer[bStart] == END_OF_STREAM) { - bStart++; - if (bStart == BUFFER_SIZE) { - bStart = 0; - } - if (bStart == bEnd) { - empty = true; - } + byte value = buffer[bStart]; + bStart++; + if (bStart == BUFFER_SIZE) bStart = 0; + if (bStart == bEnd) empty = true; + + if (value == END_OF_STREAM) { wait = true; - return r; + break; } - - b[r + off] = buffer[bStart]; - bStart++; - if (bStart == bEnd || bEnd == 0 && bStart == BUFFER_SIZE) { - empty = true; - if (!fill()) { - wait = true; - return r + 1; - } - } - if (bStart == BUFFER_SIZE) bStart = 0; + b[n + off] = value; } - return len; + return (n <= 0 && wait) ? -1 : n; } } @@ -320,11 +285,12 @@ */ private void listen() throws IOException, SAXException, XMLStreamException { + if (!shouldRun()) return; + in.enable(); + final int LOOK_AHEAD = 4096; BufferedInputStream bis = new BufferedInputStream(in, LOOK_AHEAD); - in.enable(); bis.mark(LOOK_AHEAD); - if (!shouldRun()) return; XMLInputFactory xif = XMLInputFactory.newInstance(); XMLStreamReader xmlIn = xif.createXMLStreamReader(bis); @@ -370,22 +336,21 @@ listen(); timesFailed = 0; } catch (XMLStreamException e) { - timesFailed++; + if (!shouldRun()) break; logger.log(Level.WARNING, "XML fail", e); - if (shouldRun() && timesFailed > MAXIMUM_RETRIES) { + if (++timesFailed > MAXIMUM_RETRIES) { disconnect("Too many failures (XML)"); } } catch (SAXException e) { - timesFailed++; + if (!shouldRun()) break; logger.log(Level.WARNING, "SAX fail", e); - if (shouldRun() && timesFailed > MAXIMUM_RETRIES) { + if (++timesFailed > MAXIMUM_RETRIES) { disconnect("Too many failures (SAX)"); } } catch (IOException e) { + if (!shouldRun()) break; logger.log(Level.WARNING, "IO fail", e); - if (shouldRun()) { - disconnect("Unexpected IO failure"); - } + disconnect("Unexpected IO failure"); } } } catch (Exception e) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-28 06:55:50
|
Revision: 10485 http://sourceforge.net/p/freecol/code/10485 Author: mpope Date: 2013-01-28 06:55:46 +0000 (Mon, 28 Jan 2013) Log Message: ----------- Merge git.93ad952: ReceivingThread fixes. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java Modified: freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java 2013-01-26 23:15:26 UTC (rev 10484) +++ freecol/trunk/src/net/sf/freecol/common/networking/ReceivingThread.java 2013-01-28 06:55:46 UTC (rev 10485) @@ -320,7 +320,7 @@ */ private void listen() throws IOException, SAXException, XMLStreamException { - final int LOOK_AHEAD = 500; + final int LOOK_AHEAD = 4096; BufferedInputStream bis = new BufferedInputStream(in, LOOK_AHEAD); in.enable(); bis.mark(LOOK_AHEAD); @@ -371,22 +371,28 @@ timesFailed = 0; } catch (XMLStreamException e) { timesFailed++; - if (shouldRun && timesFailed > MAXIMUM_RETRIES) { - disconnect("XML failure: " + e.getMessage()); + logger.log(Level.WARNING, "XML fail", e); + if (shouldRun() && timesFailed > MAXIMUM_RETRIES) { + disconnect("Too many failures (XML)"); } } catch (SAXException e) { timesFailed++; - if (shouldRun && timesFailed > MAXIMUM_RETRIES) { - disconnect("SAX failure: " + e.getMessage()); + logger.log(Level.WARNING, "SAX fail", e); + if (shouldRun() && timesFailed > MAXIMUM_RETRIES) { + disconnect("Too many failures (SAX)"); } } catch (IOException e) { - if (shouldRun) { - disconnect("IO failure: " + e.getMessage()); + logger.log(Level.WARNING, "IO fail", e); + if (shouldRun()) { + disconnect("Unexpected IO failure"); } } } + } catch (Exception e) { + logger.log(Level.WARNING, "Unexpected exception.", e); } finally { askToStop(); } + logger.info("Receiving thread " + getName() + " finished."); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sie...@us...> - 2013-01-27 19:45:57
|
Revision: 10467 http://freecol.svn.sourceforge.net/freecol/?rev=10467&view=rev Author: siebrand Date: 2013-01-27 19:45:49 +0000 (Sun, 27 Jan 2013) Log Message: ----------- Localisation updates from http://translatewiki.net. Modified Paths: -------------- freecol/trunk/data/strings/FreeColMessages_oc.properties freecol/trunk/data/strings/FreeColMessages_pt_BR.properties freecol/trunk/data/strings/FreeColMessages_zh_CN.properties Modified: freecol/trunk/data/strings/FreeColMessages_oc.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_oc.properties 2013-01-22 06:17:45 UTC (rev 10466) +++ freecol/trunk/data/strings/FreeColMessages_oc.properties 2013-01-27 19:45:49 UTC (rev 10467) @@ -284,9 +284,19 @@ fileNotFound=Fichièr introbable. incompatibleVersions=Lo salvament qu'ensajatz de cargar es incompatible amb aquesta version de FreeCol. openGame.unimplemented=La foncion open es pas encara implementada. +direction.N=nòrd +direction.NE=nòrd-èst +direction.E=èst +direction.SE=sud-èst +direction.S=sud +direction.SW=sud-èst +direction.W=oèst +direction.NW=nòrd-oèst server.reject=Lo servidor o pòt pas far. server.trade.noGoods=Podètz pas comerçar de merças que son pas presentas. +cli.arg.clientOptions=FICHIÈR D'OPCIONS cli.arg.debuglevel=NOMBRE +cli.arg.debugRun=TORNS [, SAVENAME] cli.arg.dimensions=LARGORxNAUTOR cli.arg.directory=DORSIÈR cli.arg.file=FICHIÈR @@ -294,6 +304,8 @@ cli.arg.loglevel=NIVÈLJORNAL cli.arg.name=NOM cli.arg.port=PÒRT +cli.arg.seed=GRANA +cli.arg.timeout=RELAMBI DEPASSAT cli.check-savegame=verificar lo fichièr de salvament cli.check-savegame.success=Contraròtle de coeréncia del salvement de la partida acabat, verificatz lo jornal pels detalhs. cli.check-savegame.failure=Lo contraròtle de coeréncia del salvament de la partida a fracassat, verificatz lo jornal pels detalhs. @@ -329,6 +341,10 @@ model.option.fogOfWar.shortDescription=Amaga las unitats enemigas al delà de nòstre camp de vision. model.option.explorationPoints.name=Punts d'exploracion model.option.explorationPoints.shortDescription=Compte dels punts d'exploracion per totas las descobertas ? +model.option.turnsToSail.name=Viraments de bòrds +model.option.startingPositions.classic=Classics +model.option.startingPositions.random=Aleatòris +model.option.startingPositions.historical=Istorics gameOptions.colony.name=Colonias gameOptions.colony.shortDescription=Opcions pròprias a la gestion de las colonias. model.option.customIgnoreBoycott.name=Las doanas ignoran los boicòts @@ -345,6 +361,57 @@ model.option.victoryDefeatEuropeans.shortDescription=Lo jogaire que desfa totes los autres jogaires europèus rempòrta la victòria. model.option.victoryDefeatHumans.name=Desfacha de totes los jogaires umans. model.option.victoryDefeatHumans.shortDescription=Lo jogaire que desfa totes los jogaires umans rempòrta la victòria. +gameOptions.years.name=Opcions Annada +model.option.startingYear.name=Annada de despart +model.option.seasonYear.name=Sason +model.option.food.minimumPrice.name=Prètz inicial minimal per la noiridura +model.option.food.maximumPrice.name=Prètz inicial maximal per la noiridura +model.option.food.spread.name=Diferéncia entre los prèses de crompa e de venda per la noiridura +model.option.sugar.minimumPrice.name=Prètz inicial minimal pel sucre +model.option.sugar.maximumPrice.name=Prètz inicial maximal pel sucre +model.option.sugar.spread.name=Diferéncia entre los prèses de crompa e de venda pel sucre +model.option.tobacco.minimumPrice.name=Prètz inicial minimal pel tabat +model.option.tobacco.maximumPrice.name=Prètz inicial maximal pel tabat +model.option.tobacco.spread.name=Diferéncia entre los prèses de crompa e de venda pel tabat +model.option.cotton.minimumPrice.name=Prètz inicial minimal pel coton +model.option.cotton.maximumPrice.name=Prètz inicial maximal pel coton +model.option.cotton.spread.name=Diferéncia entre los prèses de crompa e de venda pel coton +model.option.furs.minimumPrice.name=Prètz inicial minimal per la forradura +model.option.furs.maximumPrice.name=Prètz inicial maximal per la forradura +model.option.furs.spread.name=Diferéncia entre los prèses de crompa e de venda per la forradura +model.option.lumber.minimumPrice.name=Prètz inicial minimal per la fusta +model.option.lumber.maximumPrice.name=Prètz inicial maximal per la fusta +model.option.lumber.spread.name=Diferéncia entre los prèses de crompa e de venda per la fusta +model.option.ore.minimumPrice.name=Prètz inicial maximal pel mineral +model.option.ore.maximumPrice.name=Prètz inicial maximal pel mineral +model.option.ore.spread.name=Diferéncia entre los prèses de crompa e de venda pel mineral +model.option.silver.minimumPrice.name=Prètz inicial minimal per l'argent +model.option.silver.maximumPrice.name=Prètz inicial maximal per l'argent +model.option.silver.spread.name=Diferéncia entre los prèses de crompa e de venda per l'argent +model.option.rum.minimumPrice.name=Prètz inicial maximal pel ròm +model.option.rum.maximumPrice.name=Prètz inicial maximal pel ròm +model.option.rum.spread.name=Diferéncia entre los prèses de crompa e de venda pel ròm +model.option.cigars.minimumPrice.name=Prètz inicial minimal pels cigars +model.option.cigars.maximumPrice.name=Prètz inicial maximal pels cigars +model.option.cigars.spread.name=Diferéncia entre los prèses de crompa e de venda pels cigars +model.option.cloth.minimumPrice.name=Prètz inicial minimal pels vestits +model.option.cloth.maximumPrice.name=Prètz inicial maximal pels vestits +model.option.cloth.spread.name=Diferéncia entre los prèses de crompa e de venda pels vestits +model.option.coats.minimumPrice.name=Prètz inicial minimal pels mantèls +model.option.coats.maximumPrice.name=Prètz inicial maximal pels mantèls +model.option.coats.spread.name=Diferéncia entre los prèses de crompa e de venda pels mantèls +model.option.tools.minimumPrice.name=Prètz inicial minimal per las aisinas +model.option.tools.maximumPrice.name=Prètz inicial maximal per las aisinas +model.option.tools.spread.name=Diferéncia entre los prèses de crompa e de venda per las aisinas +model.option.muskets.minimumPrice.name=Prètz inicial minimal pels mosquets +model.option.muskets.maximumPrice.name=Prètz inicial maximal pels mosquets +model.option.muskets.spread.name=Diferéncia entre los prèses de crompa e de venda pels mosquets +model.option.tradeGoods.minimumPrice.name=Prètz inicial minimal pels dequés comercials +model.option.tradeGoods.maximumPrice.name=Prètz inicial maximal pels dequés comercials +model.option.tradeGoods.spread.name=Diferéncia entre los prèses de crompa e de venda pels dequés comercials +model.option.horses.minimumPrice.name=Prètz inicial maximal pels cavals +model.option.horses.maximumPrice.name=Prètz inicial maximal pels cavals +model.option.horses.spread.name=Diferéncia entre los prèses de crompa e de venda pels cavals model.option.startingMoney.name=Argent inicial model.option.startingMoney.shortDescription=La quantitat d'argent qu'avètz al començament del jòc. model.option.crossesIncrement.name=Increment de franquiment @@ -352,20 +419,42 @@ model.option.badGovernmentLimit.name=Limit de marrit govèrnament model.option.badGovernmentLimit.shortDescription=Lo nombre maximum de reialistas qu'entraïna pas de penalitat de produccion. model.option.veryBadGovernmentLimit.name=Limit de govèrnement fòrça marrit +model.option.goodGovernmentLimit.name=Limit de bon govèrnament +model.option.veryGoodGovernmentLimit.name=Limit de fòrt bon govèrnament +model.option.liftBoycottCheat.name=Levar lo boycott model.option.landPriceFactor.name=Factor del prètz de las tèrras +difficultyLevels.name=Nivèls de dificultat +model.difficulty.immigration.name=Immigracion +model.difficulty.natives.name=Indigènas +model.difficulty.monarch.name=Monarca +model.difficulty.government.name=Govèrnament +model.difficulty.other.name=Autres +model.difficulty.veryEasy.name=Fòrça aisit +model.difficulty.easy.name=Aisit +model.difficulty.medium.name=Mejan +model.difficulty.hard.name=Complicat +model.difficulty.veryHard.name=Fòrça complicat +model.difficulty.custom.name=Personalizat +veryLow.name=Fòrça febla +low.name=Febla +medium.name=Mejana +high.name=Nauta +veryHigh.name=Fòrça nauta model.difficulty.veryEasy=Fòrça aisit model.difficulty.easy=Aisit model.difficulty.medium=Normal model.difficulty.hard=Complicat model.difficulty.veryHard=Fòrça complicat -# Fuzzy -clientOptions.name=Paramètres +model.difficulty.custom=Personalizat +clientOptions.name=Preferéncias +clientOptions.shortDescription=Opcions preferidas del client model.option.autoScroll.name=Desfilament automatic de la mapa model.option.autoScroll.shortDescription=Activa lo desfilament automatic de la mapa quora la mirga tòca lo bòrd de la mapa. actionManager.name=Acorchis de clavièr actionManager.shortDescription=Acorchis de clavièr clientOptions.mods.name=Mòdes clientOptions.mods.shortDescription=Opcions per activar las modificacions de jòc. +userMods.name=Mòdes de l’utilizaire clientOptions.gui.name=Afichatge clientOptions.gui.shortDescription=Gerís l'aparéncia del jòc. model.option.languageOption.name=Lenga @@ -388,6 +477,9 @@ clientOptions.gui.displayTileText.names=Nom de las casas clientOptions.gui.displayTileText.owners=Proprietaris de las casas clientOptions.gui.displayTileText.regions=Region de las casas +clientOptions.gui.displayColonyLabels.none=Pas cap +clientOptions.gui.displayColonyLabels.classic=Classic +clientOptions.gui.displayColonyLabels.modern=Modèrne model.option.displayBorders.name=Afichar las bordaduras model.option.displayBorders.shortDescription=Se cal afichar las bordaduras per defaut o pas. model.option.displayGrid.name=Afichar una grasilha @@ -474,6 +566,10 @@ clientOptions.audio.audioMixer.automatic=Autodetectar la sortida àudio. model.option.audioMixer.name=Sortida Àudio model.option.audioMixer.shortDescription=Lo periferic seleccionat per jogar de musica +model.option.audioVolume.name=Volum àudio +model.option.audioVolume.shortDescription=Volum àudio +model.option.audioAlerts.name=Alèrtas Àudio +model.option.audioAlerts.shortDescription=Activar las alèrtas àudio clientOptions.savegames.name=Salvaments clientOptions.savegames.shortDescription=Salvaments de jòc model.option.showSavegameSettings.name=Dialòg amb lo servidor al moment de la lectura d'un salvament : @@ -482,6 +578,7 @@ clientOptions.savegames.showSavegameSettings.multiplayer=Jòcs multijogaires solament clientOptions.savegames.showSavegameSettings.always=Totjorn clientOptions.savegames.autosave.fileprefix=Salvament automatic +clientOptions.savegames.autosave.lastturn=darrièr torn model.option.autosavePeriod.name=Salvament cada X torns : model.option.autosavePeriod.shortDescription=Los moments per salvar lo jòc automaticament. 0 desactiva la foncion. model.option.autosaveGenerations.name=Conservar X salvaments : @@ -1842,6 +1939,9 @@ report.labour.expertsWorking=professionals report.labour.amateursWorking=amators report.labour.canTrain=* Aquesta colonia pòt formar d'unitats d'aqueste tipe. +report.colony.explore.header=E +report.colony.plow.header=P +report.colony.road.header=R report.trade.unitsSold=Nb comprat/vendut report.trade.beforeTaxes=Sòld abans talhas report.trade.afterTaxes=Sòld aprèp talhas @@ -1866,12 +1966,10 @@ report.nextMember=Torns per augmentar los reb�ls report.requirements.noExpert=%colony% fabrica %goods%, mas a pas de %unit%. report.requirements.missingGoods=%colony% fabrica %goods%, mas a besonh de mai de %input%. -# Fuzzy -report.requirements.surplus=Las colonias seguentas produsisson un susplus de %goods% : -# Fuzzy -report.requirements.severalExperts=Las colonias seguentas an fòrça %unit% : -# Fuzzy -report.requirements.canTrainExperts=Las colonias seguentas pòdon formar %unit% : +report.requirements.surplus=Un susplús de %goods% es produch a +report.requirements.misusedExperts=I a {{plural:2|%unit%}} que trabalhan pas coma %work% son presentas a +report.requirements.severalExperts=Maitas {{plural:2|%unit%}} son presentas a +report.requirements.canTrainExperts={{plural:2|%unit%}} pòdon èsser formadas a report.requirements.met=Totas las condicions son acampadas. report.exploration.nameOfRegion=Nom de la region report.exploration.typeOfRegion=Tipe de la region @@ -1880,7 +1978,6 @@ report.exploration.valueOfRegion=Valor report.highScores.president=President %name% de %nation% report.highScores.governor=Governador %name% de %nation% -# Fuzzy report.highScores.independence=Independéncia declarada : report.highScores.units=Nombre d'unitats : report.highScores.colonies=Nombre de colonias : @@ -1889,6 +1986,7 @@ report.highScores.nation=Nacion : report.highScores.nationType=Aventatge nacional : report.highScores.retired=Abandon : +report.highScores.turn=Annada : report.production.title=Rapòrt de produccion report.production.selectGoods=Seleccionar los bens report.production.update=Metre a jorn @@ -1896,20 +1994,21 @@ aboutPanel.officialSite=Sit oficial : aboutPanel.sfProject=Projècte SourceForge : aboutPanel.legalDisclaimer=FreeCol es un logicial liure ; o podètz tornar distribuir e/o lo modificar al títol de las clausas de la Licéncia Publica Generala GNU, tala coma es publicada per la Free Software Foundation dins sa version 2, o dins una version ulteriora. -# Fuzzy -aboutPanel.copyright=Copyright © 2002-2012 L'equipa FreeCol +aboutPanel.copyright=Copyright © 2002-2012 L’equipa FreeCol model.source.baseOffence.name=Atac de basa model.source.cargoPenalty.name=Penalitat de cargament model.source.attackBonus.name=Bonus d'atac model.source.movementPenalty.name=Penalitat de movement model.source.ambushBonus.name=Bonus d'embuscada model.source.artilleryInTheOpen.name=Artilhariá a descobert -# Fuzzy -model.source.finalResult.name=Resultat final +model.source.zeroThreshold.name=Pas cap de produccion negativa +model.source.finalResult.name=Resultat de l'unitat model.source.baseDefence.name=Defensa de basa model.source.fortified.name=Fortificat model.source.artilleryAgainstRaid.name=Artilhariá contra raid +model.source.amphibiousAttack.name=Atac amfibí model.source.solModifier.name=Filhs de la Libertat / Conservators +model.source.shipTradePenalty=Penalitat de comèrci maritim model.region.arctic=Artica model.region.antarctic=Antartica model.region.inlandlakes=Los Grands Lacs Modified: freecol/trunk/data/strings/FreeColMessages_pt_BR.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-01-22 06:17:45 UTC (rev 10466) +++ freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-01-27 19:45:49 UTC (rev 10467) @@ -38,6 +38,7 @@ false=Falso more=mais... none=Nenhum +many=muitos nothing=Nada all=Todos notApplicable.short=N/A @@ -136,7 +137,9 @@ colonyPanel.units=Unidades colonyPanel.buildings=Construções colonyPanel.colonyUnits=Unidades da colônia +outsideOfColony.name=Fora da Colônia inPort.name=No porto +producing.name=Produção: turns=turnos turnsToComplete.short=(Turnos: %number%) turnsToComplete.long=(Turnos para completar: %number%) @@ -159,6 +162,7 @@ trainDialog.done=Feito quitDialog.areYouSure.text=Você tem certeza que quer sair? retireDialog.areYouSure.text=Tem certeza de que quer desistir? +foundingFatherDialog.nominate=Nomear Pais Fundadores errorMessage.showLogFile=Mostrar registro tradeItem.colony=Colônia tradeItem.colony.long=a colônia %colony% @@ -206,6 +210,7 @@ freecol.map.Caribbean_basin=Mar do Caribe underRepair=Em reparação ({{plural:%turns%|one=falta uma jogada|other=faltam %turns% jogadas}}) EventPanel.DISCOVER_PACIFIC=Você descobriu o Oceano Pacífico. +EventPanel.FIRST_LANDING=Primeiro desembarque no Novo Mundo. EventPanel.MEETING_EUROPEANS=Você encontrou europeus. Eles competirão com você por terras e riquezas, e poderão até declarar guerra. Apenas depois que Jan de Witt entrar no congresso, você poderá comercializar com eles. EventPanel.MEETING_NATIVES=Você encontrou nativos. Mande seus Escoltadores para seus acampamentos para aprender mais sobre eles, e Servos de Dívida e Colonos Livres para aprender uma profissão. Envie navios e carroças-vagão se você quiser comercializar com eles. EventPanel.MEETING_AZTEC=Você encontrou a nação Asteca. @@ -217,6 +222,7 @@ NewWorld=Novo Mundo Ship=Navio LoadingSavegame.title=Carregando jogo salvo +LoadingSavegame.singlePlayer=Um jogador LoadingSavegame.privateMultiplayer=Em rede privado LoadingSavegame.publicMultiplayer=Em rede público LoadingSavegame.serverName=Nome do Servidor: @@ -225,6 +231,7 @@ editor.removeSettlement=Remover acampamento editor.removeSettlement.text=Deseja remover este acampamento? editor.mapSize=Selecionar o tamanho do mapa +buildingToolTip.breeding=Precisamos de %number% {{plural:%number%|%goods%}} no mínimo para produzir %goods%. menuBar.game=Jogo menuBar.view=Exibir menuBar.tools=Ferramentas @@ -234,12 +241,21 @@ menuBar.debug=Depurar menuBar.debug.showCoordinates=Mostrar coordenadas menuBar.debug.showColonyValue=Mostrar valores da colônia +menuBar.debug.skipTurns=Próximo turno +menuBar.debug.addBuilding=Adicionar um edifício a cada colônia menuBar.debug.addFoundingFather=Adicionar fundador menuBar.debug.runMonarch=Definir próxima ação Monarca menuBar.debug.addGold=Inserir Ouro menuBar.debug.addImmigration=Adicionar imigração menuBar.debug.addLiberty=Aumenta liberdade para cada colônia menuBar.debug.stepRandomNumberGenerator=Avançar o gerador de números aleatórios +menuBar.debug.displayUnits=Mostrar as unidades +menuBar.debug.randomValue=Valor do gerador de números aleatórios: %value% +menuBar.debug.displayPanels=Mostrar painéis +menuBar.debug.displayMonarchPanel=Mostrar o painel do Monarca +menuBar.debug.displayVictoryPanel=Mostrar o painel de Vitória +menuBar.debug.displayEuropeStatus=Mostrar a situação da Europa +menuBar.debug.displayErrorMessage=Mostrar mensagem de erro menuBar.debug.revealEntireMap=Revelar mapa inteiro menuBar.debug.compareMaps=Procurar desincronização no mapa. menuBar.debug.compareMaps.checkComplete=Busca completa. Desincronização não encontrada. @@ -268,6 +284,7 @@ reconnect.text=O servidor requer reconexão. reconnect.yes=Reconectar reconnect.no=Sair +failedToSave=Não foi possível gravar o arquivo %name%! couldNotSaveGame=Ocorreu um erro enquanto o jogo estava sendo salvo! couldNotLoadGame=Ocorreu um erro enquanto o jogo estava sendo carregado! fileNotFound=Não foi possível encontrar arquivo com este nome. @@ -283,6 +300,7 @@ direction.NW=noroeste server.reject=O servidor não pode fazer isso. server.trade.noGoods=Você não pode trocar bens que não estão presentes. +main.javaVersion=É recomendada a versão do Java %minVersion% ou mais recente para executar o Freecol (%version% detetada, use --no-java-check para verificar). cli.arg.debuglevel=NÚMERO cli.arg.dimensions=LARGURAxALTURA cli.arg.directory=DIRETÓRIO @@ -354,6 +372,57 @@ model.option.victoryDefeatHumans.shortDescription=O jogador que derrotar os outros jogadores humanos vence o jogo. gameOptions.years.name=Opções de ano model.option.startingYear.name=Ano de início +gameOptions.prices.name=Preços iniciais +gameOptions.prices.shortDescription=As faixas de preços iniciais de vários produtos. +model.option.food.minimumPrice.name=Preço inicial mínimo de comida +model.option.food.maximumPrice.name=Preço inicial máximo para comida +model.option.food.spread.name=Diferença entre os preços de compra e o de venda da comida +model.option.sugar.minimumPrice.name=Preço inicial mínimo de açúcar +model.option.sugar.maximumPrice.name=Preço inicial máximo de açúcar +model.option.sugar.spread.name=Diferença entre os preços de compra e o de venda do açúcar +model.option.tobacco.minimumPrice.name=Preço inicial mínimo do tabaco +model.option.tobacco.maximumPrice.name=Preço inicial máximo para tabaco +model.option.tobacco.spread.name=Diferença entre os preços de compra e o de venda do tabaco +model.option.cotton.minimumPrice.name=Preço inicial mínimo do algodão +model.option.cotton.maximumPrice.name=Preço inicial máximo do algodão +model.option.cotton.spread.name=Diferença entre os preços de compra e o de venda do algodão +model.option.furs.minimumPrice.name=Preço inicial mínimo das peles +model.option.furs.maximumPrice.name=Preço inicial máximo para peles +model.option.furs.spread.name=Diferença entre os preços de compra e o de venda das peles +model.option.lumber.minimumPrice.name=Preço inicial mínimo da madeira +model.option.lumber.maximumPrice.name=Preço inicial máximo da madeira +model.option.lumber.spread.name=Diferença entre os preços de compra e o de venda da madeira +model.option.ore.minimumPrice.name=Preço inicial mínimo do minério +model.option.ore.maximumPrice.name=Preço inicial máximo do minério +model.option.ore.spread.name=Diferença entre os preços de compra e o de venda do minério +model.option.silver.minimumPrice.name=Preço inicial mínimo da prata +model.option.silver.maximumPrice.name=Preço inicial máximo da prata +model.option.silver.spread.name=Diferença entre os preços de compra e o de venda da prata +model.option.rum.minimumPrice.name=Preço inicial mínimo do rum +model.option.rum.maximumPrice.name=Preço inicial máximo do rum +model.option.rum.spread.name=Diferença entre os preços de compra e o de venda do rum +model.option.cigars.minimumPrice.name=Preço inicial mínimo dos cigarro +model.option.cigars.maximumPrice.name=Preço inicial máximo dos charutos +model.option.cigars.spread.name=Diferença entre os preços de compra e o de venda do cigarro +model.option.cloth.minimumPrice.name=Preço inicial mínimo de roupa +model.option.cloth.maximumPrice.name=Preço inicial máximo do tecido +model.option.cloth.spread.name=Diferença entre os preços de compra e o de venda de roupa +model.option.coats.minimumPrice.name=Preço inicial mínimo dos casacos de pele +model.option.coats.maximumPrice.name=Preço inicial máximo dos casacos +model.option.coats.spread.name=Diferença entre os preços de compra e o de venda do casaco de pele +model.option.tools.minimumPrice.name=Preço inicial mínimo das ferramentas +model.option.tools.maximumPrice.name=Preço inicial máximo das ferramentas +model.option.tools.spread.name=Diferença entre os preços de compra e o de venda da ferramenta +model.option.muskets.minimumPrice.name=Preço inicial mínimo dos mosquetes +model.option.muskets.maximumPrice.name=Preço inicial máximo dos mosquetes +model.option.muskets.spread.name=Diferença entre os preços de compra e o de venda do mosquete +model.option.tradeGoods.minimumPrice.name=Preço inicial mínimo dos bens de troca +model.option.tradeGoods.maximumPrice.name=Preço inicial máximo dos bens de troca +model.option.tradeGoods.spread.name=Diferença entre os preços de compra e o de venda dos bens de troca +model.option.horses.minimumPrice.name=Preço inicial mínimo dos cavalos +model.option.horses.maximumPrice.name=Preço inicial máximo dos cavalos +model.option.horses.spread.name=Diferença entre os preços de compra e de venda dos cavalos +model.option.hammers.price.name=Preço para martelos ao comprar edifícios e unidades edificável model.option.startingMoney.name=Dinheiro inicial model.option.startingMoney.shortDescription=A quantia de dinheiro com que começa o jogo. model.option.crossesIncrement.name=Incremento de cruzes @@ -367,7 +436,9 @@ model.option.veryGoodGovernmentLimit.name=Limite de governo muito eficiente model.option.veryGoodGovernmentLimit.shortDescription=A porcentagem mínima de Filhos da Liberdade que faz com que os bônus de produção aumentem ainda mais. model.option.liftBoycottCheat.name=Levantar boicote +model.option.liftBoycottCheat.shortDescription=Percentual de chance por turno de um jogador AI levantar um boicote sem pagar os impostos atrasados. model.option.equipScoutCheat.name=Equipar Batedor +model.option.equipScoutCheat.shortDescription=Percentual de chance por turno de um jogador AI equipar uma unidade na Europa como um batedor, gratuitamente. model.option.landUnitCheat.name=Conseguir unidade terrestre model.option.offensiveNavalUnitCheat.name=Conseguir unidade naval de ataque model.option.transportNavalUnitCheat.name=Conseguir unidade naval de transporte @@ -396,6 +467,8 @@ model.option.rumourDifficulty.shortDescription=Quanto maior for este números, mais improvável será os rumores positivos. model.option.treasureTransportFee.name=Impostos no transporte de tesouros model.option.treasureTransportFee.shortDescription=A porcentagem no tesouro que a coroa cobra para transportá-lo. +model.option.refSize.artillery.name=Artilharia +model.option.refSize.artillery.shortDescription=O número de unidades de Artilharia. model.option.immigrants.name=Imigrantes model.option.immigrants.shortDescription=Os primeiros imigrantes da Europa difficultyLevels.name=Níveis de dificuldade @@ -448,10 +521,19 @@ clientOptions.gui.displayTileText.names=Nome dos Terrenos clientOptions.gui.displayTileText.owners=Dono dos Terrenos clientOptions.gui.displayTileText.regions=Regiões dos Terrenos +model.option.displayColonyLabels.name=Nomes das Colônias +model.option.displayColonyLabels.shortDescription=O estilo dos nomes das colônias +clientOptions.gui.displayColonyLabels.none=Nenhum +clientOptions.gui.displayColonyLabels.classic=Clássico +clientOptions.gui.displayColonyLabels.modern=Moderno model.option.displayBorders.name=Mostrar Fronteiras model.option.displayBorders.shortDescription=Mostrar fronteiras por padrão ou não. model.option.displayGrid.name=Mostrar Grade model.option.displayGrid.shortDescription=Define se a grade ficará visível ou não. +model.option.unitLastMoveDelay.name=Atrasar Último Movimento da Unidade +model.option.unitLastMoveDelay.shortDescription=Fazer, ou não, uma curta pausa no último movimento de uma unidade. +model.option.usePixmaps.name=Usar pixmaps para armazenar imagens +model.option.usePixmaps.shortDescription=Tente desligar isso se o movimento de unidades são muito lentos. model.option.moveAnimationSpeed.name=Velocidade da Animação de Nações Parceiras model.option.moveAnimationSpeed.shortDescription=Altera a velocidade da animação do movimento de unidades das nações amigas. clientOptions.gui.moveAnimationSpeed.off=Desligado @@ -532,6 +614,10 @@ clientOptions.audio.audioMixer.automatic=Detectar a saída de áudio automaticamente model.option.audioMixer.name=Saída de Áudio model.option.audioMixer.shortDescription=O dispositivo para ser usando para reproduzir o áudio do jogo. +model.option.audioVolume.name=Volume de Som +model.option.audioVolume.shortDescription=Volume de Som +model.option.audioAlerts.name=Alertas Sonoros +model.option.audioAlerts.shortDescription=Ligar Alertas Sonoros clientOptions.savegames.name=Jogos salvos clientOptions.savegames.shortDescription=Jogos salvos model.option.showSavegameSettings.name=Caixa para ajustar as opções do servidor quando carregar um jogo salvo: @@ -540,10 +626,16 @@ clientOptions.savegames.showSavegameSettings.multiplayer=Apenas em jogos salvos em rede clientOptions.savegames.showSavegameSettings.always=Sempre clientOptions.savegames.autosave.fileprefix=Auto salvamento +clientOptions.savegames.autosave.lastturn=último-turno +clientOptions.savegames.autosave.beforelastturn=penúltimo-turno model.option.autosavePeriod.name=Auto salvar a cada x turnos: model.option.autosavePeriod.shortDescription=O período para salvar o jogo automaticamente. Usar 0 para desabilitar esta opção. model.option.autosaveGenerations.name=Manter X arquivos de auto-salvamento: model.option.autosaveGenerations.shortDescription=O número de arquivos de auto-salvamento a manter. Deixe em 0(zero) para manter todos os arquivos. +model.option.autosaveValidity.name=Excluir arquivos salvos automaticamente após x dias: +model.option.autosaveValidity.shortDescription=Tempo em dias da validade de arquivo salvo automaticamente após a criação. Definido com 0 para ignorar esta condição. +model.option.autosaveDelete.name=Apagar arquivos gravados automaticamente: +model.option.autosaveDelete.shortDescription=Apagar arquivos antigos gravados automaticamente quando é iniciada uma partida nova. clientOptions.warehouse.name=Definições do Armazém clientOptions.warehouse.shortDescription=Muda as definições padrões para Armazéns e Casas de Comércio. model.option.customStock.name=Estoque padrão da Casa de Comércio @@ -696,9 +788,20 @@ traderouteDialog.removeStop=Excluir parada traderouteDialog.nameLabel=Nome traderouteDialog.destinationLabel=Destino +traderouteDialog.duplicateName=Esta rota comercial tem o mesmo nome de outra rota existente. Escolha um nome inexistente, por favor. traderouteDialog.notEnoughStops=Uma Rota de Comércio tem de ter ao menos 2 paradas. Esta não tem suficientes. traderoute.broken=Sua rota de transporte denominada %name% contém alguma parada inválida! +traderoute.noWork=%route%: Não há trabalho para %unit%, aguardando em %location%. +traderoute.noPath=%route%: Não foi possível a %unit% encontrar um caminho até %location%. +traderoute.skipStop=%route%: Não há trabalho para %unit% em %location%, avançando. traderoute.warehouseCapacity=Descarregar %unit% em %colony% excederia a capacidade do armazém da colônia. %amount% %goods% seriam perdidas. Você gostaria de descarregar mesmo assim? +traderoute.reassignRoute=%unit% está atribuído à rota comercial %route%. Definir o seu destino vai removê-lo da rota comercial. Tem certeza que deseja fazer isso? +traderoute.load=%route%: %unit% em %location% carregou %amount% %goods%. +traderoute.loadImportLimited=%route%: %unit% em %location% carregou %amount% %goods%, faltando espaço para %more% mais. +traderoute.loadExportLimited=%route%: %unit% em %location% carregou %amount% %goods%, com %more% retidos no armazém. +traderoute.unload=%route%: %unit% em %location% não carregou %amount% %goods%. +traderoute.overflow=%route%: %unit% em %location% descarregou %amount% %goods%; %overflow% foram despejados. +traderoute.nounload=%route%: %unit% em %location% descarregou %amount% %goods%; %overflow% não foram descarregados. europe.noGame=A janela da Europa não está disponível até que o jogo inicie. europe.leaveColonists=Navegar para %newWorld% e deixar os emigrantes para trás? highseas.text=Atingimos o mar aberto, Vossa Excelência. Levaremos %number% {{plural:%number%|one=jogada|other=jogadas}} até chegar à Europa. Devemos partir? @@ -761,7 +864,14 @@ chooseThisFoundingFather=Escolha este Pai Fundador notEnoughGold=Você não tem ouro suficiente para comprar este item! move.noAccessContact=Excelência, primeiro devemos estabelecer contato com os %nation%. +move.noAccessGoods=Os %nation% não negociarão com um %unit% vazio. +move.noAccessSkill=%unit% não pode aprender com os nativos. move.noAccessTrade=Não temos autoridade necessária para efetuar trocas comerciais com outras nações europeias, como os %nation%. +move.noAccessSettlement=Os %nation% não permitem que a unidade %unit% entre no seu acampamento. +move.noAccessWar=Não podemos fazer trocas comerciais com os %nation% enquanto estivermos em guerra. +move.noAccessWater=%unit% tem de desembarcar antes de entrar no acampamento. +move.noAttackWater=A nossa unidade %unit% tem de estar em terra para atacar. +move.noTile=A nossa %unit% não está no mapa! notYourTurn=Ainda não é o seu turno! twoTurnsPerYear=A partir de %year%, haverá duas jogadas por ano, em vez de uma! payForBuilding.text=Você gostaria de pagar %amount% moedas de ouro para completar esta construção? @@ -785,6 +895,11 @@ indianSettlement.tension.angry=Os guerreiros da nação %nation% estão ocupados praticando tiro. As mulheres e as crianças se escondem em suas tendas. indianSettlement.alarmIncrease.tension.content=O chefe da nação %nation% de %settlement% cumprimenta seus amigos, %enemy%. Temos o prazer de ver a crescente cooperação entre nós, mas estamos preocupados com as invasões dos seus colonizadores sobre nossas terras. indianSettlement.alarmIncrease.tension.angry=O chefe da nação %nation% de %settlement% adverte que podem abrir uma guerra contra %enemy%, para livrar-nos de seus arrogantes colonos que vem invadindo nossas terras. +indianSettlement.mission.tension.happy=Missão estabelecida. Os %nation% aproximam-se da sua nova religião com alegria. +indianSettlement.mission.tension.content=Missão estabelecida. Os %nation% aproximam-se da sua nova religião com curiosidade. +indianSettlement.mission.tension.displeased=Missão estabelecida. Os %nation% sentem-se ofendidos. +indianSettlement.mission.tension.angry=Missionário capturado. Os %nation% rejeitam a sua nova religião. +indianSettlement.mission.tension.hateful=Missionário sacrificado. Os %nation% escarneciam a sua nova religião. indianSettlement.capitalBurned=Você incendiou %name%, a capital dos %nation%. Os %nation% renderam-se ao seu poder! learnSkill.text=Você gostaria de viver com os nativos e se tornar um %skill%? learnSkill.yes=Sim, gostaria @@ -921,6 +1036,7 @@ saveAndQuitAction.name=Salvar e sair scaleMapAction.name=Mapa em escala sentryAction.name=Ficar de guarda +tilePopupAction.name=Exibir Terreno skipUnitAction.name=Pular vez toggleViewModeAction.name=Modo de visualização livre tradeRouteAction.name=Rotas de Comércio @@ -1040,16 +1156,23 @@ model.colony.unitReady=%colony% terminou de construir o(a) %unit%. model.colony.SoLIncrease=A comunidade Filhos da Liberdade em %colony% subiu para %newSoL% por cento da população! model.colony.SoLDecrease=A comunidade Filhos da Liberdade em %colony% caiu para %newSoL% por cento da população! +model.colony.veryGoodGovernment=Eficiência governamental foi melhorada! A comunidade de Filhos da Liberdade em %colony% já ultrapassa os %number%% da população. +model.colony.goodGovernment=Eficiência governamental foi melhorada! A comunidade de Filhos da Liberdade em %colony% é igual ou superior a %number%% da população. +model.colony.lostVeryGoodGovernment=A eficiência do governo diminuiu! A comunidade dos Filhos da Liberdade em %colony% já não é de %number%%. Alguns bônus de produção foram perdidos. +model.colony.lostGoodGovernment=A eficiência do governo diminuiu! A comunidade dos Filhos da Liberdade em %colony% é inferior a %number%%. Alguns bônus de produção foram perdidos. model.colony.veryBadGovernment=O governo de %colony% é muito ineficiente. Foram aplicadas penas à produção. model.colony.badGovernment=O governo de %colony% é ineficiente. Foram aplicadas penas leves à produção. model.colony.governmentImproved1=O governo de %colony% melhorou, mas ainda é ineficiente. As penas à produção ainda vigoram. model.colony.governmentImproved2=O governo de %colony% melhorou. As penas à produção cessaram. +model.colony.workerEvicted=Na colônia %colony%, a unidade %unit% não pode mais trabalhar em %location% devido à presença da unidade %enemyUnit%. model.unit.arriveInEurope=Nosso navio chegou à %europe%, Vossa Excelência. model.unit.indianTreasure=Você saqueou %amount% de %settlement% model.unit.indianRaid=Nossos espiões relataram que os %nation% invadiram a %colony% dos %colonyNation%. +model.unit.indianSurprise=Os %nation% fazem um ataque surpresa à colónia %colony%, alarmando nossos colonos. O chefe dos %nation% nega qualquer envolvimento. model.unit.colonyCaptured=Você conquistou %colony%. %amount% moedas de ouro foram encontrados! model.unit.colonyCapturedBy=O exército %player% conquistou %colony%. %amount% moedas de ouro foram tomados! model.unit.colonyBurning=A colônia %colony% foi totalmente arrasada por %unit% do exército %nation%, %amount% moedas de ouro saqueadas! +model.unit.colonyBurning.other=A colônia %colony% dos %nation% foi queimada pelos %attackerNation%! model.unit.unitPromoted=%oldName% de %nation% foi promovido a %unit%. model.unit.unitEducated=Em %colony%, o %oldName% se tornou %unit% através da educação. model.unit.equipmentCaptured=Atenção, os bravos de %nation% adquiriram %equipment%! @@ -1067,6 +1190,8 @@ model.unit.unitRepaired=%unit% foi reparado em %repairLocation%. model.unit.slowed=O(A) %enemyUnit% %enemyNation% diminuiu o movimento do nosso navio %unit%. model.unit.unitSlaughtered=%location%: %unit% (%nation%) foi massacrado por um %enemyUnit% do exército %enemyNation%! +model.unit.unitWinColony=%location%: %unit% dos %nation% derrotou %enemyUnit% dos %enemyNation% em %settlement%, mas não conseguiu capturar a colónia. +model.unit.unitLoseAutoEquip=%location%: %unit% dos %nation% defendeu com coragem, mas as armas fornecidas pelo %settlement% foram perdidas para a unidade %enemyUnit% dos %enemyNation%. model.unit.unitDemoted=%location%: %oldName% (%nation%) foi despromovido a %unit% depois de perder uma batalha contra um %enemyUnit% (%enemyNation%). model.unit.unitDemotedToUnarmed=%location%: %oldName% (%nation%) foi desarmado e despromovido a %unit% depois de perder uma batalha contra um %enemyUnit% (%enemyNation%). model.unit.unitDestroyed=%location%: %unit% (%nation%) foi destruído por um %enemyUnit% (%enemyNation%)! @@ -1159,6 +1284,7 @@ model.message.TUTORIAL=Tutorial model.message.COMBAT_RESULT=Resultados da batalha model.message.GIFT_GOODS=Presentes Indígenas +model.message.DEMANDS=Exigências dos Nativos model.message.ignore=Ignore esta mensagem (Colônia: %colony%, Bens: %goods%) model.message.filter=Não exiba este tipo de mensagem (%type%) model.ability.buildCustomHouse.name=Capacidade de construir aduanas @@ -1385,6 +1511,7 @@ model.unit.missionary.description=O Missionário pode estabelecer missões em povoados indígenas para converter índios, embora seja menos habilidoso que o Missionário Jesuíta. model.goods.food.name={{plural:%amount%|one=Comida|other=Comidas|default=Comida}} model.goods.food.workAs=Trabalhar como Fazendeiro %claim% (%amount% de Comida) +model.goods.food.workingAs=um Fazendeiro model.goods.grain.name={{plural:%amount%|one=Cereal|other=Cereais|default=Cereal}} model.goods.grain.workAs=Trabalhar como Fazendeiro %claim%(%amount% de Cereal) model.goods.grain.workingAs=um Fazendeiro @@ -1417,10 +1544,19 @@ model.goods.rum.workAs=Trabalho como Destilador %claim%(%amount% de Rum) model.goods.rum.workingAs=um Destilador model.goods.cigars.name={{plural:%amount%|one=Cigarro|other=Cigarros|default=Cigarro}} +model.goods.cigars.workingAs=um Cigarreiro model.goods.cloth.name={{plural:%amount%|one=Roupa|other=Roupas|default=Roupa}} +model.goods.cloth.workAs=Trabalhar como Tecelão %claim%(%amount% de Tecido) +model.goods.cloth.workingAs=um Tecelão model.goods.coats.name={{plural:%amount%|one=Casaco de Pele|other=Casacos de Pele|default=Casaco de Pele}} +model.goods.coats.workAs=Trabalhar como Curtidor de Pele %claim%(%amount% Casacos de Pele) +model.goods.coats.workingAs=um Curtidor de Pele model.goods.tools.name={{plural:%amount%|one=Ferramenta|other=Ferramentas|default=Ferramenta}} +model.goods.tools.workAs=Trabalhar como Ferreiro %claim%(%amount% Ferramentas) +model.goods.tools.workingAs=um Ferreiro model.goods.muskets.name={{plural:%amount%|one=Mosquete|other=Mosquetes|default=Mosquetes}} +model.goods.muskets.workAs=Trabalhar como Armeiro %claim%(%amount% Mosquetes) +model.goods.muskets.workingAs=um Armeiro model.goods.bells.name={{plural:%amount%|one=Sino|other=Sinos|default=Sinos}} model.goods.crosses.name={{plural:%amount%|one=Cruz|other=Cruzes|default=Cruzes}} model.goods.hammers.name={{plural:%amount%|one=Martelo|other=Martelos|default=Martelos}} @@ -1599,6 +1735,8 @@ model.diplomacy.ALLIANCE.declared=Vossa Excelência, %nation% formaram uma aliança connosco! model.diplomacy.ALLIANCE.others=Vossa Excelência, os %attacker% estão em aliança com os %defender%. model.diplomacy.spanishSuccession=Vossa Excelência, a Guerra de Sucessão Espanhola acabou na Europa. No Tratado de Utrecht, os %loserNation% foram forçados a ceder todas as colônias no Novo Mundo aos %nation%! +model.diplomacy.dead.european=Vossa Excelência, os %nation% declararam a sua retirada incondicional dos assuntos do Novo Mundo! +model.diplomacy.dead.native=Vossa Excelência, os %nation% foram destruídos. lostCityRumour.burialGround=Você profanou um cemitério %nation%! Agora, você tem que morrer! lostCityRumour.colonist=Você encontrou sobreviventes de uma colônia perdida. Em troca de comida eles juraram lealdade à Coroa! lostCityRumour.expeditionVanishes=Sua expedição desapareceu sem deixar rastros! @@ -1748,6 +1886,10 @@ model.foundingFather.military=Militar model.foundingFather.political=Político model.foundingFather.religious=Religioso +model.role.soldier.name=Soldado +model.role.dragoon.name=Dragão +model.role.pioneer.name=Pioneiro +model.role.missionary.name=Missionário model.equipment.indian.horses.name=Cavalos dos Nativos model.equipment.indian.horses.add=Montar model.equipment.indian.horses.remove=Desmontar @@ -1867,7 +2009,16 @@ report.labour.expertsWorking=peritos nas suas profissões report.labour.amateursWorking=amadores report.labour.canTrain=* Esta colônia pode treinar unidades deste tipo. +report.colony.name.header=Colônia +report.colony.name.description=A lista das colônias +report.colony.explore.header=E +report.colony.explore.description=Número de terrenos para explorar adjacente a esta colônia +report.colony.exploring.description=%colony% se beneficiaria da exploração de {{plural:%amount%|one=um terreno|other=%amount% terrenos}} +report.colony.plow.header=P report.colony.plowing.description=%colony% beneficiaria se arrace {{plural:%amount%|one=um terreno|other=%amount% terrenos}} +report.colony.road.header=R +report.colony.roadBuilding.description=%colony% se beneficiaria da construção de {{plural:%amount%|one=uma estrada|other=%amount% estradas}} +report.colony.grow.header=+ report.trade.unitsSold=Unidades compradas ou vendidas report.trade.beforeTaxes=Faturamento antes do imposto report.trade.afterTaxes=Faturamento após o imposto @@ -1900,6 +2051,11 @@ report.requirements.severalExperts=As seguintes colônias têm mais de um {{plural:2|%unit%}}: report.requirements.canTrainExperts=As unidades {{plural:2|%unit%}} podem ser treinadas em: report.requirements.met=Todos os requeirimentos foram atingidos. +report.requirements.exploreTile=%type%, a %direction% de %colony%, sairia beneficiada por uma exploração. +report.requirements.clearTile=%type%, a %direction% de %colony% seria beneficiado por um desmatamento. +report.requirements.plowCenter=%colony% seria beneficiada pela arasão. +report.requirements.plowTile=%type%, a %direction% de %colony%, seria beneficiada pela arasão. +report.requirements.roadTile=%type% a %direction% de %colony% seria beneficiada pela construção de uma estrada. report.exploration.nameOfRegion=Nome da Região report.exploration.typeOfRegion=Tipo de Região report.exploration.discoveredIn=Descoberto em @@ -1920,6 +2076,8 @@ report.production.selectGoods=Selecionar bens report.production.update=Atualizado report.foreignAffairs.notice=Este relatório é baseado em expedições diplomáticas e espiões da coroa, por isso pode ser bem mais atualizado do que os relatórios das nossas unidades e escoteiros. +report.education.students=Alunos em potencial +report.education.teachers=Professores em potencial aboutPanel.version=Versão: aboutPanel.officialSite=Sítio oficial: aboutPanel.sfProject=Projeto SourceForge: @@ -1936,6 +2094,7 @@ model.source.fortified.name=Fortificado model.source.artilleryAgainstRaid.name=Artilharia contra surpresa model.source.solModifier.name=Filhos Da Libertada / Tórios +model.source.shipTradePenalty=Penalização de comércio marítimo model.nation.english.region.mountain.1=Montanhas Apalaches model.nation.spanish.region.land.3=Equador model.nation.spanish.region.land.4=México Modified: freecol/trunk/data/strings/FreeColMessages_zh_CN.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_zh_CN.properties 2013-01-22 06:17:45 UTC (rev 10466) +++ freecol/trunk/data/strings/FreeColMessages_zh_CN.properties 2013-01-27 19:45:49 UTC (rev 10467) @@ -11,6 +11,7 @@ # Author: Wmr89502270 # Author: Xiaomingyan # Author: Yanmiao liu +# Author: Yfdyh000 # Author: ZhongAn # Author: 阿pp @@ -36,6 +37,7 @@ false=假 more=更多... none=无 +many=很多 nothing=什么都没有 all=全部 notApplicable.short=不可用 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-26 23:15:31
|
Revision: 10484 http://sourceforge.net/p/freecol/code/10484 Author: mpope Date: 2013-01-26 23:15:26 +0000 (Sat, 26 Jan 2013) Log Message: ----------- Merge git.2ffe72b: Disarm initialization race. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/client/control/InGameController.java Modified: freecol/trunk/src/net/sf/freecol/client/control/InGameController.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/control/InGameController.java 2013-01-24 10:11:22 UTC (rev 10483) +++ freecol/trunk/src/net/sf/freecol/client/control/InGameController.java 2013-01-26 23:15:26 UTC (rev 10484) @@ -1098,6 +1098,7 @@ public boolean saveGame() { Player player = freeColClient.getMyPlayer(); Game game = freeColClient.getGame(); + if (game == null) return false; // Keyboard handling can race init String gid = Integer.toHexString(game.getUUID().hashCode()); String fileName = /* player.getName() + "_" */ gid + "_" + Messages.message(player.getNationName()) + "_" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-24 10:11:40
|
Revision: 10483 http://sourceforge.net/p/freecol/code/10483 Author: mpope Date: 2013-01-24 10:11:22 +0000 (Thu, 24 Jan 2013) Log Message: ----------- Merge git.bf0991e: Use last instance of magic command line arguments. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/FreeCol.java Modified: freecol/trunk/src/net/sf/freecol/FreeCol.java =================================================================== --- freecol/trunk/src/net/sf/freecol/FreeCol.java 2013-01-22 08:41:24 UTC (rev 10482) +++ freecol/trunk/src/net/sf/freecol/FreeCol.java 2013-01-24 10:11:22 UTC (rev 10483) @@ -134,9 +134,9 @@ // We can not even emit localized error messages until we find // the data directory, which might have been specified on the - // command line. + // command line. Take care to use the *last* instance. String dataDirectoryArg = null; - for (int i = 0; i < args.length - 1; i++) { + for (int i = args.length - 2; i >= 0; i--) { if ("--freecol-data".equals(args[i])) { dataDirectoryArg = args[++i]; break; @@ -148,7 +148,7 @@ // Now we have the data directory, establish the base locale. // Beware, the locale may change! String localeArg = null; - for (int i = 0; i < args.length - 1; i++) { + for (int i = args.length - 2; i >= 0; i--) { if ("--default-locale".equals(args[i])) { localeArg = args[++i]; break; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-22 08:41:28
|
Revision: 10482 http://sourceforge.net/p/freecol/code/10482 Author: mpope Date: 2013-01-22 08:41:24 +0000 (Tue, 22 Jan 2013) Log Message: ----------- Merge git.cba1266: Show occupation indicator when moving, BR#2384. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java Modified: freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java 2013-01-20 03:59:07 UTC (rev 10481) +++ freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java 2013-01-22 08:41:24 UTC (rev 10482) @@ -2440,7 +2440,8 @@ g.drawImage(image, p.x, p.y, null); // Draw an occupation and nation indicator. - String text = Messages.message(unit.getOccupationKey(player != null && player.owns(unit))); + boolean owned = player != null && player.owns(unit); + String text = Messages.message(unit.getOccupationKey(owned)); g.drawImage(lib.getOccupationIndicatorChip(unit, text), (int)(STATE_OFFSET_X * lib.getScalingFactor()), 0, null); @@ -2448,23 +2449,26 @@ // Draw one small line for each additional unit (like in civ3). int unitsOnTile = 0; if (unit.getTile() != null) { - // When a unit is moving from tile to tile, it is removed from the source tile - // So the unit stack indicator cannot be drawn during the movement - // see UnitMoveAnimation.animate() for details + // When a unit is moving from tile to tile, it is + // removed from the source tile. So the unit stack + // indicator cannot be drawn during the movement see + // UnitMoveAnimation.animate() for details unitsOnTile = unit.getTile().getTotalUnitCount(); } if (unitsOnTile > 1) { g.setColor(Color.WHITE); int unitLinesY = OTHER_UNITS_OFFSET_Y; - int x1 = (int) ((STATE_OFFSET_X + OTHER_UNITS_OFFSET_X) * lib.getScalingFactor()); - int x2 = (int) ((STATE_OFFSET_X + OTHER_UNITS_OFFSET_X + OTHER_UNITS_WIDTH) * lib.getScalingFactor()); - for (int i = 0; (i < unitsOnTile) && (i < MAX_OTHER_UNITS); i++) { + int x1 = (int)((STATE_OFFSET_X + OTHER_UNITS_OFFSET_X) + * lib.getScalingFactor()); + int x2 = (int)((STATE_OFFSET_X + OTHER_UNITS_OFFSET_X + + OTHER_UNITS_WIDTH) * lib.getScalingFactor()); + for (int i = 0; i < unitsOnTile && i < MAX_OTHER_UNITS; i++) { g.drawLine(x1, unitLinesY, x2, unitLinesY); unitLinesY += 2; } } } catch (Exception e) { - e.printStackTrace(); + logger.log(Level.WARNING, "displayUnit " + unit.toString(), e); } // FOR DEBUGGING @@ -2784,12 +2788,16 @@ final int width = halfWidth + unitImg.getWidth(null)/2; final int height = unitImg.getHeight(null); - BufferedImage img = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); + BufferedImage img = new BufferedImage(width, height, + BufferedImage.TYPE_INT_ARGB); Graphics g = img.getGraphics(); final int unitX = (width - unitImg.getWidth(null)) / 2; g.drawImage(unitImg, unitX, 0, null); + String text = Messages.message(unit.getOccupationKey(true)); + g.drawImage(lib.getOccupationIndicatorChip(unit, text), 0, 0, null); + final JLabel label = new JLabel(new ImageIcon(img)); label.setSize(width, height); return label; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sie...@us...> - 2013-01-22 06:17:57
|
Revision: 10466 http://freecol.svn.sourceforge.net/freecol/?rev=10466&view=rev Author: siebrand Date: 2013-01-22 06:17:45 +0000 (Tue, 22 Jan 2013) Log Message: ----------- Localisation updates from http://translatewiki.net. Modified Paths: -------------- freecol/trunk/data/strings/FreeColMessages_de.properties freecol/trunk/data/strings/FreeColMessages_fr.properties freecol/trunk/data/strings/FreeColMessages_gl.properties freecol/trunk/data/strings/FreeColMessages_hsb.properties freecol/trunk/data/strings/FreeColMessages_hu.properties freecol/trunk/data/strings/FreeColMessages_ko.properties freecol/trunk/data/strings/FreeColMessages_mk.properties freecol/trunk/data/strings/FreeColMessages_ms.properties freecol/trunk/data/strings/FreeColMessages_nl.properties freecol/trunk/data/strings/FreeColMessages_oc.properties freecol/trunk/data/strings/FreeColMessages_pl_PL.properties freecol/trunk/data/strings/FreeColMessages_pt_BR.properties freecol/trunk/data/strings/FreeColMessages_pt_PT.properties freecol/trunk/data/strings/FreeColMessages_qqq.properties Modified: freecol/trunk/data/strings/FreeColMessages_de.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_de.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_de.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -324,6 +324,8 @@ direction.NW=nordwestlich server.reject=Der Server kann das nicht machen. server.trade.noGoods=Sie können nicht mit nichtvorhandenen Waren handeln. +main.javaVersion=Zur korrekten Ausführung von FreeCol wird die Java-Version %minVersion% oder später empfohlen.\n(Entdeckt: %version%; „--no-java-check“ verwenden, um diese Überprüfung zu überspringen.) +main.memory=Es muss für JVM ein Speicher von mehr als %memory% Byte zugewiesen werden.\nFreeCol neu starten mit „java -Xmx%minMemory%M -jar FreeCol.jar“ cli.arg.clientOptions=OPTIONSDATEI cli.arg.debuglevel=NUMMER cli.arg.debugRun=TURNS[,SAVENAME] @@ -348,8 +350,9 @@ cli.error.home.notExists=Home-Verzeichnis %string% existiert nicht. cli.error.home.noRead=Kann von %string% nicht lesen. cli.error.home.noWrite=Kann auf %string% nicht schreiben. -# Fuzzy -cli.freecol-data=setzt FreeCol´s Datenverzeichnis (beinhaltet ein Unterverzeichnis namens „images“) +cli.error.save=Das gespeicherte Spiel %string% konnte nicht gelesen werden. +cli.error.timeout=%string% ist zu kurz (weniger als %minimum%) +cli.freecol-data=setzt FreeCol´s Datenverzeichnis (beinhaltet ein Unterverzeichnis namens „base“) cli.font=Standardschriftart festlegen cli.help=zeigt diesen Hilfebildschirm cli.home-directory=setzt das FreeCol-Stammverzeichnis (Standard Benutzerstammverzeichnis) @@ -1149,6 +1152,8 @@ server.invalidPlayerNations=Alle Spieler müssen verschiedene Nationen wählen, bevor das Spiel beginnen kann. server.timeOut=Zeitüberschreitung beim Versuch mit dem Server zu verbinden. server.errorStartingGame=Ein Fehler trat beim Erstellen des Spiels auf. +server.load=Das gespeicherte Spiel konnte nicht geladen werden +server.initialize=Fehler beim Initialisieren des Servers displayTileTextAction.EMPTY.name=Zeige keinen Text in Feldern. displayTileTextAction.NAMES.name=Terraininformationen einblenden displayTileTextAction.OWNERS.name=Terraineigentümer einblenden @@ -1264,6 +1269,7 @@ sentryUnit=Wache clearUnitOrders=Befehle löschen leaveTown=Stadt verlassen +board=%unit% besteigen clearSpeciality=Spezialfähigkeit entfernen clearSpeciality.areYouSure=Sind Sie sicher, das Sie %oldUnit% zu %unit% herabstufen wollen? clearSpeciality.impossible=%unit% kann nicht herabgestuft werden! Modified: freecol/trunk/data/strings/FreeColMessages_fr.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_fr.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_fr.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -323,6 +323,8 @@ direction.NW=nord-ouest server.reject=Le serveur ne peut pas le faire. server.trade.noGoods=Vous ne pouvez pas commercer des biens qui ne sont pas présents. +main.javaVersion=La version %minVersion% de Java ou mieux est recommandée pour faire fonctionner FreeCol\n(%version% détecté, utilisez --no-java-check pour sauter cette vérification). +main.memory=Vous devez assigner plus de %memory% octets de mémoire à la JVM.\n Redémarrez FreeCol avec: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=FICHIER D'OPTIONS cli.arg.debuglevel=NOMBRE cli.arg.debugRun=TOURS [, SAVENAME] @@ -347,8 +349,9 @@ cli.error.home.notExists=Le dossier de base %string% n’existe pas. cli.error.home.noRead=Impossible de lire depuis %string%. cli.error.home.noWrite=Impossible d’écrire sur %string%. -# Fuzzy -cli.freecol-data=définit le DOSSIER des données de FreeCol (doit contenir un sous-dossier « images ») +cli.error.save=Impossible de lire la partie sauvegardée %string%. +cli.error.timeout=%string% est trop court (moins de %minimum%) +cli.freecol-data=définit le DOSSIER des données de FreeCol (ayant un sous-dossier 'base') cli.font=définir la police par défaut cli.help=affiche cet écran d’aide cli.home-directory=définit le DOSSIER de base de FreeCol (le dossier de base de l’utilisateur est utilisé par défaut) @@ -1148,6 +1151,8 @@ server.invalidPlayerNations=Chaque joueur doit choisir une nation avant de commencer le jeu. server.timeOut=Temps d’attente dépassé lors de la connexion avec le serveur. server.errorStartingGame=Une erreur est survenue lors du démarrage du jeu. +server.load=Impossible de charger la partie sauvegardée +server.initialize=Erreur d’initialisation du serveur displayTileTextAction.EMPTY.name=Afficher aucun texte dans les cases displayTileTextAction.NAMES.name=Afficher le nom des cases displayTileTextAction.OWNERS.name=Afficher les propriétaires des cases @@ -1263,6 +1268,7 @@ sentryUnit=Mettre en veille clearUnitOrders=Effacer les ordres leaveTown=Quitter la ville +board=Tableau de %unit% clearSpeciality=Oublier la spécialité clearSpeciality.areYouSure=Êtes-vous certain de vouloir abaisser %oldUnit% à %unit% ? clearSpeciality.impossible=%unit% ne peut pas être abaissée ! Modified: freecol/trunk/data/strings/FreeColMessages_gl.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_gl.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_gl.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -296,6 +296,8 @@ direction.NW=noroeste server.reject=O servidor non pode facer iso. server.trade.noGoods=Non podes comerciar con bens que non están presentes. +main.javaVersion=Recoméndase a versión %minVersion% do Java para executar o FreeCol\n(detectouse a versión %version%; utiliza --no-java-check para saltar esta comprobación). +main.memory=Debes asignar máis de %memory% bytes de memoria para o JVM.\n Reinicia o FreeCol con: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=FICHEIRO DE OPCIÓNS cli.arg.debuglevel=NÚMERO cli.arg.debugRun=QUENDAS[,NOMEGARDADO] @@ -320,8 +322,9 @@ cli.error.home.notExists=Non existe o directorio principal "%string%". cli.error.home.noRead=Non se pode ler a partir de "%string%". cli.error.home.noWrite=Non se pode escribir en "%string%". -# Fuzzy -cli.freecol-data=establecer os datos do DIRECTORIO FreeCol (ten un subdirectorio chamado "images") +cli.error.save=Non se pode ler o xogo gardado "%string%". +cli.error.timeout="%string%" é curto de máis (menos de %minimum%) +cli.freecol-data=establecer os datos do DIRECTORIO do FreeCol (ten un subdirectorio chamado "base") cli.font=establecer o tipo de letra por defecto cli.help=mostrar esta pantalla de axuda cli.home-directory=establecer o DIRECTORIO principal FreeCol (por defecto, o directorio principal do usuario) @@ -1121,6 +1124,8 @@ server.invalidPlayerNations=Todos os xogadores deben elixir unha única nación antes de que o xogo poida comezar. server.timeOut=Superouse o tempo límite ao conectar co servidor. server.errorStartingGame=Houbo un erro ao iniciar o xogo. +server.load=Non se puido cargar o xogo gardado +server.initialize=Erro ao iniciar o servidor displayTileTextAction.EMPTY.name=Non mostrar ningún texto nos cuadrantes displayTileTextAction.NAMES.name=Mostrar os nomes dos cuadrantes displayTileTextAction.OWNERS.name=Mostrar os donos dos cuadrantes @@ -1236,6 +1241,7 @@ sentryUnit=Vixiar clearUnitOrders=Retirar as ordes leaveTown=Deixar a cidade +board=Embarcar %unit% clearSpeciality=Borrar a especialidade clearSpeciality.areYouSure=Estás seguro de querer rebaixar %oldUnit% a %unit%? clearSpeciality.impossible=%unit% non pode ser rebaixado! @@ -2427,8 +2433,7 @@ model.source.ambushBonus.name=Bonificación de emboscada model.source.artilleryInTheOpen.name=Artillaría ao descuberto model.source.zeroThreshold.name=Sen produción negativa -# Fuzzy -model.source.finalResult.name=Resultado final +model.source.finalResult.name=Resultado da unidade model.source.baseDefence.name=Defensa base model.source.fortified.name=Fortificado model.source.artilleryAgainstRaid.name=Artillaría contra redada Modified: freecol/trunk/data/strings/FreeColMessages_hsb.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_hsb.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_hsb.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -187,6 +187,12 @@ filter.gameOptions=FreeCol hrajne opcije (*.fgo) filter.gameOptionsAndSavedGames=FreeCol hrajne opcije a składowane hry (*.fgo and *.fsg) filter.xml=XML (Extensible Markup Language). +freecol.map.Africa=Afrika +freecol.map.Australia=Awstralija +freecol.map.America_large=Amerika (wulka) +freecol.map.Caribbean_basin=Karibiski basenk +EventPanel.DISCOVER_PACIFIC=Wotkrywaš Pacifiski ocean. +EventPanel.FIRST_LANDING=Prěnje přistaće w Nowym swěće. EventPanel.MEETING_AZTEC=Zetkawaće narod Actekow. EventPanel.MEETING_INCA=Zetkawaće narod Inkow. Colony=Kolonija @@ -218,6 +224,7 @@ menuBar.debug.addGold=Złoto přidać menuBar.debug.addImmigration=Připućowanje přidać menuBar.debug.addLiberty=Kóždej koloniji swobodu přidać +menuBar.debug.displayUnits=Jednotki wobrazowki menuBar.debug.displayPanels=Wobsłužowanske pola pokazać menuBar.debug.displayEuropeStatus=Status Europy zwobraznić menuBar.debug.displayErrorMessage=Zmylkowu zdźělenku pokazać @@ -304,8 +311,10 @@ model.option.turnsToSail.name=Koła, kotrež dyrbja so płachćić model.option.turnsToSail.shortDescription=Ličba kołow, kotrež su trěbne, zo by wot Europy do Noweho swěta płachćiło. model.option.amphibiousMoves.name=Amfibiske ćahi +model.option.emptyTraders.name=Prózdne wikowanske jednotki model.option.settlementActionsContactChief.name=Włodyku skontaktować model.option.enhancedMissionaries.name=Polěpšeni misionarojo +model.option.giftProbability.name=Darowa prawdźepodobnosć. model.option.startingPositions.name=Spočatne pozicije model.option.startingPositions.classic=Klasiske model.option.startingPositions.random=Připadne @@ -389,6 +398,7 @@ model.option.startingMoney.name=Startowe pjenjezy model.option.startingMoney.shortDescription=Pjenježna suma, z kotrejž hru startuješ. model.option.crossesIncrement.shortDescription=Ličba přidatnych křižow trěbnych za kóždeho noweho zapućowarja. +model.option.liftBoycottCheat.name=Bojkot skónčić model.option.landPriceFactor.name=Płaćiznowy faktor za kraj model.option.landPriceFactor.shortDescription=Powyšuje kóšty za kup kraja domoródnych. model.option.foundingFatherFactor.name=Faktor załožerskeho wótca @@ -764,6 +774,7 @@ notEnoughGold=Nimaće dosć złota, zo byšće tutón objekt kupili! move.noAccessSkill=Naša jednotka %unit% njemóže wot domoródnych wuknyć. move.noAccessWar=Za čas wójny njemóžemy z narodom %nation% wikować. +move.noTile=Naša %unit% na karće njeje! notYourTurn=Tuchwilu na rjedźe njejsće! payForBuilding.yes=Haj payForBuilding.no=Ně @@ -803,6 +814,7 @@ server.onlyAdminCanLaunch=Wodajće, ale jenož serwerowy administrator móže hru startować. server.invalidPlayerNations=Wšitcy hrajerjo dyrbja jónkróćny narod wubrać, prjedy hač hra móže so startować. server.errorStartingGame=Při startowanju hry je zmylk wustupił. +server.initialize=Zmylk při inicalizěrowanju serwera displayTileTextAction.EMPTY.name=W polu tekst njezwobraznić displayTileTextAction.NAMES.name=Mjena polow zwobraznić displayTileTextAction.OWNERS.name=Wobsedźerjow polow zwobraznić @@ -1179,6 +1191,7 @@ model.unit.armed.name=Wobrónjeny model.unit.mounted.name=Na konju model.unit.nationUnit=%nation% %unit% +model.unit.changeWork=Dźěło změnić model.unit.workingAs=Dźěłać jako model.unit.expertFarmer.workingAs=Farmar model.unit.expertFisherman.workingAs=Rybar @@ -1590,6 +1603,7 @@ report.indian.noKnownSettlements=Žane znate sydlišća. report.indian.tension=Napjatosć report.indian.skillTaught=Nawučena kmanosć +report.indian.mostHated=Najbóle hidźeny report.indian.tradeInterests=Wikowanske zajimy report.labour=Dźěłowa rozprawa report.labour.details=Podrobnosće dźěłoweje rozprawy @@ -1684,8 +1698,7 @@ model.source.attackBonus.name=Nadpadowy bonus model.source.ambushBonus.name=Překwapjacy nadpad model.source.zeroThreshold.name=Žana negatiwna produkcija -# Fuzzy -model.source.finalResult.name=Kónčny wuslědk +model.source.finalResult.name=Jednotkowy wuslědk model.source.baseDefence.name=Zakitowanje zepěranišća model.source.fortified.name=Wobhrodźeny model.source.artilleryAgainstRaid.name=Artilerija přećiwo nadpadej Modified: freecol/trunk/data/strings/FreeColMessages_hu.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_hu.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_hu.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -127,6 +127,7 @@ colonyPanel.populationTooSmall=Népesség: %number% colonyPanel.units=Egységek colonyPanel.buildings=Épületek +colonyPanel.colonyUnits=Egységek a kolóniában outsideOfColony.name=A kolónia mellett inPort.name=A kikötőben producing.name=Előállítás alatt: @@ -232,15 +233,30 @@ menuBar.debug=Bug javítás menuBar.debug.showCoordinates=Koordináták megjelenítése menuBar.debug.showColonyValue=Kolónia értékeinek megjelenítése +menuBar.debug.showCommonOutpostValue=Show Common outpost value +menuBar.debug.skipTurns=Skip turns +menuBar.debug.stopSkippingTurns=Stop skipping turns +menuBar.debug.addBuilding=Add building to each colony +menuBar.debug.addFoundingFather=Add Founding Father +menuBar.debug.runMonarch=Set the next Monarch action +menuBar.debug.addGold=Add Gold menuBar.debug.addImmigration=Bevándorlás hozzáadása -# Fuzzy -menuBar.debug.stepRandomNumberGenerator=Véletlenül generált szám: %value% +menuBar.debug.addLiberty=Add liberty to each colony +menuBar.debug.stepRandomNumberGenerator=Step Random number generator +menuBar.debug.displayUnits=Display units menuBar.debug.randomValue=Véletlenül generált szám: %value% +menuBar.debug.displayPanels=Display panels +menuBar.debug.displayMonarchPanel=Display Monarch panel +menuBar.debug.displayVictoryPanel=Display Victory panel +menuBar.debug.displayEuropeStatus=Display Europe status +menuBar.debug.displayErrorMessage=Display error message menuBar.debug.useAI=MI használata menuBar.debug.revealEntireMap=Az egész térkép felfedése +menuBar.debug.hideEntireMap=Teljes Térkép elrejtése menuBar.debug.compareMaps=Térkép aszinkronitás ellenőrzés menuBar.debug.compareMaps.checkComplete=Ellenőrizve. Nincs szinkronizációs probléma a térképen. menuBar.debug.compareMaps.problem=Lehetséges probléma! Kérem olvassa el a standard kimenetbe írt információkat. +menuBar.debug.showResourceKeys=Show Resource Keys menuBar.debug.statistics=Statisztika menuBar.debug.memoryManager=Memóriakezelő menuBar.debug.memoryManager.freeMemory=Szabad @@ -254,6 +270,7 @@ metaServer.communicationError=Hibát észleltem a meta-kiszolgálón. Próbáld újra később. infoPanel.endTurnPanel.text=A kör befejezéséhez nyomd meg\naz 'Enter' billentyűt! endTurnDialog.name=Kör befejezése +endTurnDialog.areYouSure={{plural:%number%|one=egység|other=egység}} még parancsokra vár, vagy {{plural:%number%|one=egység|other=egység}} azt a parancsot kapta, hogy várakozzon. Biztos, hogy be akarod fejezni a kört most? menuBar.tools.determineHighSeas.distToLandFromHighSeas=Távolság a szárazföldtől menuBar.tools.determineHighSeas.maxDistanceToEdge=Legnagyobb távolság a peremig stopCurrentGame.text=Már folyamatban van egy játék. @@ -282,6 +299,7 @@ direction.NW=északnyugat server.reject=A kiszolgáló erre képtelen. server.trade.noGoods=Nem kereskedhetsz olyan áruval ami nincs jelen. +main.javaVersion=%minVersion% vagy jobb Java verzió javasolt a FreeCol futtatásához (%version% verziójút találtunk, ennek az ellenőrzésnek a kihagyásához használd a --no-java-check paramétert). cli.arg.debuglevel=SZÁM cli.arg.dimensions=SZÉLxHOSSZ cli.arg.directory=KÖNYVTÁR @@ -294,11 +312,14 @@ cli.check-savegame.success=A mentés konzisztencia-ellenőrzése befejeződött, részletekért olvasd el a logot. cli.check-savegame.failure=A mentés konzisztencia-ellenőrzése sikertelen, részletekért olvasd el a logot. cli.debug=A FreeCol debuggolása +cli.debug-run=N kör debug módban fut, aztán ment és kilép, ha kell cli.default-locale=Az alapértelmezett helység beállítása (NYELV[_ORSZÁG[_VARIÁNS]]) cli.error.port=A %string% nem érvényes port szám. cli.error.home.notExists=A %string% szülőkönyvtár nem létezik. cli.error.home.noRead=A %string% nem olvasható. cli.error.home.noWrite=A %string% nem írható. +cli.error.save=Nem tudjuk beolvasni a %string% nevű mentett állást. +cli.error.timeout=%string% túl rövid (kevesebb, mint %minimum% betű) # Fuzzy cli.freecol-data=A FreeCol KÖNYVTÁR beállítása (rendelkezik egy 'images' alkönyvtárral) cli.font=Az alapértelmezett betűtípus bállítása @@ -329,7 +350,15 @@ model.option.explorationPoints.shortDescription=Járjon pont a felfedezések után? model.option.turnsToSail.name=Áthajózási körök model.option.turnsToSail.shortDescription=Az Európából az Újvilágba való áthajózáshoz szükséges körök száma. +model.option.amphibiousMoves.name=Partraszállási lépések +model.option.amphibiousMoves.shortDescription=Lehetővé teszi a hajókról közvetlenül az indián településekre való belépést. +model.option.emptyTraders.name=Üres kereskedelmi egységek +model.option.emptyTraders.shortDescription=Lehetővé teszi az üres kereskedelmi egységek kereskedelmét az indián településekkel. +model.option.settlementActionsContactChief.name=Törzsfő kapcsolat +model.option.settlementActionsContactChief.shortDescription=Minden, a településsel kapcsolatos akció egyben találkozás a törzsfőnökkel és elfogyasztja felderítői bónuszt. model.option.giftProbability.name=Ajándék esélye +model.option.demandProbability.name=Követelés valószínűsége +model.option.demandProbability.shortDescription=Annak a körönkénti százalékos esélye, hogy egy dühös indián település adót követel egy közeli zavaró európai településtől. model.option.continueFoundingFatherRecruitment.name=Az Alapító Atyák folytatólagos toborzása model.option.startingPositions.classic=Klasszikus model.option.startingPositions.historical=Történelmi @@ -358,6 +387,39 @@ model.option.lastYear.shortDescription=A játék legutolsó éve model.option.lastColonialYear.name=Az utolsó gyarmati év gameOptions.prices.name=Kezdeti árak +gameOptions.prices.shortDescription=A különféle áruk kiindulási árfekvése. +model.option.food.minimumPrice.name=Élelem minimális kezdeti ára +model.option.food.maximumPrice.name=Élelem maximális kezdeti ára +model.option.sugar.minimumPrice.name=Cukor minimális kezdeti ára +model.option.sugar.maximumPrice.name=Cukor maximális kezdeti ára +model.option.tobacco.minimumPrice.name=Dohány minimális kezdeti ára +model.option.tobacco.maximumPrice.name=Dohány maximális kezdeti ára +model.option.cotton.minimumPrice.name=Gyapot minimális kezdeti ára +model.option.cotton.maximumPrice.name=Gyapot maximális kezdeti ára +model.option.furs.minimumPrice.name=Prém minimális kezdeti ára +model.option.furs.maximumPrice.name=Prém maximális kezdeti ára +model.option.lumber.minimumPrice.name=Fa minimális kezdeti ára +model.option.lumber.maximumPrice.name=Fa maximális kezdeti ára +model.option.ore.minimumPrice.name=Érc minimális kezdeti ára +model.option.ore.maximumPrice.name=Érc maximális kezdeti ára +model.option.silver.minimumPrice.name=Ezüst minimális kezdeti ára +model.option.silver.maximumPrice.name=Ezüst maximális kezdeti ára +model.option.rum.minimumPrice.name=Rum minimális kezdeti ára +model.option.rum.maximumPrice.name=Rum maximális kezdeti ára +model.option.cigars.minimumPrice.name=Szivar minimális kezdeti ára +model.option.cigars.maximumPrice.name=Szivar maximális kezdeti ára +model.option.cloth.minimumPrice.name=Szövet minimális kezdeti ára +model.option.cloth.maximumPrice.name=Szövet maximális kezdeti ára +model.option.coats.minimumPrice.name=Kabát minimális kezdeti ára +model.option.coats.maximumPrice.name=Kabát maximális kezdeti ára +model.option.tools.minimumPrice.name=Szerszám minimális kezdeti ára +model.option.tools.maximumPrice.name=Szerszám maximális kezdeti ára +model.option.muskets.minimumPrice.name=Muskéták minimális kezdeti ára +model.option.muskets.maximumPrice.name=Muskéta minimális kezdeti ára +model.option.tradeGoods.minimumPrice.name=Kereskedelmi áruk minimális kezdeti ára +model.option.tradeGoods.maximumPrice.name=Kereskedelmi áru maximális kezdeti ára +model.option.horses.minimumPrice.name=Lovak minimális kezdeti ára +model.option.horses.maximumPrice.name=Lovak maximális kezdeti ára model.option.startingMoney.name=Induló tőke model.option.startingMoney.shortDescription=A játék elején kapott arany mennyisége model.option.crossesIncrement.name=Kereszt növekmény @@ -366,6 +428,8 @@ model.option.badGovernmentLimit.shortDescription=Azon koronapártiak maximális száma, akik még nem okoznak negatív termelési módosítókat. model.option.veryBadGovernmentLimit.name=Nagyon rossz kormányzati határ model.option.veryBadGovernmentLimit.shortDescription=Azon koronapártiak maximális száma, akik még nem okoznak további termelési levonásokat. +model.option.goodGovernmentLimit.name=Jó önkormányzat határa +model.option.goodGovernmentLimit.shortDescription=A termelési bónuszhoz szükséges Szabadság fiainak minimális százaléka model.option.landPriceFactor.name=Föld érték tényező model.option.landPriceFactor.shortDescription=Növeli az őslakosok földjének felvásárlási árát. model.option.foundingFatherFactor.name=Alapító Atya tényező @@ -404,7 +468,10 @@ model.option.recruitable.slot2.shortDescription=A harmadik bevándorló egység típusa. model.option.tileProduction.name=Mező termelés model.option.tileProduction.shortDescription=A változó termelékenységgel bíró mezők termelése. +model.option.buildOnNativeLand.name=Építkezés az indiánok földjén +model.option.buildOnNativeLand.shortDescription=Lehetséges-e kolóniát alapítani az indiánok földjén? model.option.buildOnNativeLand.always.name=Mindig +model.option.buildOnNativeLand.always.shortDescription=Mindig lehetséges az indiánok földjén építkezni. model.option.buildOnNativeLand.first.name=Első model.option.buildOnNativeLand.first.shortDescription=Az első kolóniát fel lehet építeni az indiánok földjén. model.option.buildOnNativeLand.firstAndUncontacted.name=Első, ha még nem találkoztak. @@ -415,17 +482,35 @@ model.option.expertStartingUnits.shortDescription=Minden kezdő egységet szakértővé tesz. model.option.unitsThatUseNoBells.name=Telepesek akik nem használnak harangot model.option.unitsThatUseNoBells.shortDescription=A telepesek száma egy kolóniában akik nem használnak fel egy harangot sem. +model.option.monarchSupport.name=Uralkodói támogatás +model.option.monarchSupport.shortDescription=Az uralkodó által nyújtott katonai támogatás. +model.option.refSize.name=A Királyi Expedíciós Erők mérete +model.option.refSize.shortDescription=A Királyi Expedíciós Erőt alkotó egységek száma és típusa. model.option.refSize.soldiers.name=Gyalogság +model.option.refSize.soldiers.shortDescription=Gyalogsági egységek száma. model.option.refSize.dragoons.name=Lovasság +model.option.refSize.dragoons.shortDescription=Lovassági egységek száma. model.option.refSize.menOfWar.name=Hadihajó +model.option.refSize.menOfWar.shortDescription=A hadihajók (Men'O'War) száma. model.option.refSize.artillery.name=Tüzérség model.option.refSize.artillery.shortDescription=A tüzérségi egységek száma. model.option.immigrants.name=Bevándorlók model.option.immigrants.shortDescription=Az első bevándorlók Európából. model.option.interventionForce.name=Intervenciós sereg +model.option.interventionForce.shortDescription=Az Intervenciós Erők útnak indultak, hogy támogassák Függetlenségi Háborúdat. +model.option.interventionBells.name=Intervenciós harangok +model.option.interventionBells.shortDescription=Az Intervenciós Erők beavatkozásához szükséges Harangok száma. +model.option.interventionTurns.name=Intervenciós körök +model.option.interventionTurns.shortDescription=Az Intervenciós Erők bővítései között eltelt körök száma. +model.option.mercenaryForce.name=Zsoldossereg +model.option.mercenaryForce.shortDescription=A Függetlenségi Háborúd támogatására felajánlott zsoldossereg. difficultyLevels.name=Nehézségi szintek model.difficulty.immigration.name=Kivándorlás model.difficulty.natives.name=Indiánok +model.difficulty.monarch.name=Uralkodó +model.difficulty.government.name=Önkormányzat +model.difficulty.cheat.name=MI-Csalás +model.difficulty.other.name=Egyéb model.difficulty.veryEasy.name=Nagyon könnyű model.difficulty.easy.name=Könnyű model.difficulty.medium.name=Közepes @@ -444,12 +529,15 @@ model.difficulty.veryHard=Nagyon nehéz model.difficulty.custom=Egyéni clientOptions.name=Beállítások +clientOptions.shortDescription=Felhasználói beállítások model.option.autoScroll.name=Térkép auto-mozgatása model.option.autoScroll.shortDescription=Az automata görgetés engedélyezése mikor az egér a térkép határához ér. actionManager.name=Billentyű kombinációk actionManager.shortDescription=Billentyű kombinációk clientOptions.mods.name=Modok clientOptions.mods.shortDescription=A játékot módosító 'mod'-okkal kapcsolatos beállítások. +userMods.name=Felhasználói modulok (User Mods) +userMods.shortDescription=A játékot módosító 'mod'-okkal kapcsolatos beállítások. clientOptions.gui.name=Megjelenés clientOptions.gui.shortDescription=A játék megjelenéséhez tartozó beállításokat tartalmazza. model.option.languageOption.name=Nyelv @@ -465,6 +553,12 @@ model.option.displayCompassRose.shortDescription=Az iránytű megjelenítésének mutatása vagy elrejtése. model.option.displayMapControls.name=Térképvezérlők mutatása model.option.displayMapControls.shortDescription=A térképvezérlők megjelenítése vagy elrejtése. +model.option.mapControls.name=Térkép navigáció +model.option.mapControls.shortDescription=Milyen térképnavigáció jelenjen meg. +CornerMapControls.name=A sarkokban +CornerMapControls.shortDescription=A térképvezérlők a sarkokban és az alsó sorban helyezkednek el. +ClassicMapControls.name=Hagyományos +ClassicMapControls.shortDescription=A térképvezérlők a jobb oldalon helyezkednek el. model.option.displayTileText.name=Mezőszövegek model.option.displayTileText.shortDescription=Mely adatok jelenjenek meg a mezőkön. clientOptions.gui.displayTileText.empty=Üres @@ -482,6 +576,10 @@ model.option.displayGrid.shortDescription=A rácsháló megjelenítése vagy elrejtése. model.option.unitLastMoveDelay.name=Egység utolsó mozgásának késleltetése model.option.unitLastMoveDelay.shortDescription=Legyen-e egy rövid szünet egy egység utolsó lépése után, vagy sem. +model.option.usePixmaps.name=Pixmapek használata a képek tárolásához +model.option.usePixmaps.shortDescription=Próbálkozz ennek a kikapcsolásával ha az egységek szokásos mozgása nagyon lassú. +model.option.rememberPanelPositions.name=Panel pozíciók megjegyzése +model.option.rememberPanelPositions.shortDescription=Megjegyzi a különböző panelek helyét a képernyőn. model.option.moveAnimationSpeed.name=Baráti egységek mozgatása model.option.moveAnimationSpeed.shortDescription=A baráti egységek mozgatásának sebességét állítja be. clientOptions.gui.moveAnimationSpeed.off=Ki @@ -539,6 +637,12 @@ model.option.guiShowMarketPrices.shortDescription=Meghatározza a piaci árak változásával kapcsolatos üzenetek megjelenítését. model.option.guiShowMissingGoods.name=Hiányzó termék model.option.guiShowMissingGoods.shortDescription=Meghatározza az épületek befejezéséhez hiányzó árukkal kapcsolatos üzenetek megjelenítését. +model.option.guiShowGifts.name=Indián ajándékok +model.option.guiShowGifts.shortDescription=Meghatározza az indiánok ajándékairól szóló üzenetek megjelenítését a körök elején. +model.option.guiShowDemands.name=Indián követelések +model.option.guiShowDemands.shortDescription=Meghatározza az indiánok követeléseiről szóló üzenetek megjelenítését a körök elején. +model.option.guiShowGoodsMovement.name=Árumozgás +model.option.guiShowGoodsMovement.shortDescription=Meghatározza a részletes árumozgás megjelenítését. model.option.guiShowPreCombat.name=Támadás előtti elemzés model.option.guiShowPreCombat.shortDescription=Meghatározza a csata előtti elemzések megjelenítését. model.option.guiShowNotBestTile.name=Nem a legjobb mező @@ -564,6 +668,8 @@ model.option.audioMixer.shortDescription=Az eszköz amit a hangok lejátszására használ. model.option.audioVolume.name=Hangerő model.option.audioVolume.shortDescription=Hangerő +model.option.audioAlerts.name=Hangjelzések +model.option.audioAlerts.shortDescription=Hangjelzések bekapcsolása clientOptions.savegames.name=Elmentett állások clientOptions.savegames.shortDescription=Elmentett állások model.option.showSavegameSettings.name=Mentési dialógus: @@ -572,6 +678,8 @@ clientOptions.savegames.showSavegameSettings.multiplayer=Csak többjátékos módban mentett állásoknál clientOptions.savegames.showSavegameSettings.always=Mindig clientOptions.savegames.autosave.fileprefix=Automentés +clientOptions.savegames.autosave.lastturn=utolsó-kör +clientOptions.savegames.autosave.beforelastturn=utolsó-előtti-kör model.option.autosavePeriod.name=Automatikus mentés ennyi körönként: model.option.autosavePeriod.shortDescription=A játék automatikus mentése bizonyos időközönként. 0 esetén ez a funkció ki van kapcsolva. model.option.autosaveGenerations.name=Ennyi auto-mentés megőrzése: @@ -615,6 +723,8 @@ model.option.landMass.shortDescription=A generált térkép szárazföldjeinek össz területét szabályozza. model.option.landGeneratorType.name=Szárazulat típus (KÍSÉRLETI!) model.option.landGeneratorType.shortDescription=A térképgenerátor beállítását teszi lehetővé. +model.option.distanceToHighSea.name=A nyílt tengertől való távolság +model.option.distanceToHighSea.shortDescription=A part és a nyílt tenger várt átlagos távolsága. model.option.riverNumber.name=Folyók gyakorisága model.option.riverNumber.shortDescription=A generált térképen lévő folyók számát befolyásolja. model.option.mountainNumber.name=Hegyek gyakorisága Modified: freecol/trunk/data/strings/FreeColMessages_ko.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ko.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_ko.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -8,7 +8,7 @@ # Author: 아라 freecol.desktopEntry.GenericName=전략 게임 -freecol.desktopEntry.Comment="시드 마이어의 Colonization" 에 따른 턴제 전략 게임입니다. +freecol.desktopEntry.Comment="시드 마이어의 식민지" 에 따른 턴제 전략 게임입니다. ok=확인 cancel=취소 reset=초기화 @@ -29,6 +29,7 @@ false=거짓 more=더 보기... none=없음 +many=많이 nothing=없음 all=모두 notApplicable.short=N/A @@ -105,6 +106,7 @@ building=건물 goods=상품 goldAmount={{plural:%amount%|one=황금|other=황금|default=황금}} %amount%개 +cargoOnCarrier=운반 중인 화물 cargoOnCarrierLong=%name%의 화물 (%space% {{plural:%space%|one=칸|other=칸|default=칸}} 남음) outsideColony=식민지 외곽 colonyPanel.buyBuilding=건물 구입 @@ -145,9 +147,10 @@ trainDialog.clickOn=양성할 사람에 클릭하십시오. trainDialog.done=완료 quitDialog.areYouSure.text=정말로 종료하시길 원하십니까? +errorMessage.showLogFile=기록 파일 보기 tradeItem.colony=식민지 tradeItem.colony.long=%colony% 식민지 -tradeItem.gold=금 +tradeItem.gold=황금 tradeItem.goods=상품 tradeItem.unit=유닛 negotiationDialog.offer=%nation% 제의 @@ -167,7 +170,7 @@ tension.happy=기쁨 tension.angry=화남 tension.hateful=증오 -tension.unknown=모름 +tension.unknown=알 수 없음 tension=긴장도 noSuchFile=지정된 파일이 존재하지 않거나 일반 파일이 아닙니다. gotoThisTile=이 타일로 이동 @@ -194,6 +197,7 @@ NewWorld=새로운 세계 Ship=선박 LoadingSavegame.title=저장 게임 불러오기 +LoadingSavegame.singlePlayer=싱글 플레이어 LoadingSavegame.privateMultiplayer=비공개 멀티 플레이어 LoadingSavegame.publicMultiplayer=공개 멀티 플레이어 LoadingSavegame.serverName=서버 이름: @@ -267,8 +271,11 @@ cli.arg.directory=디렉토리 cli.arg.file=파일 cli.arg.locale=로케일 +cli.arg.loglevel=로그레벨 cli.arg.name=이름 cli.arg.port=포트 +cli.arg.seed=씨 +cli.arg.timeout=시간초과 cli.check-savegame=일관성을 위해 주어진 savegame을 확인 cli.check-savegame.success=Savegame 일관성 검사를 마쳤습니다. 자세한 것은 로그를 확인하세요. cli.check-savegame.failure=Savegame 일관성 검사에 실패했습니다. 자세한 것은 로그를 확인하세요. @@ -297,7 +304,7 @@ model.option.fogOfWar.name=전장의 안개 model.option.explorationPoints.name=탐사 포인트 model.option.turnsToSail.name=항해 턴 수 -model.option.startingPositions.random=랜덤 +model.option.startingPositions.random=임의 gameOptions.colony.name=식민지 선택사항 model.option.allowStudentSelection.name=학생 선택 허용 model.option.allowStudentSelection.shortDescription=학생 자동 배정 대신 수동으로 할 수 있습니다. @@ -309,9 +316,9 @@ model.option.victoryDefeatEuropeans.shortDescription=게임에서 모든 유럽 플레이어를 패배시킨 플레이어가 승리하게 됩니다. model.option.victoryDefeatHumans.name=모든 다른 인간 플레이어 패배 model.option.victoryDefeatHumans.shortDescription=모든 인간 플레이어를 패배시킨 플레이어가 게임에서 승리합니다. -gameOptions.years.shortDescription=여러가지 중요한 연도에 관련된 옵션이 있습니다. +gameOptions.years.shortDescription=다양한 특수 연도에 관련된 옵션을 포함합니다. model.option.startingYear.name=시작 연도 -model.option.startingYear.shortDescription=게임 시작 연도 +model.option.startingYear.shortDescription=게임을 시작하는 연도입니다. model.option.startingMoney.name=시작 금액 model.option.startingMoney.shortDescription=게임 시작시 돈의 총액 model.option.crossesIncrement.name=십자가 증가 @@ -701,7 +708,7 @@ reportHighScoresAction.name=최고 점수 roadAction.name=도로 건설 difficultyAction.name=난이도 보기 -gameOptionsAction.name=게임 선택사항 표시 +gameOptionsAction.name=게임 선택 사항 보이기 showMainAction.name=주 메뉴 mapGeneratorOptionsAction.name=지도 생성기 선택사항 표시 retireAction.name=그만 두기 Modified: freecol/trunk/data/strings/FreeColMessages_mk.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_mk.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_mk.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -296,6 +296,8 @@ direction.NW=северозапад server.reject=Oпслужувачот не може да го направи тоа. server.trade.noGoods=Не можете да тргувате со стока која ја нема. +main.javaVersion=За FreeCol се препорачува Java-верзија %minVersion% или подобра \n(утврдена е %version%; употребете --no-java-check за да ја прескокнете оваа проверка). +main.memory=Треба да зададете повеќе од %memory% бајти склад за JVM.\n Пуштете го FreeCol одново со: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=ПОДАТОТЕКА СО ПОСТАВКИ cli.arg.debuglevel=БРОЈ cli.arg.debugRun=ПОТЕЗИ[,ИМЕЗАЗАЧУВУВАЊЕ] @@ -320,8 +322,9 @@ cli.error.home.notExists=Матичниот директориум %string% не постои. cli.error.home.noRead=Не можам да прочитам од %string%. cli.error.home.noWrite=Не можам да запишам во %string%. -# Fuzzy -cli.freecol-data=постави ДИРЕКТОРИУМ за податоците на FreeCol (има поддиректориум наречен 'images') +cli.error.save=Не можам да ја прочитам зачуваната игра %string%. +cli.error.timeout=%string% е прекратка (помала од %minimum%) +cli.freecol-data=постави ДИРЕКТОРИУМ за податоците на FreeCol (има поддиректориум наречен 'base') cli.font=постави основен фонт cli.help=прикажувај го овој екран за помош cli.home-directory=постави матичен ДИРЕКТОРИУМ за податоците на FreeCol (по основно, матичниот директориум на корисникот) @@ -1122,6 +1125,8 @@ server.invalidPlayerNations=Пред да почне играта, сите играчи мораат да одберат различна нација. server.timeOut=Времето за поврзување со северот истече. server.errorStartingGame=Се појави грешка при започнувањето на играта. +server.load=Не можев да ја вчитам зачуваната игра +server.initialize=Грешка во пуштањето на опслужувачот displayTileTextAction.EMPTY.name=Не прикажувај текст во полињата displayTileTextAction.NAMES.name=Прикажувај имиња на полињата displayTileTextAction.OWNERS.name=Прикажувај сопственици на полињата @@ -1280,6 +1285,7 @@ sentryUnit=Чувај стража clearUnitOrders=Откажи наредби leaveTown=Напушти го градот +board=Натовари го %unit% clearSpeciality=Исчисти ја специјалноста clearSpeciality.areYouSure=Дали сте сигурни дека сакате да ги снижите %oldUnit% на %unit%? clearSpeciality.impossible=%unit% не може да се снижи! Modified: freecol/trunk/data/strings/FreeColMessages_ms.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_ms.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_ms.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -294,6 +294,8 @@ direction.NW=barat laut server.reject=Pelayan tidak boleh melakukan yang itu. server.trade.noGoods=Anda tidak boleh memperdagangkan barangan yang tidak ada. +main.javaVersion=Java versi %minVersion% ke atas disyorkan untuk menjalankan FreeCol\n(%version% dikesan, gunakan --no-java-check untuk melangkau pemeriksaan ini). +main.memory=Anda perlu menggunakan lebih daripada %memory% bait ingatan pada JVM.\n Lancarkan semula FreeCol dengan: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=FAIL PILIHAN cli.arg.debuglevel=NOMBOR cli.arg.debugRun=TURNS[,SAVENAME] @@ -318,8 +320,9 @@ cli.error.home.notExists=Direktori utama %string% tidak wujud. cli.error.home.noRead=%string% tidak boleh dibaca. cli.error.home.noWrite=%string% tidak boleh ditulis. -# Fuzzy -cli.freecol-data=tetapkan DIREKTORI data FreeCol (mempunyai subdirektori 'images') +cli.error.save=Permainan tersimpan %string% tidak dapat dibaca. +cli.error.timeout=%string% terlalu pendek (kurang daripada %minimum%) +cli.freecol-data=tetapkan DIREKTORI data FreeCol (mempunyai subdirektori 'base') cli.font=tetapkan fon sediaan cli.help=paparkan skrin bantuan ini cli.home-directory=tetapkan DIREKTORI utama FreeCol (laman utama pengguna sebagai asali) @@ -1119,6 +1122,8 @@ server.invalidPlayerNations=Semua pemain perlu memilih bangsa yang unik sebelum permainan boleh dimulakan. server.timeOut=Timeout berlaku apabila bersambung dengan pelayan. server.errorStartingGame=Ralat dialami ketika cuba memulakan permainan. +server.load=Permainan tersimpan tidak dapat dimuatkan +server.initialize=Ralat ketika melancarkan pelayan displayTileTextAction.EMPTY.name=Jangan paparkan teks dalam jubin displayTileTextAction.NAMES.name=Paparkan nama jubin displayTileTextAction.OWNERS.name=Paparkan pemilik jubin @@ -1233,6 +1238,7 @@ sentryUnit=Sentri clearUnitOrders=Padamkan arahan leaveTown=Keluar dari Pekan +board=Naiki %unit% clearSpeciality=Padamkan kepakaran clearSpeciality.areYouSure=Adakah anda benar-benar ingin menurun taraf %oldUnit% to %unit%? clearSpeciality.impossible=%unit% tidak boleh diturun taraf! Modified: freecol/trunk/data/strings/FreeColMessages_nl.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_nl.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_nl.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -303,6 +303,8 @@ direction.NW=noordwest server.reject=De server kan dat niet. server.trade.noGoods=U kunt geen goederen verhandelen die niet aanwezig zijn. +main.javaVersion=Voor FreeCol wordt een Javaversie van %minVersion% of later aanbevolen.\n%version% is gedetecteerd. Gebruik "--no-java-check" om deze controle over te slaan. +main.memory=U moet meer dan %memory% bytes geheugen aan de JVM toekennen.\n Herstart FreeCol met: java -Xmx%minMemory%M -jar FreeCol.jar cli.arg.clientOptions=INSTELLINGENBESTAND cli.arg.debuglevel=GETAL cli.arg.debugRun=BEURTEN[,BESTANDSNAAM] @@ -327,8 +329,9 @@ cli.error.home.notExists=Thuismap %string% bestaat niet. cli.error.home.noRead=Kan niet lezen in %string%. cli.error.home.noWrite=Kan niet schrijven naar %string%. -# Fuzzy -cli.freecol-data=stelt de gegevensmap MAP in voor FreeCol (heeft een submap genaamd 'images') +cli.error.save=Het opgeslagen spel %string% kan niet gelezen worden. +cli.error.timeout=%string% is te kort (minder dan %minimum%). +cli.freecol-data=stelt de gegevensmap MAP in voor FreeCol (heeft een submap genaamd 'base') cli.font=Het standaard lettertype instellen cli.help=dit hulpscherm weergeven cli.home-directory=de FreeCol-map (standaard de gebruikersmap) @@ -1128,6 +1131,8 @@ server.invalidPlayerNations=Alle spelers moeten een unieke natie kiezen voordat het spel kan starten. server.timeOut=Verbinden met de server duurde te lang. server.errorStartingGame=Er is iets fout gegaan tijdens het starten van het spel! +server.load=Het was niet mogelijk het opgeslagen spel te laden +server.initialize=Fout tijdens het initialiseren van de server displayTileTextAction.EMPTY.name=Geen tekst weergeven in tegels displayTileTextAction.NAMES.name=Oppervlaktenamen weergeven displayTileTextAction.OWNERS.name=Grondeigenaren weergeven @@ -1286,6 +1291,7 @@ sentryUnit=Wacht clearUnitOrders=Orders intrekken leaveTown=Verlaat stad +board=%unit% aanmonsteren clearSpeciality=Verwijder beroep clearSpeciality.areYouSure=Weet u zeker dat u %oldUnit% wilt demoveren naar %unit%? clearSpeciality.impossible=%unit% kan niet gedemoveerd worden! @@ -2519,8 +2525,7 @@ model.source.ambushBonus.name=Hinderlaagbonus model.source.artilleryInTheOpen.name=Kanon in het open veld model.source.zeroThreshold.name=Geen negatieve productie -# Fuzzy -model.source.finalResult.name=Einduitslag +model.source.finalResult.name=Eenheidresultaat model.source.baseDefence.name=Basisverdediging model.source.fortified.name=Standhouden model.source.artilleryAgainstRaid.name=Kanon tegen de aanval Modified: freecol/trunk/data/strings/FreeColMessages_oc.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_oc.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_oc.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -5,6 +5,7 @@ # Author: McDutchie # Author: Mertyl +freecol.desktopEntry.GenericName=Jòc d'estrategia ok=D'acòrdi cancel=Quitar reset=Reïnicializar @@ -25,6 +26,7 @@ false=Fals more=mai... none=Pas cap +many=fòrça nothing=Res all=Totes notApplicable.short=N/A @@ -33,11 +35,14 @@ Test=Tèst Music=Musica Current=Actual +help=Ajuda list.add=Apondre list.remove=Levar list.up=Pujar list.down=Davalar +list.edit=Modificar file.browse=Percórrer +FileChooser.openButtonText=D'acòrdi option.remove=Suprimir width=Largor height=Nautor @@ -97,11 +102,9 @@ sonsOfLiberty=Independentistas building=Bastiment goods=Merças -# Fuzzy -goldAmount=%amount% aur +goldAmount=%amount% {{plural:%amount%|one=aur|other=aur|default=aur}} cargoOnCarrier=Cargament transportat -# Fuzzy -cargoOnCarrierLong=Cargament de %name% (%space% liure) +cargoOnCarrierLong=Cargament de %name% (%space% {{plural:%space%|one=emplaçament liure|other=emplaçaments liures|default=emplaçaments liures}}) outsideColony=En defòra de la colonia colonyPanel.buyBuilding=Crompar un bastiment colonyPanel.rebelLabel=Rebèls : %number% @@ -121,14 +124,17 @@ colonyPanel.populationTooSmall=Populacion %number% colonyPanel.units=Unitats colonyPanel.buildings=Bastiments +colonyPanel.colonyUnits=Unitats de la Colonia +outsideOfColony.name=En defòra de la colonia +inPort.name=Al pòrt +producing.name=que produtz turns=torns turnsToComplete.short=(Torns: %number%) turnsToComplete.long=(Torns que demòran : %number%) waitingFor=Los %nation% acaban lor torn. chooseImmigrant=Causissètz qui volètz veire emigrar d'Euròpa abstractUnit={{plural:%number%|one=una|other=%number%}} %unit% -# Fuzzy -colonist=Colon +colonist=%number% {{plural:%number%|one=colon|other=colons|default=colon}} colonists=Colons tories=Leialistas crosses=Croses @@ -144,6 +150,8 @@ trainDialog.done=Quitar quitDialog.areYouSure.text=Sètz segur(a) que volètz quitar ? retireDialog.areYouSure.text=Sètz segur(a) que vos volètz retirar ? +foundingFatherDialog.nominate=Designatz un paire fondator +errorMessage.showLogFile=Afichar lo fichièr jornal tradeItem.colony=Colonia tradeItem.colony.long=la colonia de %colony% tradeItem.gold=Aur @@ -151,10 +159,9 @@ tradeItem.goods=Merças tradeItem.stance=Relacions tradeItem.unit=Unitat -# Fuzzy -negotiationDialog.offer=Ofèrta -# Fuzzy -negotiationDialog.demand=Demanda +negotiationDialog.offer=Lo %nation% ofrís +negotiationDialog.demand=Lo %nation% demanda +negotiationDialog.exchange=en escambi de negotiationDialog.summary=Lo %nation% prepausa %offers% en escambi de %demands%. negotiationDialog.accept=Acceptar negotiationDialog.cancel=Anullar @@ -168,9 +175,17 @@ transaction.sale=Vendre %amount% %goods% @%gold% transaction.tax=-%tax%%:\t%gold% transaction.net=Net :\t%gold% +tension.wary=Mesfisent +tension.happy=Urós +tension.content=Content +tension.displeased=Contrariat +tension.angry=En colèra +tension.hateful=Asirós +tension.unknown=Desconegut tension=Tension noSuchFile=Lo fichièr indicat existís pas o es pas al bon format. gotoThisTile=Anatz a aquesta casa. +gotoEurope=Anar en Euròpa attackTileOdds=Atacar ! (%chance%% d'escasença de succès) dumpCargo=Descargar lo cargament tile=Casa (%x%, %y%) @@ -178,18 +193,25 @@ filter.gameOptions=Opcions de FreeCol (*.fgo) filter.gameOptionsAndSavedGames=Salvaments e Opcions de FreeCol (*.fsg e *.fgo) filter.xml=XML (Extensible Markup Language). -# Fuzzy -underRepair=En reparacion (demòran %turns% torns) +freecol.map.Africa=Africa +freecol.map.Australia=Austràlia +freecol.map.America_large=America (granda) +freecol.map.Caribbean_basin=Bacin de las Caribas +underRepair=En reparacion (%turns% {{plural:%turns%|one=torn restant|other=torns restants}}) +EventPanel.DISCOVER_PACIFIC=Avètz descobert l'ocean Pacific ! +EventPanel.FIRST_LANDING=Primièr debarcament dins lo Mond Novèl. EventPanel.MEETING_EUROPEANS=Rencontratz d'amics europèus. Seràn en competicion amb vos per las tèrras e las riquesas, e atal, pòdon menar una guèrra contra vos. Mas aprèp que Jan de Witt a rejonch lo Congrès continental, poiretz comerçar amb eles. EventPanel.MEETING_NATIVES=Rencontratz d'indigènas. Mandatz vòstres scouts a lors campaments, per tal de n'aprene mai sus eles, a mai vòstres servidors engatjats e colons liures per aprene d'eles. Madatz vòstres vaissèls e de convòis de carriòts a lors colonias, se volètz comerçar amb eles. EventPanel.MEETING_AZTEC=Rencontratz la nacion Aztèca. EventPanel.MEETING_INCA=Rencontratz la nacion Inca. -# Fuzzy -tutorial.startGame=Aprèp de meses a vogar sus l'ocean, arribatz enfin al larg d'un continent desconegut. Fasetz vela cap a l'oèst per descobrir lo Mond Novèl e lo reivendicar al nom de la Corona. +tutorial.startGame=Aprèp de meses a vogar sus l'ocean, arribatz enfin al larg de las còstas d'un continent desconegut. Fasètz vela cap a {{tag:%direction%|west=l'oèst|east=l'èst|default=jol vent}} per descobrir lo Mond Novèl e lo reïvindicar al nom de la Corona. tutorial.buildColony=Construsissètz una colonia en quichant sus la tòca %build_colony_key% o en clicant sus %build_colony_menu_item% dins lo menut %orders_menu_item%.\n\nSeretz prevengut se l'endrech causit es pas ideal per s'i establir. Colony=Colonia Settlement=Règlament +NewWorld=Mond Novèl +Ship=Vaissèl LoadingSavegame.title=Cargament d'un salvament +LoadingSavegame.singlePlayer=Un sol jogaire LoadingSavegame.privateMultiplayer=Multijogaire privat LoadingSavegame.publicMultiplayer=Multijogaire public LoadingSavegame.serverName=Nom del servidor : @@ -198,24 +220,45 @@ editor.removeSettlement=Suprimir lo règlament editor.removeSettlement.text=Volètz suprimir aqueste règlament ? editor.mapSize=Seleccionar la talha de la mapa +buildingToolTip.breeding=Avètz besonh d'al mens %number% {{plural : %number% | %goods% }} per produire %goods% . menuBar.game=Jòc menuBar.view=Vejatz menuBar.tools=Aisinas menuBar.orders=Òrdres menuBar.colopedia=Colonipèdia -# Fuzzy -menuBar.teacher=Enregistrament de l'ensenhament +menuBar.teacher=Formar %unit% menuBar.debug=Desbogar menuBar.debug.showCoordinates=Far veire las coordenadas menuBar.debug.showColonyValue=Far veire las valors de las colonias +menuBar.debug.showCommonOutpostValue=Afichar la valor d'avant-pòste comun +menuBar.debug.skipTurns=Passar de torns +menuBar.debug.stopSkippingTurns=Arrestar de passar de torns +menuBar.debug.addBuilding=Apondre un bastiment a cada colonia +menuBar.debug.addFoundingFather=Apondre un paire fondator +menuBar.debug.runMonarch=Definir l'accion seguenta del monarca +menuBar.debug.addGold=Apondre d’aur menuBar.debug.addImmigration=Apondre l'immigracion -# Fuzzy -menuBar.debug.stepRandomNumberGenerator=Valor del generator de nombres aleatòris : %value% +menuBar.debug.addLiberty=Apondre de punts de libertat a cada colonia +menuBar.debug.stepRandomNumberGenerator=Aviar lo generator de nombres aleatòris +menuBar.debug.displayUnits=Afichar las unitats +menuBar.debug.randomValue=Valor del generator de nombres aleatòris : %value% +menuBar.debug.displayPanels=Afichar panèls +menuBar.debug.displayMonarchPanel=Panèl Monarca +menuBar.debug.displayVictoryPanel=Panèl Victòria +menuBar.debug.displayEuropeStatus=Panèl Euròpa +menuBar.debug.displayErrorMessage=Afichar lo messagte d'error +menuBar.debug.useAI=Utilizar AI menuBar.debug.revealEntireMap=Revelar tota la mapa +menuBar.debug.hideEntireMap=Amagar tota la mapa menuBar.debug.compareMaps=Contraròtle per la desincronizacion de mapa menuBar.debug.compareMaps.checkComplete=Contraròtle efectuat. Cap de desincronizacion pas relevada. menuBar.debug.compareMaps.problem=Problèmas eventuals rencontrats. Legissètz las entresenhas escrichas sus l'ecran. +menuBar.debug.showResourceKeys=Far veire las ressorsas clau +menuBar.debug.statistics=Estatisticas menuBar.debug.memoryManager=Gestionari de memòria +menuBar.debug.memoryManager.freeMemory=Liure +menuBar.debug.memoryManager.totalMemory=Total +menuBar.debug.memoryManager.maxMemory=Max menuBar.debug.memoryManager.gc=Aviar l'amassamicas menuBar.report=Rapòrt menuBar.statusLine=Punts : %score% | Aur : %gold% | Taxas : %tax% % | An : %year% @@ -223,6 +266,7 @@ metaServer.couldNotConnect=O planhèm, es impossible de se connectar al metaservidor. Ensajatz tornamai ulteriorament. metaServer.communicationError=Error durant la comunicacion amb lo metaservidor. Ensajatz tornamai ulteriorament. infoPanel.endTurnPanel.text=Clicatz "Entrada" per acabar lo torn. +endTurnDialog.name=Fin del torn menuBar.tools.determineHighSeas.distToLandFromHighSeas=Nombre de casas dempuèi la tèrra menuBar.tools.determineHighSeas.maxDistanceToEdge=Distància maximum del bòrd stopCurrentGame.text=Una partida es en cors. @@ -259,8 +303,7 @@ cli.error.home.notExists=Lo camin de basa %string% existís pas. cli.error.home.noRead=Impossible de legir dempuèi %string%. cli.error.home.noWrite=Impossible d'escriure sus %string%. -# Fuzzy -cli.freecol-data=definir lo DORSIÈR de las donadas de FreeCol (deu aver un sosdorsièr 'images') +cli.freecol-data=definís lo DORSIÈR de las donadas de FreeCol (deu aver un sosdorsièr 'base') cli.help=Aficha aqueste ecran d’ajuda cli.home-directory=definir lo DORSIÈR de basa de FreeCol (lo dorsièr de basa de l'utilizaire es utilizat per defaut) cli.load-savegame=cargar lo fichièr de salvament del jòc FICHIÈR @@ -1713,7 +1756,7 @@ model.equipment.tools.name=Aisinas model.equipment.tools.add=Equipar amb d'espleches model.equipment.tools.remove=Pausar las aisinas -model.equipment.tools.none=pas cap d'esplech +model.equipment.tools.none=pas cap d'aisina model.equipment.missionary.name=Bíblia model.equipment.missionary.add=Benir coma missionari model.equipment.missionary.remove=Renonciar a l'estat de missionari Modified: freecol/trunk/data/strings/FreeColMessages_pl_PL.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_pl_PL.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -1129,6 +1129,8 @@ server.invalidPlayerNations=Przed rozpoczęciem gry każdy gracz musi wybrać inną narodowość. server.timeOut=Przekroczenie czasu podczas łączenia z serwerem. server.errorStartingGame=Podczas uruchamiania gry pojawił się błąd. +server.load=Nie można załadować zapisanej gry +server.initialize=Błąd inicjowania serwera displayTileTextAction.EMPTY.name=Nie wyświetlaj tekstu na polach displayTileTextAction.NAMES.name=Wyświetl nazwy pól displayTileTextAction.OWNERS.name=Wyświetl właścicieli pól Modified: freecol/trunk/data/strings/FreeColMessages_pt_BR.properties =================================================================== --- freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-01-13 15:11:45 UTC (rev 10465) +++ freecol/trunk/data/strings/FreeColMessages_pt_BR.properties 2013-01-22 06:17:45 UTC (rev 10466) @@ -43,6 +43,7 @@ notApplicable.short=N/A rules=Regras difficulty=Dificuldade +Test=Teste Music=Música Current=Atual help=Ajuda @@ -52,6 +53,7 @@ list.down=Para baixo list.edit=Editar file.browse=Buscar arquivo +FileChooser.openButtonText=OK option.remove=Remover width=Comprimento height=Altura @@ -134,11 +136,13 @@ colonyPanel.units=Unidades colonyPanel.buildings=Construções colonyPanel.colonyUnits=Unidades da colônia +inPort.name=No porto turns=turnos turnsToComplete.short=(Turnos: %number%) turnsToComplete.long=(Turnos para completar: %number%) waitingFor=Esperando por: %nation% chooseImmigrant=Escolha quem emigrará da Europa. +abstractUnit={{plural:%number%|one=um|other=%number%}} %unit% colonist=%number% {{plural:%number%|one=Colono|other=Colonos|default=Colono}} colonists=Colonos tories=Monarquistas @@ -198,7 +202,10 @@ filter.xml=XML (Extensible Markup Language). freecol.map.Africa=África freecol.map.Australia=Austrália +freecol.map.America_large=América (grande) +freecol.map.Caribbean_basin=Mar do Caribe underRepair=Em reparação ({{plural:%turns%|one=falta uma jogada|other=faltam %turns% jogadas}}) +EventPanel.DISCOVER_PACIFIC=Você descobriu o Oceano Pacífico. EventPanel.MEETING_EUROPEANS=Você encontrou europeus. Eles competirão com você por terras e riquezas, e poderão até declarar guerra. Apenas depois que Jan de Witt entrar no congresso, você poderá comercializar com eles. EventPanel.MEETING_NATIVES=Você encontrou nativos. Mande seus Escoltadores para seus acampamentos para aprender mais sobre eles, e Servos de Dívida e Colonos Livres para aprender uma profissão. Envie navios e carroças-vagão se você quiser comercializar com eles. EventPanel.MEETING_AZTEC=Você encontrou a nação Asteca. @@ -208,6 +215,7 @@ Colony=Colônia Settlement=Colônia NewWorld=Novo Mundo +Ship=Navio LoadingSavegame.title=Carregando jogo salvo LoadingSavegame.privateMultiplayer=Em rede privado LoadingSavegame.publicMultiplayer=Em rede público @@ -292,8 +300,7 @@ cli.error.home.notExists=Diretório %string% não existe. cli.error.home.noRead=Impossível ler de %string%. cli.error.home.noWrite=Impossível gravar em %string%. -# Fuzzy -cli.freecol-data=define o DIRETORIO de dados do FreeCol (tem um subdiretório chamado 'images') +cli.freecol-data=define o DIRETÓRIO de dados do FreeCol (tem um subdiretório chamado 'base') cli.font=definir a fonte padrão cli.help=exibe esta tela de ajuda cli.home-directory=define o DIRETORIO raiz do FreeCol (diretório raiz do utilizador, por padrão) @@ -568,6 +575,8 @@ model.option.landMass.shortDescription=Ajustar a quantidade de massa terrestre no mapa. model.option.landGeneratorType.name=Tipo de massa terrestre (EXPERIMENTAL!) model.option.landGeneratorType.shortDescription=Opção para escolher o tipo de gerador de terreno a ser usado. +model.option.distanceToHighSea.name=Distância até ao Alto Mar +model.option.distanceToHighSea.shortDescription=A distância de preferência entre a costa e o Alto Mar. model.option.riverNumber.name=Quantidade de rios model.option.riverNumber.shortDescription=Ajustar a quantidade de rios no mapa gerado. model.option.mountainNumber.name=Quantidade de montanhas @@ -594,14 +603,26 @@ model.option.importRumours.shortDescription=Ativa a importação de rumores de cidades perdidas já inclúdos no mapa. model.option.importSettlements.name=Importar acampamentos model.option.importSettlements.shortDescription=Ativa a importação de acampamento de nativos. +model.option.minimumLatitude.name=Latitude Mínima +model.option.maximumLatitude.name=Latitude Máxima mapGeneratorOptions.import.name=Importar mapGeneratorOptions.import.shortDescription=Opções para importar um mapa ou jogo salvo. mapGeneratorOptions.landGenerator.name=Gerador de Terras mapGeneratorOptions.landGenerator.shortDescription=Ajustes o tamanho do mapa e da quantidade de terras. mapGeneratorOptions.terrainGenerator.name=Gerador de Terreno mapGeneratorOptions.terrainGenerator.shortDescription=Ajustes para a quantidade de florestas, montanhas, etc +model.settlement.camp.name=Acampamento +model.settlement.camp.plural=acampamentos +model.settlement.camp.capital.name=Acampamento +model.settlement.village.name=Aldeia +model.settlement.village.plural=aldeias +model.settlement.village.capital.name=Aldeia +model.settlement.inca.name=Cidade Inca model.settlement.inca.plural=cidades +model.settlement.inca.capital.name=Cidade Inca +model.settlement.aztec.name=Cidade Asteca model.settlement.aztec.plural=cidades +model.settlement.aztec.capital.name=Cidade Asteca event.firstLanding=Desembarcando pela primeira vez na %name%! event.meetingNatives=Encontrando os nativos. . . event.meetingEuropeans=Encontrando os colegas europeus. @@ -624,6 +645,7 @@ trade.noTradeGoods=Desculpe, não precisamos de %goods%! trade.noTrade=Estamos cansados da sua negociação injusta trade.noTradeHaggle=Estamos cansados do seu constante regateio. +trade.noTradeHostile=Nós desprezamos você e seus bens. Vá embora! trade.noTradeWar=O comércio é impossível enquanto estiver em guerra. buy.text=A Nação %nation% gostaria de vender %goods% por %gold% moedas de ouro: buy.takeOffer=Aceitar a oferta @@ -698,6 +720,7 @@ newLand.yes=Ok welcome.yes=Sim welcome.no=Não +buildColony.badUnit=A unidade %unit% não pode construir uma colônia. buildColony.landLocked=Sua nova colônia não terá acesso direto ao mar. buildColony.noFood=Sua nova colônia produziria pouca comida. buildColony.noBuildingMaterials=A sua nova colônia produzirá muito pouco %goods%. @@ -720,6 +743,11 @@ abandonColony.text=Devemos mesmo abandonar a colônia? abandonColony.yes=Abandonar abandonColony.no=Cancelar +abandonEducation.text=Se sua %unit% sair da %colony% irá deixar de %action% na %building%, tem certeza que ele deve abandonar? +abandonEducation.yes=Sim, deixar a colônia +abandonEducation.no=Não, continuar na educação +abandonEducation.action.studying=estudar +abandonEducation.action.teaching=ensinar defeated.text=Você foi derrotado! Você prefere: defeated.yes=Ficar e assistir defeated.no=Sair @@ -739,6 +767,7 @@ payForBuilding.text=Você gostaria de pagar %amount% moedas de ouro para completar esta construção? payForBuilding.yes=Sim payForBuilding.no=Não +indianSettlement.nameUnknown=Desconhecido indianSettlement.learnableSkill=A seguinte profissão pode ser aprendida nesta tribo: indianSettlement.highlyWanted=Esta tribo tem muito interesse em negociar: indianSettlement.otherWanted=Outros produtos que podem ser negociados nesta tribo são: @@ -905,11 +934,13 @@ sentryUnit=Ficar de guarda clearUnitOrders=Apagar ordens leaveTown=Deixar Cidade +board=Embarcar em %... [truncated message content] |
From: <mp...@us...> - 2013-01-20 03:59:10
|
Revision: 10481 http://sourceforge.net/p/freecol/code/10481 Author: mpope Date: 2013-01-20 03:59:07 +0000 (Sun, 20 Jan 2013) Log Message: ----------- Restore mission information display, part for for BR#2509. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java freecol/trunk/src/net/sf/freecol/client/gui/menu/DebugMenu.java Modified: freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java 2013-01-20 02:47:07 UTC (rev 10480) +++ freecol/trunk/src/net/sf/freecol/client/gui/MapViewer.java 2013-01-20 03:59:07 UTC (rev 10481) @@ -56,6 +56,7 @@ import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JLayeredPane; +import javax.swing.JToolTip; import javax.swing.UIManager; import net.sf.freecol.FreeCol; @@ -2471,15 +2472,20 @@ if (FreeColDebugger.isInDebugMode(FreeColDebugger.DebugMode.MENUS) && player != null && !player.owns(unit) + && unit.getOwner().isAI() && freeColClient.getFreeColServer() != null && (au = freeColClient.getFreeColServer().getAIMain() .getAIUnit(unit)) != null) { - g.setColor(Color.WHITE); - String wrap = (unit.getOwner().isAI()) ? "" : "("; - String text = wrap + ((au.getMission() == null) ? "No mission" - : Utils.lastPart(au.getMission().getClass().toString(), ".")) - + wrap; - g.drawString(text, 0, 0); + if (debugShowMission) { + g.setColor(Color.WHITE); + g.drawString((!au.hasMission()) ? "No mission" + : Utils.lastPart(au.getMission().getClass().toString(), "."), + 0, 0); + } + if (debugShowMissionInfo && au.hasMission()) { + g.setColor(Color.WHITE); + g.drawString(au.getMission().toString(), 0, 25); + } } } Modified: freecol/trunk/src/net/sf/freecol/client/gui/menu/DebugMenu.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/menu/DebugMenu.java 2013-01-20 02:47:07 UTC (rev 10480) +++ freecol/trunk/src/net/sf/freecol/client/gui/menu/DebugMenu.java 2013-01-20 03:59:07 UTC (rev 10481) @@ -410,7 +410,7 @@ gui.refresh(); } }); - dami.setEnabled(gui.getMapViewer().debugShowMission); + dami.setEnabled(gui.getMapViewer().debugShowMissionInfo); this.addSeparator(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-20 02:47:13
|
Revision: 10480 http://sourceforge.net/p/freecol/code/10480 Author: mpope Date: 2013-01-20 02:47:07 +0000 (Sun, 20 Jan 2013) Log Message: ----------- Add README, redirecting to the git repo. Added Paths: ----------- freecol/trunk/README Added: freecol/trunk/README =================================================================== --- freecol/trunk/README (rev 0) +++ freecol/trunk/README 2013-01-20 02:47:07 UTC (rev 10480) @@ -0,0 +1,3 @@ +We are in transition to git for revision control. This repo is being +synchronized manually for now, but will go away soon. Please use the +git repo. Property changes on: freecol/trunk/README ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-20 01:12:24
|
Revision: 10479 http://sourceforge.net/p/freecol/code/10479 Author: mpope Date: 2013-01-20 01:12:17 +0000 (Sun, 20 Jan 2013) Log Message: ----------- Merge git.bbfa216 Add git-revision ant target now we have a git repo. Modified Paths: -------------- freecol/trunk/build.xml Modified: freecol/trunk/build.xml =================================================================== --- freecol/trunk/build.xml 2013-01-20 00:13:19 UTC (rev 10478) +++ freecol/trunk/build.xml 2013-01-20 01:12:17 UTC (rev 10479) @@ -127,28 +127,40 @@ </copy> </target> - <target name="svnproperties" unless="svn.Revision" - description="Creates the svn properties file using svn"> - <exec executable="svn" failifexecutionfails="false" - output="${basedir}/build/svn.properties"> - <arg value="info"/> - <arg value="."/> + <condition property="have-revision"> + <isset property="FreeCol.Revision" /> + </condition> + + <target name="git-raw-revision" unless="have-revision" + description="Set gitRawRevision property using git"> + <exec executable="git" failifexecutionfails="false" + outputproperty="gitRawRevision" logError="true"> + <arg value="rev-parse"/> + <arg value="HEAD"/> </exec> - <property prefix="svn" file="build/svn.properties"/> </target> - <target name="gitproperties" unless="svn.Revision" - description="Creates the svn properties file using git"> + <target name="git-revision" unless="have-revision" + depends="git-raw-revision" if="gitRawRevision" + description="Set FreeCol.Revision from gitRawRevision using git"> <exec executable="git" failifexecutionfails="false" + outputproperty="FreeCol.Revision" logError="true"> + <arg value="describe"/> + <arg value="--always"/> + </exec> + </target> + + <target name="svnproperties" unless="have-revision" + description="Creates the svn properties file using svn, setting FreeCol.Revision"> + <exec executable="svn" failifexecutionfails="false" output="${basedir}/build/svn.properties"> - <arg value="svn"/> <arg value="info"/> <arg value="."/> </exec> - <property prefix="svn" file="build/svn.properties"/> + <property prefix="FreeCol" file="build/svn.properties"/> </target> - <target name="manifest" depends="svnproperties,gitproperties" + <target name="manifest" depends="git-revision,svnproperties" description="Creates the Manifest file."> <manifest file="${basedir}/src/MANIFEST.MF"> <attribute name="Created-By" value="FreeCol Team"/> @@ -156,7 +168,7 @@ <attribute name="Class-Path" value="jars/jogg-0.0.7.jar jars/jorbis-0.0.15.jar ${miglayout.jar} ${cli.jar} ${cortado.jar}"/> <attribute name="Product-Name" value="FreeCol"/> <attribute name="Package-Title" value="FreeCol"/> - <attribute name="Package-Version" value="${svn.Revision}"/> + <attribute name="Package-Version" value="${FreeCol.Revision}"/> <attribute name="Package-Vendor" value="FreeCol Team"/> </manifest> </target> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-20 00:13:22
|
Revision: 10478 http://sourceforge.net/p/freecol/code/10478 Author: mpope Date: 2013-01-20 00:13:19 +0000 (Sun, 20 Jan 2013) Log Message: ----------- Merge git.330b25f Scout default cost decider avoids enemies, BR#2376. Modified Paths: -------------- freecol/trunk/src/net/sf/freecol/common/model/pathfinding/CostDeciders.java Modified: freecol/trunk/src/net/sf/freecol/common/model/pathfinding/CostDeciders.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/model/pathfinding/CostDeciders.java 2013-01-20 00:05:44 UTC (rev 10477) +++ freecol/trunk/src/net/sf/freecol/common/model/pathfinding/CostDeciders.java 2013-01-20 00:13:19 UTC (rev 10478) @@ -22,8 +22,8 @@ import net.sf.freecol.common.model.Europe; import net.sf.freecol.common.model.Location; import net.sf.freecol.common.model.Map; +import net.sf.freecol.common.model.Settlement; import net.sf.freecol.common.model.Tile; -import net.sf.freecol.common.model.Settlement; import net.sf.freecol.common.model.Unit; @@ -176,9 +176,10 @@ * @return A suitable <code>CostDecider</code>. */ public static CostDecider defaultCostDeciderFor(final Unit unit) { - return (unit == null || !unit.isOffensiveUnit()) - ? avoidSettlementsAndBlockingUnits() - : avoidSettlements(); + return (unit != null && unit.isOffensiveUnit() + && unit.getRole() != Unit.Role.SCOUT) + ? avoidSettlements() + : avoidSettlementsAndBlockingUnits(); } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mp...@us...> - 2013-01-20 00:05:49
|
Revision: 10477 http://sourceforge.net/p/freecol/code/10477 Author: mpope Date: 2013-01-20 00:05:44 +0000 (Sun, 20 Jan 2013) Log Message: ----------- Merge git.9d34857 Remove Java 1.5 legacy code. Modified Paths: -------------- freecol/trunk/build.xml freecol/trunk/src/net/sf/freecol/client/gui/panel/StatisticsPanel.java freecol/trunk/src/net/sf/freecol/common/resources/FontResource.java Removed Paths: ------------- freecol/trunk/jars/jsr173_1.0_api.jar freecol/trunk/jars/wstx-lgpl-4.0pr1.jar Modified: freecol/trunk/build.xml =================================================================== --- freecol/trunk/build.xml 2013-01-18 12:20:24 UTC (rev 10476) +++ freecol/trunk/build.xml 2013-01-20 00:05:44 UTC (rev 10477) @@ -27,19 +27,9 @@ <property name="miglayout.jar" value="jars/miglayout-4.0-swing.jar"/> <property name="cli.jar" value="jars/commons-cli-1.1.jar"/> <property name="cortado.jar" value="jars/cortado-0.6.0.jar"/> -<!-- - <property name="stax.jar" value="jars/stax2-api-3.0.3.jar"/> - <property name="woodstox.jar" value="jars/woodstox-core-lgpl-4.0.9.jar"/> ---> - <property name="stax.jar" value="jars/jsr173_1.0_api.jar"/> - <property name="woodstox.jar" value="jars/wstx-lgpl-4.0pr1.jar"/> <path id="libraries.classpath"> - <!-- StAX xml parser --> - <pathelement location="${basedir}/${stax.jar}" /> - <!-- Woodstox XML processor --> - <pathelement location="${basedir}/${woodstox.jar}"/> <!-- MigLayout manager --> <pathelement location="${basedir}/${miglayout.jar}"/> <!-- Command line processor --> @@ -157,13 +147,13 @@ </exec> <property prefix="svn" file="build/svn.properties"/> </target> - + <target name="manifest" depends="svnproperties,gitproperties" description="Creates the Manifest file."> <manifest file="${basedir}/src/MANIFEST.MF"> <attribute name="Created-By" value="FreeCol Team"/> <attribute name="Main-Class" value="net.sf.freecol.FreeCol"/> - <attribute name="Class-Path" value="${stax.jar} ${woodstox.jar} jars/jogg-0.0.7.jar jars/jorbis-0.0.15.jar ${miglayout.jar} ${cli.jar} ${cortado.jar}"/> + <attribute name="Class-Path" value="jars/jogg-0.0.7.jar jars/jorbis-0.0.15.jar ${miglayout.jar} ${cli.jar} ${cortado.jar}"/> <attribute name="Product-Name" value="FreeCol"/> <attribute name="Package-Title" value="FreeCol"/> <attribute name="Package-Version" value="${svn.Revision}"/> Deleted: freecol/trunk/jars/jsr173_1.0_api.jar =================================================================== (Binary files differ) Deleted: freecol/trunk/jars/wstx-lgpl-4.0pr1.jar =================================================================== (Binary files differ) Modified: freecol/trunk/src/net/sf/freecol/client/gui/panel/StatisticsPanel.java =================================================================== --- freecol/trunk/src/net/sf/freecol/client/gui/panel/StatisticsPanel.java 2013-01-18 12:20:24 UTC (rev 10476) +++ freecol/trunk/src/net/sf/freecol/client/gui/panel/StatisticsPanel.java 2013-01-20 00:05:44 UTC (rev 10477) @@ -58,7 +58,7 @@ private static final int NAME_COLUMN = 0, VALUE_COLUMN = 1; private final String[] columnNames = { "Name", "Value" }; - + private Object data[][] = null; /** @@ -87,7 +87,7 @@ /** * Returns the amount of columns in this statesTable. - * + * * @return The amount of columns in this statesTable. */ public int getColumnCount() { @@ -96,7 +96,7 @@ /** * Returns the name of the specified column. - * + * * @return The name of the specified column. */ public String getColumnName(int column) { @@ -105,7 +105,7 @@ /** * Returns the amount of rows in this statesTable. - * + * * @return The amount of rows in this statesTable. */ public int getRowCount() { @@ -114,7 +114,7 @@ /** * Returns the value at the requested location. - * + * * @param row The requested row. * @param column The requested column. * @return The value at the requested location. @@ -134,7 +134,7 @@ /** * Returns 'true' if the specified cell is editable, 'false' otherwise. - * + * * @param row The specified row. * @param column The specified column. * @return 'true' if the specified cell is editable, 'false' otherwise. @@ -142,7 +142,7 @@ public boolean isCellEditable(int row, int column) { return false; } - + /** * Returns the Class of the objects in the given column. */ @@ -150,8 +150,8 @@ return String.class; } } - + /** * Creates the statistics panel. * @@ -160,7 +160,7 @@ */ public StatisticsPanel(FreeColClient freeColClient, GUI gui) { super(freeColClient, gui, new BorderLayout()); - + // Retrieve the client and server data Map<String, String> serverStatistics = getController().getServerStatistics(); @@ -171,7 +171,7 @@ JPanel header = new JPanel(); this.add(header, BorderLayout.NORTH); header.add(new JLabel("Statistics"),JPanel.CENTER_ALIGNMENT); - + // Actual stats panel JPanel statsPanel = new JPanel(new GridLayout(1,2)); JScrollPane scrollPane = new JScrollPane(statsPanel, @@ -220,7 +220,7 @@ } return panel; } - + private JPanel createStatsTable(String title, Map<String, String> data) { JPanel panel = new JPanel(); panel.setLayout(new BorderLayout()); @@ -230,7 +230,7 @@ JTable table = new JTable(model); table.setAutoCreateColumnsFromModel(true); table.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS); - //table.setAutoCreateRowSorter(true); // Java 1.6 only + table.setAutoCreateRowSorter(true); JScrollPane scrollPane = new JScrollPane(table); table.addNotify(); scrollPane.getViewport().setOpaque(false); Modified: freecol/trunk/src/net/sf/freecol/common/resources/FontResource.java =================================================================== --- freecol/trunk/src/net/sf/freecol/common/resources/FontResource.java 2013-01-18 12:20:24 UTC (rev 10476) +++ freecol/trunk/src/net/sf/freecol/common/resources/FontResource.java 2013-01-20 00:05:44 UTC (rev 10477) @@ -64,21 +64,10 @@ font = Font.decode(name.substring(SCHEME.length())); } - // @compat java 1.5 - // registerFont was only introduced in Java 1.6 if (font != null) { - try { - GraphicsEnvironment environment = - GraphicsEnvironment.getLocalGraphicsEnvironment(); - Method registerFont = environment - .getClass().getMethod("registerFont", Font.class); - registerFont.invoke(environment, font); - } catch(Exception e) { - logger.warning("Failed to register font " + font.getName() - + ": " + e.toString()); - } + GraphicsEnvironment.getLocalGraphicsEnvironment() + .registerFont(font); } - // end @compat logger.info("Loaded font: " + ((font==null) ? "(null)" : font.getFontName()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |