diff --git a/Classes/Events/EventDatabase.cs b/Classes/Events/EventDatabase.cs index 5a869ebd..275f26ef 100644 --- a/Classes/Events/EventDatabase.cs +++ b/Classes/Events/EventDatabase.cs @@ -4,6 +4,7 @@ /// /// Holds all game events and their associated logic. /// + public class EventDatabase { public const int EventDatabaseSize = 3; @@ -22,7 +23,15 @@ public class EventDatabase 0, StageProducer.PlayerStats.CurNotes.Length - 1 ); + var note = StageProducer.PlayerStats.CurNotes[randIndex]; + string name = note.Name.ToUpper().Replace(" ", ""); + string localizedName = TranslationServer.Translate("NOTE_" + name + "_NAME"); StageProducer.PlayerStats.RemoveNote(randIndex); + + self.OutcomeDescriptions[0] = string.Format( + TranslationServer.Translate("EVENT_EVENT1_OUTCOME1"), + localizedName + ); }, (self, node) => { @@ -30,11 +39,25 @@ public class EventDatabase 0, StageProducer.PlayerStats.CurRelics.Length - 1 ); + var relic = StageProducer.PlayerStats.CurRelics[randIndex]; + string name = relic.Name.ToUpper().Replace(" ", ""); + string localizedName = TranslationServer.Translate("RELIC_" + name + "_NAME"); StageProducer.PlayerStats.RemoveRelic(randIndex); + + self.OutcomeDescriptions[1] = string.Format( + TranslationServer.Translate("EVENT_EVENT1_OUTCOME2"), + localizedName + ); }, (self, node) => { + string stolenMoney = (StageProducer.PlayerStats.Money / 2).ToString(); StageProducer.PlayerStats.Money /= 2; + + self.OutcomeDescriptions[2] = self.OutcomeDescriptions[0] = string.Format( + TranslationServer.Translate("EVENT_EVENT1_OUTCOME3"), + stolenMoney + ); }, ], GD.Load("res://Classes/Events/Assets/Bandit_Event.png"), @@ -68,14 +91,19 @@ public class EventDatabase .SetEase(Tween.EaseType.Out); // Defer execution of the outcome until the tween finishes + string eventEffect = ""; tween.TweenCallback( Callable.From(() => { switch (spinOutcome) { case 0: + eventEffect = (StageProducer.PlayerStats.Money / 2).ToString(); StageProducer.PlayerStats.Money /= 2; - self.OutcomeDescriptions[0] = "EVENT_EVENT2_OUTCOME2"; + self.OutcomeDescriptions[0] = string.Format( + TranslationServer.Translate("EVENT_EVENT2_OUTCOME2"), + eventEffect + ); break; case 1: self.OutcomeDescriptions[0] = "EVENT_EVENT2_OUTCOME3"; @@ -89,15 +117,23 @@ public class EventDatabase StageProducer.PlayerStats.Money += 50; break; case 3: - self.OutcomeDescriptions[0] = "EVENT_EVENT2_OUTCOME5"; StageProducer.PlayerStats.AddNote( Scribe.GetRandomRewardNotes(1, StageProducer.CurRoom + 10)[ 0 ] ); + var note = StageProducer.PlayerStats.CurNotes[^1]; + string name = note.Name.ToUpper().Replace(" ", ""); + eventEffect = TranslationServer.Translate( + "NOTE_" + name + "_NAME" + ); + + self.OutcomeDescriptions[0] = string.Format( + TranslationServer.Translate("EVENT_EVENT2_OUTCOME5"), + eventEffect + ); break; case 4: - self.OutcomeDescriptions[0] = "EVENT_EVENT2_OUTCOME6"; StageProducer.PlayerStats.AddRelic( Scribe.GetRandomRelics( 1, @@ -105,6 +141,16 @@ public class EventDatabase StageProducer.PlayerStats.RarityOdds )[0] ); + + var relic = StageProducer.PlayerStats.CurRelics[^1]; + string name1 = relic.Name.ToUpper().Replace(" ", ""); + eventEffect = TranslationServer.Translate( + "NOTE_" + name1 + "_NAME" + ); + self.OutcomeDescriptions[0] = string.Format( + TranslationServer.Translate("EVENT_EVENT2_OUTCOME6"), + eventEffect + ); break; case 5: self.OutcomeDescriptions[0] = "EVENT_EVENT2_OUTCOME7"; diff --git a/Globals/Translations/Translations.csv b/Globals/Translations/Translations.csv index a0b7cb2b..d38b8e22 100644 --- a/Globals/Translations/Translations.csv +++ b/Globals/Translations/Translations.csv @@ -143,19 +143,19 @@ EVENT_EVENT1_DESC,A bandit approaches you.,一个强盗拦住了你。 EVENT_EVENT1_OPTION1,Give them a random note,给他一个随机音符 EVENT_EVENT1_OPTION2,Give them a random relic,给他一件随机遗物 EVENT_EVENT1_OPTION3,Give them half your gold,给他你一半的金币 -EVENT_EVENT1_OUTCOME1,You got robbed of a random note.,你被抢走了一个随机音符 -EVENT_EVENT1_OUTCOME2,You got robbed of a random relic.,你被抢走了一件随机遗物 -EVENT_EVENT1_OUTCOME3,You got robbed of half your gold.,你被抢走了一半金币 +EVENT_EVENT1_OUTCOME1,You got robbed of a random note. ({0}),你被抢走了一个随机音符 ({0}) +EVENT_EVENT1_OUTCOME2,You got robbed of a random relic.({0}),你被抢走了一件随机遗物 ({0}) +EVENT_EVENT1_OUTCOME3,You got robbed of half your gold. ({0}),你被抢走了一半金币 ({0}) EVENT_EVENT2_DESC,There is a wheel with different outcomes.,这里有一个转盘,结果各不相同。 EVENT_EVENT2_OPTION1,Spin the wheel,转动转盘 EVENT_EVENT2_OPTION2,Ignore the cool wheel,忽略这个酷炫的转盘 EVENT_EVENT2_OUTCOME1,You decided not to spin the wheel.,你决定不转动转盘。 -EVENT_EVENT2_OUTCOME2,You lost half your money.,你损失了一半的金币。 -EVENT_EVENT2_OUTCOME3,You took some damage.,你受到了一些伤害。 -EVENT_EVENT2_OUTCOME4,You won a lot of money!,你赢得了很多金币! -EVENT_EVENT2_OUTCOME5,You gained a random note!,你获得了一个随机音符! -EVENT_EVENT2_OUTCOME6,You gained a random relic!,你获得了一件随机遗物! -EVENT_EVENT2_OUTCOME7,You gained some health!,你恢复了一些生命值! +EVENT_EVENT2_OUTCOME2,You lost half your money. ({0}),你损失了一半的金币。({0}) +EVENT_EVENT2_OUTCOME3,You took some damage. (10),你受到了一些伤害。(10) +EVENT_EVENT2_OUTCOME4,You won a lot of money! (50),你赢得了很多金币!(50) +EVENT_EVENT2_OUTCOME5,You gained a random note! ({0}),你获得了一个随机音符!({0}) +EVENT_EVENT2_OUTCOME6,You gained a random relic ({0})!,你获得了一件随机遗物!({0}) +EVENT_EVENT2_OUTCOME7,You gained some health! (20),你恢复了一些生命值!(20) EVENT_EVENT3_DESC,There is a field medic on the side of the road.,路边有一名战地医生。 EVENT_EVENT3_OPTION1,Receive a bit of healing,接受一些治疗 EVENT_EVENT3_OPTION2,Increase bar charge rate.,提高能量条充能速度