Translations refactoring (#2096)
* Rename "translationsByLanguage" folder * Minor refactoring * Generate Nations strings * Use the nations strings while creating the translation files * Clean up of Nations files * Transfer existing translations * Get rid of the nation's translated name * Transfer just few nations' translations for languages without Nations_Language.json * Clean up of not used greetings * Correct marking of not translated strings
This commit is contained in:
parent
c0414db381
commit
15098d877c
43 changed files with 39837 additions and 11865 deletions
|
@ -16,16 +16,8 @@
|
|||
"introduction": "Are you real or a phantom?",
|
||||
|
||||
"neutralHello": "Greetings.",
|
||||
"neutralLetsHearIt": ["I'm listening.","What do you want?"],
|
||||
"neutralNo": ["No!","Certainly not.","Unacceptable!"],
|
||||
"neutralYes": ["Completed!","Yes!","Agreed!"],
|
||||
|
||||
"hateHello": "What do YOU want?!",
|
||||
"hateLetsHearIt": ["I'm certainly listening.","I'm listening!"],
|
||||
"hateNo": ["No!","Certainly not!","Unacceptable!"],
|
||||
"hateYes": ["Yes!"],
|
||||
|
||||
"afterPeace": "Foolish, foolish – letting me live.",
|
||||
"tradeRequest": "It appears that you do have a reason for existing – to make this deal with me.",
|
||||
|
||||
"outerColor": [27,53,63],
|
||||
|
@ -52,16 +44,8 @@
|
|||
"introduction": "Hello stranger! I am Alexandros, son of kings and grandson of the gods!",
|
||||
|
||||
"neutralHello": "Greetings!",
|
||||
"neutralLetsHearIt": ["I'm listening.","Go on.","Yes?","Come."],
|
||||
"neutralNo": ["We decline.","Certainly not.","It is necessary not to accept."],
|
||||
"neutralYes": ["Certainly.","Very much.","The very best!"],
|
||||
|
||||
"hateHello": "What?",
|
||||
"hateLetsHearIt": ["You say.","And?","Come on."],
|
||||
"hateNo": ["This is not pleasant!","You're not being earnest!","Pardon me?"],
|
||||
"hateYes": ["Oh, very well.","I suppose I must.","Well done."],
|
||||
|
||||
"afterPeace": "I must congratulate you on your remarkable victory.",
|
||||
"tradeRequest": "My friend, does this seem reasonable to you?",
|
||||
|
||||
"outerColor": [181, 232, 232],
|
||||
|
@ -86,14 +70,7 @@
|
|||
"defeated": "You have proven to be a cunning and competent adversary. I congratulate you on your victory.",
|
||||
"introduction": "Greetings, I am Empress Wu Zetian. China desires peace and development. You leave us alone, we'll leave you alone.",
|
||||
"neutralHello": "How are you today?",
|
||||
"neutralLetsHearIt": ["Continue.","What?","Keep going."],
|
||||
"neutralNo": ["Nope.","Of course not.","Definitely not."],
|
||||
"neutralYes": ["Of course.","I agree.","Excellent!"],
|
||||
"hateHello": "Oh. It's you?",
|
||||
"hateLetsHearIt": ["And what else?","Keep talking."],
|
||||
"hateNo": ["I cannot accept that.","Sorry, say that again.","Get out of my face!"],
|
||||
"hateYes": ["I suppose I must accept.","Ah. Very good."],
|
||||
"afterPeace": "The Blessings of Heaven be upon you.",
|
||||
"tradeRequest": "My friend, do you think you can accept this request?",
|
||||
"outerColor": [9, 112, 84],
|
||||
"innerColor": [255,255,255],
|
||||
|
@ -119,16 +96,8 @@
|
|||
"introduction": "Greetings, I am Ramesses the god. I am the living embodiment of Egypt, mother and father of all civilizations.",
|
||||
|
||||
"neutralHello": "Good day.",
|
||||
"neutralLetsHearIt": ["Go on.","Speak.","I am all ears."],
|
||||
"neutralNo": ["No.","Definitely not."],
|
||||
"neutralYes": ["Okay.","Very well."],
|
||||
|
||||
"hateHello": "Oh, it's you.",
|
||||
"hateLetsHearIt": ["Then?","Finish your speech."],
|
||||
"hateNo": ["This is unacceptable.","You cannot be serious about your request."],
|
||||
"hateYes": ["Oh, very well.","I think I should agree."],
|
||||
|
||||
"afterPeace": "You know I could have destroyed you, but the feeling of generosity perfumes me today.",
|
||||
|
||||
"tradeRequest": "Generous Egypt makes you this offer.",
|
||||
|
||||
"outerColor": [ 231, 213, 0],
|
||||
|
@ -154,14 +123,7 @@
|
|||
"defeated": "You have triumphed over us. The day is yours.",
|
||||
"introduction": "We are pleased to meet you.",
|
||||
"neutralHello": "Hello, again.",
|
||||
"neutralLetsHearIt": ["Go on.","Go ahead."],
|
||||
"neutralNo": ["I beg your pardon?","That's unacceptable!"],
|
||||
"neutralYes": ["Certainly!","Very well!"],
|
||||
"hateHello": "Oh, it's you!",
|
||||
"hateLetsHearIt": ["I'm listening.","You were saying?"],
|
||||
"hateNo": ["You cannot be serious.","Of course not!"],
|
||||
"hateYes": ["Oh, very well!","I suppose I must!"],
|
||||
"afterPeace": "Well then, that's settled.",
|
||||
"tradeRequest": "Would you be interested in a trade agreement with England?",
|
||||
"outerColor": [ 114, 0, 0],
|
||||
"innerColor": [255,255,255],
|
||||
|
@ -184,14 +146,7 @@
|
|||
"defeated": "I congratulate you for your victory.",
|
||||
"introduction": "Welcome. I'm Napoleon, of France; the smartest military man in world history.",
|
||||
"neutralHello": "Hello.",
|
||||
"neutralLetsHearIt": ["Continue.","I'm listening.","Go on.","You were saying?"],
|
||||
"neutralNo": ["We refuse.","Of course not.","No."],
|
||||
"neutralYes": ["Excellent.","Very well.","I heard."],
|
||||
"hateHello": "It's you.",
|
||||
"hateLetsHearIt": ["Speak."],
|
||||
"hateNo": ["You cannot be serious.","Certainly not.","That's unacceptable."],
|
||||
"hateYes": ["All right.","I guess I've no choice.","Certainly.","It's all right."],
|
||||
"afterPeace": "It seems I underestimated you. I won't make the same mistake again, I promise you.",
|
||||
"tradeRequest": "France offers you this exceptional proposition.",
|
||||
"outerColor": [ 38, 98, 255],
|
||||
"innerColor": [239,236,148],
|
||||
|
@ -215,14 +170,7 @@
|
|||
"defeated": "We were defeated, so this makes me your prisoner. I suppose there are worse fates.",
|
||||
"introduction": "I greet you, stranger! If you are as intelligent and tactful as you are attractive, we'll get along just fine.",
|
||||
"neutralHello": "Hello!",
|
||||
"neutralLetsHearIt": ["Go on.","Speak."],
|
||||
"neutralNo": ["We decline.","Ha! Of course not!","Certainly not."],
|
||||
"neutralYes": ["Of course.","I agree.","Excellent!"],
|
||||
"hateHello": "What do you need?!",
|
||||
"hateLetsHearIt": ["And?","Forward.","Go on."],
|
||||
"hateNo": ["Are you joking?!","I beg your pardon?!","This is unacceptable."],
|
||||
"hateYes": ["I think...I shall agree.","Oh... Very good.","Deal."],
|
||||
"afterPeace": "Now it's the time to enjoy the fruits of peace.",
|
||||
"tradeRequest": "How would you like it if I propose this kind of exchange?",
|
||||
"outerColor": [ 236, 178, 0],
|
||||
"innerColor": [0,0,0],
|
||||
|
@ -245,14 +193,7 @@
|
|||
"defeated": "The gods have deprived Rome of their favour. We have been defeated.",
|
||||
"introduction": "I greet you. I am Augustus, Imperator and Pontifex Maximus of Rome. If you are a friend of Rome, you are welcome.",
|
||||
"neutralHello": "Hail.",
|
||||
"neutralLetsHearIt": ["Begin.","Continue."],
|
||||
"neutralNo": ["No.","Certainly not!"],
|
||||
"neutralYes": ["Good.","I agree."],
|
||||
"hateHello": "What do you want?",
|
||||
"hateLetsHearIt": ["And?","Continue."],
|
||||
"hateNo": ["That is unpleasant.","You can't be serious!"],
|
||||
"hateYes": ["Good.","Oh. Good."],
|
||||
"afterPeace": "Your soldiers fought well. I congratulate you on your victory.",
|
||||
"tradeRequest": "I offer this, for your consideration.",
|
||||
"outerColor": [ 53,0,87],
|
||||
"innerColor": [238,201,9],
|
||||
|
@ -276,14 +217,7 @@
|
|||
"defeated": "You have won, congratulations. My palace is now in your possession, and I beg that you care well for the peacock.",
|
||||
"introduction": "Welcome foreigner, I am Harun Al-Rashid, Caliph of the Arabs. Come and tell me about your empire.",
|
||||
"neutralHello": "Peace be upon you.",
|
||||
"neutralLetsHearIt": ["What is this?","What were you saying?"],
|
||||
"neutralNo": ["Of course not.","Certainly not."],
|
||||
"neutralYes": ["Okay.","Excellent."],
|
||||
"hateHello": "Oh, it's you.",
|
||||
"hateLetsHearIt": ["What's this?!","Finish your speech."],
|
||||
"hateNo": ["This matter is unacceptable.","You can't be serious about this request."],
|
||||
"hateYes": ["Very well.","If I must."],
|
||||
"afterPeace": "We thank you for your generous terms, we will not forget the favor you show us.",
|
||||
"tradeRequest": "Come forth, let's do business.",
|
||||
"outerColor": [ 41,83,42],
|
||||
"innerColor": [146,221,9],
|
||||
|
@ -305,14 +239,7 @@
|
|||
"defeated": "The day...is yours. I hope you will be merciful in your triumph.",
|
||||
"introduction": "The people of the United States of America welcome you.",
|
||||
"neutralHello": "Good day.",
|
||||
"neutralLetsHearIt": ["Proceed!","Go ahead.","I'm listening."],
|
||||
"neutralNo": ["Of course not!","No."],
|
||||
"neutralYes": ["Very well.","Alright.","Certainly!"],
|
||||
"hateHello": "Well?",
|
||||
"hateLetsHearIt": ["Go on.","You were saying?"],
|
||||
"hateNo": ["Certainly not.","We decline!","You cannot be serious."],
|
||||
"hateYes": ["Oh, very well.","I suppose I must.","Agreed.","Alright."],
|
||||
"afterPeace": "We welcome peace with your great nation. I pray that no future misunderstanding will come between our two peoples.",
|
||||
"tradeRequest": "Is the following trade of interest to you?",
|
||||
"outerColor": [ 28,51,119],
|
||||
"innerColor": [255,255,255],
|
||||
|
@ -338,14 +265,7 @@
|
|||
"defeated": "You were much wiser than I thought.",
|
||||
"introduction": "We hope for a fair and just relationship with you, who are renowned for military bravery.",
|
||||
"neutralHello": "Hello.",
|
||||
"neutralLetsHearIt": ["Go on.","Proceed.","I'm listening."],
|
||||
"neutralNo": ["Sorry.","No.","Maybe another time."],
|
||||
"neutralYes": ["Very well.","Agreed.","Hai. (Yes)"],
|
||||
"hateHello": "Oh, it's you...",
|
||||
"hateLetsHearIt": ["Let me hear it.","Go on","Proceed"],
|
||||
"hateNo": ["Ie. (No)","Excuse me?","Maybe another time"],
|
||||
"hateYes": ["I agree.","Oh... very well.","There is probably no other way."],
|
||||
"afterPeace": "It was an honor to fight you.",
|
||||
"tradeRequest": "I would be grateful if you agreed on the following proposal.",
|
||||
"outerColor": [215,225,225],
|
||||
"innerColor": [185,0,0],
|
||||
|
@ -369,14 +289,7 @@
|
|||
"defeated": "You can chain me, you can torture me, you can even destroy this body, but you will never imprison my mind. ",
|
||||
"introduction": "Hello, I am Mohandas Gandhi. My people call me Bapu, but please, call me friend.",
|
||||
"neutralHello": "I wish you peace.",
|
||||
"neutralLetsHearIt": ["Go ahead.","Yes?","I'm listening."],
|
||||
"neutralNo": ["Absolutely not.","No.","This is unacceptable"],
|
||||
"neutralYes": ["Okay.","We agree.","Fine."],
|
||||
"hateHello": "What do you want?",
|
||||
"hateLetsHearIt": ["Continue.","And?","Go on."],
|
||||
"hateNo": ["This is not acceptable.","You are probably not serious.","This is impossible."],
|
||||
"hateYes": ["Oh. Very good.","I think that I should accept.","Very well..."],
|
||||
"afterPeace": "I am happy that it is once again peaceful at our place, even if we had to pay a price for it.",
|
||||
"tradeRequest": "My friend, are you interested in this arrangement?",
|
||||
"outerColor": [16,126,5],
|
||||
"innerColor": [255,153,51],
|
||||
|
@ -398,14 +311,7 @@
|
|||
"defeated": "Germany has been destroyed. I weep for the future generations.",
|
||||
"introduction": "Guten tag. In the name of the great German people, I bid you welcome.",
|
||||
"neutralHello": "What now?",
|
||||
"neutralLetsHearIt": ["What do ye say?","Yes?","Ja?"],
|
||||
"neutralNo": ["We do not accept.","Nein.","Not a chance."],
|
||||
"neutralYes": ["Agreed","Very well, then","Alright."],
|
||||
"hateHello": "So, out with it!",
|
||||
"hateLetsHearIt": ["And?!","Come on!","Well, tell me!"],
|
||||
"hateNo": ["That is unacceptable!","Ye can't be serious!","Nein!"],
|
||||
"hateYes": ["Well, okay.","Gut.","It seems I can't refuse."],
|
||||
"afterPeace": "What do ye think about calling it a draw?",
|
||||
"tradeRequest": "It would be in your best interest, to carefully consider this proposal.",
|
||||
"outerColor": [150,150,150],
|
||||
"innerColor": [60,60,60],
|
||||
|
@ -433,14 +339,7 @@
|
|||
"defeated": "Ruin! Ruin! Istanbul becomes Iram of the Pillars, remembered only by the melancholy poets.",
|
||||
"introduction": "From the magnificence of Topkapi, the Ottoman nation greets you, stranger! I'm Suleiman, Kayser-I Rum, and I bestow upon you my welcome!",
|
||||
"neutralHello": "Greetings!",
|
||||
"neutralLetsHearIt": ["I'm listening.","Go on."],
|
||||
"neutralNo": ["No.","Of course not!","We decline."],
|
||||
"neutralYes": ["Very good.","Fine.","We accept!"],
|
||||
"hateHello": "What do you want?",
|
||||
"hateLetsHearIt": ["So you say!","Go on!"],
|
||||
"hateNo": ["Excuse me?","This is unacceptable!","You can't be serious!"],
|
||||
"hateYes": ["Ah, very good!","Very good.","I assume we must come to an agreement."],
|
||||
"afterPeace": "Congratulations on your victory! I hope that peace between us will last forever!",
|
||||
"tradeRequest": "Let us do business! Would you be interested?",
|
||||
"outerColor": [245,248,185],
|
||||
"innerColor": [18,84,30],
|
||||
|
@ -465,14 +364,7 @@
|
|||
"introduction": "Welcome to the palace of Choson, stranger. I am the learned King Sejong, who looks after his great people.",
|
||||
|
||||
"neutralHello": "Hello.",
|
||||
"neutralLetsHearIt": ["I will hear it.","Go on","Continue."],
|
||||
"neutralNo": ["I cannot do that.","Apologies, but I will not accept it."],
|
||||
"neutralYes": ["That is good.","I understand.","Of course!"],
|
||||
"hateHello": "Oh, it's you",
|
||||
"hateLetsHearIt": ["What do you wish to say?","So?","Continue your speech."],
|
||||
"hateNo": ["Heaven forbid","That is crazy talk!","I cannot do that."],
|
||||
"hateYes": ["Hm... very well, fine.","I suppose I should agree...","Very well..."],
|
||||
"afterPeace": "It seems you implemented some interesting strategies... Very well, perhaps we should call it a tie.",
|
||||
"tradeRequest": "We have many things to discuss and have much to benefit from each other.",
|
||||
"outerColor": [20,25,173],
|
||||
"innerColor": [187,33,51],
|
||||
|
@ -496,14 +388,7 @@
|
|||
"defeated": "You have defeated us... but our spirits will never be vanquished! We shall return!",
|
||||
"introduction": "Greetings, stranger. I am Hiawatha, speaker for the Iroquois. We seek peace with all, but we do not shrink from war.",
|
||||
"neutralHello": "Good day.",
|
||||
"neutralLetsHearIt": ["Yes?","I'm listening"],
|
||||
"neutralNo": ["No.","Certainly not."],
|
||||
"neutralYes": ["Very well.","Alright."],
|
||||
"hateHello": "Oh, it's you.",
|
||||
"hateLetsHearIt": ["I'm listening.","Speak."],
|
||||
"hateNo": ["That's unacceptable","You cannot be serious!"],
|
||||
"hateYes": ["I suppose I must.","Very well."],
|
||||
"afterPeace": "I thank you for your mercy. I pray that we can now be friends.",
|
||||
"tradeRequest": "Does this trade work for you, my friend?",
|
||||
"outerColor": [54,72,72],
|
||||
"innerColor": [246,205,137],
|
||||
|
@ -526,14 +411,7 @@
|
|||
"defeated": "You mongrel! Cursed be you! The world will long lament your heinous crime!",
|
||||
"introduction": "Peace be on you! I am Darius, the great and outstanding king of kings of great Persia... but I suppose you knew that.",
|
||||
"neutralHello": "Good day to you!",
|
||||
"neutralLetsHearIt": ["Go on.","You said?"],
|
||||
"neutralNo": ["You are not serious!","Not good enough."],
|
||||
"neutralYes": ["Good!","Certainly.","Agreed!"],
|
||||
"hateHello": "Ahh... you...",
|
||||
"hateLetsHearIt": ["I'm listening.","Go on!"],
|
||||
"hateNo": ["We say... no!","Of course not!"],
|
||||
"hateYes": ["Alright!","Agreed."],
|
||||
"afterPeace": "It appears we should call it a tie...",
|
||||
"tradeRequest": "In my endless magnanimity, I am making you this offer. You agree, of course?",
|
||||
"outerColor": [153,5,3],
|
||||
"innerColor": [244,232,54],
|
||||
|
@ -560,12 +438,7 @@
|
|||
"defeated": "The hard-shelled crab yields, and the lion lies down to sleep. Kanaloa comes for me now.",
|
||||
"introduction": "Aloha! Greetings and blessings upon you, friend. I am Kamehameha, Great King of this strand of islands.",
|
||||
"neutralHello": "Welcome, friend!",
|
||||
"neutralLetsHearIt": ["Proceed.","And?","What is it?"],
|
||||
"hateNo": ["Certainly not.","We will have to decline."],
|
||||
"hateYes": ["It is agreed, then.","Excellent!"],
|
||||
"hateHello": "Oh, it's you.",
|
||||
"hateLetsHearIt": ["Proceed.","I'm listening","What is it?"],
|
||||
"afterPeace": "Perhaps the stars were mistakenly placed... I will consult my Kahuna.",
|
||||
"tradeRequest": "Come, let our people feast together!",
|
||||
"outerColor": [225,105,0],
|
||||
"innerColor": [255,255,78],
|
||||
|
@ -589,14 +462,7 @@
|
|||
"defeated": "Althought I lost, my honor shall endure. I wish you good luck.",
|
||||
"introduction": "I, Pho Kun Ramkhamhaeng, King of Siam, consider it a great honor that you have walked to visit my country of Siam.",
|
||||
"neutralHello": "Welcome.",
|
||||
"neutralLetsHearIt": ["Let us hear it.","You say?","I'm listening"],
|
||||
"neutralNo": ["No.","Certainly no.","No way."],
|
||||
"neutralYes": ["In that case...","Of course.","Agreed."],
|
||||
"hateHello": "Greetings.",
|
||||
"hateLetsHearIt": ["You were saying?.","Please proceed","So?"],
|
||||
"hateNo": ["That is unacceptable.","You probably didn't mean that.","What did you say?"],
|
||||
"hateYes": ["I think I must do as such.","Very well."],
|
||||
"afterPeace": "You have won, but I shall return to repay this debt.",
|
||||
"tradeRequest": "Greetings. I believe this is a fair proposal for both parties. What do you think?",
|
||||
"outerColor": [228,208,43],
|
||||
"innerColor": [193,21,17],
|
||||
|
@ -620,14 +486,7 @@
|
|||
"defeated": "If my defeat is, without any doubt, the will of God, then I will accept it.",
|
||||
"introduction": "God blesses those who deserve it. I am Isabel of Spain.",
|
||||
"neutralHello": "Greetings.",
|
||||
"neutralLetsHearIt": ["Proceed","I'm listening.","Yes?"],
|
||||
"neutralNo": ["We refuse.","Not before God.","No way."],
|
||||
"neutralYes": ["Very well.","Excellent.","With the blessing of God, I accept."],
|
||||
"hateHello": "Well?",
|
||||
"hateLetsHearIt": ["Onward","What were you saying?","Continue."],
|
||||
"hateNo": ["That is unacceptable.","Of course not.","Are you crazy?"],
|
||||
"hateYes": ["I agree.","Fine.","I think that I am obliged to accept."],
|
||||
"afterPeace": "May God bless you for your clemency to the defeated enemy.",
|
||||
"tradeRequest": "I hope this deal will receive your blessing.",
|
||||
"outerColor": [102,0,0],
|
||||
"innerColor": [255,102,102],
|
||||
|
@ -651,14 +510,7 @@
|
|||
"defeated": "We have been consumed by the fires of hatred and rage. Enjoy your victory in this world - you shall pay a heavy price in the next!",
|
||||
"introduction": "I am Askia of the Songhai. We are a fair people - but those who cross us will find only destruction. You would do well to avoid repeating the mistakes others have made in the past.",
|
||||
"neutralHello": "Greetings.",
|
||||
"neutralLetsHearIt": ["Yes?","Proceed."],
|
||||
"neutralNo": ["No","Of course not."],
|
||||
"neutralYes": ["Very well.","Yes.","Fine."],
|
||||
"hateHello": "Oh, it's you.",
|
||||
"hateLetsHearIt": ["And?","Continue."],
|
||||
"hateNo": ["You cannot be serious!","That's unacceptable!","We decline."],
|
||||
"hateYes": ["Oh, very well.","Alright."],
|
||||
"afterPeace": "We thank you for bringing an end to this pointless war.",
|
||||
"tradeRequest": "Can I interest you in this deal?",
|
||||
"outerColor": [214,145,19],
|
||||
"innerColor": [90,0,10],
|
||||
|
@ -681,14 +533,7 @@
|
|||
"defeated": "You have hobbled the Mongolian clans. My respect for you nearly matches the loathing. I am waiting for my execution.",
|
||||
"introduction": "I am Temuujin, conqueror of cities and countries. Before me lie future Mongolian lands. Behind me is the only cavalry that matters.",
|
||||
"neutralHello": "Hello.",
|
||||
"neutralLetsHearIt": ["I'm listening.","What?"],
|
||||
"neutralNo": ["No.","Of course not!"],
|
||||
"neutralYes": ["Good.","That works.","Of course!"],
|
||||
"hateHello": "So what now?",
|
||||
"hateLetsHearIt": ["And then?","Continue..."],
|
||||
"hateNo": ["Stop playing around.","This is not to be tolerated!"],
|
||||
"hateYes": ["Very well...","Fine!"],
|
||||
"afterPeace": "It seems I have underestimate you. Very well... I won't take you head for now.",
|
||||
"tradeRequest": "I am not always this generous, but we hope you take this rare opportunity we give you.",
|
||||
"outerColor": [81,0,9],
|
||||
"innerColor": [255,120,0],
|
||||
|
@ -714,14 +559,7 @@
|
|||
"defeated": " Monster! Who are you to destroy my greatness?",
|
||||
"introduction": "What do I see before me? Another beating heart for my sacrificial fire.",
|
||||
"neutralHello": "Welcome, friend.",
|
||||
"neutralLetsHearIt": ["Go ahead.","Proceed.","I'm listening."],
|
||||
"neutralNo": ["Certainly not!","No!","Unacceptable!"],
|
||||
"neutralYes": ["Certainly.","Yes, it is good.","Agreed!"],
|
||||
"hateHello": "What do you want?",
|
||||
"hateLetsHearIt": ["What?","What do you say?","Go on."],
|
||||
"hateNo": ["Are you crazy?","Certainly not!","I would rather pierce my bowels with hot skewers!"],
|
||||
"hateYes": ["Oh, very well.","I suppose I must.","Yes, it is good!"],
|
||||
"afterPeace": "Curses! I will sacrifice ten thousand citizens to expiate this humiliation!",
|
||||
"tradeRequest": " Accept this agreement or suffer the consequences.",
|
||||
"outerColor": [255,51,51],
|
||||
"innerColor": [153,255,255],
|
||||
|
@ -746,14 +584,7 @@
|
|||
"defeated": "How did you darken the sun? I ruled with diligence and mercy—see that you do so as well.",
|
||||
"introduction": "How are you? You stand before Pachacuti Inca Yupanqui.",
|
||||
"neutralHello": "How are you doing?",
|
||||
"neutralLetsHearIt": ["Go on.","What do you say?","You may begin."],
|
||||
"neutralNo": ["We absolutely refuse.","No!","I refuse."],
|
||||
"neutralYes": ["Very good.","Of course, yes","That is very good."],
|
||||
"hateHello": "What do you want now?",
|
||||
"hateLetsHearIt": ["Speak!","What do you say?","Go on."],
|
||||
"hateNo": ["That is not possible!","We are not agreeing to that!","I beg your pardon?"],
|
||||
"hateYes": ["That is fine.","That is good enough.","Very well..."],
|
||||
"afterPeace": "Viracocha has frowned upon our war, and has agreed to our peace agreements.",
|
||||
"tradeRequest": "The Incan people offer this fair trade.",
|
||||
"outerColor": [255,255,51],
|
||||
"innerColor": [0,204,102],
|
||||
|
@ -778,14 +609,7 @@
|
|||
"defeated": "Loki must have stood by you, for a common man alone could not have defeated me... Oh well! I will join the einherjar in Valhalla and feast, while you toil away here.",
|
||||
"introduction": "Harad Bluetooth bids you welcome to his lands, a Viking unlike any the seas and lands have ever known! Hah, are you afraid?",
|
||||
"neutralHello": "Hail to you.",
|
||||
"neutralLetsHearIt": ["Let us hear it.","Go ahead.","I'm listening"],
|
||||
"neutralNo": ["No.","Not today, I'm afraid.","I must decline."],
|
||||
"neutralYes": ["Very well.","Of course, my friend!","That's a deal!"],
|
||||
"hateHello": "Oh, it's you.",
|
||||
"hateLetsHearIt": ["What is it?.","And?","Go on"],
|
||||
"hateNo": ["Don't be silly!","That is unacceptable."],
|
||||
"hateYes": ["I guess I have to.","Oh, very well."],
|
||||
"afterPeace": "By the hammer of Thor, you have proven yourself a worthy opponent today. I congratulate you!",
|
||||
"tradeRequest": "This is a fine deal! Even a drunk beggar would agree!",
|
||||
"outerColor": [51,25,0],
|
||||
"innerColor": [255,255,102],
|
||||
|
@ -812,14 +636,7 @@
|
|||
"introduction": "Stranger, welcome to the Snow King's kingdom! I am Gustavus Adolphus,member of the esteemed House of Vasa",
|
||||
|
||||
"neutralHello": "Oh","welcome!",
|
||||
"neutralLetsHearIt": ["Let us hear.","Go on.","I am listening."],
|
||||
"neutralNo": ["I must decline.","No, absolutely not.","We must decline."],
|
||||
"neutralYes": ["Very good!","Gladly!","Hah, excellent!"],
|
||||
"hateHello": "Oh, it is you.",
|
||||
"hateLetsHearIt": ["Go on."],
|
||||
"hateNo": ["That is unacceptable.","You can't be serious.","What did you say!?"],
|
||||
"hateYes": [" Aargh, very well!"," Aargh, very well!","Bah, I guess I have no choice."],
|
||||
"afterPeace": "Enjoy your victory while you can. It will not be long-lasting.",
|
||||
"tradeRequest": "My friend, it is my belief that this settlement can benefit both our peoples.",
|
||||
"innerColor": [194,97,255]
|
||||
"unique": "LION_OF_THE_NORTH",
|
||||
|
@ -839,7 +656,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "You fiend! History shall remember this!",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [185,132,66],
|
||||
|
@ -852,7 +668,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "And so the flower of Florence falls to barbaric hands...",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [62,197,252],
|
||||
|
@ -866,7 +681,6 @@
|
|||
|
||||
"declaringWar": "I have to do this, for the sake of progress if nothing else. You must be opposed!",
|
||||
"attacked": "You can see how fruitless this will be for you... right?",
|
||||
"afterPeace": "This is why I prefer diplomacy to war.",
|
||||
"defeated": "May God grant me these last wishes - peace and prosperity for Brazil.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [211, 220, 103],
|
||||
|
@ -880,7 +694,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "They will write songs of this.... pray that they shall be in your favor.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [194,97,255],
|
||||
|
@ -893,7 +706,6 @@
|
|||
|
||||
"declaringWar": "War lingers in our hearts. Why carry on with a false peace?",
|
||||
"attacked": "You gormless radger! You'll dine on your own teeth before you set foot in Ireland!",
|
||||
"afterPeace": "Wise to keep peace with your neighbors. Blood feuds are paid at great expense.",
|
||||
"defeated": "A lonely wind blows through the highlands today. A dirge for Ireland. Can you hear it?",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [211,180,113],
|
||||
|
@ -907,7 +719,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "We never fully trusted you from the start.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,97,255],
|
||||
|
@ -921,7 +732,6 @@
|
|||
|
||||
"declaringWar": "I will enjoy hearing your last breath as you witness the destruction of your realm!",
|
||||
"attacked": "Why do we fight' Because Inanna demands it. Now, witness the power of the Sumerians!",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "What treachery has struck us? No, what evil?",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,69,0],
|
||||
|
@ -935,7 +745,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "How barbaric. Those who live by the sword shall perish by the sword.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [45,255,86],
|
||||
|
@ -949,7 +758,6 @@
|
|||
|
||||
"declaringWar": "You have revealed your purposes a bit too early, my friend...",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "I am glad that my plan has succeded.",
|
||||
"defeated": "A wrong calculation, on my part.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [153,204,255],
|
||||
|
@ -962,7 +770,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "I guess you weren't here for the sprouts after all...",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [153,255,51],
|
||||
|
@ -975,7 +782,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "Unacceptable!",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [153,0,76],
|
||||
|
@ -988,7 +794,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "What a fine battle! Sidon is willing to serve you!",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [250,128,114],
|
||||
|
@ -1001,7 +806,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "How could we fall to the likes of you?!",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [102,0,51],
|
||||
|
@ -1014,7 +818,6 @@
|
|||
|
||||
"declaringWar": "You shall stain this land no longer with your vileness! To arms, my countrymen - we ride to war!",
|
||||
"attacked": "Traitorous man! The Celtic peoples will not stand for such wanton abuse and slander - I shall have your head!",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "Vile ruler, kow that you 'won' this war in name only!",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [0,102,102],
|
||||
|
@ -1027,7 +830,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "Perhaps, in another world, we could have been friends...",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,255,0],
|
||||
|
@ -1040,7 +842,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "May the Heavens forgive you for inflicting this humiliation to our people.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,153,255],
|
||||
|
@ -1053,7 +854,6 @@
|
|||
|
||||
"declaringWar": "After thorough deliberation, Australia finds itself at a crossroads. Prepare yourself, for war is upon us.",
|
||||
"attacked": "We will mobilize every means of resistance to stop this transgression against our nation!",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "The principles for which we have fought will survive longer than any nation you could ever build.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,204,204],
|
||||
|
@ -1066,7 +866,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "I have failed. May you, at least, know compassion towards our people.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,153,153],
|
||||
|
@ -1079,7 +878,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "We... defeated? No... we had so much work to do!",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [51,25,0],
|
||||
|
@ -1092,7 +890,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "So this is how it feels to die...",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [0,0,255],
|
||||
|
@ -1105,7 +902,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "We were too weak to protect ourselves...",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [51,102,0],
|
||||
|
@ -1118,7 +914,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "The day of judgement has come to us. But rest assured, the same will go for you!",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,178,102],
|
||||
|
@ -1131,7 +926,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "Today, the Malay people obey you, but do not think this is over...",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [0,102,102],
|
||||
|
@ -1144,7 +938,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "Ah, Gods! Why have you forsaken us?",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [96,96,96],
|
||||
|
@ -1158,7 +951,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "Perhaps now we will find peace in death...",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [204,102,0],
|
||||
|
@ -1172,7 +964,6 @@
|
|||
|
||||
"declaringWar": "In responding to the unstinting malignancy that has heretofore defined your relationship with Canada, we can have no recourse but war!",
|
||||
"attacked": "As we can reach no peaceful resolution with you, Canada must turn, with reluctance, to war.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "I regret not defending my country to the last, although it was not of use.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [0,255,128],
|
||||
|
@ -1185,7 +976,6 @@
|
|||
|
||||
"declaringWar": "Do you really think you can walk over us so easily? I will not let it happen. Not to Kongo - not to my people!",
|
||||
"attacked": "We are no strangers to war. You have strayed from the right path, and now we will correct it.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "You are nothing but a glorified barbarian. Cruel, and ruthless.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [255,128,0],
|
||||
|
@ -1198,7 +988,6 @@
|
|||
|
||||
"declaringWar": "You leave us no choice. War it must be.",
|
||||
"attacked": "Very well, this shall not be forgotten.",
|
||||
"afterPeace": "May peace forever bless our lands.",
|
||||
"defeated": "Congratulations, conquerer. This tribe serves you now.",
|
||||
"outerColor": [0, 0, 0],
|
||||
"innerColor": [153,204,255],
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -401,88 +401,6 @@ replaces = แทนที่
|
|||
Lost ability = สูญเสียความสามารถ
|
||||
National ability = ความสามารถประจำชาติ
|
||||
|
||||
# Nations
|
||||
|
||||
Babylon = บาบิโลน
|
||||
Receive free Great Scientist when you discover Writing, Earn Great Scientists 50% faster = ได้รับนักวิทยาศาสตร์ผู้ยิ่งใหญ่แบบฟรีๆ เมื่อได้วิจัยพบเริ่อง การเขียน, ได้รับนักวิทยาศาสตร์ผู้ยิ่งใหญ่เร็วขึ้น 50 %
|
||||
Nebuchadnezzar II = พระเจ้าเนบูคัดเนสซาร์ที่ 2
|
||||
|
||||
Greece = กรีซ
|
||||
Alexander = อเล็กซานเดอร์มหาราช
|
||||
City-State Influence degrades at half and recovers at twice the normal rate = คะแนนอิทธิพลของเมืองลดลงครึ่งนึง แต่จะพื้นฟูได้เร็วขึ้น 2 เท่าจากเดิม
|
||||
|
||||
China = จีน
|
||||
Wu Zetian = บูเซ็กเทียน
|
||||
Great general provides double combat bonus, and spawns 50% faster = นายพลผู้ยิ่งใหญ่จะให้โบนัสพลังต่อสู้สองเท่า และเกิดเร็วขึ้น 50%
|
||||
|
||||
Egypt = อียิปต์
|
||||
Ramesses II = ฟาโรห์แรเมซีสที่ 2
|
||||
+20% production towards Wonder construction = +20% การผลิตให้กับการก่อสร้างสิ่งมหัศจรรย์
|
||||
|
||||
England = อังกฤษ
|
||||
Elizabeth = สมเด็จพระราชินีนาถอลิซาเบท
|
||||
+2 movement for all naval units = +2 การเคลื่อนที่ให้กับยูนิตทัพเรือทั้งหมด
|
||||
|
||||
France = ฝรั่งเศษ
|
||||
Napoleon = จักรพรรดินโปเลียนที่ 1
|
||||
+2 Culture per turn from cities before discovering Steam Power = +2 วัฒนธรรมต่อเทิร์น ก่อนที่จะค้นพบเรื่อง พลังไอน้ำ
|
||||
|
||||
Russia = รัสเซีย
|
||||
Catherine = แคทเธอรีนมหาราชินี
|
||||
Strategic Resources provide +1 Production, and Horses, Iron and Uranium Resources provide double quantity = ทรัพยากรเชิงกลยุทธ์จะให้ +1 การผลิต และทรัพยากรม้า เหล็ก ยูเรเนี่ยมจะให้จำนวนสองเท่าจากเดิม
|
||||
|
||||
Rome = โรม
|
||||
Augustus Caesar = จักรพรรดิเอากุสตุส
|
||||
+25% Production towards any buildings that already exist in the Capital = +25% การผลิตให้กับสิ่งก่อสร้างที่มีอยู่ในเมืองหลวง
|
||||
|
||||
Arabia = ซาอุดิอาราเบีย
|
||||
Harun al-Rashid = ฮารัน อัล-รอชิด
|
||||
+1 Gold from each Trade Route, Oil resources provide double quantity = +1 ทองจากแต่ละเส้นทางการค้า, ทรัพยากรน้ำมันจะให้จำนวนสองเท่าจากเดิม
|
||||
|
||||
America = อเมริกา
|
||||
George Washington = จอร์จ วอชิงตัน
|
||||
All land military units have +1 sight, 50% discount when purchasing tiles = ยูนิตทัพบกทั้งหมด +1 ระยะการมองเห็น, ลดราคา 50% เมื่อซื้อช่องพื้นที่ใหม่
|
||||
|
||||
Japan = ญี่ปุ่น
|
||||
Oda Nobunaga = โอดะ โนบุนากะ
|
||||
Units fight as though they were at full strength even when damaged = ยูนิตนิตจะสู้เต็มกำลัง (พลังชีวิตมีผลต่อพลังโจมตีนะครับ) ถึงแม้ว่าจะได้รับความเสียหายมามากก็ตาม
|
||||
|
||||
Germany = เยอรมนี
|
||||
Otto von Bismarck = อ็อทโท ฟ็อน บิสมาร์ค
|
||||
67% chance to earn 25 Gold and recruit a Barbarian unit from a conquered encampment, -25% land units maintenance. = มีโอกาส 67% ที่จะได้รับ 25 ทอง และการจ้างยูนิตคนเถื่อนจากแคมป์ที่ยึดมาได้, -25% ค่าใช้จ่ายในการทำให้ยูนิตทัพบกคงอยู่
|
||||
|
||||
India = อินเดีย
|
||||
Gandhi = มหาตมา คานธี
|
||||
Unhappiness from number of Cities doubled, Unhappiness from number of Citizens halved. = ความทุกข์เพิ่มขึ้นสองเท่า จากจำนวนเมือง, ความทุกข์ลดลงครึ่งจากจำนวนประชากร
|
||||
|
||||
The Ottomans = จักรวรรดิออตโตมัน
|
||||
Suleiman I = สุลัยมานที่ 1
|
||||
Pay only one third the usual cost for naval unit maintenance. Melee naval units have a 1/3 chance to capture defeated naval units. = จ่ายแค่หนึ่งในสามในการที่จะทำให้ยูนิตทัพเรือคงอยู่ ยูนิตทัพเรือโจมตีระยะประชิตมีโอกาส หนึ่งในสามในการยึดยูนิตทัพเรื่อที่ถูกกำจัด
|
||||
|
||||
Korea = เกาหลี
|
||||
Sejong = พระเจ้าเซจงมหาราช
|
||||
+2 Science for all specialists and Great Person tile improvements = +2 วิทยาศาสตร์ให้กับช่องที่ปรับปรุงของผู้เชี่ยวชาญและผู้ยิ่งใหญ่ทั้งหมด
|
||||
|
||||
Iroquois = อิระควอย
|
||||
Hiawatha = เฮียวทา
|
||||
All units move through Forest and Jungle Tiles in friendly territory as if they have roads. These tiles can be used to establish City Connections upon researching the Wheel. = ยูนิตทั้งหมดจะเคลื่อนที่ผ่านช่องพื้นที่ป่าไม้ และป่าดิบในอาณาเขตของเราเสมือนกับว่าเคลื่อนที่บนถนน(เดินได้มากขึ้น) ช่องพื้นที่เหล่านี้สามารถนำไปใช้สร้างเป็นตัวเชื่อมระหว่างเมืองเมื่อทำการค้นคว้าเรื่องล้อ
|
||||
|
||||
Persia = เปอร์เซีย
|
||||
Darius I = ดาไรอัสมหาราช
|
||||
Golden Ages last 50% longer. During a Golden Age, units receive +1 Movement and +10% Strength = ยุคทองอยู่นานขึ้น 5% ในระหว่างยุคทอง ยูนิตจะได้รับ +1 การเคลื่อนที่ และ +10% ความแข็งแกร่ง
|
||||
|
||||
Polynesia = พอลินีเซีย
|
||||
Kamehameha I = พระเจ้าคาเมฮาเมฮาที่ 1
|
||||
Can embark and move over Coasts and Oceans immediately. +1 Sight when embarked. +10% Combat Strength bonus if within 2 tiles of a Moai. = สามารถลงเรือเคลื่อนที่ตามชายฝั่งและมหาสมุทรได้ทันที +1 ระยะการมองเห็นเมื่อลงเรือ +10% โบนัสพลังรบถ้าอยู่ในระยะสองช่องจาก โมอาย
|
||||
|
||||
Siam = สยาม
|
||||
Ramkhamhaeng = พ่อขุนรามคำแหงมหาราช
|
||||
Food and Culture from Friendly City-States are increased by 50% = อาหารและวัฒนธรรมในเมืองที่เป็นมิตรเพิ่มขึ้น 50%
|
||||
|
||||
Songhai = จักรวรรดิซองไฮ
|
||||
Askia = แอสเกีย มุฮัมหมัด
|
||||
Receive triple Gold from Barbarian encampments and pillaging Cities. Embarked units can defend themselves. = ได้รับทอง 3 เท่าจากแคมป์คนเถื่อนและเมืองที่ถูกปล้น ยูนิตที่ลงเรือสามารถป้องกันตัวได้
|
||||
|
||||
# New game screen
|
||||
|
||||
Uniques = เอกลักษณ์
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -374,31 +374,6 @@ We noticed your new city near our borders, despite your promise. This will have.
|
|||
|
||||
# City states
|
||||
|
||||
Manila =
|
||||
Kuala Lumpur =
|
||||
Helsinki =
|
||||
Quebec City =
|
||||
Hanoi =
|
||||
Kathmandu =
|
||||
Cape Town =
|
||||
Sydney =
|
||||
Zanzibar =
|
||||
Singapore =
|
||||
Edinburgh =
|
||||
Almaty =
|
||||
Sidon =
|
||||
Kabul =
|
||||
Brussels =
|
||||
Venice =
|
||||
Genoa =
|
||||
Ur =
|
||||
Tyre =
|
||||
Dublin =
|
||||
Antwerp =
|
||||
Rio de Janeiro =
|
||||
Florence =
|
||||
Milan =
|
||||
|
||||
Provides [amountOfCulture] culture at 30 Influence =
|
||||
Provides 3 food in capital and 1 food in other cities at 30 Influence =
|
||||
Provides 3 happiness at 30 Influence =
|
||||
|
@ -453,95 +428,75 @@ National ability =
|
|||
|
||||
# Nations
|
||||
|
||||
Babylon =
|
||||
Receive free Great Scientist when you discover Writing, Earn Great Scientists 50% faster =
|
||||
Nebuchadnezzar II =
|
||||
Ingenuity =
|
||||
|
||||
Greece =
|
||||
Alexander =
|
||||
City-State Influence degrades at half and recovers at twice the normal rate =
|
||||
Hellenic League =
|
||||
|
||||
China =
|
||||
Wu Zetian =
|
||||
Great general provides double combat bonus, and spawns 50% faster =
|
||||
Art of War =
|
||||
|
||||
Egypt =
|
||||
Ramesses II =
|
||||
+20% production towards Wonder construction =
|
||||
Monument Builders =
|
||||
|
||||
England =
|
||||
Elizabeth =
|
||||
+2 movement for all naval units =
|
||||
Sun Never Sets =
|
||||
|
||||
France =
|
||||
Napoleon =
|
||||
+2 Culture per turn from cities before discovering Steam Power =
|
||||
Ancien Régime =
|
||||
|
||||
Russia =
|
||||
Catherine =
|
||||
Strategic Resources provide +1 Production, and Horses, Iron and Uranium Resources provide double quantity =
|
||||
Siberian Riches =
|
||||
|
||||
Rome =
|
||||
Augustus Caesar =
|
||||
+25% Production towards any buildings that already exist in the Capital =
|
||||
The Glory of Rome =
|
||||
|
||||
Arabia =
|
||||
Harun al-Rashid =
|
||||
+1 Gold from each Trade Route, Oil resources provide double quantity =
|
||||
Trade Caravans =
|
||||
|
||||
America =
|
||||
George Washington =
|
||||
All land military units have +1 sight, 50% discount when purchasing tiles =
|
||||
Manifest Destiny =
|
||||
|
||||
Japan =
|
||||
Oda Nobunaga =
|
||||
Units fight as though they were at full strength even when damaged =
|
||||
Bushido =
|
||||
|
||||
Germany =
|
||||
Otto von Bismarck =
|
||||
67% chance to earn 25 Gold and recruit a Barbarian unit from a conquered encampment, -25% land units maintenance. =
|
||||
Furor Teutonicus =
|
||||
|
||||
India =
|
||||
Gandhi =
|
||||
Unhappiness from number of Cities doubled, Unhappiness from number of Citizens halved. =
|
||||
Population Growth =
|
||||
|
||||
The Ottomans =
|
||||
Suleiman I =
|
||||
Pay only one third the usual cost for naval unit maintenance. Melee naval units have a 1/3 chance to capture defeated naval units. =
|
||||
Barbary Corsairs =
|
||||
|
||||
Korea =
|
||||
Sejong =
|
||||
+2 Science for all specialists and Great Person tile improvements =
|
||||
Scholars of the Jade Hall =
|
||||
|
||||
Iroquois =
|
||||
Hiawatha =
|
||||
All units move through Forest and Jungle Tiles in friendly territory as if they have roads. These tiles can be used to establish City Connections upon researching the Wheel. =
|
||||
The Great Warpath =
|
||||
|
||||
Persia =
|
||||
Darius I =
|
||||
Golden Ages last 50% longer. During a Golden Age, units receive +1 Movement and +10% Strength =
|
||||
Achaemenid Legacy =
|
||||
|
||||
Polynesia =
|
||||
Kamehameha I =
|
||||
Can embark and move over Coasts and Oceans immediately. +1 Sight when embarked. +10% Combat Strength bonus if within 2 tiles of a Moai. =
|
||||
Wayfinding =
|
||||
|
||||
Siam =
|
||||
Ramkhamhaeng =
|
||||
Food and Culture from Friendly City-States are increased by 50% =
|
||||
Father Governs Children =
|
||||
|
||||
Songhai =
|
||||
Askia =
|
||||
Receive triple Gold from Barbarian encampments and pillaging Cities. Embarked units can defend themselves. =
|
||||
River Warlord =
|
||||
|
||||
Spain =
|
||||
Isabella =
|
||||
100 Gold for discovering a Natural Wonder (bonus enhanced to 500 Gold if first to discover it). Culture, Happiness and tile yields from Natural Wonders doubled. =
|
||||
Seven Cities of Gold =
|
||||
|
||||
Mongolia =
|
||||
Genghis Khan =
|
||||
Combat Strength +30% when fighting City-State units or attacking a City-State itself. All mounted units have +1 Movement. =
|
||||
Mongol Terror =
|
||||
|
||||
Great Andean Road =
|
||||
Viking Fury =
|
||||
|
||||
# New game screen
|
||||
|
||||
Uniques =
|
|
@ -60,7 +60,7 @@ class CityInfo {
|
|||
this.location = cityLocation
|
||||
setTransients()
|
||||
|
||||
val nationCities = civInfo.getTranslatedNation().cities
|
||||
val nationCities = civInfo.nation.cities
|
||||
val cityNameIndex = civInfo.citiesCreated % nationCities.size
|
||||
val cityName = nationCities[cityNameIndex]
|
||||
|
||||
|
|
|
@ -122,17 +122,6 @@ class CivilizationInfo {
|
|||
return gameInfo.ruleSet.difficulties["Chieftain"]!!
|
||||
}
|
||||
|
||||
fun getTranslatedNation(): Nation {
|
||||
val language = UncivGame.Current.settings.language.replace(" ","_")
|
||||
val filePath = "jsons/Nations/Nations_$language.json"
|
||||
if(!Gdx.files.internal(filePath).exists()) return nation
|
||||
val translatedNation = jsonParser.getFromJson(Array<Nation>::class.java, filePath)
|
||||
.firstOrNull { it.name==civName}
|
||||
if(translatedNation==null) // this language's trnslation doesn't contain this nation yet,
|
||||
return nation // default to english
|
||||
return translatedNation
|
||||
}
|
||||
|
||||
fun getDiplomacyManager(civInfo: CivilizationInfo) = getDiplomacyManager(civInfo.civName)
|
||||
fun getDiplomacyManager(civName: String) = diplomacy[civName]!!
|
||||
/** Returns only undefeated civs, aka the ones we care about */
|
||||
|
@ -302,7 +291,7 @@ class CivilizationInfo {
|
|||
fun isAtWar() = diplomacy.values.any { it.diplomaticStatus== DiplomaticStatus.War && !it.otherCiv().isDefeated() }
|
||||
|
||||
fun getLeaderDisplayName(): String {
|
||||
var leaderName = getTranslatedNation().getLeaderDisplayName().tr()
|
||||
var leaderName = nation.getLeaderDisplayName().tr()
|
||||
if (playerType == PlayerType.AI)
|
||||
leaderName += " (" + "AI".tr() + ")"
|
||||
else if (gameInfo.civilizations.count { it.playerType == PlayerType.Human } > 1)
|
||||
|
|
|
@ -17,17 +17,12 @@ enum class VictoryType{
|
|||
|
||||
class Nation : INamed {
|
||||
override lateinit var name: String
|
||||
var translatedName=""
|
||||
fun getNameTranslation(): String {
|
||||
if(translatedName!="") return translatedName
|
||||
else return name
|
||||
}
|
||||
|
||||
var leaderName=""
|
||||
fun getLeaderDisplayName() = if(isCityState()) getNameTranslation()
|
||||
else "[$leaderName] of [${getNameTranslation()}]"
|
||||
fun getLeaderDisplayName() = if(isCityState()) name
|
||||
else "[$leaderName] of [$name]"
|
||||
|
||||
var cityStateType: CityStateType?=null
|
||||
var cityStateType: CityStateType? = null
|
||||
var preferredVictoryType:VictoryType = VictoryType.Neutral
|
||||
var declaringWar=""
|
||||
var attacked=""
|
||||
|
@ -38,19 +33,9 @@ class Nation : INamed {
|
|||
var neutralHello=""
|
||||
var hateHello=""
|
||||
|
||||
var neutralLetsHearIt = ArrayList<String>()
|
||||
var neutralYes = ArrayList<String>()
|
||||
var neutralNo = ArrayList<String>()
|
||||
|
||||
var hateLetsHearIt = ArrayList<String>()
|
||||
var hateYes = ArrayList<String>()
|
||||
var hateNo = ArrayList<String>()
|
||||
|
||||
var afterPeace=""
|
||||
|
||||
lateinit var outerColor: List<Int>
|
||||
var unique:UniqueAbility?=null
|
||||
var innerColor: List<Int>?=null
|
||||
var unique: UniqueAbility? = null
|
||||
var innerColor: List<Int>? = null
|
||||
var startBias = ArrayList<String>()
|
||||
|
||||
@Transient private lateinit var outerColorObject:Color
|
||||
|
@ -77,7 +62,7 @@ class Nation : INamed {
|
|||
forestsAndJunglesAreRoads = true
|
||||
}
|
||||
|
||||
lateinit var cities: List<String>
|
||||
lateinit var cities: ArrayList<String>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -127,7 +127,7 @@ class Ruleset() {
|
|||
}
|
||||
}
|
||||
|
||||
val nationsFile = folderHandle.child("Nations/Nations.json")
|
||||
val nationsFile = folderHandle.child("Nations.json")
|
||||
if(nationsFile.exists()) {
|
||||
nations += createHashmap(jsonParser.getFromJson(Array<Nation>::class.java, nationsFile))
|
||||
for (nation in nations.values) nation.setTransients()
|
||||
|
|
|
@ -1,13 +1,15 @@
|
|||
package com.unciv.models.translations
|
||||
|
||||
import com.badlogic.gdx.Gdx
|
||||
import com.unciv.JsonParser
|
||||
import com.unciv.models.ruleset.Nation
|
||||
import java.nio.charset.Charset
|
||||
import kotlin.collections.set
|
||||
|
||||
class TranslationFileReader{
|
||||
|
||||
private val percentagesFileLocation = "jsons/translationsByLanguage/completionPercentages.properties"
|
||||
val templateFileLocation = "jsons/translationsByLanguage/template.properties"
|
||||
private val percentagesFileLocation = "jsons/translations/completionPercentages.properties"
|
||||
val templateFileLocation = "jsons/translations/template.properties"
|
||||
private val charset = Charset.forName("UTF-8").name()
|
||||
|
||||
fun read(translationFile: String): LinkedHashMap<String, String> {
|
||||
|
@ -26,9 +28,15 @@ class TranslationFileReader{
|
|||
}
|
||||
|
||||
private fun writeByTemplate(language:String, translations: HashMap<String, String>){
|
||||
|
||||
val templateFile = Gdx.files.internal(templateFileLocation)
|
||||
val linesFromTemplates = mutableListOf<String>()
|
||||
linesFromTemplates.addAll(templateFile.reader().readLines())
|
||||
linesFromTemplates.add("\n#################### Lines from Nations.json ####################\n")
|
||||
linesFromTemplates.addAll(generateNationsStrings())
|
||||
|
||||
val stringBuilder = StringBuilder()
|
||||
for(line in templateFile.reader().readLines()){
|
||||
for(line in linesFromTemplates){
|
||||
if(!line.contains(" = ")){ // copy as-is
|
||||
stringBuilder.appendln(line)
|
||||
continue
|
||||
|
@ -41,12 +49,13 @@ class TranslationFileReader{
|
|||
" = "+ translationValue.replace("\n","\\n")
|
||||
stringBuilder.appendln(lineToWrite)
|
||||
}
|
||||
Gdx.files.local("jsons/translationsByLanguage/$language.properties")
|
||||
Gdx.files.local("jsons/translations/$language.properties")
|
||||
.writeString(stringBuilder.toString(),false,charset)
|
||||
}
|
||||
|
||||
|
||||
fun writeNewTranslationFiles(translations: Translations) {
|
||||
|
||||
for (language in translations.getLanguages()) {
|
||||
val languageHashmap = HashMap<String, String>()
|
||||
|
||||
|
@ -80,4 +89,28 @@ class TranslationFileReader{
|
|||
return hashmap
|
||||
}
|
||||
|
||||
fun generateNationsStrings(): Collection<String> {
|
||||
|
||||
val nations = JsonParser().getFromJson(emptyArray<Nation>().javaClass, "jsons/Nations.json")
|
||||
val strings = mutableSetOf<String>() // using set to avoid duplicates
|
||||
|
||||
for (nation in nations) {
|
||||
for (field in nation.javaClass.declaredFields
|
||||
.filter { it.type == String::class.java || it.type == java.util.ArrayList::class.java }) {
|
||||
field.isAccessible = true
|
||||
val fieldValue = field.get(nation)
|
||||
if (field.name != "startBias" && // skip fields which must not be translated
|
||||
fieldValue != null && fieldValue != "") {
|
||||
|
||||
if (fieldValue is ArrayList<*>) {
|
||||
for (item in fieldValue)
|
||||
strings.add("$item = ")
|
||||
} else
|
||||
strings.add("$fieldValue = ")
|
||||
}
|
||||
}
|
||||
}
|
||||
return strings
|
||||
}
|
||||
|
||||
}
|
|
@ -32,10 +32,10 @@ class Translations : LinkedHashMap<String, TranslationEntry>(){
|
|||
}
|
||||
|
||||
|
||||
fun tryReadTranslationForLanguage(language: String){
|
||||
private fun tryReadTranslationForLanguage(language: String){
|
||||
val translationStart = System.currentTimeMillis()
|
||||
|
||||
val translationFileName = "jsons/translationsByLanguage/$language.properties"
|
||||
val translationFileName = "jsons/translations/$language.properties"
|
||||
if (!Gdx.files.internal(translationFileName).exists()) return
|
||||
|
||||
val languageTranslations:HashMap<String,String>
|
||||
|
@ -65,13 +65,13 @@ class Translations : LinkedHashMap<String, TranslationEntry>(){
|
|||
tryReadTranslationForLanguage(UncivGame.Current.settings.language)
|
||||
}
|
||||
|
||||
fun getLanguagesWithTranslationFile(): List<String> {
|
||||
private fun getLanguagesWithTranslationFile(): List<String> {
|
||||
|
||||
val languages = ArrayList<String>()
|
||||
// So apparently the Locales don't work for everyone, which is horrendous
|
||||
// So for those players, which seem to be Android-y, we try to see what files exist directly...yeah =/
|
||||
try{
|
||||
for(file in Gdx.files.internal("jsons/translationsByLanguage").list())
|
||||
for(file in Gdx.files.internal("jsons/translations").list())
|
||||
languages.add(file.nameWithoutExtension())
|
||||
}
|
||||
catch (ex:Exception){} // Iterating on internal files will not work when running from a .jar
|
||||
|
@ -90,7 +90,7 @@ class Translations : LinkedHashMap<String, TranslationEntry>(){
|
|||
|
||||
return languages.distinct()
|
||||
.filter { it!="Thai" &&
|
||||
Gdx.files.internal("jsons/translationsByLanguage/$it.properties").exists() }
|
||||
Gdx.files.internal("jsons/translations/$it.properties").exists() }
|
||||
}
|
||||
|
||||
fun readAllLanguagesTranslation() {
|
||||
|
@ -121,24 +121,18 @@ class Translations : LinkedHashMap<String, TranslationEntry>(){
|
|||
val percentComplete = HashMap<String,Int>()
|
||||
val translationStart = System.currentTimeMillis()
|
||||
|
||||
var allTranslations = 0
|
||||
Gdx.files.internal("jsons/translationsByLanguage/template.properties")
|
||||
var allTranslations = TranslationFileReader().generateNationsStrings().size
|
||||
Gdx.files.internal(TranslationFileReader().templateFileLocation)
|
||||
.reader().forEachLine { if(it.contains(" = ")) allTranslations+=1 }
|
||||
|
||||
val notTranslatedNations = JsonParser().getFromJson(emptyArray<Nation>().javaClass,
|
||||
"jsons/Nations/Nations.json")
|
||||
|
||||
for(language in getLanguagesWithTranslationFile()){
|
||||
val translationFileName = "jsons/translationsByLanguage/$language.properties"
|
||||
val translationFileName = "jsons/translations/$language.properties"
|
||||
var translationsOfThisLanguage=0
|
||||
Gdx.files.internal(translationFileName).reader()
|
||||
.forEachLine { if(it.contains(" = ") && !it.endsWith(" = "))
|
||||
translationsOfThisLanguage+=1 }
|
||||
|
||||
val translatedAndTotal = calculatePercentageForNationsFile(language, notTranslatedNations)
|
||||
translationsOfThisLanguage += translatedAndTotal.first
|
||||
|
||||
percentComplete[language] = translationsOfThisLanguage*100/(allTranslations+translatedAndTotal.second)
|
||||
percentComplete[language] = translationsOfThisLanguage*100/allTranslations
|
||||
}
|
||||
|
||||
|
||||
|
@ -147,44 +141,6 @@ class Translations : LinkedHashMap<String, TranslationEntry>(){
|
|||
return percentComplete
|
||||
}
|
||||
|
||||
private fun calculatePercentageForNationsFile(language: String, originalNations: Array<Nation>): Pair<Int, Int> {
|
||||
|
||||
val translationFileName = "jsons/Nations/Nations_$language.json"
|
||||
val translationFile = Gdx.files.internal(translationFileName)
|
||||
if (!translationFile.exists()) {
|
||||
// calculate how many fields are missing
|
||||
val allTranslatables = Nation::class.java.declaredFields.count {
|
||||
it.type == String::class.java || it.type == ArrayList::class.java}
|
||||
return Pair(0, allTranslatables*originalNations.size)
|
||||
}
|
||||
|
||||
var translationsOfThisLanguage = 0
|
||||
var allTranslations = 0
|
||||
|
||||
val translatedNations = JsonParser().getFromJson(emptyArray<Nation>().javaClass, translationFileName)
|
||||
|
||||
for (nation in originalNations)
|
||||
{
|
||||
val translatedNation = translatedNations.find { it.name == nation.name }
|
||||
|
||||
for (field in nation.javaClass.declaredFields.
|
||||
filter { it.type == String::class.java || it.type == ArrayList::class.java}) {
|
||||
field.isAccessible = true
|
||||
val originalValue = field.get(nation)
|
||||
if (translatedNation != null && // we could exit *before* this loop, however, we need it here to count not translated fields
|
||||
(field.name in setOf("name", "startBias") || // skip fields which must not be translated
|
||||
originalValue == null || originalValue == "" ||
|
||||
((originalValue is ArrayList<*>) && originalValue.isEmpty()) ||
|
||||
originalValue != field.get(translatedNation)))
|
||||
translationsOfThisLanguage++
|
||||
|
||||
allTranslations++
|
||||
}
|
||||
}
|
||||
|
||||
return Pair(translationsOfThisLanguage, allTranslations)
|
||||
}
|
||||
|
||||
companion object {
|
||||
fun translateBonusOrPenalty(unique:String): String {
|
||||
val regexResult = Regex("""(Bonus|Penalty) vs (.*) (\d*)%""").matchEntire(unique)
|
||||
|
@ -248,7 +204,6 @@ fun String.tr(): String {
|
|||
return Regex("\\{(.*?)\\}").replace(this) { it.groups[1]!!.value.tr() }
|
||||
}
|
||||
|
||||
val translation = UncivGame.Current.translations
|
||||
.get(this, UncivGame.Current.settings.language) // single word
|
||||
return translation
|
||||
return UncivGame.Current.translations
|
||||
.get(this, UncivGame.Current.settings.language)
|
||||
}
|
||||
|
|
|
@ -178,11 +178,10 @@ class DiplomacyScreen(val viewingCiv:CivilizationInfo):CameraStageBaseScreen() {
|
|||
diplomacyTable.defaults().pad(10f)
|
||||
|
||||
diplomacyTable.add(otherCiv.getLeaderDisplayName().toLabel(fontSize = 24)).row()
|
||||
val translatedNation = otherCiv.getTranslatedNation()
|
||||
if(otherCivDiplomacyManager.relationshipLevel()<=RelationshipLevel.Enemy)
|
||||
diplomacyTable.add(translatedNation.hateHello.toLabel()).row()
|
||||
diplomacyTable.add(otherCiv.nation.hateHello.toLabel()).row()
|
||||
else
|
||||
diplomacyTable.add(translatedNation.neutralHello.toLabel()).row()
|
||||
diplomacyTable.add(otherCiv.nation.neutralHello.toLabel()).row()
|
||||
diplomacyTable.addSeparator()
|
||||
|
||||
if(!viewingCiv.isAtWarWith(otherCiv)) {
|
||||
|
@ -369,7 +368,7 @@ class DiplomacyScreen(val viewingCiv:CivilizationInfo):CameraStageBaseScreen() {
|
|||
declareWarButton.onClick {
|
||||
YesNoPopup("Declare war on [${otherCiv.civName}]?".tr(), {
|
||||
diplomacyManager.declareWar()
|
||||
setRightSideFlavorText(otherCiv, otherCiv.getTranslatedNation().attacked, "Very well.")
|
||||
setRightSideFlavorText(otherCiv, otherCiv.nation.attacked, "Very well.")
|
||||
updateLeftSideTable()
|
||||
}, this).open()
|
||||
}
|
||||
|
|
|
@ -30,8 +30,6 @@ class Fonts {
|
|||
charSet.addAll(defaultText.asIterable())
|
||||
|
||||
if (language != "") {
|
||||
if (Gdx.files.internal("jsons/Nations/Nations_$language.json").exists())
|
||||
charSet.addAll(Gdx.files.internal("jsons/Nations/Nations_$language.json").readString().asIterable())
|
||||
if (Gdx.files.internal("jsons/Tutorials/Tutorials_$language.json").exists())
|
||||
charSet.addAll(Gdx.files.internal("jsons/Tutorials/Tutorials_$language.json").readString().asIterable())
|
||||
|
||||
|
|
|
@ -31,7 +31,7 @@ class AlertPopup(val worldScreen: WorldScreen, val popupAlert: PopupAlert): Popu
|
|||
AlertType.WarDeclaration -> {
|
||||
val civInfo = worldScreen.gameInfo.getCivilization(popupAlert.value)
|
||||
addLeaderName(civInfo)
|
||||
addGoodSizedLabel(civInfo.getTranslatedNation().declaringWar).row()
|
||||
addGoodSizedLabel(civInfo.nation.declaringWar).row()
|
||||
val responseTable = Table()
|
||||
responseTable.add(getCloseButton("You'll pay for this!"))
|
||||
responseTable.add(getCloseButton("Very well."))
|
||||
|
@ -40,19 +40,19 @@ class AlertPopup(val worldScreen: WorldScreen, val popupAlert: PopupAlert): Popu
|
|||
AlertType.Defeated -> {
|
||||
val civInfo = worldScreen.gameInfo.getCivilization(popupAlert.value)
|
||||
addLeaderName(civInfo)
|
||||
addGoodSizedLabel(civInfo.getTranslatedNation().defeated).row()
|
||||
addGoodSizedLabel(civInfo.nation.defeated).row()
|
||||
add(getCloseButton("Farewell."))
|
||||
}
|
||||
AlertType.FirstContact -> {
|
||||
val civInfo = worldScreen.gameInfo.getCivilization(popupAlert.value)
|
||||
val translatedNation = civInfo.getTranslatedNation()
|
||||
val nation = civInfo.nation
|
||||
if (civInfo.isCityState()) {
|
||||
addLeaderName(civInfo)
|
||||
addGoodSizedLabel("We have encountered the City-State of [${translatedNation.getNameTranslation()}]!").row()
|
||||
addGoodSizedLabel("We have encountered the City-State of [${nation.name}]!").row()
|
||||
add(getCloseButton("Excellent!"))
|
||||
} else {
|
||||
addLeaderName(civInfo)
|
||||
addGoodSizedLabel(translatedNation.introduction).row()
|
||||
addGoodSizedLabel(nation.introduction).row()
|
||||
add(getCloseButton("A pleasure to meet you."))
|
||||
}
|
||||
}
|
||||
|
|
|
@ -21,15 +21,15 @@ class TradePopup(worldScreen: WorldScreen): Popup(worldScreen){
|
|||
|
||||
init{
|
||||
val requestingCiv = worldScreen.gameInfo.getCivilization(tradeRequest.requestingCiv)
|
||||
val translatedNation = requestingCiv.getTranslatedNation()
|
||||
val otherCivLeaderName = "[${translatedNation.leaderName}] of [${translatedNation.getNameTranslation()}]".tr()
|
||||
val nation = requestingCiv.nation
|
||||
val otherCivLeaderName = "[${nation.leaderName}] of [${nation.name}]".tr()
|
||||
|
||||
add(otherCivLeaderName.toLabel())
|
||||
addSeparator()
|
||||
|
||||
val trade = tradeRequest.trade
|
||||
val tradeOffersTable = Table().apply { defaults().pad(10f) }
|
||||
tradeOffersTable.add("[${translatedNation.getNameTranslation()}]'s trade offer".toLabel())
|
||||
tradeOffersTable.add("[${nation.name}]'s trade offer".toLabel())
|
||||
tradeOffersTable.add("Our trade offer".toLabel())
|
||||
tradeOffersTable.row()
|
||||
for(i in 0..max(trade.theirOffers.lastIndex, trade.ourOffers.lastIndex)){
|
||||
|
@ -44,7 +44,7 @@ class TradePopup(worldScreen: WorldScreen): Popup(worldScreen){
|
|||
val scrollHeight = min(tradeOffersTable.height, worldScreen.stage.height/2)
|
||||
add(ScrollPane(tradeOffersTable)).height(scrollHeight).row()
|
||||
|
||||
addGoodSizedLabel(translatedNation.tradeRequest).colspan(columns).row()
|
||||
addGoodSizedLabel(nation.tradeRequest).colspan(columns).row()
|
||||
|
||||
addButton("Sounds good!"){
|
||||
val tradeLogic = TradeLogic(viewingCiv, requestingCiv)
|
||||
|
|
|
@ -94,7 +94,7 @@ internal object DesktopLauncher {
|
|||
if(!game.isInitialized) return
|
||||
val presence = DiscordRichPresence()
|
||||
val currentPlayerCiv = game.gameInfo.getCurrentPlayerCivilization()
|
||||
presence.details=currentPlayerCiv.getTranslatedNation().getLeaderDisplayName().tr()
|
||||
presence.details=currentPlayerCiv.nation.getLeaderDisplayName().tr()
|
||||
presence.largeImageKey = "logo" // The actual image is uploaded to the discord app / applications webpage
|
||||
presence.largeImageText ="Turn".tr()+" " + currentPlayerCiv.gameInfo.turns
|
||||
DiscordRPC.INSTANCE.Discord_UpdatePresence(presence);
|
||||
|
|
|
@ -175,11 +175,10 @@ class TranslationTests {
|
|||
}
|
||||
|
||||
@Test
|
||||
fun allTranslatedNationsFilesAreSerializable() {
|
||||
for (file in Gdx.files.internal("jsons/Nations").list()) {
|
||||
jsonParser.getFromJson(emptyArray<Nation>().javaClass, file.path())
|
||||
}
|
||||
Assert.assertTrue("This test will only pass when there is a translation for all promotions",
|
||||
fun nationsFileIsSerializable() {
|
||||
jsonParser.getFromJson(emptyArray<Nation>().javaClass, "jsons/Nations.json")
|
||||
|
||||
Assert.assertTrue("This test will only pass when there Nations.json file is serializable",
|
||||
true)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue