UnitSetData.NPC_Nemesis = { -- Nemesis, Hub_Main Id = 557113 NPC_Nemesis_01 = { InheritFrom = { "NPC_Neutral", "NPC_Giftable" }, Portrait = "Portrait_Nemesis_Default_01", Groups = { "NPCs" }, SubtitleColor = Color.NemesisVoice, EmoteOffsetY = -350, EmoteOffsetX = 80, SpeakerName = "Nemesis", FieldSpeakerName = "NemesisField", LoadPackages = { "Nemesis" }, InvincibubbleScale = 1.2, AlwaysShowInvulnerabubbleOnInvulnerableHit = true, ThemeMusic = "/Music/IrisMusicNemesisTheme_MC", TurnInPlaceAnimation = "Nemesis_Turn", DoorTakenText = "CannotUseObject", ExitSpeed = 500, HideHealthBar = true, Icon = "NemesisRewardFinderIcon", ExcludeFromDamageDealtRecord = true, BecomingCloserFunctionName = "BecomingCloserNemesisPresentation", BathEnterSound1 = "/SFX/ArmorIdleSFX", BathEnterSound2 = "/SFX/ArmorIdleSFX2", EffectBlocks = { "RavenFamiliarMark" }, DamagedFxStyles = { Default = "HitSparkEnemyDamagedMetal", Rapid = "HitSparkEnemyDamagedMetal", }, PreferredSpawnPoint = "EnemyPoint", ShopEventData = { TimerStartDistance = 1000, DelayMin = 10, DelayMax = 18, InstantChance = 0.1, -- Chance she will buy it without a chance for the player to interact -- NeverChance = 0.1, -- Chance she will dither indefinitely BrowsingVoiceLinesDelay = 4.0, FidgetIntervalMin = 5.0, FidgetIntervalMax = 11.0, ExitDelayMin = 3, ExitDelayMax = 4, }, StoreExitFunctionName = "NemesisTeleportExitPresentation", PostTradeEvents = { { FunctionName = "NemesisPostTradeCheckExits", Threaded = true, Args = { Delay = 4.0, }, }, }, GiftGameStateRequirements = { -- on individual events instead { -- PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, PreBathAnimationName = "Nemesis_Hub_Salute", SpecialInteractFunctionName = "SpecialInteractSalute", SpecialInteractGameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift01" }, }, }, SpecialInteractCooldown = 60, InteractVoiceLines = { { PreLineWait = 0.3, UsePlayerSource = true, PlayOnceThisRun = true, -- RandomRemaining = true, SuccessiveChanceToPlay = 0.33, Cooldowns = { { Name = "MelinoeSaluteSpeech", Time = 4 }, }, { Cue = "/VO/Melinoe_1712", Text = "Tiêu Diệt Chronos?" }, }, { GlobalVoiceLines = "SaluteVoiceLines" }, { PreLineWait = 0.31, RandomRemaining = true, ObjectType = "NPC_Nemesis_01", Cooldowns = { { Name = "NemesisSaluteSpeech", Time = 30 }, }, { Cue = "/VO/Nemesis_0123", Text = "Phải rồi." }, { Cue = "/VO/Nemesis_0180", Text = "Thôi nào..." }, { Cue = "/VO/Nemesis_0198", Text = "Tiếp tục luyện tập." }, { Cue = "/VO/Nemesis_0199", Text = "Có cố gắng." }, { Cue = "/VO/Nemesis_0292", Text = "Chắc rồi." }, { Cue = "/VO/Nemesis_0470", Text = "Ôi thôi nào." }, { Cue = "/VO/Nemesis_0122", Text = "Được thôi.", PreLineAnim = "Nemesis_Hub_Salute" }, { Cue = "/VO/Nemesis_0124", Text = "{#Emph}", PreLineAnim = "Nemesis_Hub_Salute" }, { Cue = "/VO/Nemesis_0125", Text = "{#Emph}Hrm.", PreLineAnim = "Nemesis_Hub_Salute" }, { Cue = "/VO/Nemesis_0120", Text = "Whatever.", PlayFirst = true, GameStateRequirements = { { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift07" }, }, }, }, { Cue = "/VO/Nemesis_0164", Text = "Trượt rồi.", GameStateRequirements = { { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift05" }, }, }, }, { Cue = "/VO/Nemesis_0471", Text = "Đi mất rồi.", GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift08" }, }, { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1712" }, }, }, }, { Cue = "/VO/Nemesis_0472", Text = "Ừ, cô cũng vậy.", PreLineAnim = "Nemesis_Hub_Salute", GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift08" }, }, { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1701", "/VO/Melinoe_1703" }, }, }, }, { Cue = "/VO/Nemesis_0293", Text = "Này.", GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1698", "/VO/Melinoe_1699" }, }, }, }, { Cue = "/VO/Nemesis_0294", Text = "{#Emph}Ugh...", GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1712" }, }, }, }, { Cue = "/VO/Nemesis_0295", Text = "Để đó cho ta...", GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1700" }, }, }, }, { Cue = "/VO/Nemesis_0296", Text = "Here?", GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1701", "/VO/Melinoe_1703" }, }, }, }, { Cue = "/VO/Nemesis_0297", Text = "Đại loại vậy.", PreLineAnim = "Nemesis_Hub_Salute", GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1701", "/VO/Melinoe_1703" }, }, }, }, { Cue = "/VO/Nemesis_0298", Text = "Thanks.", PreLineAnim = "Nemesis_Hub_Salute", GameStateRequirements = { { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift06" }, }, { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1701", "/VO/Melinoe_1703" }, }, }, }, { Cue = "/VO/Nemesis_0299", Text = "Làm ơn đi.", GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1705", "/VO/Melinoe_1709" }, }, }, }, { Cue = "/VO/Nemesis_0473", Text = "Đằng nào cũng vậy.", PreLineAnim = "Nemesis_Hub_Salute", GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Melinoe_1705", "/VO/Melinoe_1709" }, }, }, }, }, }, ActivateRequirements = { NamedRequirementsFalse = { "NemesisKnowsHecateMissing" }, }, SpawnVoiceLines = { { UsePlayerSource = true, RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.5, PlayOnce = true, PlayOnceContext = "NemesisFieldIntroVO", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "NemesisRandomEvent" }, }, }, { Cue = "/VO/MelinoeField_0037", Text = "Cô ấy làm gì ở đây vậy?" }, }, { UsePlayerSource = true, RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.95, PlayOnce = true, PlayOnceContext = "NemesisTartarusIntroVO", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "I" }, }, }, { Cue = "/VO/MelinoeField_0036", Text = "Nemesis!" }, }, { UsePlayerSource = true, RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.95, SuccessiveChanceToPlay = 0.25, SuccessiveChanceToPlayAll = 0.05, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "H" }, }, }, { Cue = "/VO/MelinoeField_0038", Text = "Her again?", GameStateRequirements = { { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift02" }, }, }, }, { Cue = "/VO/MelinoeField_0039", Text = "Hi, Nem.", GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift05" }, } } }, { Cue = "/VO/MelinoeField_0034", Text = "Nemesis..." }, { Cue = "/VO/MelinoeField_0035", Text = "Nemesis?" }, { Cue = "/VO/MelinoeField_0036", Text = "Nemesis!" }, }, { RandomRemaining = true, PreLineWait = 0.75, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsAny = { "NemesisCombatIntro", "NemesisCombatF", "NemesisCombatG", "NemesisCombatH", "NemesisCombatI", "GeneratedH_PassiveSmall", "GeneratedH_Passive" }, }, }, { Cue = "/VO/NemesisField_0232", Text = "Hãy coi chừng ánh mắt quỷ.", PlayFirst = true }, { Cue = "/VO/NemesisField_0233", Text = "Đúng lúc lắm." }, { Cue = "/VO/NemesisField_0234", Text = "Ta sẽ lo liệu việc này." }, { Cue = "/VO/NemesisField_0235", Text = "Một cuộc cá cược thân thiện thì sao." }, { Cue = "/VO/NemesisField_0236", Text = "Muốn đánh cược không?" }, { Cue = "/VO/NemesisField_0237", Text = "Cá chắc ta sẽ hạ nhiều hơn cô." }, { Cue = "/VO/NemesisField_0238", Text = "Lùi lại, không thì đừng trách" }, { Cue = "/VO/NemesisField_0239", Text = "Cô nghĩ cô giỏi hơn ta ư?" }, { Cue = "/VO/NemesisField_0240", Text = "Tránh đường cho ta." }, { Cue = "/VO/NemesisField_0241", Text = "Cô vẫn nghĩ mình có thể đánh bại ta ư?" }, { Cue = "/VO/NemesisField_0242", Text = "Nếu cô nghĩ mình giỏi hơn, thì chứng minh đi." }, { Cue = "/VO/NemesisField_0243", Text = "Đánh bại ta ở đây, thì có thể lấy Vàng của ta." }, { Cue = "/VO/NemesisField_0244", Text = "Nếu ta hạ nhiều hơn, ta sẽ lấy Vàng của cô." }, { Cue = "/VO/NemesisField_0245", Text = "Một là đánh, hai là biến." }, { Cue = "/VO/NemesisField_0246", Text = "Tốt, có lý do để dùng Vàng rồi." }, { Cue = "/VO/NemesisField_0247", Text = "Ta đã có linh cảm là cô sẽ xuất hiện." }, { Cue = "/VO/NemesisField_0537", Text = "Bất ngờ đấy.", PlayFirst = true, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "I" }, }, }, }, }, }, EncounterStartVoiceLines = { { RandomRemaining = true, PreLineWait = 0.45, GameStateRequirements = { { PathFalse = { "CurrentRun", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, }, Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 10 }, }, { Cue = "/VO/NemesisField_0248", Text = "Cảnh giác." }, { Cue = "/VO/NemesisField_0249", Text = "Chúng đến rồi." }, { Cue = "/VO/NemesisField_0250", Text = "Chúng đang đến..." }, { Cue = "/VO/NemesisField_0251", Text = "Có việc rồi." }, { Cue = "/VO/NemesisField_0252", Text = "Cuối cùng cũng đến." }, { Cue = "/VO/NemesisField_0253", Text = "Xem đây." }, { Cue = "/VO/NemesisField_0254", Text = "Bọn chúng muốn chết." }, { Cue = "/VO/NemesisField_0255", Text = "Cuối cùng cũng đến..." }, { Cue = "/VO/NemesisField_0256", Text = "Đúng điều ta đang chờ." }, { Cue = "/VO/NemesisField_0257", Text = "Bắt đầu nào.", PlayFirst = true }, { Cue = "/VO/NemesisField_0258", Text = "Để xem cô nhanh đến mức nào." }, { Cue = "/VO/NemesisField_0259", Text = "Chúng đang đến." }, { Cue = "/VO/NemesisField_0260", Text = "Đến đây nào." }, { Cue = "/VO/NemesisField_0261", Text = "Đến lúc san bằng tỉ số rồi." }, { Cue = "/VO/NemesisField_0262", Text = "Ta sẽ khiến chúng hối hận." }, { Cue = "/VO/NemesisField_0263", Text = "Làm gì đó có ích hơn đi." }, }, { UsePlayerSource = true, RandomRemaining = true, PreLineWait = 0.15, SuccessiveChanceToPlayAll = 0.65, { Cue = "/VO/MelinoeField_0040", Text = "Ta thấy chúng rồi.", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/NemesisField_0248" }, }, }, }, { Cue = "/VO/MelinoeField_0041", Text = "Đánh đi.", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/NemesisField_0253" }, }, }, }, { Cue = "/VO/MelinoeField_0042", Text = "Nóng vội quá...", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "NemesisField_0252", "/VO/NemesisField_0255" }, }, }, }, { Cue = "/VO/MelinoeField_0043", Text = "Xem đây.", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/NemesisField_0258" }, }, }, }, { Cue = "/VO/MelinoeField_0044", Text = "Chỉ một người trong chúng ta sẽ thắng.", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/NemesisField_0262" }, }, }, }, { Cue = "/VO/MelinoeField_0045", Text = "Tập trung đi.", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/NemesisField_0263" }, }, }, }, { Cue = "/VO/MelinoeField_0046", Text = "Thế thì bắt đầu đi!" }, { Cue = "/VO/MelinoeField_0047", Text = "Thế thì, đến đây!" }, { Cue = "/VO/MelinoeField_0048", Text = "Cùng đua nào." }, { Cue = "/VO/MelinoeField_0049", Text = "Để rồi xem, Nem!", GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, { PathFalse = { "CurrentRun", "CurrentRoom", "SpeechRecord", "/VO/NemesisField_0158" } }, }, }, } }, InteractTextLineSets = { NemesisFirstMeeting = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { PathFalse = { "CurrentRun", "Cleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0002", -- Portrait = "Portrait_Nemesis_Averted_01", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", -- PreLineAnim = "Nemesis_Hub_Greet", -- PreLineAnim = "Nemesis_Hub_Salute", -- PreLineAnim = "Nemesis_Hub_Toss", -- PreLineAnim = "Nemesis_Hub_Interact", Text = "Vậy là đã gặp khó khăn rồi à! Bị đá đít về tận đây luôn này. Thật điên rồ khi bà ta cho cô đi làm nhiệm vụ một mình đấy." }, { Cue = "/VO/Melinoe_0077", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Còn cô thì may mắn khi được giao nhiệm vụ này, dù suốt ngày cãi lệnh và hay trách móc." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0458", Text = "Oh, im đi." }, }, }, }, NemesisAboutFates01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "WorldUpgradesViewed", "WorldUpgradeQuestLog" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisAboutMoros01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0034", Text = "Họ không có ý định giúp cô đâu. Nữ Thần Định Mệnh ấy. Họ không đơn giản là rủ lòng thương rồi giúp đỡ khi có ai yêu cầu. Thậm chí cô còn khiến mọi việc tồi tệ hơn." }, { Cue = "/VO/Melinoe_1541", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Có thể cô đang đánh giá thấp chị em của mình. Nếu họ đã từng giúp đỡ anh trai ta, thì có thể họ sẽ sẵn sàng giúp đỡ chúng ta. Họ cũng có phần trong chuyện này." }, { Cue = "/VO/Nemesis_0035", PreLineAnim = "Nemesis_Hub_Greet", Text = "Cái gì, ý cô là chính {#Emph}gia đình của họ ư? {#Prev}Họ chẳng đoái hoài gì đâu. Họ quá bận tâm chuyện can thiệp vào cuộc sống người khác, dàn dựng chúng như thể là tai nạn." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_1542", Text = "Cô không nên nói họ như vậy." }, }, }, }, NemesisAboutMoros01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "MorosGrantsQuestLog" }, }, { Path = { "GameState", "UseRecord", "NPC_Moros_01"}, Comparison = "<=", Value = 2, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "MorosSecondAppearance" }, Max = 4 }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0036", Text = "Không ngờ dựa hơi Nữ Thần Định Mệnh lại có hiệu quả đấy. Cuộn giấy lớn đằng kia... thực sự là của họ sao?" }, { Cue = "/VO/Melinoe_1543", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Do đích thân Ngài Moros giao tận tay. Ngài ấy có vẻ hơi vội, vậy nên bọn ta không nói chuyện nhiều. Hai người có thân với nhau không?" }, { Cue = "/VO/Nemesis_0037", Portrait = "Portrait_Nemesis_Averted_01", Text = "Bọn ta đều là con của Nyx; không ai trong bọn ta thân thiết với nhau cả. Tuy là vậy, nhưng bọn ta vẫn gặp nhau. Bọn ta thường hợp tác với nhau khi có một kẻ phàm nhân xứng đáng phải chịu định đoạt số phận." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_1544", Text = "Ta chẳng dám tưởng tượng cảnh đó." }, }, }, }, NemesisAboutMoros02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeMorosUnlock" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisWithMoros01" }, }, { Path = { "GameState", "UseRecord", "NPC_Moros_01" }, Comparison = "<=", Value = 2, }, { FunctionName = "RequiredAlive", FunctionArgs = { Ids = { 560612 }, }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0038", Text = "Ta chưa từng nghĩ sẽ gặp Moros ở đây. Nhưng nghĩ lại thì sớm muộn Diệt Vong cũng sẽ tìm đến Crossroads." }, { Cue = "/VO/Melinoe_1545", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô nói như thể đấy là tai hoạ vậy. Mọi người thân của Nyx đều được chào đón ở đây. Nữ Chúa đã hứa như vậy." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0039", Text = "Sao cũng được. Có lẽ ta cũng nên đi chào hỏi..." }, }, }, }, NemesisAboutCharon01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAny = { "NemesisShopping01", "NemesisShopping02", "NemesisShopping03", "NemesisShopping04" }, }, { FunctionName = "RequiredAlive", FunctionArgs = { Ids = { 557743 }, }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_2234", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Giữa cô và Ngài Charon chỉ là quan hệ đối tác thôi sao? Ta chưa từng thấy cô nói điều gì khác ngoài hàng hóa của ngài ấy. Ít nhất thì cô cũng đang cung cấp Vàng cho ngài ấy." }, { Cue = "/VO/Nemesis_0133", Text = "Đúng thật thì cô có một người anh em, nhưng cô không biết cảm giác khi sống chung với người đấy. Charon không thích nói chuyện; ta tôn trọng điều đó." }, { Cue = "/VO/Melinoe_2235", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Thật sao? Ngài ấy dường như không thấy phiền khi nói chuyện với ta, theo cách riêng của ngài ấy." }, EndVoiceLines = { { PreLineWait = 0.4, RequiredMinElapsedTime = 1.5, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0134", Text = "Có lẽ là do cô {#Emph}đặc biệt." }, }, }, }, NemesisAboutChaos01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "NemesisTakeExitRecord", "TrialUpgrade" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0258", Text = "Vậy là cô đã nói chuyện với Chaos, trong số tất cả vị thần... cô đang cố gắng thuyết phục những thực thể cổ xưa nhất trên thế giới chọn phe sao? Một thực thể {#Emph}không thiên vị {#Prev}bất cứ bên nào. Thông minh đấy." }, { Cue = "/VO/Melinoe_3228", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Có vẻ như cô cũng đã làm việc này khá nhiều lần! Ta thấy cô lao vào Cổng Chaos, như thể cô đã biết chính xác nơi nó dẫn đến. Không phải lần đầu tiên của cô nhỉ?" }, { Cue = "/VO/Nemesis_0259", Portrait = "Portrait_Nemesis_Averted_01", Text = "Không phải việc của cô. Đừng nghĩ Chaos chỉ giúp mỗi mình {#Emph}cô {#Prev}mà không giúp ai khác. Vì điều đó là không công bằng." }, EndVoiceLines = { { PreLineWait = 0.35, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_3229", Text = "Ta thừa nhận điều đó." }, }, }, }, NemesisAboutQuestLog01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ScreensViewed", "QuestLog" }, }, { FunctionName = "RequireQuestCount", FunctionArgs = { Status = "CashedOut", Max = 8 }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0042", Text = "Để ta đoán. Nữ Thần Định Mệnh chẳng giao cho cô thứ gì ngoài một đống việc lặt vặt nhỉ. Không tiết lộ sự kiện đặc biệt nào, chỉ giao những việc lặt vặt." }, { Cue = "/VO/Melinoe_1546", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Tốt nhất không nên nghi ngờ tính toán của họ. Một lời tiên tri nhỏ cũng có thể ảnh hưởng đến những sự kiện lớn trong tương lai." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0043", Text = "Cứ tự nhủ như thế đi." }, }, }, }, NemesisAboutTask01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "CurrentRun", "Cleared" } }, { PathFalse = { "GameState", "EnemyKills", "Chronos" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0044", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Nếu cứ thế này thì cũng chẳng có tiến triển gì. Ta thà ở ngoài kia chiến đấu, còn hơn đứng canh ở một nơi mà chẳng ai bén mảng đến nếu không được mời. Chết tiệt..." }, { Cue = "/VO/Melinoe_0679", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta thấy tình cảnh hiện tại thì việc tăng cường an ninh quanh đây là hoàn toàn hợp lý. Nhưng nếu cô không đồng ý, cô có thể đi nói Nữ Chúa, không phải ta." }, EndVoiceLines = { { PreLineWait = 0.45, ObjectType = "NPC_Nemesis_01", PreLineAnim = "Nemesis_Hub_Greet", { Cue = "/VO/Nemesis_0045", Text = "{#Emph}Ugh..." }, }, }, }, NemesisAboutTask02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "CurrentRun", "RoomsEntered" }, HasAny = { "F_Boss01", "F_Boss02" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0048", Text = "Cô không xứng đáng với điều này. Bất kỳ điều gì trong đó. Thật không công bằng. Nhưng cô buộc phải gánh vác. Vậy nên chỉ có một câu hỏi, giờ cô sẽ làm gì với nó?" }, { Cue = "/VO/Melinoe_3930", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Rồi cô sẽ sớm biết thôi! Nhưng làm sao cô có thể chắc chắn rằng ta không xứng đáng với việc này, hay nó không công bằng?" }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0049", Text = "{#Emph}Hah! {#Prev}Cô suýt nữa lừa được ta rồi đấy." }, }, }, }, NemesisAboutTask03 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { -- PathFalse = { "GameState", "EnemyKills", "Chronos" }, }, { Path = { "CurrentRun" }, HasNone = { "Cleared", "BountyCleared" } }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift08" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0050", Text = "Đừng lo, cô không bỏ lỡ quá nhiều khi ra ngoài đâu. Nhiều người đã đứng xung quanh, cầu nguyện cô được bảo hộ và chiến thắng. Vậy kết quả thế nào rồi, những thứ đó có giúp ích cho cô không?" }, { Cue = "/VO/Melinoe_1549", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ổn cả, cảm ơn. Và thiếu sự hỗ trợ từ cô cũng đã là động lực lớn đối với ta đấy." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0051", Text = "Và giờ cô đã biết thiếu đi sự hỗ trợ của ta là như thế nào rồi đấy..." }, }, }, }, NemesisAboutTask04 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "EnemyKills", "Chronos" }, }, { PathTrue = { "CurrentRun", "BiomesReached", "F" }, }, { Path = { "GameState", "CompletedRunsCache" }, Comparison = ">=", Value = 10, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0081", Text = "Cô đã cố gắng và thất bại bao nhiêu lần rồi? Tin tốt là gã Titan đó bận rộn với người thân của cô ở trên đỉnh núi nên chẳng để ý nhiều đến cô." }, { Cue = "/VO/Melinoe_1568", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Tiếc là ta không có đếm. Ta sẽ cố gắng đến khi thành công mới thôi. Nếu là cô, liệu {#Emph}cô {#Prev}có thể đánh bại Titan ngay từ lần đầu tiên gặp hắn không?" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0082", Text = "Đâu thể đoán trước được điều gì, đúng không?" }, }, }, }, NemesisAboutTraining01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0046", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta luôn nghĩ rằng... nếu ta rèn luyện chăm chỉ hơn cô, bà ta sẽ xem xét lại. Và giao cho ta sứ mệnh đó. Và ta đã cố gắng rất nhiều. Nhưng điều đó cũng chẳng nghĩa lý gì." }, { Cue = "/VO/Melinoe_1547", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta cũng đã cố gắng như cô. Và Nữ Chúa đã quán triệt rõ vai trò của chúng ta là gì. Cô không thể đòi quyền lợi cũng như ta không thể thay đổi trách nhiệm." }, EndVoiceLines = { { PreLineWait = 0.45, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0047", Text = "Thật không công bằng..." }, }, }, }, NemesisAboutWaiting01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "CurrentRun", "Cleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0077", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Đừng có ở đây nói chuyện vớ vẩn với ta, nhấc cái mông gầy guộc của cô lên mà đi xử tên Titan đó đi! Cô còn chờ gì nữa?" }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_1567", Text = "Thật thô lỗ!" }, }, }, }, NemesisAboutFamily01 = { PlayOnce = true, UseableOffSource = true, GiftableOffSource = true, PostBlockSpecialInteract = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "CurrentRun" }, HasNone = { "Cleared", "BountyCleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0052", Text = "Lại một nỗ lực thất bại khác. Cô sẵn sàng từ bỏ chưa? Cô không có đủ nhiệt huyết. Nó khiến mọi việc cô làm đều vô nghĩa." }, { Cue = "/VO/Melinoe_1550", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "{#Emph}Vô nghĩa? {#Prev}Cô có thấy mẹ ta ở đây không, Nem? Cả cha ta, rồi anh trai ta nữa. Chronos đã cướp hết tất cả từ ta!" }, { Cue = "/VO/Nemesis_0053", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta đã mất đi nhiều hơn thế, không chỉ mỗi mẹ ta. Và ta {#Emph}biết {#Prev}bà ấy như thế nào. Còn {#Emph}cô {#Prev}thì sao? Mối liên kết duy nhất cô cảm nhận được là từ lúc được sinh ra." }, EndVoiceLines = { { PreLineWait = 0.35, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_1551", Text = "Im đi." }, }, }, }, NemesisAboutFamily02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutFamily01" }, }, }, -- OnQueuedFunctionName = "CheckDistanceTriggerThread", -- OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_0602", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Những gì cô nói về mẹ ta trước đây... thật tàn nhẫn." }, { Cue = "/VO/Nemesis_0054", Portrait = "Portrait_Nemesis_Averted_01", Text = "{#Emph}Hm {#Prev}. Cũng phải thôi. Vì ở đây chúng ta không được giết nhau, nhưng có thể dùng lời nói để công kích nhau. Nếu chúng ta đối đầu nhau thực sự, ta cũng sẽ không nương tay đâu." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_0603", Text = "Ta cũng vậy." }, }, }, }, NemesisAboutFamily03 = { PlayOnce = true, UseableOffSource = true, GiftableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisGift07", "HadesWithPersephoneGift01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0412", Text = "Gia đình cô thế nào rồi? Nữ Hoàng Persephone, Hoàng Tử Zagreus, và những người khác. Hắn vẫn chưa muốn đòi lại thanh kiếm này, phải không?" }, { Cue = "/VO/Melinoe_5251", UsePlayerSource = true, Portrait = "Portrait_Mel_Casual_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Anh ấy chưa nhắc đến chuyện đó, anh ấy... ta cũng không biết nữa, ta rất quý anh ấy. Có lẽ vì ta đã không được gặp anh ấy kể từ khi còn rất nhỏ, khác hẳn với những anh chị em khác trong gia đình. Còn cha mẹ ta thì... họ đúng như những gì ta từng hình dung." }, { Cue = "/VO/Nemesis_0413", PreLineAnim = "Nemesis_Hub_Greet", Portrait = "Portrait_Nemesis_Averted_01", Text = "Phải rồi. Có lẽ trí tưởng tượng của cô đang lấp đầy sự cô đơn. Nhưng ít nhất cô cũng đã tìm được họ, và đó là một khởi đầu tốt. Không nên xem nhẹ điều đó." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_5252", Text = "Không hề." }, }, }, }, NemesisAboutChronosBossL02 = { PlayOnce = true, UseableOffSource = true, InitialGiftableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "TextLinesRecord", "NemesisAboutChronosBossW01" }, }, { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "CurrentRun", "RoomsEntered", "I_Boss01" }, }, { PathFalse = { "CurrentRun", "Cleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0249", Text = "Họ nói rằng trước đây cô đã đến tận Tartarus. Vậy cô đã đi được bao xa? Nó có giúp cô trở về ngôi nhà {#Emph}thực sự của cô không?" }, { Cue = "/VO/Melinoe_3223", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nếu cô đang đề cập đến Lãnh Địa của Hades, thì đúng, ta đã đến nơi đó. Tuy nhiên, giờ gọi nơi đó là Lãnh Địa của {#Emph}Chronos {#Prev}thì đúng hơn. Hắn đang chờ bên trong, đúng như mong đợi, và... hắn cũng rất mạnh nữa." }, { Cue = "/VO/Nemesis_0250", PreLineAnim = "Nemesis_Hub_Greet", Text = "Ý cô là áp đảo chứ gì. Chà, cũng không thể phủ nhận cố gắng của cô. Vậy kế hoạch bây giờ là gì, tiếp tục đối đầu với hắn cho đến khi cô suy sụp tinh thần à? Có thể điều đó đã xảy ra rồi chăng?" }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, -- RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_3224", Text = "Sứ mệnh vẫn không thay đổi." }, }, { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0251", Text = "Thật cố chấp." }, }, }, }, -- alt below with different requirements NemesisAboutChronosBossL01 = { PlayOnce = true, UseableOffSource = true, InitialGiftableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasNone = { "NemesisAboutChronosBossW01", "NemesisAboutChronosBossL01_B" } }, { PathTrue = { "CurrentRun", "RoomsEntered", "I_Boss01" }, }, { PathFalse = { "GameState", "EnemyKills", "Chronos" }, }, { PathFalse = { "CurrentRun", "Cleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0224", Text = "Không thể tin được cô lại tìm được Chronos trước ta đấy. Mặc dù biết cô chẳng có cơ hội nào khi chống lại hắn, nhưng... không ngờ cô lại tìm được hắn sớm như vậy." }, { Cue = "/VO/Melinoe_3098", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đó có phải lời khen không? Hay là ẩn ý muốn xin lỗi?" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0225", Text = "Không phải." }, }, }, }, -- alt if you didn't get to Chronos again NemesisAboutChronosBossL01_B = { PlayOnce = true, UseableOffSource = true, InitialGiftableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAny = { "NemesisAboutChronosBossL02" }, }, { Path = { "GameState", "TextLinesRecord" }, HasNone = { "NemesisAboutChronosBossW01", "NemesisAboutChronosBossL01" }, }, { PathFalse = { "CurrentRun", "Cleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0224", Text = "Không thể tin được cô lại tìm được Chronos trước ta đấy. Mặc dù biết cô chẳng có cơ hội nào khi chống lại hắn, nhưng... không ngờ cô lại tìm được hắn sớm như vậy." }, { Cue = "/VO/Melinoe_3098", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đó có phải lời khen không? Hay là ẩn ý muốn xin lỗi?" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0225", Text = "Không phải." }, }, }, }, NemesisAboutChronosBossW01 = { PlayOnce = true, UseableOffSource = true, InitialGiftableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "CurrentRun", "RoomsEntered", "I_Boss01" }, }, { Path = { "GameState", "EnemyKills", "Chronos" }, Comparison = ">=", Value = 1, }, { PathTrue = { "CurrentRun", "Cleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0226", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta cá là cô đến đây để cười hả hê. {#Emph}Ta đã đánh bại hắn! Ta đã đánh bại Titan! {#Prev}Nhưng điều đó cũng chẳng có ích gì. Hắn vẫn còn sống, cô vẫn cảm nhận được hắn đúng không?" }, { Cue = "/VO/Melinoe_2965", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta không đến đây để cười nhạo cô, và đúng là vậy, ta vẫn cảm nhận được hắn. Nhưng nếu ta đã từng đánh bại Chronos một lần, thì ta vẫn có thể lặp lại điều đó. Và đến một ngày nào đó... hắn sẽ không trở lại nữa." }, { Cue = "/VO/Nemesis_0227", PreLineAnim = "Nemesis_Hub_Greet", Text = "Phải. Vì nếu ngày đó lại đến, ta sẽ tự tay kết liễu hắn." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, -- RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_2966", Text = "Để cô có thể cười nhạo ta phải không?" }, }, }, }, NemesisAboutChronosBossFights01 = { PlayOnce = true, UseableOffSource = true, InitialGiftableOffSource = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "RoomsEntered", "I_Boss01" }, }, { PathTrue = { "CurrentRun", "Cleared" } }, { Path = { "GameState", "EnemyKills", "Chronos" }, Comparison = ">=", Value = 3, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0252", Portrait = "Portrait_Nemesis_Averted_01", Text = "Phải thừa nhận rằng ta đã sai. Ta chưa từng nghĩ cô lại tìm đến Chronos trước cả ta. Không những thế, cô còn đánh bại hắn rất nhiều lần. Vậy nên — ta đã lầm. Xin lỗi." }, { Cue = "/VO/Melinoe_3225", UsePlayerSource = true, PreLineWait = 0.35, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nemesis, ta muốn nói rằng ta khá ngạc nhiên khi nghe những lời nói đó thốt ra từ cô đấy. Có vẻ như mỗi người trong chúng ta đều có khả năng khiến người khác phải ngạc nhiên nhỉ. Nhưng suy cho cùng thì... vẫn cảm ơn cô." }, { Cue = "/VO/Nemesis_0253", PreLineAnim = "Nemesis_Hub_Salute", Portrait = "Portrait_Nemesis_Averted_01", Text = "Không cần. Sự thật là vậy. Ta đã có cơ hội bắt kịp cô, nhưng ta không thể vượt qua những cạm bẫy trên đường. Có lẽ ta đã có thể đối mặt với Chronos. Nhưng bây giờ ta không chắc về điều đó nữa." }, { Cue = "/VO/Melinoe_3226", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đừng nản lòng ngay lúc này chứ. Vẫn còn nhiều việc phải làm, và chúng ta cần tất cả sức mạnh cũng như sự cảnh giác của cô. Chúng ta là Hội Vô Hình; chỉ có sự đoàn kết mới có thể chiến thắng." }, EndVoiceLines = { { PreLineWait = 0.4, RequiredMinElapsedTime = 2, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0254", Text = "Cô không thể ngưng lảm nhảm những lời động viên ư?" }, }, { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_3227", Text = "...Không hẳn." }, }, }, }, NemesisAboutUltimateProgress01 = { PlayOnce = true, UseableOffSource = true, InitialGiftableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { Path = { "CurrentRun", "RoomsEntered" }, HasAny = { "Q_Intro", "I_Intro" }, }, { Path = { "GameState", "EnemyKills", "Chronos" }, Comparison = ">=", Value = 2, }, { Path = { "GameState", "EnemyKills", "TyphonHead" }, Comparison = ">=", Value = 2, }, { Path = { "GameState", "TextLinesRecord" }, HasAny = { "HecateAboutStormStop01", "HecateAboutStormStop01_B", "HecateAboutChronosBossW04" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0308", Text = "Không thể tiêu diệt Chronos, cũng không thể tiêu diệt Typhon, giờ phải làm sao? Cứ tiếp tục thế này mãi cho đến khi có kẻ bỏ cuộc ư? Ta tưởng chúng ta có kế hoạch tốt hơn chứ." }, { Cue = "/VO/Melinoe_4428", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", Text = "Tên Titan tưởng rằng hắn đã chiếm được thế thượng phong khi đánh thức con quái vật đó. Nhưng chúng ta sẽ biến trở ngại đó thành lợi thế. Typhon sở hữu sức mạnh khủng khiếp; một thứ sức mạnh mà chúng ta có thể tận dụng." }, { Cue = "/VO/Nemesis_0309", PreLineAnim = "Nemesis_Hub_Salute", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cô thực sự nghĩ rằng Titan sẽ tự tay dâng chìa khóa dẫn đến sự diệt vong của chính hắn ư? Nghe có vẻ chẳng khôn ngoan chút nào." }, { Cue = "/VO/Melinoe_4429", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01ReturnToIdle", PreLineAnimTarget = "Hero", Text = "Kế hoạch ban đầu vẫn là tận dụng những gì mà hắn không biết." }, EndVoiceLines = { { PreLineWait = 0.38, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0310", Text = "Ta nghĩ hắn biết nhiều hơn cô đấy." }, }, }, }, NemesisAboutChronosNightmare01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ChronosNightmare01" }, }, { -- PathTrue = { "GameState", "TextLinesRecord", "NemesisGift01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_1570", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta đã có một giấc mơ, Nem. Mẹ của cô và cha của ta đã xuất hiện trong đó. Ông ấy đã lo lắng cho bà ấy, khi bà ấy... trúng phép thuật của Titan." }, { Cue = "/VO/Nemesis_0090", Portrait = "Portrait_Nemesis_Averted_01", Text = "Mẫu thân của ta, Nyx, đã phạm phải một sai lầm khi tin tưởng và giao cho Hades phần lớn Địa Ngục. Thế giới này chưa từng thuộc về ông ta, cho đến khi Nữ Thần Định Mệnh quyết định điều đó. Mẹ ta đã cố gắng rất nhiều. Có lẽ vì vậy mà họ đã cử một vị thần đến giúp đỡ bà ấy." }, { Cue = "/VO/Melinoe_0621", UsePlayerSource = true, -- Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ý cô là Nữ Thần Định Mệnh đã trao quyền cai trị cõi người chết cho cha ta chỉ để giúp Nyx gánh vác một phần sứ mệnh của bà ấy?" }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0091", Text = "Chính xác." }, }, { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_0622", Text = "Huh." }, }, }, }, -- alt below NemesisAboutChronosNightmare02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutChronosNightmare01" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisAboutChronosNightmare02_B" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_0623", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Portrait = "Portrait_Mel_Vulnerable_01", Text = "Nemesis, trong giấc mơ của ta... Chronos, hắn... đã yêu cầu cha ta nói cho hắn biết nơi ẩn náu của Nữ Thần Định Mệnh." }, { Cue = "/VO/Nemesis_0092", PreLineAnim = "Nemesis_Hub_Greet", Portrait = "Portrait_Nemesis_Averted_01", Text = "Thông minh đấy. Mẹ Nyx sẽ không bao giờ nói cho hắn biết. Mặc dù các Nữ Thần Định Mệnh là chị em với ta nhưng ngay cả ta cũng không biết họ đang ở đâu. Miễn là họ đang ẩn náu thì không ai có thể can thiệp vào kế hoạch của họ." }, { Cue = "/VO/Melinoe_1571", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô có vẻ không một chút lo ngại chuyện Chronos đã tìm thấy ba người dệt nên định mệnh và ép buộc họ phải thay đổi định mệnh của tương lai." }, { Cue = "/VO/Nemesis_0093", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "{#Emph}Thế à? {#Prev}Ta có bao giờ tạo ấn tượng cho cô rằng ta đã hy vọng mọi chuyện sẽ diễn ra tốt đẹp chưa?" }, { Cue = "/VO/Melinoe_1572", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Làm sao hắn có thể tìm được họ chứ? Không lẽ những Nữ Thần Định Mệnh lại không tiên đoán được mối đe dọa đang đến?" }, { Cue = "/VO/Nemesis_0094", PostLineAnim = "Nemesis_Hub_Glare_End", Portrait = "Portrait_Nemesis_Averted_01", Text = "Họ luôn tiên đoán. Nhưng họ cũng chỉ tiên đoán được một phần nhỏ sự kiện. Còn Chronos là Thời Gian. Và {#Emph}Thời Gian {#Prev}thường trôi nhanh hơn những gì chúng ta mong đợi." }, }, NemesisAboutChronosNightmare02_B = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutChronosNightmare01" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisAboutChronosNightmare02" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_0623", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Portrait = "Portrait_Mel_Vulnerable_01", Text = "Nemesis, trong giấc mơ của ta... Chronos, hắn... đã yêu cầu cha ta nói cho hắn biết nơi ẩn náu của Nữ Thần Định Mệnh." }, { Cue = "/VO/Nemesis_0092", Text = "Thông minh đấy. Mẹ Nyx sẽ không bao giờ nói cho hắn biết. Mặc dù các Nữ Thần Định Mệnh là chị em với ta nhưng ngay cả ta cũng không biết họ đang ở đâu. Miễn là họ đang ẩn náu thì không ai có thể can thiệp vào kế hoạch của họ." }, { Cue = "/VO/Melinoe_5278", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô có vẻ không một chút lo ngại chuyện Chronos đã tìm thấy ba người dệt nên định mệnh và ép buộc họ phải thay đổi định mệnh của tương lai." }, { Cue = "/VO/Nemesis_0093", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "{#Emph}Thế à? {#Prev}Ta có bao giờ tạo ấn tượng cho cô rằng ta đã hy vọng mọi chuyện sẽ diễn ra tốt đẹp chưa?" }, { Cue = "/VO/Melinoe_5279", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Hắn đã làm điều đó bằng cách nào...? Chẳng lẽ Nữ Thần Định Mệnh không nhìn thấy trước viễn cảnh đó ư?" }, { Cue = "/VO/Nemesis_0094", PostLineAnim = "Nemesis_Hub_Glare_End", Portrait = "Portrait_Nemesis_Averted_01", Text = "Họ luôn tiên đoán. Nhưng họ cũng chỉ tiên đoán được một phần nhỏ sự kiện. Còn Chronos là Thời Gian. Và {#Emph}Thời Gian {#Prev}thường trôi nhanh hơn những gì chúng ta mong đợi." }, }, NemesisAboutWeapons01 = { GameStateRequirements = { { PathTrue = { "GameState", "WeaponsUnlocked", "WeaponDagger" }, }, { Path = { "GameState", "WeaponsUnlocked" }, HasAny = { "WeaponAxe", "WeaponTorch", "WeaponLob" }, }, }, PlayOnce = true, UseableOffSource = true, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0086", Text = "Ngay cả vũ khí của Mẫu Thân Nyx cũng yêu thích cô. Ta luôn nghĩ Vũ Khí Hắc Ám sẽ thức tỉnh vì ta trước. Nhưng Nữ Thần Định Mệnh lại có quyết định khác." }, { Cue = "/VO/Melinoe_1569", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta nghĩ Nữ Thần Định Mệnh đã tin tưởng ở cô. Cô là người sở hữu Stygius! Kẻ sát thần, Titan và những người hùng." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0087", Text = "Có vẻ như nó cần được nghỉ ngơi dài hạn đấy." }, }, }, }, NemesisAboutGoldenAge01 = { PlayOnce = true, UseableOffSource = true, GiftableOffSource = true, PostBlockSpecialInteract = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisGift01", "NemesisAboutEvil01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_0613", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nem. Cô khá bận tâm đến công lý ở trần gian. Vậy cô có quan tâm đến công lý cho chúng ta không? Chronos đã cướp mọi thứ từ chúng ta! Cô từng nói rằng chúng ta sẽ nhận được những gì mà chúng ta xứng đáng phải nhận, đúng không?" }, { Cue = "/VO/Nemesis_0083", PreLineAnim = "Nemesis_Hub_Greet", Text = "{#Emph}Khh. {#Prev}Chà, vấn đề là ở đây. Nếu cô biết điều gì đó về người phàm, thì đó là họ từng có cuộc sống tốt hơn trong quá khứ. Cũng giống như khi Chronos cai trị. Nó được gọi là {#Emph}Thời Hoàng Kim." }, { Cue = "/VO/Melinoe_2749", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", Text = "Như thế chẳng phải quá tuyệt vời với họ sao! Giá như Chronos đối xử tử tế với những đứa con của hắn. Cô có nghĩ việc hắn đối xử tốt với một số người phàm có thể bù đắp lại những gì hắn đã gây ra không?" }, { Cue = "/VO/Nemesis_0084", Portrait = "Portrait_Nemesis_Averted_01", Text = "Không. Nghe này. Giả sử như... đây {#Emph}là {#Prev}những điều chúng ta xứng đáng phải chịu thì sao?" }, { Cue = "/VO/Melinoe_0615", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01ReturnToIdle", PreLineAnimTarget = "Hero", Text = "Chúng ta xứng đáng nhận được những điều tốt đẹp hơn thế này, Nemesis. Sống ẩn dật. Bị tách khỏi gia đình. Cô không muốn đòi lại công lý cho họ sao?" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0085", Text = "{#Emph}Hah." }, }, { PreLineWait = 0.45, UsePlayerSource = true, -- Fine. { Cue = "/VO/Melinoe_0616", Text = "Vậy thôi." }, }, }, }, NemesisAboutSurface01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "HermesFirstPickUp" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisAboutSurface01_B" }, }, { PathFalse = { "GameState", "RoomsEntered", "N_Hub" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_1561", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", -- PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "...Đã bao lâu rồi cô chưa đặt chân lên trần gian vậy?" }, { Cue = "/VO/Nemesis_0070", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cũng khá lâu rồi. Có thể coi như ta bị mắc kẹt ở đây. Nhưng, có phàn nàn thì cũng chẳng giải quyết được gì. Sao cô lại hỏi vậy?" }, { Cue = "/VO/Melinoe_1562", UsePlayerSource = true, -- PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Hermes muốn ta đến thăm khi có thể. Và muốn biết trước để còn chuẩn bị tiếp đón." }, { Cue = "/VO/Nemesis_0071", Text = "Như ta đã nói. Linh hồn người chết đang lang thang tự do ngoài đó nhờ ơn từ người bạn Titan của chúng ta. Cô sẽ cảm thấy ngoài đó như ở nhà thôi." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_1563", Text = "Nghe có vẻ hay đấy." }, }, }, }, NemesisAboutSurface01_B = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "HermesFirstPickUp" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisAboutSurface01" }, }, { Path = { "GameState", "RoomCountCache" }, SumOf = { "N_Boss01", "N_Boss02" }, Comparison = "<=", Value = 5, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_1561", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", -- PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "...Đã bao lâu rồi cô chưa đặt chân lên trần gian vậy?" }, { Cue = "/VO/Nemesis_0070", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cũng khá lâu rồi. Có thể coi như ta bị mắc kẹt ở đây. Nhưng, có phàn nàn thì cũng chẳng giải quyết được gì. Sao cô lại hỏi vậy?" }, { Cue = "/VO/Melinoe_3211", UsePlayerSource = true, -- PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Hermes muốn ta đến thăm khi có thể. Và muốn biết trước để còn chuẩn bị tiếp đón." }, { Cue = "/VO/Nemesis_0071", Text = "Như ta đã nói. Linh hồn người chết đang lang thang tự do ngoài đó nhờ ơn từ người bạn Titan của chúng ta. Cô sẽ cảm thấy ngoài đó như ở nhà thôi." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_1563", Text = "Nghe có vẻ hay đấy." }, }, }, }, NemesisAboutSurface02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisAboutSurface03" }, }, { PathTrue = { "CurrentRun", "BiomesReached", "N" }, }, { Path = { "GameState", "RoomCountCache" }, SumOf = { "N_Boss01", "N_Boss02" }, Comparison = "<=", Value = 10, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0166", Text = "Cô đã thực sự đi lên đó sao. Họ đang lẽ phải chọn ai đó có kinh nghiệm hơn, nhưng ta đoán ta không xứng như mình nghĩ." }, { Cue = "/VO/Melinoe_1575", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta cần đến đó như một phần nhiệm vụ. Nhưng những người trên đó chắc chắn sẽ nhớ đến cô. Rất nhiều sự thống khổ..." }, { Cue = "/VO/Nemesis_0167", Portrait = "Portrait_Nemesis_Averted_01", Text = "Công lý chẳng còn quan trọng nữa. Người phàm xứng đáng nhận điều đó. Có lẽ cả chúng ta cũng vậy." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_1576", Text = "Đừng nói vậy..." }, }, }, }, NemesisAboutSurface03 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "RoomsEntered", "N_Opening01" }, Comparison = ">=", Value = 8, }, { SumPrevRuns = 2, Path = { "RoomsEntered" }, TableValuesToCount = { "N_Opening01" }, Comparison = ">=", Value = 2, }, { PathTrue = { "CurrentRun", "BiomesReached", "N" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0168", Text = "Cô lại tiếp tục đi lên trong khi đáng lẽ ra cô phải đi xuống dưới, hướng đến mục tiêu của cô. Hãy quên ngọn núi đó đi. Đó không phải cuộc chiến của cô." }, { Cue = "/VO/Melinoe_0618", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Portrait = "Portrait_Mel_Intense_01", Text = "Gia đình của ta trên Olympus đang bị đội quân của Chronos tấn công mà cô bảo đó không phải cuộc chiến của ta ư?" }, { Cue = "/VO/Nemesis_0169", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Không. Hắn ở bên dưới, ngồi ung dung trên ngai vàng của cha cô. Và cô chẳng có việc gì khác phải lo ngoài việc đối phó với hắn cả." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, RequiredMinElapsedTime = 3, { Cue = "/VO/Melinoe_0619", Text = "Sao lại không nhỉ." }, }, }, }, NemesisAboutSurface04 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { PathFalse = { "CurrentRun", "ActiveBounty" }, }, { PathTrue = { "CurrentRun", "RoomsEntered", "N_Opening01" }, }, { PathTrue = { "GameState", "RoomsEntered", "Q_Boss01" } }, OrRequirements = { { { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutTyphon01" }, }, }, { { Path = { "GameState", "RoomsEntered", "Q_Boss01" }, Comparison = ">=", Value = 2, }, }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_4424", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Sao ta chẳng bao giờ thấy cô xuất hiện trên trần gian vậy, Nem? Chắc hẳn trên đó có không ít kẻ thù xứng đáng hứng chịu sự trừng phạt từ cô." }, { Cue = "/VO/Nemesis_0303", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Tiêu Diệt Chronos là nhiệm vụ duy nhất. Ta sẽ không vướng vào những thứ vặt vãnh như cô. Mỗi đêm cô ở trên núi, tên Titan lại càng củng cố vị thế của hắn ở Địa Ngục." }, { Cue = "/VO/Melinoe_4425", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô không thấy sự xuất hiện của Typhon đang khiến tình hình trở nên nghiêm trọng hơn ư? Hắn đâu phải mối đe dọa tầm thường." }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0304", Text = "Thật sao? Cứ chờ mà xem." }, }, }, }, NemesisAboutEris01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAny = { "ErisFirstMeeting", "ErisFirstMeeting_B" }, }, { Path = { "GameState", "UseRecord", "NPC_Eris_01" }, Comparison = "<=", Value = 10, }, { PathFalse = { "GameState", "RoomsEntered", "O_Boss01" }, }, { FunctionName = "RequiredAlive", FunctionArgs = { Ids = { 585573 } }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0228", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Eris đã quay lại. Cô đã làm gì vậy? Cô triệu hồi cô ta à? Ta đã thấy cô nói chuyện với cô ta." }, { Cue = "/VO/Melinoe_3099", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô không vui khi gặp lại em gái cô sao? Ta không có quyền kiểm soát cô ta nhiều hơn cô đâu. Và Nữ Chúa đang trừng phạt cô ta bằng cách im lặng." }, { Cue = "/VO/Nemesis_0229", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Đúng hơn là, Eris nên ở một nơi nào đó cách xa nơi này. Nhưng tin tốt là nơi này không thể bị phát hiện, vì nếu không thì cô ta đã dẫn Chronos đến chỗ chúng ta rồi." }, { Cue = "/VO/Melinoe_3100", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô thực sự nghĩ rằng con gái của Nyx sẽ phản bội chúng ta sao? Ta biết Eris là một trường hợp khác, nhưng vẫn phải cảnh giác." }, { Cue = "/VO/Nemesis_0230", Text = "Cha của cô là con trai của Chronos đấy. Nên đánh đồng họ với nhau không?" }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_3101", Text = "...Nghe cũng hợp lý đấy." }, }, }, }, NemesisAboutErisFight01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "CurrentRun", "RoomsEntered" }, HasAny = { "O_Boss01", "O_Boss02" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_3102", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Eris đứng về phe đối lập với chúng ta. Ngay khi ta gần lên đến trần gian, cô ta đã chờ sẵn ở đó. Cô ta dùng Khẩu Súng Adamant thay cho lời chào hỏi." }, { Cue = "/VO/Nemesis_0231", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Trông ta có ngạc nhiên không? Thế thì đã sao? Không thể tống cô ta đi, vì {#Emph}mọi đứa con của Nyx đều được chào đón ở đây {#Prev}, dù đó là ý tưởng sáng suốt của ai đó. Có lẽ nên cho cô ta {#Emph}cơ hội thứ hai {#Prev}nhỉ?" }, EndVoiceLines = { { PreLineWait = 0.43, UsePlayerSource = true, { Cue = "/VO/Melinoe_3103", Text = "Ta hiểu ý cô rồi." }, }, }, }, NemesisAboutErisFight02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, { Path = { "CurrentRun", "RoomsEntered" }, HasAny = { "O_Boss01", "O_Boss02" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_3220", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Không có cách nào để thuyết phục Eris thay đổi suy nghĩ sao? Thuyết phục cô ta tránh khỏi đường đến Olympus của ta. Hoặc nếu thất bại, có lẽ nên dùng đến biện pháp không chế tay hoặc chân cô ta nhỉ?" }, { Cue = "/VO/Nemesis_0247", Text = "Ta sẽ không phí một chút thời gian nào với cô ta, nhưng khóa tay hoặc chân nghe cũng thú vị đấy. Gần đây cô không thấy cô ta bay ngang qua Địa Ngục, đúng chứ?" }, { Cue = "/VO/Melinoe_3221", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Không nơi nào khác ngoài Crossroads cả. Nhưng ý cô là sao, cô muốn ta tránh xa cô ta và chỉ tập trung vào mỗi Chronos bên dưới thôi ư? Đối với ta thì mọi chuyện không đơn giản như vậy." }, { Cue = "/VO/Nemesis_0248", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta không nói nó đơn giản. Nhưng nếu cô không muốn đối phó với {#Emph}Eris {#Prev}, cô nên tập trung vào mục tiêu chính của mình. Hoặc cô nên nhường việc đó cho {#Emph}ta {#Prev}mà lẽ ra từ đầu nên làm vậy." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_3222", Text = "Đã ghi nhận ý kiến." }, }, }, }, NemesisAboutErisFightW01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "EnemyKills", "Eris" }, }, { FunctionName = "RequiredAlive", FunctionArgs = { Ids = { 585573 }, }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0244", Text = "Cô cho Eris biết lễ độ rồi đúng không. Từ đây ta cũng có thể nghe được tiếng khóc của cô ta. Lâu rồi ta không được đá vào mông cô ta. Ít nhất thì ai đó đã làm thay nghĩa vụ mà lẽ ra ta phải làm." }, { Cue = "/VO/Melinoe_3218", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Có lẽ những trận đánh nhau nảy lửa giữa hai người đã góp phần tạo nên tính cách khó ưa của cô ta. Hoặc cả cô nói chung. Trừ khi cô chắc chắn rằng cả hai chẳng vì những chuyện đó mà thay đổi, thì trong trường hợp đó, lý do hai người đánh nhau là gì?" }, { Cue = "/VO/Nemesis_0245", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Cô cũng tiếp xúc với cô ta rồi đấy. Cô ta luôn muốn gây sự. Cô cũng đã tiếp xúc với ta. Và ta thì chẳng nhịn bất cứ ai. Còn cô nữa, nên học cách chấp nhận lời khen đi." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_3219", Text = "...Chắc ta bỏ lỡ bài học đó rồi." }, }, { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0246", Text = "Rõ ràng là vậy." }, }, }, }, NemesisAboutNyx01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisBathHouse03", "DemeterFirstPickUp" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_5260", UsePlayerSource = true, Portrait = "Portrait_Mel_Empathetic_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Có ai từng nói rằng cô trông giống Nyx chưa, Nemesis? Sau khi gặp bà ấy, ta đã nhận ra sự tương đồng. Thật ra thì khi lần đầu gặp bà ấy, ta... ừm, không có gì." }, { Cue = "/VO/Nemesis_0425", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Không, nói hết câu đi. Lần đầu gặp bà ấy, rồi sao nữa?" }, { Cue = "/VO/Melinoe_5261", UsePlayerSource = true, PreLineWait = 0.35, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ừm... lần đầu gặp bà ấy, ta... nghe này, ta thực sự choáng ngộp trước diện mạo của bà ấy! Theo hướng tích cực. Bà ấy trông giống như cô, nhưng khoác lên mình một bộ trang phục thanh lịch, với thần thái lạnh lùng." }, { Cue = "/VO/Nemesis_0426", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_End", Text = "Đó là lời khen mà cô nghĩ ra à? Chẳng ai muốn trông giống mẹ của mình cả. Mà ta cũng chẳng giống mẹ của ta chút nào. Có lẽ là ngoại trừ mái tóc." }, { Cue = "/VO/Melinoe_5262", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nữ Thần Demeter nói rằng ta trông giống hệt mẹ của ta, và ta thấy đó là một lời khen! Nữ Hoàng Persephone thì vô cùng xinh đẹp." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0427", Text = "Cô nghĩ bà ấy và Nyx có mối quan hệ như chúng ta không?" }, }, { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_5263", Text = "Sao lại không nhỉ?" }, }, }, }, NemesisAboutNyx02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "CurrentRun", "UseRecord", "NPC_Nyx_Story_01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0423", Text = "Đêm qua ta tình cờ gặp Nyx. Vậy là mỗi khi bà ấy cảm thấy mệt mỏi khi ở cạnh Hades và Persephone, bà ấy lại tìm đến Chaos để tìm chút không gian yên tĩnh. Ta hiểu vì sao bà ấy lại thích nơi đó." }, { Cue = "/VO/Melinoe_5258", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Bà ấy không làm vậy để né tránh cha mẹ ta! Với tất cả sự kiện mà Địa Ngục đã trải qua, chẳng phải Màn Đêm và Chaos có rất nhiều điều cần bàn luận sao?" }, { Cue = "/VO/Nemesis_0424", PreLineAnim = "Nemesis_Hub_Greet", Text = "Chắc rồi. Ta đang cố tưởng tượng xem họ đáng nói về điều gì. Nơi này thật tăm tối, thưa Chaos. Đúng vậy, Nyx." }, EndVoiceLines = { { PreLineWait = 0.3, UsePlayerSource = true, { Cue = "/VO/Melinoe_5259", Text = "{#Emph} {#Prev}Xin lỗi." }, }, }, }, NemesisAboutNyxRescue01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisGift06", "NyxWithNemesis01", "HadesWithPersephoneGift01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_5255", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cảm giác thế nào khi mẹ của cô đã trở lại? Ta vẫn đang làm quen dần với việc có mẹ ở bên cạnh, mặc dù có thể ta không thường xuyên gặp bà ấy." }, { Cue = "/VO/Nemesis_0421", Text = "Ta không nghĩ Mẹ Nyx sẽ thường xuyên xuất hiện. Trước giờ vốn đã như vậy. Nhưng bà ấy chưa bao giờ thực sự biến mất. Màn Đêm đã tồn tại trước cả Thời Gian. Chẳng ai dám động đến bà ấy." }, { Cue = "/VO/Melinoe_5256", UsePlayerSource = true, Portrait = "Portrait_Mel_Casual_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nhân tiện nhắc đến chuyện đó, có vẻ như cô lại được toàn quyền Trừng Phạt, mặc dù trước đây cô cũng đã từng làm vậy. Giờ thì không cần truy sát Chronos nữa!" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0422", Text = "Ồ, ta vẫn chưa xong việc đâu." }, }, { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_5257", Text = "Ta chẳng hề ngạc nhiên chút nào!" }, }, }, }, NemesisAboutHecate01 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisWithHecate01" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisWithHecate02" }, }, }, PlayOnce = true, UseableOffSource = true, { Cue = "/VO/Melinoe_1552", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Vậy tình hình nghiêm trọng đến mức nào khi cô tỏ thái độ với Nữ Chúa vậy, Nem? Hành động đó là hoàn toàn thiếu tôn trọng, kể cả đó là cô." }, { Cue = "/VO/Nemesis_0057", PreLineAnim = "Nemesis_Hub_Greet", Text = "{#Emph}Heh! {#Prev}Chà, có vẻ như ta phải gác cổng lâu dài rồi. Nhưng nó cũng xứng đáng. Giúp cân bằng với việc cô suốt ngày nịnh bợ bà ta." }, { Cue = "/VO/Melinoe_1553", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Điều đó chứng tỏ cô không phân biệt được giữa phép lịch sự cơ bản và việc mà cô gọi là nịnh bợ." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0058", Text = "Cô cũng chỉ là một công cụ đối với bà ta thôi." }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisAboutHecate02 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutHecate01" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisWithHecate02" }, }, }, PlayOnce = true, UseableOffSource = true, { Cue = "/VO/Melinoe_1554", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Giữa cô và Nữ Chúa vẫn luôn như thế này à? Ta cứ tưởng người mà cô ghét nhất là {#Emph}ta {#Prev}chứ." }, { Cue = "/VO/Nemesis_0059", Text = "Cô vẫn còn quá ngây thơ đấy, Công Chúa. Còn về phần Hecate, trước kia ta đã từng rất tôn trọng bà ta cho đến khi bà ta quyết định công việc hiện tại là cách tốt nhất để sử dụng tài năng của ta." }, { Cue = "/VO/Melinoe_1555", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Bà ấy đã quyết định điều đó từ lâu rồi. Vậy cô định hận bà ấy mãi ư? Hay cô sẽ làm gì đó để thay đổi chuyện này?" }, { Cue = "/VO/Nemesis_0060", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", -- Portrait = "Portrait_Nemesis_Averted_01", Text = "{#Emph}Ta {#Prev}đang thực hiện điều đó đây! Ta tôn trọng lời thề của ta với Mẹ Nyx. Nếu không thì ta đã rời đi từ lâu rồi, ta khá chắc cô sẽ thất vọng về điều đó." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, -- RequiredMinElapsedTime = 3, { Cue = "/VO/Melinoe_1556", Text = "Phải, ta sẽ rất thất vọng." }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisAboutLosingToHecate01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "F_Boss01", "F_Boss02" }, }, { PathFalse = { "GameState", "RoomsEntered", "H_Boss01" }, }, { PathFalse = { "CurrentRun", "RoomsEntered", "F_PostBoss01" }, }, { PathFalse = { "CurrentRun", "EnemyKills", "Hecate" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0061", Text = "Ta thắc mắc tại sao Hecate lại rời đi đột ngột như vậy. Chỉ để cản trở cô! Tiễn cô về nhà chỉ để khóc. Ta đoán bà ta không muốn cô thành công đây mà." }, { Cue = "/VO/Melinoe_1557", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Bà ấy mong ta chuẩn bị sẵn sàng cho mọi điều có thể xảy ra phía trước." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0062", Text = "Đôi khi cô thật dễ dãi." }, }, }, }, NemesisAboutDefeatingHecate01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "EnemyKills", "Hecate" }, }, { Path = { "GameState", "RoomsEntered", "F_PostBoss01" }, Comparison = "<=", Value = 8, }, { PathFalse = { "CurrentRun", "BiomesReached", "H" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0063", Text = "Lần đó cô đã vượt qua bài thử thách nhỏ của bà ta. Chắc hẳn cô cảm thấy rất tuyệt khi cô đánh bại bà ta. Ta không có cơ hội được đấu với bà ta, nên ta chỉ có thể tưởng tượng." }, { Cue = "/VO/Melinoe_1558", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Bọn ta không chỉ đấu tập. Cô không biết gì về vai trò của bọn ta cả." }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0064", Text = "Ta biết ta có thể đánh bại bà ta..." }, }, }, }, NemesisAboutOdysseus01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAny = { "OdysseusAboutNemesis01", "OdysseusAboutNemesis02" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisWithHecate02" }, }, }, { Cue = "/VO/Nemesis_0137", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Lần sau, nếu có gì muốn nói về ta, thì đến gặp ta mà nói trực tiếp. Nhưng ta thừa biết những phù thủy như cô chỉ thích giải quyết vấn đề một cách lén lút." }, { Cue = "/VO/Melinoe_2236", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô đang nói cái quái gì vậy? Ta nghĩ cô đang đa nghi và đỗ lỗi cho người khác. Đấy! Ta nói thẳng với cô rồi đấy." }, { Cue = "/VO/Nemesis_0138", -- Portrait = "Portrait_Nemesis_Averted_01", Text = "Odysseus đã cố kể lại cho ta một lần trò chuyện của ông ta. Đừng có bảo với ta rằng cô không đi mách lẻo với ông ta?" }, { Cue = "/VO/Melinoe_2237", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ngài ấy quan tâm đến cách chúng ta hành xử. Cô không phải kiểu người tinh tế và ngài ấy là người khá nhạy bén để nhận ra điều đó." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", PreLineAnim = "Nemesis_Hub_Glare_End", { Cue = "/VO/Nemesis_0139", Text = "Im đi." }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisAboutArtemis01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "UseRecord", "NPC_Artemis_Field_01" }, }, { Path = { "GameState", "TextLinesRecord" }, HasNone = { "NemesisCombatFirstIntro", "NemesisGetFreeItemIntro01" }, }, { Path = { "GameState", "ClearedRunsCache" }, Comparison = "==", Value = 0, }, { FunctionName = "RequiredAlive", FunctionArgs = { Ids = { 561502 }, Alive = false }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_1559", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cuối cùng ta cũng gặp được Artemis ngoài đó. Cô ấy có ghé qua và chào hỏi cô không?" }, { Cue = "/VO/Nemesis_0069", Text = "Không có. Vậy là cô ta vẫn lảng vảng trong khu rừng này à? Ta cứ tưởng cô ta đang bận rộn trong việc kêu gọi họ hàng giúp đỡ cô chứ. Mà khoan đã, cô thậm chí chẳng thể đi xa hơn ngay cả khi được cô ta giúp đỡ à?" }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_1560", Text = "Chuyện này không đơn giản như vậy đâu...!" }, }, }, }, NemesisAboutArtemis02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAny = { "NemesisCombatFirstIntro", "NemesisGetFreeItemIntro01" }, }, { PathTrue = { "CurrentRun", "UseRecord", "NPC_Artemis_Field_01" }, }, { PathTrue = { "CurrentRun", "BiomesReached", "F" }, }, { Path = { "GameState", "TextLinesRecord" }, HasNone = { "NemesisGift08", "ArtemisGift08" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_2242", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô đã gặp Artemis ở ngoài đó chưa? Ta nghĩ việc phá luật để ra ngoài gặp cô ấy cũng là điều xứng đáng đấy." }, { Cue = "/VO/Nemesis_0143", PreLineAnim = "Nemesis_Hub_Greet", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cô thì biết gì. Cô nghĩ ta lẻn ra ngoài chỉ để chơi đùa thôi à?" }, { Cue = "/VO/Melinoe_2243", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Vậy mọi chuyện giữa hai người vẫn ổn chứ?" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0144", Text = "Vẫn ổn." }, }, }, }, NemesisAboutArtemisSinging01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "AudioState", "AmbientTrackName" }, IsAny = { "/Music/ArtemisSong_MC", "/Music/IrisEndThemeCrossroads_MC" }, }, { Path = { "ConfigOptionCache", "MusicVolume" }, Comparison = ">", Value = 0.1, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0342", Text = "Hát hò, ôi trời. Có vẻ như nữ thần săn bắt đang tìm người thay thế vị trí của em trai mình. Ta khá ngạc nhiên khi cô chưa chạy sang bên đó đấy. Xem như có việc khác để làm đấy." }, { Cue = "/VO/Melinoe_4460", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nghe có vẻ hơi vô bổ, nhưng bọn ta không hát chỉ vì không có việc gì để làm, Nemesis. Nó có tác dụng gột rửa tâm trí." }, { Cue = "/VO/Nemesis_0343", PreLineAnim = "Nemesis_Hub_Greet", Text = "Ồ, cũng phải. Artemis đã kể cho ta nghe về việc gột rửa mà cô nói. Ít nhât thì ta đứng cách đủ xa, gần như chẳng nghe thấy gì." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_4461", Text = "Bọn ta sẽ hát to hơn cho cô nghe." }, }, }, }, NemesisAboutHypnos01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "PrevRun", "UseRecord", "NPC_Hypnos_01" }, }, { PathTrue = { "GameState", "TextLinesRecord", "HypnosGift01" }, }, { PathFalse = { "GameState", "TextLinesRecord", "HypnosFinalDreamMeeting01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0065", Text = "Lại nói chuyện với Hypnos à? Cô biết anh ta không thể nghe cô nói mà. Đó là lẽ đương nhiên khi ai đó đang ngủ say." }, { Cue = "/VO/Melinoe_0686", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Giấc ngủ không đơn giản như cô nghĩ đâu. Ta nghĩ ngài ấy vẫn có thể cảm nhận được lời nói và ý định của ta." }, { Cue = "/VO/Nemesis_0066", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cảm nhận được lời nói và ý định, phải... nghe giống hệt Hypnos mà ta biết đấy." }, }, NemesisAboutHypnosWakeUp01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "HypnosFinalDreamMeeting01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0455", Text = "Thật không thể tin được! Cuối cùng cô đã đánh thức được Hypnos, còn ta thì bỏ lỡ toàn bộ chuyện đó ư? Anh ta có giống như những gì cô từng mơ thấy không?" }, { Cue = "/VO/Melinoe_5276", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "À thì... thái độ của ngài ấy không giống như ta mong đợi, và cũng không tỏ ra biết ơn cho lắm. Dù vậy, ta cũng hay cáu gắt sau khi ngủ dậy muộn. Rồi sau đó, ngài ấy vội vã rời đi..." }, { Cue = "/VO/Nemesis_0456", PreLineAnim = "Nemesis_Hub_Greet", Text = "Tiếc thật nhỉ! Ta cứ tưởng anh ta đúng mẫu người của cô đấy. Nhưng nếu sau này cô quay về làm việc trong Thánh Điện của cha cô, thì hai người thế nào cũng sẽ gặp lại. Còn bây giờ, ít nhất thì chúng ta không còn nghe tiếng ngáy của anh ta mỗi đêm nữa." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 3, { Cue = "/VO/Melinoe_5277", Text = "Ta cũng nghĩ vậy..." }, }, }, }, NemesisAboutNarcissus01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisWithNarcissus01_FollowUp" }, }, { PathTrue = { "CurrentRun", "UseRecord", "NPC_Narcissus_01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_2238", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nhân tiện thì sao cô lại ghét Narcissus vậy? Ta thấy anh ta cũng hơi phiền phức thật, nhưng anh ta cũng đâu đến nỗi tệ." }, { Cue = "/VO/Nemesis_0140", Text = "Đáng lẽ cô phải thấy những gì hắn đã làm với Nymph tội nghiệp. Hoàn toàn khiến trái tim cô ấy tan vỡ. Hắn thậm chí còn chẳng để ý hay bận tâm điều đó." }, { Cue = "/VO/Melinoe_2239", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta không ngờ cô lại là người giàu tình cảm đấy. Ta cứ tưởng cô chỉ quan tâm đến những điều tồi tệ hơn những cuộc cãi vã giữa những người yêu nhau chứ." }, { Cue = "/VO/Nemesis_0141", PreLineAnim = "Nemesis_Hub_Greet", Portrait = "Portrait_Nemesis_Averted_01", Text = "Narcissus chỉ quan tâm đến bản thân hắn, không quan tâm đến bất kỳ ai xung quanh. Phải lấy những việc hắn làm để trị hắn. Khiến hắn yêu điên cuồng. Say đắm với chính hình ảnh của hắn. Cho đến ngày hắn chết." }, { Cue = "/VO/Melinoe_2240", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Vậy nên giờ anh ta trở thành một Shade ở Địa Ngục. Và vẫn mãi nhìn đôi mắt của chính mình một cách khao khát." }, { Cue = "/VO/Nemesis_0142", Text = "Này, cô là phù thủy, không phải ta. Cô biết rõ về lời nguyền là như thế nào mà." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_2241", Text = "Chúng dễ dàng lạm dụng cho mục đích xấu." }, }, }, }, NemesisAboutNarcissus02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisAboutNarcissus01", "NarcissusWithEcho01" }, }, { Path = { "CurrentRun", "UseRecord" }, HasAny = { "NPC_Narcissus_01", "NPC_Echo_01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_3232", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Này, về chuyện Narcissus. Ta sẽ không phá bỏ lời nguyền mà cô đã yểm lên anh ta, mặc dù ta có thể. Anh ta dường như khá hài lòng, và bên cạnh đó... anh ta thực sự tin rằng bản thân xứng đáng gánh chịu điều đó. Chỉ có một vấn đề là, lời nguyền đó chẳng giúp ích gì cho Echo trong cuộc tình đau khổ đó cả." }, { Cue = "/VO/Nemesis_0267", Text = "Echo... TIên Nữ mới là người đã đưa Narcissus vào danh sách mục tiêu của ta. Ý cô nói là việc nhận sự trừng phạt từ các vị thần mà không kèm theo ràng buộc gì vẫn không đủ để khiến tâm trí cô ấy hết vương vấn sao?" }, { Cue = "/VO/Melinoe_3233", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Đúng vậy. Cô đã lấy lại công bằng cho họ, tuy nhiên, sự can thiệp của cô không giải quyết bất kỳ vấn đề nào của họ. Họ phải tự giải quyết vấn đề của mình." }, { Cue = "/VO/Nemesis_0268", PreLineAnim = "Nemesis_Hub_Greet", Text = "Ta đoán là qua sự giúp đỡ và động viên từ cô nhỉ? Ừm, đối với ta thì không khác biệt là bao, miễn là không ai trong số họ có kết thúc tốt. Có vẻ như cô đã khuyên bảo họ, vậy nên ta khá chắc hành động của ta gần đúng như vậy." }, { Cue = "/VO/Melinoe_3234", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Vậy có nghĩa là cô chẳng quan tâm kết thúc của họ như thế nào, miễn là công bằng cho cả hai." }, EndVoiceLines = { { PreLineWait = 0.45, RequiredMinElapsedTime = 2, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0269", Text = "Cô hiểu nhanh đấy." }, }, }, }, NemesisAboutPrometheus01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "RoomsEntered", "P_Boss01" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAny = { "OdysseusAboutPrometheus01", "MorosAboutPrometheus01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0262", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Lại thêm một tên Titan khác dám chống lại chúng ta ư? Prometheus, được cho là một trong những kẻ thông minh! Và giờ là kẻ thủ! Lẽ ra đã đứng về phe chúng ta nếu gia đình cô không... cô tự hiểu đi." }, { Cue = "/VO/Melinoe_3604", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Phải, cả chuyện xích hắn vào ngọn núi để một con đại bàng có thể ăn lá gan có thể tái sinh của hắn mỗi ngày, suốt hàng thiên niên kỷ. Chắc chắn đó không phải một trong những khoảnh khắc đáng tự hào nhất của Olympus." }, { Cue = "/VO/Nemesis_0263", PreLineAnim = "Nemesis_Hub_Greet", Portrait = "Portrait_Nemesis_Averted_01", Text = "Hãy hỏi ta xem liệu hắn có xứng đáng với sự báo thù đó không, nếu cô cảm thấy tồi tệ về mớ hỗn độn đó." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_3605", Text = "Hãy cẩn thận với kẻ phản bội, Nem." }, }, }, }, NemesisAboutTyphon01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { Path = { "CurrentRun", "RoomsEntered" }, HasAny = { "Q_Boss01", "Q_Boss02" }, }, { PathFalse = { "GameState", "EnemyKills", "TyphonHead" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0264", Text = "Vậy hiện tại, Olympus đang phải đối phó với Typhon ư? Không biết Chronos đã thỏa thuận gì với hắn, hay chỉ đơn giản là đánh thức hắn rồi thả ra. Dù thế nào đi nữa thì kế hoạch đó cũng thật liều lĩnh." }, { Cue = "/VO/Melinoe_3927", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nghe có vẻ như cô đang ngưỡng mộ hắn vậy! Ta khá chắc Chronos sẽ rất sẵn lòng chào đón cô vào hàng ngũ của hắn đấy, miễn là cô nói thẳng ra cảm nghĩ của mình." }, { Cue = "/VO/Nemesis_0265", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta nói trúng tim đen của cô ư? Được thôi. Nhưng điều đó cũng không thay đổi sự thật là kẻ địch đã qua mặt chúng ta. Vậy thì cũng chẳng cần cô lãng phí thời gian trên đó nữa... chờ đã, cô không đánh đối đầu với thứ đó thật chứ?" }, { Cue = "/VO/Melinoe_3928", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô thực sự nghĩ ta sẽ bỏ mặc gia đình của ta trên đỉnh Olympus với con quái vật đó ư? Cô chẳng hiểu gì về ta cả." }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0266", Text = "Quen biết cô quả là một điều thú vị." }, }, { PreLineWait = 0.1, UsePlayerSource = true, { Cue = "/VO/Melinoe_3929", Text = "Thật vinh hạnh cho ta." }, }, }, }, NemesisAboutTyphonW01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { Path = { "CurrentRun", "RoomsEntered" }, HasAny = { "Q_Boss01", "Q_Boss02" }, }, { PathTrue = { "CurrentRun", "Cleared" } }, { Path = { "CurrentRun" }, HasNone = { "BountyCleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0300", Text = "Chắc hẳn cô đã nhận được rất nhiều sự giúp đỡ mới có thể đánh ngã Typhon khỏi ngọn núi. Ồ, tất cả bọn ta đều biết hết rồi. Cô có hàng tá người thân trên đó, một vài người trong số họ rất mạnh. Vậy thì họ cần cô để làm gì nữa?" }, { Cue = "/VO/Melinoe_4422", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Họ quả thực rất mạnh, nhưng họ đang bị dồn vào thế bí. Điều quan trọng là trận chiến gần đây nhất của chúng ta đã thắng lợi, và ta đã làm hết sức mình để giành chiến thắng." }, { Cue = "/VO/Nemesis_0301", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Greet", Text = "Cô đang khoe khoang chiến thắng của mình, hay đang cố lấy lòng ta? Lý do chính khiến cô giành chiến thắng là vì con quái vật đó đáng bị như vậy. Nhưng mọi chuyện cũng sẽ trở về thế cân bằng." }, EndVoiceLines = { { PreLineWait = 0.35, UsePlayerSource = true, { Cue = "/VO/Melinoe_4423", Text = "Điều đó có nghĩa là gì?" }, }, { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0302", Text = "Rồi cô sẽ hiểu." }, }, }, }, NemesisAboutTyphonW02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { Path = { "CurrentRun", "RoomsEntered" }, HasAny = { "Q_Boss01", "Q_Boss02" }, }, { PathTrue = { "CurrentRun", "Cleared" } }, { Path = { "CurrentRun" }, HasNone = { "BountyCleared" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0305", Text = "Chắc hẳn Typhon đang trở nên tức giận hơn. Ngoài chuyện đó ra thì kế hoạch là gì? Mải mê với vinh quang mà quên mất kẻ thù thực sự của chúng ta ư?" }, { Cue = "/VO/Melinoe_4426", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Quái Vật Thủy Tổ là mối hiểm họa; cô sẽ hiểu điều đó nếu tận mắt nhìn thấy hắn. Nếu Olympus bị tàn phá, Chronos sẽ thắng thế. Chúng ta sẽ không thể ngăn cản hắn." }, { Cue = "/VO/Nemesis_0306", Portrait = "Portrait_Nemesis_Averted_01", PreLineAnim = "Nemesis_Hub_Greet", Text = "Tự nói với bản thân đi. Địa Ngục chẳng cần đến những vị thần đó bao giờ. Chronos thậm chí đã chẳng nổi dậy nếu không có họ." }, EndVoiceLines = { { PreLineWait = 0.3, UsePlayerSource = true, { Cue = "/VO/Melinoe_4427", Text = "Tạ ơn Nữ Thần Định Mệnh vì chúng ta đã có cô đối phó với hắn." }, }, { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0307", Text = "Tạ ơn Nữ Thần Định Mệnh." }, }, }, }, NemesisAboutCauldron01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "WorldUpgrades" }, CountOf = ScreenData.GhostAdmin.ItemCategories[1], Comparison = ">=", Value = 6, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0088", Text = "Ta đã thử sử dụng chiếc vạc đó rất nhiều lần, nhưng chẳng thu được kết quả gì, ít nhất thì vai trò của cô cũng làm được gì đó có ích cho nơi này..." }, { Cue = "/VO/Melinoe_0691", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Vai trò của bọn ta thường liên quan đến bản thân nhiều hơn, và đôi khi kết quả cũng không xuất hiện ngay lập tức. Nhưng ta rất cảm kích khi được cô chú ý đấy." }, EndVoiceLines = { { PreLineWait = 0.45, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0089", Text = "Thế à, cũng tốt thôi..." }, }, }, }, NemesisAboutTrainingGrounds01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { -- it's ok -- PathFalse = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeWeaponUpgradeSystem" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_3235", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Sao ta không thấy cô xuất hiện ở sân tập nữa vậy? Trước đây cô thường đến đó để trút toàn bộ cơn giận, nhưng giờ cô chỉ muốn trút giận lên ta thôi." }, { Cue = "/VO/Nemesis_0270", Text = "Đừng có tâng bốc bản thân. Để dành nó cho Chronos đi. Nếu cô chưa nhận ra thì sân tập ngày càng được thay đổi để phù hợp với cô. Từ Bệ Thờ đến nơi trưng bày vũ khí." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_3236", Text = "Vì ta là người duy nhất sử dụng nên là..." }, }, { PreLineWait = 0.45, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0271", Text = "Để ta yên đi." }, }, }, }, NemesisAboutEvil01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_1564", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nemesis, những lúc cô dành thời gian ở trần gian... chắc phải có điều gì đó khiến cô cảm thấy đáng giá đúng không?" }, { Cue = "/VO/Nemesis_0072", Text = "Ô, có chứ. Người phàm thích vượt trên khả năng của chúng và nghĩ rằng chúng cũng như chúng ta. Ta đã đập tan ảo tưởng đó và đưa chúng quay về đúng vị trí của chúng." }, { Cue = "/VO/Melinoe_1565", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đưa họ về đúng vị trí của họ... bằng cách trừng phạt họ theo cách cô có thể nghĩ ra đúng không?" }, { Cue = "/VO/Nemesis_0073", Portrait = "Portrait_Nemesis_Averted_01", Text = "Đúng vậy. Tất cả chúng ta đều nên nhận được những gì xứng đáng với chúng ta, không hơn, không kém." }, { Cue = "/VO/Melinoe_0608", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nhưng chẳng phải người phàm đã có cách để đảm bảo công lý được thực thi, giống như cha ta đã làm sao?" }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0074", Text = "{#Emph}Hah! {#Prev}Chắc chắn là vậy rồi." }, }, }, }, NemesisAboutEvil02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { -- }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_0680", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Này. Cô nhớ công việc trên đó phải không? Trà trộn giữa người phàm và thực thi công lý." }, { Cue = "/VO/Nemesis_0075", Text = "Cô biết đấy, người phàm chỉ có một từ để chỉ sự tàn ác có chủ ý hoặc sự tàn nhẫn máu lạnh: Chúng gọi đó là cái ác. Ta luôn có thể cảm nhận điều đó. Ta sẽ tìm đến nguồn gốc của nó. Và bất kể đó là ai, ta sẽ bắt chúng phải trả giá." }, { Cue = "/VO/Melinoe_1566", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nhưng giờ thì cô lại mắc kẹt ở đây, và cái ác sẽ tăng mất kiểm soát..." }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0076", Text = "Rất nhiều là đằng khác." }, }, }, }, NemesisAboutNectar01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, CountOf = { "HecateGift01", "DoraGift01", "OdysseusGift01", "MorosGift01", "ErisGift01", "SkellyGift01", }, Comparison = ">=", Value = 2, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift05" }, }, { Path = { "GameState", "LifetimeResourcesSpent", "GiftPoints" }, Comparison = ">=", Value = 3, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0078", Text = "Thứ Rượu Mật cô mang đi phân phát cho mọi người đấy? Ta không hiểu sao cô lại quan tâm chuyện đó. Dù gì thì không phải ai cũng xứng đáng nhận nó." }, { Cue = "/VO/Melinoe_0611", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "{#Emph}Xứng đáng à? {#Prev}Còn ta thì nghĩ không biết cô có phải người phù hợp để phán xét điều đó hay không?" }, { Cue = "/VO/Nemesis_0079", Emote = "PortraitEmoteFiredUp", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Phải. Thế cô nghĩ ta là ai hả? Nếu bằng phép màu nào đó ai cũng đều nhận được những điều xứng đáng, thì ta đâu còn lý do để tồn tại." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_0612", Text = "Thật bất công..." }, }, { PreLineWait = 0.1, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0080", Text = "Đó mới là cuộc sống." }, }, }, }, NemesisAboutNectar02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift04" }, }, }, -- OnQueuedFunctionName = "CheckDistanceTriggerThread", -- OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_1573", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta không có ý làm cô khó chịu về chuyện Rượu Mật trước đó. Chỉ là, ta luôn ngưỡng mộ cô, và... ta đang cố gắng hết sức có thể." }, { Cue = "/VO/Nemesis_0100", PreLineWait = 0.35, Portrait = "Portrait_Nemesis_Averted_01", PreLineAnim = "Nemesis_Hub_Greet", Text = "Đừng bận tâm về chuyện đó. Hôm trước ta đã uống thử một chút, và theo như ta cảm nhận thì nó không đầu độc ta, coi như chúng ta hoà." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_1574", Text = "Cô muốn thêm không?" }, }, { PreLineWait = 0.3, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0101", Text = "Eh..." }, }, }, }, NemesisAboutFieldMeeting01 = { PlayOnce = true, UseableOffSource = true, GiftableOffSource = true, PostBlockSpecialInteract = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAny = { "NemesisCombatFirstIntro", "NemesisGetFreeItemIntro01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0126", Text = "Lại lên đường nữa sao, Công Chúa? Mọi thứ ở Crossroads vẫn ổn, không có gì để báo cáo." }, { Cue = "/VO/Melinoe_2229", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", PreLineThreadedFunctionName = "PlayEmoteAnimFromSource", PreLineThreadedFunctionArgs = { Emote = "None", Portrait = "Portrait_Mel_Intense_01", WaitTime = 3.5 }, Text = "Thật may vì luôn có cô cảnh giác và canh gác ở đây, Nemesis...! Ô thôi nào, đừng diễn nữa. Chuyện gì đã xảy ra vậy, cô quay về từ lúc nào thế?" }, { Cue = "/VO/Nemesis_0127", PreLineAnim = "Nemesis_Hub_Greet", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta chẳng hiểu cô đang nói gì cả, và đó không phải việc của cô. Nữ Thần Định Mệnh đang giúp cô đạt được muc đích." }, { Cue = "/VO/Melinoe_2230", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nó không dễ dàng như cô tưởng tượng nhỉ? Không ngờ Hiện Thân Báo Ứng lại kiêu ngạo đến vậy." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0128", Text = "Im đi." }, }, }, }, NemesisAboutFieldMeeting02 = { PlayOnce = true, UseableOffSource = true, GiftableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutFieldMeeting01" }, }, { PathFalse = { "GameState", "ReachedTrueEnding" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_2231", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nữ Chúa đã biết về chuyến du ngoạn nho nhỏ của cô chưa? Theo ta nhớ thì hiếm khi có chuyện nào lọt khỏi tầm mắt của bà ấy." }, { Cue = "/VO/Nemesis_0129", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta khuyên cô nên tập trung vào sứ mệnh của mình. Hecate không còn kiểm soát ta nữa và cô nên thể hiện một chút lòng biết ơn đi." }, { Cue = "/VO/Melinoe_2232", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Vì việc gì, gây nguy hiểm cho tất cả chúng ta à? Ta không yêu cầu sự giúp đỡ của cô, Nemesis." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0130", Text = "Bởi vì cô yếu đuối." }, }, }, }, NemesisAboutFieldMeeting03 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutFieldMeeting02" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisBuyItemIntro01", "NemesisTakeDamageForItemIntro01", "NemesisGiveTraitForItemIntro01", "NemesisDamageContestIntro01", }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisWithHecate02" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_3230", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Lần đầu khi ta gặp cô ngoài đó, ta nghĩ cô chỉ đang xả giận thôi. Nhưng cô cứ ra ngoài hết đêm này đến đêm khác. Cô rất quyết tâm, nhưng cô sẽ bị bắt gặp mất." }, { Cue = "/VO/Nemesis_0260", Text = "Miễn là không ai nói gì thì không sao. Hơn nữa, Hecate có lẽ đã biết rồi. Bà ta không có ngốc. Bà ta chỉ để ta tự học theo cách khó khăn hơn. Điều này có lợi cho cả hai chúng ta." }, { Cue = "/VO/Melinoe_3231", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Thôi được. Ta nghĩ rằng cả hai ta đều đang học hỏi rất nhiều. Nhưng ta không có ý định từ bỏ bất kỳ sứ mệnh nào chỉ vì cô đang cố gắng đạt những gì mà ta được giao phó." }, EndVoiceLines = { { PreLineWait = 0.45, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0261", Text = "Phải có ai đó làm việc đó." }, }, }, }, NemesisAboutCombatFailure01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsAny = { "NemesisCombatIntro", "NemesisCombatF", "NemesisCombatG", "NemesisCombatH", "NemesisCombatI" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0131", Text = "Cô đã trở nên bất cẩn. Tất cả chỉ vì một vụ cá cược nhỏ. Cô muốn vượt qua ta đến vậy sao?" }, { Cue = "/VO/Melinoe_2233", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta cũng muốn hỏi cô điều tương tự. Thế tại sao cô lại quay về đây? Cô cũng chẳng thể đi xa hơn được." }, EndVoiceLines = { { PreLineWait = 0.45, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0132", Text = "Phải. Ta cũng đã bất cẩn..." }, }, }, }, NemesisAboutKeepsake01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "CurrentRun", "TraitRarityCache", "DeathVengeanceKeepsake" }, IsAny = { "Epic", "Heroic" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0344", Text = "Cuối cùng cũng biết tận dụng Con Mắt Tà Ác. Bất cứ kẻ nào hoặc thứ gì ngoài kia khiến cô phải kết thúc sớm, thì đêm sau hãy làm điều tương tự với chúng. Truyền thống lâu đời, nhưng rất hiệu quả." }, { Cue = "/VO/Melinoe_4462", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta rất trân trọng món quà này. Con Mắt quả thực đã phát huy tác dụng trong vài trường hợp, giúp ta chiếm lợi thế trước kẻ thù. Chỉ là đôi khi ta không chắc mình đang thực thi báo ứng hay chỉ đơn thuần là trả thù nữa." }, { Cue = "/VO/Nemesis_0345", Text = "Việc phân định từng hành động báo ứng quả thật rất mất thời gian. Nhưng đừng bận tâm đến tiểu tiết. Cô vô tội." }, EndVoiceLines = { { PreLineWait = 0.35, UsePlayerSource = true, { Cue = "/VO/Melinoe_4463", Text = "Chẳng phải mọi hành động báo thù đều phải bị phán xét ư?" }, }, { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0346", Text = "Đáng lẽ là vậy." }, }, }, }, NemesisAboutTrophyQuest01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "TrophyQuestComplete03" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0347", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cô còn tự mã hơn cả Narcissus. Ta đã thấy những bức tượng của cô ở Sân Tập. Muốn trông được như thế thì cô phải cố gắng nhiều hơn nữa." }, { Cue = "/VO/Melinoe_4464", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", Emote = "PortraitEmoteSurprise", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Không, ta... ta chẳng liên quan gì đến những thứ đó cả. Thật ra thì ta xứng đáng nhận được chúng, đó là Món Quà từ Veil dành cho Chiến Binh của Màn Đêm...! Ồ, nghe có vẻ hơi tự mãn thật..." }, { Cue = "/VO/Nemesis_0348", Portrait = "Portrait_Nemesis_Averted_01", Text = "Đừng bận tâm. Phải công nhận là rất ấn tượng. Ta luôn nói rằng cô sẽ chẳng bao giờ vượt qua ta. Đúng là tự chuốc lấy kết cục này." }, EndVoiceLines = { { PreLineWait = 0.35, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_4465", Text = "Quả báo..." }, }, }, }, NemesisAboutThrone01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "WorldUpgradesAdded", "Cosmetic_NemesisChair" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0339", Text = "Tại sao chiếc ngai đó lại đặt gần chỗ của ta? Một sự cám dỗ. Ta chưa từng thấy cô ngồi làm việc bao giờ; vậy cô đã thấy ta ngồi bao giờ chưa?" }, { Cue = "/VO/Melinoe_4458", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Chưa, chỉ là... ta nghĩ cô sẽ thích lựa chọn đó. Không có gì quá đáng, phải không? Với lại, cô cũng gần như đứng suốt như thế rồi." }, { Cue = "/VO/Nemesis_0340", Portrait = "Portrait_Nemesis_Averted_01", Text = "Quy tắc của ta, không phải của cô. Một khi đã ngồi xuống sẽ không muốn đứng dậy nữa, nhất là khi đang mặc những thứ này. Ngoài ra, nhiệm vụ canh gác là đứng suốt khoảng thời gian đó." }, EndVoiceLines = { { PreLineWait = 0.3, UsePlayerSource = true, { Cue = "/VO/Melinoe_4459", Text = "Nếu cô không thích, ta có thể dời chiếc ngai đi." }, }, { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0341", Text = "Tạm thời hãy để yên đó." }, }, }, }, NemesisAboutRelationship01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesChoiceRecord", "NemesisPostCombatBecomingCloser01", }, IsAny = { "Choice_NemesisAccept" }, }, { SumPrevRuns = 6, Path = { "TextLinesRecord", "NemesisPostCombatBecomingCloser01" }, CountPathTrue = true, Comparison = ">=", Value = 1, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_4447", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Khi chúng ta ở bên nhau ngoài kia, mọi thứ cứ như một giấc mơ. Nhất là khi chúng ta cùng gạt bỏ mọi trọng trách, một điều vốn chẳng giống tính cách của chúng ta..." }, { Cue = "/VO/Nemesis_0327", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cô nói như thể cô đang hối hận, tốt thôi; còn ta thì không. Đó cũng chẳng phải là thói quen, với lại... ta đã không còn bị ám ảnh bởi cô, đúng như ta mong đợi." }, { Cue = "/VO/Melinoe_4448", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Thật à? Với ta thì không hẳn. Kể từ lúc đó, ta chỉ càng nghĩ về cô nhiều hơn. Và ta không hề hối hận!" }, { Cue = "/VO/Nemesis_0328", Portrait = "Portrait_Nemesis_Averted_01", Text = "Không ư? Vậy thì đó chính là Báo Ứng. Có kẻ thắng, có kẻ thua, chẳng ai có được tất cả. Biết đâu theo thời gian, chúng ta có thể... cân bằng mọi thứ. Giữa chúng ta không nên nghiêng quá nhiều về một phía." }, EndVoiceLines = { { PreLineWait = 0.35, UsePlayerSource = true, { Cue = "/VO/Melinoe_4449", Text = "Ta sẽ ghi nhớ điều đó." }, }, { PreLineWait = 0.37, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0329", Text = "Ta cũng vậy." }, }, }, }, NemesisAboutRelationship01_B = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesChoiceRecord", "NemesisPostCombatBecomingCloser01", }, IsAny = { "Choice_NemesisDecline" }, }, { SumPrevRuns = 6, Path = { "TextLinesRecord", "NemesisPostCombatBecomingCloser01" }, CountPathTrue = true, Comparison = ">=", Value = 1, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_4450", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Khi chúng ta ở bên nhau, Nem... ta chỉ muốn chắc rằng cô không giận ta. Ít nhất là không như thường lệ. Cô nói rằng ta khiến cô mất tập trung, và đó là điều cô không muốn." }, { Cue = "/VO/Nemesis_0330", PreLineWait = 0.35, Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta biết, không sao cả, chúng ta ổn. Trừ khi cô làm quá vấn đề. Ta nghĩ giờ chúng ta đã hiểu nhau, và cả hai đều thích mọi thứ rõ ràng. Dù sao thì, chúng ta cũng sẽ gặp lại nhau ngoài kia." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 3, { Cue = "/VO/Melinoe_4451", Text = "Hẹn gặp lại." }, }, }, }, NemesisAboutRelationship02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesChoiceRecord" }, HasAny = { "NemesisPostCombatBecomingCloser01" }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "NemesisAboutRelationship01", "NemesisAboutRelationship01_B", "NemesisPostCombatBecomingCloser01" }, Min = 3 }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0331", Portrait = "Portrait_Nemesis_Averted_01", Text = "Chuyện này bắt đầu từ khi nào? Trước đây cô còn chẳng dám nhìn ta. Ta cũng chẳng ưa cái thân hình gầy gò của cô. Rồi chuyện gì đó đã xảy ra. Ta đang cố xác định nguồn gốc." }, { Cue = "/VO/Melinoe_4452", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Tình cảm của ta dành cho cô dần trở nên sâu đậm hơn. Sự phẫn nộ mà cô khơi dậy trong ta... ta bắt đầu thích nó. Ta chưa từng nghĩ cô sẽ đáp lại tình cảm của ta." }, { Cue = "/VO/Nemesis_0332", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta từng nghĩ cô chỉ là kẻ thích phô trương. Ta chưa bao giờ nhận ra cô lại mạnh mẽ đến vậy, không chỉ riêng về thể chất. Và giờ cô cũng biết kiềm chế hơn trước." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_4453", Text = "Quả là một lời khen mát lòng." }, }, { PreLineWait = 0.42, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0333", Text = "Phải." }, }, }, }, NemesisAboutRelationship03 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisAboutRelationship02" }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "NemesisAboutRelationship02" }, Min = 5 }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_4471", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đôi khi ta có thể đọc vị được cô, Nem, và rõ ràng là có gì đó không ổn." }, { Cue = "/VO/Nemesis_0397", PreLineAnim = "Nemesis_Hub_Greet", PreLineWait = 0.35, Portrait = "Portrait_Nemesis_Averted_01", Text = "Ôi trời, chỉ là... nghe này, ta chưa từng thân thiết với ai lâu dài cả. Mọi thứ vốn luôn như vậy. Vậy nên ta mới băn khoăn không biết mối quan hệ giữa chúng ta sẽ đi đến đâu, và ta không thích hướng đi đó." }, { Cue = "/VO/Melinoe_4472", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô thực sự nghĩ rằng chúng ta đang đi trên một con đường đã định sẵn sao? Dù các Nữ Thần Định Mệnh là chị em của cô, thì không nhất thiết cô phải tự ép buộc mình phải thực hiện theo lời tiên tri đó." }, { Cue = "/VO/Nemesis_0398", Portrait = "Portrait_Nemesis_Averted_01", Text = "Không, nhưng... vấn đề là ta thích ở bên cạnh cô hơn là tránh xa. Nếu cứ tiếp tục như thế, ta sẽ..." }, { Cue = "/VO/Melinoe_4473", UsePlayerSource = true, PreLineWait = 0.35, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "...Ta biết. Cái gì nhiều quá cũng không tốt. Nhưng chúng ta đâu nhất thiết lúc nào cũng lo lắng về chuyện tương lai? Chúng ta chỉ cần trân trọng những lúc ở bên nhau là đủ. Không phiền muộn." }, { Cue = "/VO/Nemesis_0399", PreLineWait = 0.4, Portrait = "Portrait_Nemesis_Averted_01", Text = "...Không phiền muộn ư... có lẽ cô nói đúng. Luôn có thể tìm cách cân bằng mà không làm hỏng mọi thứ." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_4474", Text = "Một việc đáng để làm." }, }, }, }, NemesisAboutErisRelationship01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { OrRequirements = { { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "ErisAboutRelationship03", "NemesisAboutRelationship01", }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "ErisAboutRelationship03", "NemesisAboutRelationship01" }, Min = 2 }, }, }, { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "ErisAboutRelationship03_B", "NemesisAboutRelationship01_B", }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "ErisAboutRelationship03_B", "NemesisAboutRelationship01_B" }, Min = 2 }, }, }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0334", Text = "Rốt cuộc thì chuyện gì diễn ra giữa cô và Eris vậy? Ta cứ ngỡ cô đủ khôn ngoan để tránh xa cô ta rồi chứ, nhất là khi cô có quyền lựa chọn." }, { Cue = "/VO/Melinoe_4454", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Có lẽ ta không giỏi phán đoán khi chọn đồng minh, Nemesis. Ta và cô ta chẳng có nhiều điểm chung, nhưng... cô ta khiến ta khó mà suy nghĩ sáng suốt." }, { Cue = "/VO/Nemesis_0335", Portrait = "Portrait_Nemesis_Averted_01", Text = "Vậy thì, khi đối đầu với cô ta, cô sẽ phải trả giá. Hoặc với ta, nhưng theo một cách khác. Có lẽ đó là điều hấp hẫn ở cô ta. Dù sao thì, đừng có dẫn cô ta đến đây." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 3, { Cue = "/VO/Melinoe_4455", Text = "Ta không định làm vậy đâu." }, }, }, }, NemesisAboutMorosRelationship01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisBathHouse03", "MorosTaverna02", }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "NemesisBathHouse03", "MorosTaverna02" }, Min = 3 }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0336", Text = "Cũng không bất ngờ khi cô và Diệt Vong lại hợp nhau đến vậy. Ban đầu ta cứ nghĩ anh ta sẽ khiến cô cảm thấy khó chịu như bao người khác, nhưng cả hai lại có điểm chung là rất biết tuân theo mệnh lệnh." }, { Cue = "/VO/Melinoe_4456", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta không nhớ là bọn ta từng trò chuyện về việc tuân theo mệnh lệnh như thế nào, nhưng ta nghĩ rằng bọn ta khá hợp nhau. Điều đó không khiến cô khó chịu chứ? Nếu có thì cô đã nói với ta rồi." }, { Cue = "/VO/Nemesis_0337", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta sẽ nói cho cô biết, một khi điều đó xảy ra. Moros chưa từng là kiểu người vui vẻ, mà thật ra thì chẳng ai trong số bọn ta là như vậy cả; nhưng khi anh ta trở nên cởi mở hơn, có lẽ đó là điềm tốt cho những người khác. Nhất là với các mối quan hệ của anh ta." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_4457", Text = "Ngài ấy có cởi mở hơn với cô không?" }, }, { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0338", Text = "Có lẽ chỉ có ta nghĩ vậy." }, }, }, }, NemesisAboutTyphonDeath01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TyphonDefeatedWithStormStop" }, }, { PathFalse = { "GameState", "ReachedTrueEnding" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0400", Text = "Họ nói rằng cô đã tiêu diệt Typhon vĩnh viễn. Ta không tin điều đó. Rốt cuộc thì chuyện gì đã xảy ra?" }, { Cue = "/VO/Melinoe_5006", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Tiêu diệt Typhon vĩnh viễn là một cách nói ngắn gọn nhất. Chuyện đó liên quan đến một câu thần chú phức tạp được gọi là Sự Tan Rã của Quái Vật và một vài chi tiết khác không nên nhắc đến. Nhưng đúng là vậy, ta tin hắn đã biến mất." }, { Cue = "/VO/Nemesis_0401", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Hắn là kẻ bất tử... hắn không thể biến mất một cách đơn giản như vậy được. Và nếu thực sự hắn đã biến mất, thì tại sao không làm điều với Chronos? Hay với bất kỳ kẻ nào dám đối đầu với cô?" }, { Cue = "/VO/Melinoe_5007", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Chúng ta vẫn còn kế hoạch khác dành cho Chronos. Còn với những kẻ khác, chúng vẫn chưa xứng đáng nhận hình phạt đó." }, EndVoiceLines = { { PreLineWait = 0.38, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0402", Text = "Yet? {#Emph}Huh." }, }, }, }, NemesisAboutHecateKidnapped01 = { PlayOnce = true, UseableOffSource = true, PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { NamedRequirements = { "HecateMissing" }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_5008", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", Text = "Cô có biết Nữ Chúa đã biến mất không? Chronos đã bắt bà ấy đi ngay trước mắt ta! Nếu cô làm tròn bổn phận canh gác, thì bà ấy đã không... ôi trời ơi!" }, { Cue = "/VO/Nemesis_0403", Text = "Cô nói sao cơ, Chronos đã bắt bà ta? Ta vừa mới thấy bà ta đêm hôm trước. Vậy, bà ta đang ở đâu...?" }, { Cue = "/VO/Melinoe_5009", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01ReturnToIdle", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01", PostLineAnimTarget = "Hero", Text = "Ta vừa nói rồi đấy! Chắc chắn bà ấy đang ở đâu đó trong Thánh Điện, cùng với những người khác, nhưng ta... ta vẫn chưa tìm thấy. Sao chuyện này lại xảy ra? Chúng ta có thể làm gì đây?" }, { Cue = "/VO/Nemesis_0404", AngleTowardHero = true, Emote = "PortraitEmoteSurprise", PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Cô nghiêm túc ư? Chờ đã, sao cô không làm gì nếu cô đã chứng kiến toàn bộ sự việc? Ta thậm chí còn chẳng có mặt ở đó!" }, { Cue = "/VO/Melinoe_5010", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01ReturnToIdle", PreLineAnimTarget = "Hero", Text = "Ta đến muộn! Vậy lý do của cô là gì? Ít nhất thì cô cũng phải cảm nhận được có kẻ xâm nhập." }, { Cue = "/VO/Nemesis_0405", PreLineAnim = "Nemesis_Hub_Greet", Text = "Ngay cả Selene toàn năng cũng không thể lường trước được chuyện này, làm sao ta có thể? Nhưng... hãy giữ kín chuyện này. Hãy đưa bà ta về, hoặc ta sẽ tự làm." }, EndVoiceLines = { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_5011", Text = "Ta sẽ làm." }, }, }, NemesisPostTrueEnding01 = { PlayOnce = true, UseableOffSource = true, PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "TextLinesRecord", "TrueEndingFinale01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0407", Portrait = "Portrait_Nemesis_Averted_01", Text = "Cuối cùng cũng chịu quay về từ Thánh Điện của cha cô. Hecate vẫn ổn chứ? Sau khi Titan bắt được bà ta, ta... lẽ ra nên làm nhiệm vụ canh gác nghiêm túc hơn, và... sẽ không dễ dàng tha thứ cho bản thân vì sự tắc trách đó, vậy thôi." }, { Cue = "/VO/Melinoe_5012", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nữ Chúa chỉ muốn cô rút ra bài học thôi. Ta cũng hơi thắc mắc, liệu bà ấy có cố tình để bị bắt không? Có lẽ cô nên đi nói chuyện với bà ấy..." }, { Cue = "/VO/Nemesis_0408", Text = "Thế à? Vậy còn Chronos thì sao? Nghe nói ông ta chưa chết. Vậy sao mọi người lại tung hô chiến thắng của cô?" }, { Cue = "/VO/Melinoe_5013", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ông ấy đã chết và biến mất... theo nghĩa là ông ấy không còn là mối đe dọa với chúng ta nữa. Giờ ta phải tập làm quen với việc xem ông ấy như ông nội, chứ không phải kẻ thù." }, { Cue = "/VO/Nemesis_0409", PreLineAnim = "Nemesis_Hub_Greet", Text = "Không có lý do gì để xem ông vừa là người thân vừa là kẻ thù cả. Việc này không phải một phần của nhiệm vụ, và cô cũng không phải kiểu người sẽ làm trái nhiệm vụ. Liệu có nên đặt niềm tin rằng tên Titan này thực sự đã khuất phục?" }, { Cue = "/VO/Melinoe_5763", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", PreLineThreadedFunctionName = "PlayEmoteAnimFromSource", PreLineThreadedFunctionArgs = { Emote = "None", Portrait = "Portrait_Mel_Proud_01", WaitTime = 2.6 }, Text = "Nữ Chúa đã phong ấn sức mạnh lớn nhất của ông ấy để đề phòng. Dù sao thì, chúng ta đã làm được rồi, Nem!" }, { Cue = "/VO/Nemesis_0410", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Vậy sao trông cô lại như sắp ra ngoài nữa? Nghe có vẻ vẫn còn nhiều việc liên quan đến Thời Gian cần phải giải quyết." }, EndVoiceLines = { { PreLineWait = 0.38, UsePlayerSource = true, { Cue = "/VO/Melinoe_5015", Text = "Ờ thì, đúng là vậy, nhưng mà..." }, }, { PreLineWait = 0.3, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0411", Text = "Vậy thì chúng ta vẫn chưa xong việc." }, }, }, }, NemesisPostTrueEnding02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAny = { "NeoChronosAboutTartarus01", "NeoChronosAboutTartarus01_B", }, }, { Path = { "GameState", "TextLinesRecord" }, HasAny = { "NeoChronosAboutOlympus01", "NeoChronosAboutOlympus01_B", }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0414", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Vậy là cô vẫn đang chiến đấu với Chronos và cả Typhon... nhưng không chỉ đơn thuần là địa điểm, mà còn là thời điểm. Đại loại là vậy, phải không?" }, { Cue = "/VO/Melinoe_5253", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đại loại là vậy. Chronos của hiện tại, có thể nói là đã trải qua một sự thức tỉnh tâm trí nào đó, đang đảm bảo dòng thời gian trôi chảy tự do, theo cách ông ấy diễn đạt. Bọn ta muốn ngăn chặn mọi khả năng có thể lặp lại, ngay cả những khả năng đã từng xảy ra." }, { Cue = "/VO/Nemesis_0415", PreLineWait = 0.35, PreLineAnim = "Nemesis_Hub_Glare_End", Text = "...Ta không hiểu. Chuyện đã từng xảy ra thì đã là quá khứ. Thời Gian là một khái niệm đơn giản; nó luôn trôi về phía trước, cùng tất cả mọi người, với một tốc độ duy nhất." }, EndVoiceLines = { { PreLineWait = 0.38, UsePlayerSource = true, { Cue = "/VO/Melinoe_5254", Text = "Dường như vẫn còn nhiều bí ẩn khác nữa." }, }, { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", PreLineAnim = "Nemesis_Hub_Greet", { Cue = "/VO/Nemesis_0416", Text = "Mọi thứ trở nên phức tạp hơn rồi..." }, }, }, }, NemesisPostTrueEnding03 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisWithHecate02" }, }, { Path = { "CurrentRun", "EncountersOccurredCache" }, HasAny = { "NemesisCombatF", "NemesisCombatG", "NemesisCombatH", "NemesisCombatI", "NemesisRandomEvent", }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_5273", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Dù nhiệm vụ đã hoàn thành, nhưng cô vẫn ở lại Địa Ngục sao? Ở trần gian chắc hẳn có rất nhiều việc đang chờ cô đấy." }, { Cue = "/VO/Nemesis_0453", PreLineAnim = "Nemesis_Hub_Greet", Text = "Hecate nói rằng mọi điều kiện đều phải hoàn hảo cho kế hoạch hiện tại của cô. Chỉ một sai lệch nhỏ cũng có thể phá hỏng tất cả." }, { Cue = "/VO/Melinoe_5274", UsePlayerSource = true, Portrait = "Portrait_Mel_Empathetic_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta rất cảm kích điều đó. Chỉ là ta nghĩ cô sẽ nhớ cuộc sống trên đó, và chắc hẳn loài người cũng rất nhớ cô. Có quá nhiều sự bất công cần được giải quyết." }, { Cue = "/VO/Nemesis_0454", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta hiểu rõ điều đó, cảm ơn cô. Ta sẽ trở lại sau khi tình hình ở Địa Ngục ổn định hơn. Với lại, ta nghĩ gia đình cô đang quan sát những gì diễn ra trên đó." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 3, { Cue = "/VO/Melinoe_5275", Text = "Có lẽ vậy." }, }, }, }, NemesisPostTrueEndingTimeStopped01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { PathTrue = { "CurrentRun", "EnemyKills", "TyphonHead" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "ZeusPalacePostTrueEnding01", "NeoChronosAboutOlympus02", "NemesisPostTrueEnding02", "NemesisPostCombatPostTrueEnding01", "NemesisPostCombatAboutTartarus03", "NemesisWithHecate02", "NeoChronosWithNemesis01", -- "NemesisBathHouse03", }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "NemesisPostCombatPostTrueEnding01" }, Min = 2 }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0444", Text = "Nghe nói đêm qua cô đã tiêu diệt thêm một tàn dư của Typhon. Làm tốt lắm, Công Chúa. Ở Địa Ngục thì mọi chuyện cũng đã được xử lý ổn thỏa." }, { Cue = "/VO/Melinoe_5445", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ổn thỏa như thế nào ? Chờ đã, cô đã nói chuyện với Ông Nội Chronos rồi, phải không? Điều đó có nghĩa là... không thể nào..." }, { Cue = "/VO/Nemesis_0445", PreLineAnim = "Nemesis_Hub_Greet", Text = "Ông nội của cô đã làm được điều mà cô chưa từng làm được, đưa ta vào Thánh Điện của Hades. Tàn tích còn sót lại của chúng, nơi có tàn dư cổ xưa của Chronos mà chúng ta luôn tìm kiếm. Và ta đã hạ được hắn." }, { Cue = "/VO/Melinoe_5265", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô đã hạ hắn? Hạ gục Chronos ngay trong lần thử đầu tiên? Không thể nào... Cho dù cô có thể giành chiến thắng, thì khả năng cao cô sẽ bị mắc kẹt vĩnh viễn trong vết nứt thời gian..." }, EndVoiceLines = { { PreLineWait = 0.39, ObjectType = "NPC_Nemesis_01", PreLineAnim = "Nemesis_Hub_Greet", { Cue = "/VO/Nemesis_0446", Text = "Nếu có dịp thì tự đi mà hỏi ông nội của cô đi." }, }, { PreLineWait = 0.38, UsePlayerSource = true, { Cue = "/VO/Melinoe_5266", Text = "Cô nghiêm túc đấy à...!" }, }, }, }, NemesisPostTrueEndingTimeStopped02 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisPostTrueEndingTimeStopped01", "NeoChronosAboutNemesis01", }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Melinoe_5267", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ông Nội đã xác nhận rằng cô đã thực sự tiêu diệt một trong những tàn dư của Chronos. Điều đó... thật tuyệt vời, Nemesis. Vậy thì nếu ta tập trung toàn lực vào việc xử lý tàn dư của Typhon trên đỉnh Olympus..." }, { Cue = "/VO/Nemesis_0447", Text = "...Thì ta có thể đối phó với tàn dư của Chronos ở Địa Ngục. Ta đã quyết định theo đuổi kế hoạch đó, dù có bất kỳ chuyện gì xảy ra. Thậm chí Hecate cũng đã cho phép ta làm vậy." }, { Cue = "/VO/Melinoe_5268", UsePlayerSource = true, Portrait = "Portrait_Mel_Pleased_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Thật không thể tin được. Mặc dù vậy, ta vẫn sẽ đảm nhận việc xử lý tàn dư của Chronos. Ít nhất thì con đường đó cũng cho ta cơ hội gặp lại gia đình mình." }, { Cue = "/VO/Nemesis_0448", PreLineAnim = "Nemesis_Hub_Greet", Text = "Cứ tự nhiên. Ta có cảm giác ngoài kia có thừa tàn dư Chronos, đủ cho cả hai ta xử lý." }, EndVoiceLines = { { PreLineWait = 0.38, UsePlayerSource = true, { Cue = "/VO/Melinoe_5269", Text = "Vậy thì chúng ta cùng tiêu diệt chúng thôi." }, }, { PreLineWait = 0.36, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0449", Text = "Được." }, }, }, }, NemesisPostEpilogue01 = { PlayOnce = true, UseableOffSource = true, GameStateRequirements = { NamedRequirements = { "ReachedEpilogue" }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0450", Text = "Nghe nói cô đã tìm thấy Ba Nữ Thần Định Mệnh. Ta không ngờ là mọi chuyện lại diễn ra theo cách đó. Có khi cô còn chẳng tìm ra họ, mà chính họ đã tìm đến cô." }, { Cue = "/VO/Melinoe_5270", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Khả năng đó hoàn toàn có thể xảy ra. Có lẽ khi Chronos nghĩ rằng ông ấy đã lưu đày họ, họ chỉ giả vờ diễn theo. Và giờ họ quyết định xuất hiện trở lại sau khi Chronos đầu hàng." }, { Cue = "/VO/Nemesis_0451", PreLineAnim = "Nemesis_Hub_Greet", Text = "Nghe có vẻ giống điều mà họ sẽ làm. Nhưng suy đoán cũng chẳng có ích gì. Vậy bây giờ thì sao, chúng ta lại quay về tình trạng không được quyền tự quyết định ư? Hoặc có lẽ là ngay từ đầu chúng ta đã không có." }, { Cue = "/VO/Melinoe_5271", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Có lẽ họ không muốn chúng ta bị ràng buộc theo một thứ đã được định sẵn. Và có vẻ như họ không muốn giành hết công lao từ những quyết định mà chúng ta đã thực hiện." }, { Cue = "/VO/Nemesis_0452", Text = "Có lẽ chúng ta nên hành xử như thể mọi chuyện đều nằm trong tầm kiểm soát." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_5272", Text = "Chúng ta còn có thể làm gì khác đây?" }, }, }, }, -- partner conversations OdysseusWithNemesis01 = { Partner = "NPC_Odysseus_01", PlayOnce = true, UseableOffSource = true, StatusAnimation = false, PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, UseText = "UseListenNPC", }, NyxWithNemesis01 = { Partner = "NPC_Nyx_Story_01", PlayOnce = true, UseableOffSource = true, StatusAnimation = false, PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, UseText = "UseListenNPC", }, NeoChronosWithNemesis01 = { PlayOnce = true, Partner = "NPC_Chronos_02", StatusAnimation = false, CopyDataFromPartner = true, }, NemesisWithHypnos01 = { Partner = "NPC_Hypnos_01", GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisGift01", "HypnosGift01" }, }, { PathTrue = { "GameState", "UseRecord", "NPC_Hypnos_01" }, }, -- @ true ending { PathFalse = { "GameState", "ReachedTrueEnding" }, }, }, PlayOnce = true, -- BlockDistanceTriggers = true, -- IgnoreSourceEndTextLinesThreadedFunctionName = true, UseableOffSource = true, -- GiftableOffSource = true, TeleportToId = 566612, TeleportOffsetX = 100, -- TeleportOffsetY = 100, AngleTowardTargetId = 370024, InteractDistance = 300, BlockDistanceTriggers = true, { Cue = "/VO/Hypnos_0006_C", Portrait = "Portrait_Hypnos_Sleeping_01", Speaker = "NPC_Hypnos_01", -- Emote = "PortraitEmoteDepressed", Text = "{#Emph}Zzzzz, zzzz{#Prev}..." }, { Cue = "/VO/Nemesis_0067", PreLineWait = 0.35, Text = "Nhìn anh ta kìa, trông thật bình yên. Không một chút bận tâm về thế giới. Cô có thể tưởng tượng được không?" }, { Cue = "/VO/Melinoe_0681", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PreLineWait = 0.35, PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ngài ấy đẹp thật. Ngài ấy vẫn toát lên vẻ thanh lịch và thông minh ngay cả khi đang ngủ. Chắc hẳn Nyx đã dạy dỗ anh chị em cô rất tốt." }, { Cue = "/VO/Nemesis_0068", Text = "Cũng không hẳn. Hypnos đã phụng sự ở Thánh Điện của Hades dưới sự cai trị của Mẹ ta. Thỉnh thoảng ta vẫn gặp anh ta. Nếu anh ta tỉnh lại, hy vọng ta có thể chứng kiến cảnh hai người gặp nhau." }, EndVoiceLines = { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_0682_B", Text = "Cảm ơn, Nem..." }, }, }, NemesisWithHecate01 = { Partner = "NPC_Hecate_01", PlayOnce = true, UseText = "UseListenNPC", PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { { Path = { "GameState", "CompletedRunsCache" }, Comparison = ">=", Value = 6, }, { PathFalse = { "GameState", "ReachedTrueEnding" }, }, }, StatusAnimation = false, BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, UseableOffSource = true, TeleportToId = 566613, AngleTowardTargetId = 556921, InteractDistance = 450, { Cue = "/VO/Hecate_0205", Portrait = "Portrait_Hec_Default_01", Speaker = "NPC_Hecate_01", PreLineWait = 0.35, Text = "Cô được yêu cầu quay về vị trí của mình, Nemesis. Hay cô sẽ công khai thách thức ta giống như em gái cô? Ta rùng mình khi nghĩ về những điều mà mẹ của hai người sẽ nói gì về hai người." }, { Cue = "/VO/Nemesis_0055", PreLineWait = 0.35, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "...Bà không có quyền nhắc đến mẹ ta. Tất cả những chuyện này sẽ không xảy ra nếu bà làm tốt vai trò Hầu Cận và cảnh báo cho bà ấy biết một cuộc tấn công sắp xảy ra." }, { Cue = "/VO/Hecate_0206", Portrait = "Portrait_Hec_Default_01", Speaker = "NPC_Hecate_01", PreLineAnim = "Hecate_Hub_Stern_Start", PreLineAnimTarget = 556921, PostLineAnim = "Hecate_Hub_Stern_End", PostLineAnimTarget = 556921, Text = "Tốt nhất cô nên cẩn thận lời nói của mình hoặc ta sẽ bịt mồm cô! Cô có thể tiếp tục suy nghĩ về quá khứ mà cô chưa hề chứng kiến, hoặc làm tròn trách nhiệm như những người con của Nyx. Hoặc bắt chước những gì Eris đã làm! Tùy cô lựa chọn." }, EndVoiceLines = { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0056", Text = "{#Emph}", PreLineAnim = "Nemesis_Hub_Glare_End", }, }, }, NemesisWithHecate02 = { Partner = "NPC_Hecate_01", PlayOnce = true, UseText = "UseListenNPC", PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisAboutFieldMeeting03", "NemesisPostCombatPostTrueEnding01" } }, }, StatusAnimation = false, BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, UseableOffSource = true, TeleportToId = 566613, AngleTowardTargetId = 556921, InteractDistance = 450, { Cue = "/VO/Hecate_0868", Portrait = "Portrait_Hec_Default_01", Speaker = "NPC_Hecate_01", PreLineWait = 0.35, Text = "...Bất tuân, lơ là nhiệm vụ, nói dối, ngoan cố, và cả việc làm tấm gương xấu cho các Shade... còn điều gì khác mà cô muốn tự nói ra không?" }, { Cue = "/VO/Nemesis_0417", PreLineWait = 0.35, Portrait = "Portrait_Nemesis_Averted_01", Text = "...Buông thả, vô tâm, cẩu thả. Hecate, ta... Nữ Chúa, ta chấp nhận những phán quyết của bà, và ta không có lời bào chữa cho hành động của mình." }, { Cue = "/VO/Hecate_0869", Portrait = "Portrait_Hec_Default_01", Speaker = "NPC_Hecate_01", PreLineAnim = "Hecate_Hub_Scoff", PreLineAnimTarget = 556921, Text = "Ồ, tạ ơn Nữ Thần Định Mệnh vì lần này cô không trả treo với ta. Giờ thì, khi Nyx trở lại, ta đã thỉnh cầu bà ấy đưa cô trở về. Thánh Điện của Hades chắc hẳn cần thêm người giúp việc." }, { Cue = "/VO/Nemesis_0418", Portrait = "Portrait_Nemesis_Averted_01", PreLineWait = 0.35, Text = "...Đừng. Bà cũng biết rõ ta thuộc về nơi này. Nhưng ta là Hiện Thân Báo Ứng... không chỉ đơn thuần là ở đây để canh gác." }, { Cue = "/VO/Hecate_0870", Portrait = "Portrait_Hec_Default_01", Speaker = "NPC_Hecate_01", PreLineAnim = "HecateHubGreet", PreLineAnimTarget = 556921, Text = "Đúng là vậy. Sẽ có nhiều sự trừng phạt diễn ra, kể cả trên trần gian lẫn dưới địa ngục, trong thời đại này... và cô sẽ thực thi nó theo di nguyện của Màn Đêm, bất cứ lúc nào và bất kỳ nơi đâu cô thấy phù hợp." }, { Cue = "/VO/Nemesis_0419", PreLineAnim = "Nemesis_Hub_Greet", Text = "Thực thi bất cứ khi nào, bất cứ nơi đâu ta muốn ư? Bà cho phép ta tiếp tục ư? Ta đã làm gì để xứng đáng với điều đó?" }, { Cue = "/VO/Hecate_0871", Portrait = "Portrait_Hec_Default_01", Speaker = "NPC_Hecate_01", PreLineAnim = "Hecate_Hub_Stern_Start", PreLineAnimTarget = 556921, PostLineAnim = "Hecate_Hub_Stern_End", PostLineAnimTarget = 556921, Text = "Nemesis, cô mới là người hiểu rõ câu trả lời, không phải ta. Giờ thì đi đi, hãy đảm bảo nhiệm vụ chung của chúng ta rằng thời gian sẽ trôi chảy tự do." }, EndVoiceLines = { PreLineWait = 0.46, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0420", Text = "...Đã rõ, thưa Nữ Chúa." }, }, }, NemesisWithMoros01 = { PlayOnce = true, Partner = "NPC_Moros_01", -- PreBlockSpecialInteract = true, -- PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "UseRecord", "NPC_Moros_01" }, }, }, -- UseText = "UseListenNPC", BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, TeleportToId = 560612, TeleportOffsetX = 130, TeleportOffsetY = 130, AngleTowardTargetId = 560612, InteractDistance = 250, { Cue = "/VO/Nemesis_0040", Text = "...Và cô ta đây rồi! Đáng lẽ lúc này cô phải đi được nửa đường đến Tartarus rồi chứ?" }, { Cue = "/VO/Moros_0065", Portrait = "Portrait_Moros_Default_01", Speaker = "NPC_Moros_01", Text = "Công Chúa. Cảm ơn Nữ Thần Định Mệnh vì cô vẫn ổn. Nemesis và ta chỉ mới bắt chuyện thôi. Con bé đã cho ta nghe rất nhiều về cô." }, { Cue = "/VO/Melinoe_0906", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ô, tuyệt. Ta có thể tưởng tượng cảnh đó! Tuy nhiên, cô chưa từng kể cho ta nghe về anh trai cô đấy, Nemesis..." }, { Cue = "/VO/Nemesis_0041", Text = "Ta có rất nhiều anh trai. Mà có gì để kể chứ? Những lúc anh ta xuất hiện thì chẳng có điềm tốt nào cả." }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Moros_01", { Cue = "/VO/Moros_0066", Text = "Ta e là con bé nói đúng đấy." }, }, }, }, NemesisWithMoros02 = { PlayOnce = true, Partner = "NPC_Moros_01", PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisWithMoros01" }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "NemesisWithMoros01" }, Min = 6 }, }, }, UseText = "UseListenNPC", BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, TeleportToId = 560612, TeleportOffsetX = 130, TeleportOffsetY = 130, AngleTowardTargetId = 560612, InteractDistance = 450, { Cue = "/VO/Nemesis_0232", Text = "...Đó là việc của ta, Moros. Chỉ đơn giản là vậy. Không ai khác muốn làm. Không ai có thể làm được." }, { Cue = "/VO/Moros_0331", Portrait = "Portrait_Moros_Default_01", Speaker = "NPC_Moros_01", PreLineAnim = "Moros_Perplexed_Start", PreLineAnimTarget = 560612, Text = "Nhưng sự trừng phạt mà cô phán xét... làm sao cô có thể chắc rằng cô là người duy nhất quyết định sự trừng phạt đó? Nữ Thần Định Mệnh cũng có phần quyết định việc đó." }, { Cue = "/VO/Nemesis_0233", PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Sao cơ, anh nghĩ ta là con rối vô tri mặc kệ cho chị em của chúng ta điều khiển ư? Thôi đi! Những lời tiên tri của họ rất mơ hồ, vì ngay cả họ cũng không thực sự biết điều gì sẽ xảy ra." }, { Cue = "/VO/Moros_0332", Portrait = "Portrait_Moros_Default_01", Speaker = "NPC_Moros_01", PreLineAnim = "Moros_Perplexed_End", PreLineAnimTarget = 560612, Text = "Cho dù đó là sự thật, gánh nặng của việc quyết định ai xứng đáng nhận điều gì... thì ta cũng không muốn phải gánh vác một mình. Nếu không thì phán đoán của ta sẽ hoàn hảo ở mọi thời điểm; nhưng chúng ta là những thực thể có khuyết điểm." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0234", Text = "Tự vấn bản thân đi." }, }, { PreLineWait = 0.1, ObjectType = "NPC_Moros_01", { Cue = "/VO/Moros_0333", Text = "Ta đã từng làm vậy rồi..." }, }, }, }, NemesisWithMorosAboutRelationships01 = { PlayOnce = true, Partner = "NPC_Moros_01", StatusAnimation = false, PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, UseableOffSource = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisGift08", "MorosGift08" } }, }, UseText = "UseListenNPC", BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, TeleportToId = 560612, TeleportOffsetX = 130, TeleportOffsetY = 130, AngleTowardTargetId = 560612, InteractDistance = 350, { Cue = "/VO/Moros_0334", Portrait = "Portrait_Moros_Default_01", Speaker = "NPC_Moros_01", PreLineAnim = "Moros_Perplexed_Start", PreLineAnimTarget = 560612, Text = "Chúng ta đang gặp tình huống khó khăn đấy, Em Gái. Chắc chắn không phải tình huống mà ta có thể lường trước được khi đặt chân đến đây. Thật kỳ lạ... vậy chúng ta nên làm gì đây? Ta không muốn can thiệp vào chuyện này đâu." }, { Cue = "/VO/Nemesis_0235", Portrait = "Portrait_Nemesis_Averted_01", Text = "Đừng lo về chuyện đó, cứ giữ im lặng khi cô ta đến gần chúng ta. Cứ tự nhiên như không biết chuyện gì đang xảy ra đi." }, { Cue = "/VO/Melinoe_3241", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Chờ đã, chuyện gì {#Emph}đang xảy ra vậy {#Prev}? Hai người đang nói về chuyện gì thế?" }, { Cue = "/VO/Nemesis_0236", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Đang nói về {#Emph}cô {#Prev}đấy, Công Chúa à, nhưng không có gì phải lo lắng trong {#Emph}cái đầu nhỏ bé đáng yêu {#Prev}của cô đâu. Cô đã đủ bận rộn rồi, và... bọn ta có thể giải quyết vấn đề này mà không cần cô can thiệp. Nếu cô không phiền?" }, { Cue = "/VO/Moros_0335", Portrait = "Portrait_Moros_Default_01", Speaker = "NPC_Moros_01", PreLineAnim = "Moros_Perplexed_End", PreLineAnimTarget = 560612, Text = "Chờ đã. Không, ta thích nói chuyện thẳng thắn hơn. Công Chúa à, vấn đề là bọn ta có những tình cảm đặc biệt dành cho cô, trong trường hợp đó thì Nemesis thể hiện nó dưới dạng sự ghen tị và cho rằng đó là sự trừng phạt đối với cô. Một kết quả mà bọn ta không mong muốn." }, { Cue = "/VO/Melinoe_3242", UsePlayerSource = true, -- Emote = "PortraitEmoteSurprise", Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "{#Emph}Oh! {#Prev}Ta... ta hiểu rồi. Cảm ơn ngài đã nói cho ta biết. Ta chưa từng muốn tổn thương ai trong hai người. Có lẽ chỉ với {#Emph}cô {#Prev}thôi, Nemesis, nhưng chỉ khi chúng ta đấu với nhau thôi. Vậy chúng ta làm thế nào để giải quyết vấn đề này? Chúng ta không thể để cảm xúc gây trở ngại." }, { Cue = "/VO/Nemesis_0237", Portrait = "Portrait_Nemesis_Averted_01", PreLineAnim = "Nemesis_Hub_Glare_End", Text = "Chúng sẽ không cản trở chúng ta. Mà chẳng phải cô đang bận sao, thông thường cô sẽ dành thời gian cho một người trong số bọn ta, cả thể xác lẫn tâm hồn. Giống như một người phàm không biết việc nào quan trọng hơn." }, { Cue = "/VO/Melinoe_3243", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Chắc chắn là không rồi... tại sao ta hay bất kỳ ai trong chúng ta phải lựa chọn chứ? Chúng ta đều là thần. Nếu cô muốn biết nhiều về ta hơn thì ta sẵn lòng. Nhưng hãy chấp nhận một điều rằng ta sẽ không để bản thân bị ràng buộc bởi người khác, cũng như ta sẽ không mong nghe thấy điều gì khác từ cô. Đủ thẳng thắn chưa?" }, EndVoiceLines = { { PreLineWait = 0.43, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0238", Text = "...Rồi." }, }, { PreLineWait = 0.35, ObjectType = "NPC_Moros_01", { Cue = "/VO/Moros_0336", Text = "Khá thẳng thắn đấy." }, }, }, }, NemesisWithEris01 = { Partner = "NPC_Eris_01", PlayOnce = true, UseText = "UseListenNPC", PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { { }, }, -- BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, UseableOffSource = true, TeleportToId = 590426, AngleTowardTargetId = 585573, InteractDistance = 450, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.ErisGreeting, { Cue = "/VO/Nemesis_0239", PreLineWait = 0.35, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "...Không, còn một điều nữa, Eris. Có thể Nữ Chúa đã hứa với mẹ sẽ chăm sóc ngươi, nhưng ta thì không. Vậy nên hãy biến khỏi đây trước khi ta nổi điên lên." }, { Cue = "/VO/Eris_0108", Portrait = "Portrait_Eris_Default_01", Speaker = "NPC_Eris_01", PreLineAnim = "Enemy_Eris_Hub_Scoff", PreLineAnimTarget = 585573, Text = "Ôi làm ơn, Nemesis, cô lại nổi giận rồi! Và ta sẽ đến và đi nếu ta muốn, nhé. Vì ở đây chán chết đi được, không thể ở lại lâu hơn được." }, { Cue = "/VO/Nemesis_0240", PreLineAnim = "Nemesis_Hub_Glare_End", Text = "Đến và đi tùy thích? Ngươi là mối đe đọa đối với sứ mệnh. Đừng có làm trò trẻ con ở đây." }, { Cue = "/VO/Eris_0109", Portrait = "Portrait_Eris_Default_01", Speaker = "NPC_Eris_01", PreLineAnim = "Enemy_Eris_Hub_Greet", PreLineAnimTarget = 585573, Text = "{#Emph}Đừng làm trò trẻ con. {#Prev}Dừng lại một chút đã... điều đó có khiến cô trở thành {#Emph}mẹ ta {#Prev}không?Ta còn chưa từng khuất phục trước Nyx. Thế cô nghĩ ta sẽ sợ {#Emph}cô {#Prev}ư?" }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0241", Text = "Ngươi sẽ nhận được những gì sắp xảy đến với ngươi." }, }, { PreLineWait = 0.4, ObjectType = "NPC_Eris_01", PreLineAnim = "Enemy_Eris_Hub_Flattered", PreLineAnimTarget = 585573, { Cue = "/VO/Eris_0110", Text = "{#Emph}Ooh! {#Prev}Một lời đe dọa sao!" }, }, }, }, NemesisWithEris02 = { Partner = "NPC_Eris_01", PlayOnce = true, UseText = "UseListenNPC", PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, StatusAnimation = false, GameStateRequirements = { { PathTrue = { "GameState", "RoomsEntered", "O_Boss01" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisWithEris01" }, }, { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "NemesisWithEris01" }, Min = 5 }, }, }, BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, UseableOffSource = true, TeleportToId = 590426, AngleTowardTargetId = 585573, InteractDistance = 450, { Cue = "/VO/Eris_0111", Portrait = "Portrait_Eris_Default_01", Speaker = "NPC_Eris_01", PreLineAnim = "Enemy_Eris_Hub_Scoff", PreLineAnimTarget = 585573, PreLineWait = 0.35, Text = "{#Emph}...Thế à? {#Prev}Vậy cô tính làm gì với chuyện đó hả, Nemmie? Không thể giải quyết chuyện đó với ta ngay giữa {#Emph}Crossroads {#Prev}của cô sao?" }, { Cue = "/VO/Nemesis_0242", PreLineWait = 0.35, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Không thể giải quyết {#Emph}ở đây. {#Prev}Nhưng có thể sẽ bắt gặp ngươi ngoài kia, khi đang rình rập. Và sẽ không có sự đối đãi đặc biệt nào dành cho ngươi. Ngươi cũng chỉ là một mục tiêu khác." }, { Cue = "/VO/Eris_0112", Portrait = "Portrait_Eris_Default_01", Speaker = "NPC_Eris_01", PreLineAnim = "Enemy_Eris_Hub_Greet", PreLineAnimTarget = 585573, Text = "{#Emph}Heh! {#Prev}Nemesis, sao cô có thể tàn nhẫn như vậy chứ? Cô là {#Emph}chị em {#Prev}với ta mà! Chúng ta không nhất thiết phải {#Emph}đánh nhau! {#Prev}Và hơn hết, điều gì khiến cô nghĩ cô có thể {#Emph}bắt được ta {#Prev}vậy? Vì cô quá {#Emph}chậm chạp." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", PreLineAnim = "Nemesis_Hub_Glare_End", { Cue = "/VO/Nemesis_0243", Text = "Rồi ngươi sẽ biết." }, }, { PreLineWait = 0.25, ObjectType = "NPC_Eris_01", PreLineAnim = "Enemy_Eris_Hub_Flattered", PreLineAnimTarget = 585573, { Cue = "/VO/Eris_0113", Text = "{#Emph}Cô {#Prev}cũng vậy." }, }, }, }, NemesisWithIcarus01 = { Partner = "NPC_Icarus_01", PartnerVariant = "IcarusHome", PlayOnce = true, UseText = "UseListenNPC", PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- StatusAnimation = false, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "IcarusGift09", "NemesisGift09" } }, }, BlockDistanceTriggers = true, IgnoreSourceEndTextLinesThreadedFunctionName = true, UseableOffSource = true, TeleportToId = 743557, TeleportOffsetY = 50, InteractDistance = 450, { Cue = "/VO/Nemesis_0437", PreLineWait = 0.35, PreLineAnim = "Nemesis_Hub_Greet", Text = "...Ta biết những chuyện này, nhóc. So với cuộc đời của người phàm, cuộc đời của ngươi thuộc loại ngắn ngủi và khốn khổ hơn mức bình thường. Vậy nên, những gì ngươi đang làm hiện tại chỉ để bù đắp lại một phần nào đó." }, { Cue = "/VO/Icarus_0478", PreLineWait = 0.15, Portrait = "Portrait_Icarus_Unsure_01", Speaker = "NPC_Icarus_01", PreLineAnim = "Icarus_Pensive_Start", PreLineAnimTarget = 800098, PostLineAnim = "Icarus_Pensive_End", PostLineAnimTarget = 800098, Text = "Ừm, Nữ Thần, vậy ý cô là sau khi chết, ta sẽ có một cuộc sống tốt hơn, dựa trên hệ thống xếp hạng nào đó của cô... phải không?" }, { Cue = "/VO/Nemesis_0438", -- PreLineAnim = "Moros_Perplexed_End", Text = "Đúng vậy. Đừng lãng phí, đừng tham lam, thì mọi chuyện sẽ ổn. Cứ tiếp tục những gì ngươi đang làm." }, { Cue = "/VO/Icarus_0479", Portrait = "Portrait_Icarus_Default_01", Speaker = "NPC_Icarus_01", PreLineAnim = "Icarus_Flustered_Start", PreLineAnimTarget = 800098, PostLineAnim = "Icarus_Flustered_End", PostLineAnimTarget = 800098, Text = "Nhưng... ta thật may mắn khi được ở đây cùng tất cả mọi người. Một cuộc đời ngắn ngủi đổi lấy một cõi vĩnh hằng tốt đẹp. Xét theo lập luận của cô thì... đó không phải một cuộc trao đổi công bằng. Ta đã làm gì để xứng đáng với điều này...?" }, { Cue = "/VO/Nemesis_0439", PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Trước hết, vì ngươi không đặt quá nhiều câu hỏi, và đừng xem cõi vĩnh hằng là điều hiển nhiên." }, EndVoiceLines = { { PreLineWait = 0.35, ObjectType = "NPC_Icarus_01", { Cue = "/VO/Icarus_0480", Text = "Sẽ không đâu. Ta xin thề." }, }, }, }, -- Repeatable NemesisChat01 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0003", Text = "Gần đây bọn người phàm thường nghĩ rằng chúng có thể thoát tội khỏi những việc chúng làm..." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat02 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0006", Text = "Bận rộn vì giữ trật tự như cô đang thấy đây." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat03 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0004", Text = "Có nhiều điều ác xảy ra ngoài kia, không được kiểm soát..." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat04 = { GameStateRequirements = { { -- PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0010", Text = "Đi tiếp đi. Sứ mệnh đó của cô không tự hoàn thành đâu." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat05 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0005", Text = "Lẽ ra đang phải ở trên trần gian ngay lúc này, đang làm những việc phải làm..." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat06 = { GameStateRequirements = { { -- PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0007", Text = "Ta không đi đâu cả, tiếp tục công việc của cô đi." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat07 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0008", Text = "Chúng ta đều nhận được những gì xứng đáng. Không hơn không kém." }, }, NemesisChat08 = { GameStateRequirements = { { -- PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0009", Text = "Cô bỏ lỡ những cảnh kịch tính khi ra ngoài đấy." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat09 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0012", Text = "Tự làm việc của cô đi. Ta sẽ ở đây chờ." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat10 = { GameStateRequirements = { { -- PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0013", Text = "Xin lỗi, ta vẫn đang làm nhiệm vụ, như cô đang thấy đây." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat11 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0014", Text = "{#Emph}Ungh, {#Prev}ta đã làm gì để phải chịu cảnh này chứ..." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat12 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0015", Text = "Quay lại làm nhiệm vụ tiếp à, Công Chúa?" }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat13 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0016", Text = "Đi đập nát sọ vài tên cho ta đi, chúng xứng đáng với điều đó." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat14 = { GameStateRequirements = { { -- PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0017", Text = "Chỉ có thể tưởng tượng những việc cô đã làm ngoài đó." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat15 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0018", Text = "Mong cô đừng quá tham khi ở ngoài kia." }, }, NemesisChat16 = { PlayFirst = true, GameStateRequirements = { { -- PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0019", Text = "Thời điểm tốt để cô tiếp tục làm nhiệm vụ sao?" }, }, NemesisChat17 = { GameStateRequirements = { { PathFalse = { "GameState", "TextLinesRecord", "NemesisBathHouse03" }, }, { FunctionName = "RequiredAlive", FunctionArgs = { Ids = { 556921 }, }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0020", Text = "Đi mà khóc với Nữ Chúa đi. Bà ta ở ngay kia kìa." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat18 = { GameStateRequirements = { { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0021", Text = "Phương pháp của Phù Thủy Crossroads cũng chỉ đưa cô đi xa đến thế là cùng." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat19 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0022", Text = "Sớm hay muộn thì mọi thứ vẫn luôn trở về điểm xuất phát, Công Chúa." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat20 = { GameStateRequirements = { { Path = { "CurrentRun", "RoomCountCache" }, HasAny = { "Q_Boss01", "Q_Boss02" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0023", Text = "Cô đã ở trên đó được một khoảng thời gian đấy..." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat21 = { GameStateRequirements = { { Path = { "CurrentRun", "RoomCountCache" }, HasAny = { "I_Intro", "Q_Intro" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0024", Text = "Cô đi cũng khá lâu đấy, cứ ngỡ cô lạc đường rồi." }, }, NemesisChat22 = { GameStateRequirements = { { Path = { "CurrentRun", "RoomCountCache" }, HasAny = { "G_Intro", "O_Intro" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0025", Text = "Quay về đây chỉ để chữa thương rồi đi tiếp ư?" }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat23 = { GameStateRequirements = { -- }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0026", Text = "Ta nghĩ chắc cô đã bỏ cuộc từ lâu rồi." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat24 = { GameStateRequirements = { { -- PathFalse = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0027", Text = "Mọi thứ ở Crossroads đều yên tĩnh, lần thứ một nghìn..." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat25 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0028", Text = "Chỉ đơn giản là tiếp tục vượt qua thôi ư?" }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat26 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0029", Text = "Ta đã làm tốt công việc bảo vệ vô nghĩa này." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat27 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift01" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0030", Text = "Đi tiếp đi, cô còn nhiều việc quan trọng cần làm hơn việc nói chuyện với ta đấy." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat28 = { UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0031", Text = "Muốn thay ta làm việc thì đi tiếp đi." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat29 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0032", Text = "Tìm Chronos, giết Chronos. Đi đi." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, NemesisChat30 = { PlayFirst = true, UseableOffSource = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift07" }, }, OrRequirements = { { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, }, { { PathTrue = { "GameState", "SpeechRecord", "/VO/Chronos_1058" }, }, }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, { Cue = "/VO/Nemesis_0033", PreLineAnim = "Nemesis_Hub_Salute", Text = "Tiêu diệt Chronos, Công Chúa.." }, EndVoiceLines = { { UsePlayerSource = true, PreLineWait = 0.3, { Cue = "/VO/Melinoe_1211", Text = "Death to Chronos." }, }, }, }, NemesisChat31 = { PlayFirst = true, GameStateRequirements = { { -- PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, UseableOffSource = true, EndGlobalVoiceLines = "MiscEndVoiceLines_Nemesis", { Cue = "/VO/Nemesis_0011", Text = "Bỏ cuộc đi, hãy nói với Hecate rằng ta vẫn còn ở đây." }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGreeting, }, }, GiftTextLineSets = { NemesisGiftDecline01 = { PlayOnce = true, Cost = { GiftPoints = 1, }, SkipGiftPresentationPost = true, GameStateRequirements = { { PathTrue = { "GameState", "UseRecord", "NPC_Nemesis_01" }, }, { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "Shop" }, }, { PathFalse = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/MelinoeField_0022", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đây, Nemesis! Vì sự cứng đầu bất tuân của cô. Cầu mong những tính cách đó sẽ không khiến cô lạc lối." }, { Cue = "/VO/NemesisField_0024", PostLineThreadedFunctionName = "GiftPointRefundPresentation", Text = "Cô thực sự nghĩ đây là thời điểm thích hợp để chúng ta thư giãn và cười đùa với một chai rượu ngon ư? Cô đối xử với ta như thể ta không có việc gì tốt hơn để làm ngay lúc này." }, }, NemesisGift01 = { PlayOnce = true, OnGiftTrack = true, UnfilledIcon = "EmptyHeartWithGiftIcon", FilledIcon = "FilledHeartWithGiftIcon", HintId = "Codex_NemesisGiftHint01", SkipGiftPresentationPost = true, Cost = { GiftPoints = 1, }, GameStateRequirements = { { PathTrue = { "GameState", "UseRecord", "NPC_Nemesis_01" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Melinoe_0685", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Nemesis? Có lẽ chúng ta nên bắt đầu lại. Đây, ta có món quà dành cho cô..." }, { Cue = "/VO/Nemesis_0095", PostLineAnim = "Nemesis_Hub_Toss", Text = "Ta không cần sự thương hại từ cô, Công Chúa, cũng như những lời cám giỗ khi ta đang làm việc hoặc không. Dù sao thì cô làm việc này cũng vì muốn thứ gì đó từ ta, vậy thì đây! Tự lo nốt phần còn lại đi." }, }, NemesisGift02 = { PlayOnce = true, OnGiftTrack = true, HintId = "Codex_NemesisGiftHint01", PostBlockSpecialInteract = true, Cost = { GiftPoints = 1, }, SkipGiftPresentationPost = true, GameStateRequirements = { { -- PathTrue = { "GameState", "TextLinesRecord", "NemesisGift01" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Nemesis_0096", Emote = "PortraitEmoteSurprise", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Cô đang cố tình khiến ta gặp rắc rối với Nữ Chúa ư? Sao cô không mang chai rượu của cô đi trước khi ta đập vỡ nó và đá đít cô khỏi đây." }, { Cue = "/VO/Melinoe_0627", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkFlustered01", PreLineAnimTarget = "Hero", PostLineThreadedFunctionName = "GiftPointRefundPresentation", Text = "Ta không có ý định gây rắc rối gì cho cô cả, Nem, ta chỉ... {#Emph}ungh{#Prev}. Vậy thôi, không có gì cả." }, }, NemesisGift03 = { PlayOnce = true, OnGiftTrack = true, HintId = "Codex_NemesisGiftHint01", Cost = { GiftPoints = 1, }, GameStateRequirements = { { -- PathTrue = { "GameState", "TextLinesRecord", "NemesisGift02" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Nemesis_0097", Text = "Cho ta sao? Ta đoán cô không tìm được ai khác để thử chất độc nhỉ. Phù thủy các cô chẳng xảo quyệt như cô nghĩ đâu." }, { Cue = "/VO/Melinoe_0628", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Đó chính xác là những điều mà người chưa từng bị phù thủy đầu độc sẽ nói." }, EndVoiceLines = { { PreLineWait = 0.35, { Cue = "/VO/Nemesis_0163", Text = "{#Emph}Ugh." }, }, }, }, NemesisGift04 = { PlayOnce = true, OnGiftTrack = true, HintId = "Codex_NemesisGiftHint01", Cost = { GiftPoints = 1, }, GameStateRequirements = { { -- PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Nemesis_0145", Text = "Ồ không, không phải thứ này nữa chứ. Nghe đây, lần trước ta đã tha thứ cho cô. Nó không có nghĩa là cô phải đưa cho ta thêm những thứ này. Ta không thích mắc nợ ai cả." }, { Cue = "/VO/Melinoe_2097", UsePlayerSource = true, Portrait = "Portrait_Mel_Casual_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Chỉ cần nhận lấy và thưởng thức nó đi, Nem. Ngoài ra, ta nghe nói cô đang tìm kiếm một số loại độc dược của phù thủy bọn ta. Có vẻ như rất hiếm người như cô đánh giá cao chúng." }, }, NemesisGift05 = { PlayOnce = true, OnGiftTrack = true, HintId = "Codex_NemesisGiftHint01", Cost = { GiftPoints = 1, }, GameStateRequirements = { { -- PathTrue = { "GameState", "TextLinesRecord", "NemesisGift04" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Nemesis_0098", Text = "Sao cô vẫn cứ làm việc này hả? Cô đã thắng, được chưa? Cô đã đánh bại ta. Từ trước khi cô bắt đầu nữa. Điều cuối cùng ta cần lúc này là sự cảm thông của cô." }, { Cue = "/VO/Melinoe_0629", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Nemesis... ta không biết mình phải làm gì. Chúng ta đang bị bảo vây bởi kẻ thù ngoài kia. Chúng ta có nhất thiết phải thù địch như vậy không?" }, { Cue = "/VO/Nemesis_0099", Portrait = "Portrait_Nemesis_Averted_01", PreLineWait = 0.35, Text = "...Cô không phải kẻ thù của ta, Melinoë. Ta chỉ... Thôi quên đi." }, EndVoiceLines = { { UsePlayerSource = true, PreLineWait = 0.45, { Cue = "/VO/Melinoe_2250", Text = "Tạm biệt, Nem..." }, }, }, }, NemesisGift06 = { PlayOnce = true, OnGiftTrack = true, HintId = "Codex_NemesisGiftHint01", Cost = { GiftPoints = 1, }, GameStateRequirements = { { -- PathTrue = { "GameState", "TextLinesRecord", "NemesisGift04" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Nemesis_0311", PreLineAnim = "Nemesis_Hub_Greet", Text = "Ta khuyên cô nên sớm từ bỏ thói quen dùng thứ Rượu Mật này. Cái gì nhiều quá cũng không tốt. Cô phải hiểu rõ ta rồi chứ." }, { Cue = "/VO/Melinoe_4430", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Tất nhiên rồi, không ai được phép hưởng quá nhiều điều tốt đẹp, kể cả cô. Nhưng nếu thực sự vượt quá giới hạn thì sao? Cô sẽ tự trừng phạt chính mình ư?" }, { Cue = "/VO/Nemesis_0312", Portrait = "Portrait_Nemesis_Averted_01", Text = "Đúng vậy. Và đừng có giả vờ như cô sẽ không làm điều tương tự. Ta phải công nhận một điều ở Hecate là bà ta rất coi trọng kỷ luật. Đôi khi chúng ta buộc phải tự kỷ luật chính mình." }, EndVoiceLines = { { UsePlayerSource = true, PreLineWait = 0.45, { Cue = "/VO/Melinoe_4431", Text = "Chúng ta cũng phải chăm sóc bản thân nữa." }, }, }, }, NemesisGift07 = { PlayOnce = true, OnGiftTrack = true, HintId = "Codex_NemesisGiftHint01", LockedHintId = "Codex_NemesisUnlockHint01", UnfilledIcon = "EmptyHeartWithAmbrosiaIcon", FilledIcon = "FilledHeartWithAmbrosiaIcon", Cost = { SuperGiftPoints = 1, }, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisPostCombatAboutRelationship01", "NemesisGift06" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Melinoe_4432", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta biết cô không thích những chuyện này, nhưng ta nghĩ tặng thêm một chai Ambrosia nữa sẽ không quá nghiêng cán cân công bằng của cô đâu nhỉ, Nem?" }, { Cue = "/VO/Nemesis_0313", Portrait = "Portrait_Nemesis_Averted_01", PreLineAnim = "Nemesis_Hub_Greet", Text = "Cũng có thể. Ta không định đến quán rượu để kiểm chứng, vậy sao cô không giữ nó lại đi? Giờ không phải lúc để hưởng thụ những thứ xa xỉ." }, { Cue = "/VO/Melinoe_4433", UsePlayerSource = true, Portrait = "Portrait_Mel_Casual_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Vậy sao cô không giữ lại cho đến khi nào cô cảm thấy xứng đáng để thưởng thức? Nếu cô không nuông chiều bản thân, thì cô đâu cần phải lo lắng về điều đó, phải không?" }, { Cue = "/VO/Nemesis_0314", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Muốn lãng phí thứ này thì tùy cô. Nhưng nó chỉ nằm yên trong kho, và có lẽ sẽ chẳng bao giờ thấy được một chút ánh sáng hiếm hoi ở nơi này. Miễn là cô chấp nhận điều đó." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_4434", Text = "Ta chấp nhận." }, }, }, }, NemesisGift08 = { PlayOnce = true, OnGiftTrack = true, StartBecomingCloserTrack = true, HintId = "Codex_GrowingCloser01", UnfilledIcon = "EmptyHeartWithAmbrosiaIcon", FilledIcon = "FilledHeartWithAmbrosiaIcon", Cost = { SuperGiftPoints = 1, }, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift07" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Melinoe_4435", UsePlayerSource = true, Portrait = "Portrait_Mel_Pleased_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta mang đến một món quà khác để thêm vào bộ sưu tập cho kho đồ của cô đây, Nemesis. Biết đâu đến một lúc nào đó, cô sẽ thấy mình xứng đáng để thưởng thức chúng." }, { Cue = "/VO/Nemesis_0315", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Ai mà biết được. Điều gì khiến cô nghĩ ta xứng đáng với những thứ này? Gần đây ta không làm tốt vai trò của mình." }, { Cue = "/VO/Melinoe_4436", UsePlayerSource = true, Portrait = "Portrait_Mel_Casual_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta không phải người phán xét những điều đó, nhưng ta nghĩ cô xứng đáng với chúng. Cô nghiêm khắc với bản thân mình hơn bất kỳ ai. Giá như cô có thể nhìn thấy bản thân mình thông qua góc nhìn của ta." }, { Cue = "/VO/Nemesis_0316", PreLineAnim = "Nemesis_Hub_Glare_End", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta chẳng hiểu cô muốn nói gì. Chúng ta đều hướng đến cùng một mục tiêu, và cả hai đều đang cố hết sức. Vậy thì đã sao? Dù sao thì thứ này cũng sẽ được cất vào kho." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_4437", Text = "Nơi phù hợp với nó." }, }, }, }, NemesisGift09 = { PlayOnce = true, OnGiftTrack = true, HintId = "Codex_GrowingCloser01", UnfilledIcon = "EmptyHeartWithAmbrosiaIcon", FilledIcon = "FilledHeartWithAmbrosiaIcon", Cost = { SuperGiftPoints = 1, }, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisGift08", "NemesisFishing01" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Nemesis_0317", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ambrosia. Nghe đây, những thứ không bao giờ đúng đến này đã chiếm hết kho đồ của ta. Ta không muốn chúng đầy đến mức rơi ra ngoài." }, { Cue = "/VO/Melinoe_4438", UsePlayerSource = true, Portrait = "Portrait_Mel_Pleased_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Vậy thì cô có thể mời ta đến quán rượu, nơi mà chúng ta có thể cùng nhau tiêu thụ bớt. Sao cô cứ mãi cất giữ nưh vậy? Ngoài những lý do mà cô đã nói trước đó." }, { Cue = "/VO/Nemesis_0318", PreLineAnim = "Nemesis_Hub_Greet", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta sẽ không mời cô đi đâu cả, nếu cô vẫn cứ tiếp tục như thế này. Và ta không thích việc cô xem nhẹ sự cân bằng. Sự cân bằng là lĩnh vực chuyên môn của ta, không phải của cô." }, { Cue = "/VO/Melinoe_4439", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkBrooding01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Xin lỗi, Nemesis, ta không có ý xúc phạm; ngay cả ta cũng không ngờ là mình lại nói những điều này, khi trước đây, giữa chúng ta chỉ là những lời mỉa mai nhau." }, { Cue = "/VO/Nemesis_0319", Portrait = "Portrait_Nemesis_Averted_01", Text = "Mọi thứ trước đây thật đơn giản và tốt đẹp nhỉ? Nhưng giờ chúng ta đang bị mắc kẹt trong cái vòng luẩn quẩn này, cho đến khi nào thoát được, và chúng ta đang làm điều đó ngay lúc này. Không tặng thêm Ambrosia nữa. Kể từ bây giờ." }, EndVoiceLines = { { UsePlayerSource = true, PreLineWait = 0.4, RequiredMinElapsedTime = 2, { Cue = "/VO/Melinoe_4440", Text = "Mãi mãi ư? Vậy còn Muối Tắm thì sao?" }, }, { PreLineWait = 0.38, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/Nemesis_0320", Text = "{#Emph}" }, }, }, }, -- taverna NemesisTaverna01 = { PlayOnce = true, UseableOffSource = true, OnGiftTrack = true, UnfilledIcon = "EmptyHeartWithAmbrosiaIcon", FilledIcon = "FilledHeartWithAmbrosiaIcon", HintId = "Codex_TavernaGiftHint", Cost = { SuperGiftPoints = 1, }, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift05" }, }, { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "Shop" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeTaverna" }, }, { PathFalse = { "CurrentRun", "TimePassageOccurred" }, HintId = "Codex_TimePassesGiftUsed", }, }, { Cue = "/VO/Melinoe_3354", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Này, ta biết khả năng cao cô sẽ nói không, nhưng... ta có một chai độc dược cực kỳ đặc biệt ở đây, và ta nghĩ có lẽ ta và cô nên chia sẻ nó ở quán rượu, nhỉ?" }, { Cue = "/VO/Nemesis_0146", PostLineRemoveContextArt = true, PreLineAnim = "Nemesis_Hub_Greet", PortraitExitAnimation = "Portrait_Nemesis_Default_01_Exit", Text = "Lịch sự quá đấy! Thế thì, ta đoán chúng ta nên chia đôi sẽ bớt quá đáng hơn... {#Emph}ungh{#Prev}, cô biết đấy, sao cũng được." }, { Cue = "/VO/Nemesis_0147", SkipContextArt = true, PreLineFunctionName = "TavernaStartPresentation", PreLineWait = 0.35, Text = "...Nhanh nào, nói đi: Rằng cô đã bị đá đít. Bởi ta. Ta nghĩ đó là lần đầu ta cảm nhận được cơ hội. Bà già Hecate đó sẽ chọn ta. Giá như ta có thể hành cô thể vài lần nữa." }, { Cue = "/VO/Melinoe_2099", UsePlayerSource = true, SkipContextArt = true, Portrait = "Portrait_Mel_Casual_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô đúng là quái vật, Nem! Ta gần như cảm thấy sợ hãi khi phải đối đầu với cô. Nhưng, cách tốt nhất để trở nên mạnh mẽ hơn, là luyện tập với một đối thủ mạnh hơn." }, { Cue = "/VO/Nemesis_0148", SkipContextArt = true, Portrait = "Portrait_Nemesis_Averted_01", PreLineAnim = "Nemesis_Hub_Salute", Text = "Có lẽ đó là lý do khiến ta phải do dự. Chúng ta không còn đối đầu nhau như trước nữa. Chỉ nghĩ đến điều đó thôi cũng khiến ta phát tởm." }, { Cue = "/VO/Melinoe_2100", UsePlayerSource = true, SkipContextArt = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Chờ đã... cô đứng đây và nghĩ về những trận đấu của chúng ta ư? Ta nên cảm thấy hãnh diện hay lo sợ nhỉ?" }, { Cue = "/VO/Nemesis_0149", SkipContextArt = true, PreLineAnim = "Nemesis_Hub_Toss", Text = "Lo mà uống hết phần độc dược của cô đi! Ta không rãnh cả đêm để ngồi đây nghe cô đề cao bản thân. Ta đảm bảo, nhân loại thừa hưởng những phẩm chất tệ hại những của chúng ta." }, { Cue = "/VO/Melinoe_2101", UsePlayerSource = true, SkipContextArt = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta có nói chuyện nghiêm túc đâu. Nhưng có lẽ ta tự xem bản thân quan trọng hơn ta tưởng. Ta thừa hưởng một phần từ người phàm, từ mẹ ta..." }, { Cue = "/VO/Nemesis_0150", SkipContextArt = true, PortraitExitAnimation = "Portrait_Nemesis_Default_01_Exit", PostLineThreadedFunctionName = "LoungeRevelryPresentation", PostLineFunctionArgs = { Sound2 = "/EmptyCue", Sound3 = "/EmptyCue", TimeTicks = 20 }, Text = "Điều đó khiến cô khác biệt, ta công nhận. Giờ thì đi thôi, ta phải quay lại. Nếu không, Hecate có thể bắt gặp chúng ta đang quan tâm nhau và không ai trong chúng ta muốn hứng chịu kết cục của chuyện đó." }, { Cue = "/VO/Nemesis_0151", Portrait = "Portrait_Nemesis_Averted_01", PreLineFunctionName = "TavernaEndPresentation", PreLineWait = 0.35, PostLineThreadedFunctionName = "InCombatTextEvent", PostLineThreadedFunctionArgs = GameData.PostTavernaArgs, Text = "...Ta cảm thấy chất độc bắt đầu phát huy tác dụng. Tốt nhất cô nên biến khỏi đây trước khi ta gục ngã." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_2102", Text = "Đó sẽ là bí mật của chúng ta." }, }, }, }, NemesisBathHouse01 = { PauseMusicPlayerMusic = true, PlayOnce = true, OnGiftTrack = true, UseableOffSource = true, GiftableOffSource = true, DoNotFlipContextArt = true, UnfilledIcon = "EmptyHeartWithSaltsIcon", FilledIcon = "FilledHeartWithSaltsIcon", HintId = "Codex_NemesisHotSpringsGiftHint", LockedHintId = "Codex_LockedActivityHint", Cost = { GiftPointsRare = 1, }, GameStateRequirements = { { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "Shop" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeBathHouse" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, { PathFalse = { "CurrentRun", "TimePassageOccurred" }, HintId = "Codex_TimePassesGiftUsed", }, }, { Cue = "/VO/Melinoe_3104", UsePlayerSource = true, Text = "Nemesis, chúng ta đã như thế này một thời gian rồi, và ta tự hỏi liệu cô có muốn thư giản một chút không. Ở Suối Nước Nóng." }, { Cue = "/VO/Nemesis_0203", PortraitExitAnimation = "Portrait_Nemesis_Default_01_Exit", PostLineRemoveContextArt = true, Text = "{#Emph}Hm. {#Prev}Nghĩ lại thì, cũng nên đi tắm một chút. Ý ta là cô, cô cần đi tắm. Nhưng ta cũng cần nữa, vậy nên... sao lại không chứ." }, { Cue = "/VO/Melinoe_3105", PreLineFunctionName = "BathHouseStartPresentation", NarrativeContextArt = "DialogueBackground_Bathhouse", UsePlayerSource = true, PreLineWait = 0.5, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Đã bao lâu rồi cô chưa cởi bỏ bộ giáp này vậy?" }, { Cue = "/VO/Nemesis_0213", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Cũng lâu rồi. Chẳng có lý do gì để làm vậy. Cô cũng biết việc tháo dây buộc và dây đai phiền phức đến mức nào rồi đấy. Cảm giác thật khó chịu nếu không mặc nó, giống như... ta... ta chẳng biết nữa." }, { Cue = "/VO/Melinoe_3106", UsePlayerSource = true, PreLineWait = 0.5, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "...Để giảm gánh nặng? Hoặc ít nhất là cảm thấy thoải mái hơn?" }, { Cue = "/VO/Nemesis_0214", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "{#Emph}Heh. {#Prev}Đôi khi thư giản cũng tốt. Nhưng giữa việc nghỉ ngơi và tự mãn có một ranh giới mong manh." }, { Cue = "/VO/Melinoe_3107", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Ta không nghĩ chúng ta có nguy cơ trở nên tự mãn ở đây đấy, Nem." }, { Cue = "/VO/Nemesis_0215", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Nguy cơ lớn hơn cô nghĩ nhiều. Chúng ta đang nằm dài trong bồn tắm, trong khi không hay biết chuyện gì đang xảy ra ngoài kia..." }, { Cue = "/VO/Melinoe_3108", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", PostLineFunctionName = "BathHouseQuipPresentation", PostLineThreadedFunctionName = "TimePassesPresentation", PostLineThreadedFunctionArgs = { TimeTicks = 12, }, EndSound = "/Leftovers/Menu Sounds/EmoteThoughtful", PostLineRemoveContextArt = true, Text = "Chúng ta không nằm mãi ở đây. Chúng ta đang chuẩn bị để đối phó với những điều không ai đoán trước đang xảy ra ngoài kia nếu cơ thể không bị căng cứng." }, { Cue = "/VO/Nemesis_0217", NarrativeContextArt = "DialogueBackgroundBiome_Woods", PreLineFunctionName = "BathHouseEndPresentation", PreLineWait = 0.2, PostLineThreadedFunctionName = "InCombatTextEvent", PostLineThreadedFunctionArgs = GameData.PostBathHouseArgs, Emote = "PortraitEmoteSparkly", Text = "Thế thôi, ta phải quay lại làm việc. Nhưng, bộ đồ này có cảm giác nhẹ hơn một chút rồi..." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_3109", Text = "Bảo trọng, Nem." }, }, }, }, NemesisBathHouse02 = { PauseMusicPlayerMusic = true, PlayOnce = true, OnGiftTrack = true, UseableOffSource = true, GiftableOffSource = true, DoNotFlipContextArt = true, UnfilledIcon = "EmptyHeartWithSaltsIcon", FilledIcon = "FilledHeartWithSaltsIcon", HintId = "Codex_NemesisHotSpringsGiftHint", LockedHintId = "Codex_LockedActivityHint", Cost = { GiftPointsRare = 1, }, GameStateRequirements = { { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "Shop" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeBathHouse" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift04" }, }, { PathTrue = { "GameState", "RoomsEntered", "H_Intro" }, }, { PathFalse = { "CurrentRun", "TimePassageOccurred" }, HintId = "Codex_TimePassesGiftUsed", }, }, { Cue = "/VO/Melinoe_3110", UsePlayerSource = true, Text = "Chào Nem, cô có thể dành chút thời gian để đi suối lần nữa không? Nghỉ ngơi một chút, thư giản một chút..." }, { Cue = "/VO/Nemesis_0204", PortraitExitAnimation = "Portrait_Nemesis_Default_01_Exit", PostLineRemoveContextArt = true, Text = "{#Emph}Eh. {#Prev}Vai ta lại đau, có lẽ nên ghé qua suối một chút. Ta không thích phải cởi bộ giáp, nhưng đó là điều bắt buộc." }, { Cue = "/VO/Nemesis_0218", PreLineFunctionName = "BathHouseStartPresentation", NarrativeContextArt = "DialogueBackground_Bathhouse", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Lần đầu tiên cô đánh bại ta trong một trận đấu là khi nào. Trận đấu tập ư, sao cũng được. Cô đã đánh thẳng vào gáy của ta. Tận dụng từ sự chênh lệch chiều cao của chúng. Ấn tượng đấy." }, { Cue = "/VO/Melinoe_3111", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Ta đã thua cô rất nhiều lần, ta nghĩ ta có thể khiến cô chủ quan. Ngay cả cô cũng có thể bị ảnh hưởng bởi điều đó." }, { Cue = "/VO/Nemesis_0219", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Cô đã đúng. Khiến ta tức điên lên. Ta đã thề sẽ không bao giờ xem thường đối thủ nữa. Rồi thuyết phục bản thân rằng cô sẽ không bao giờ có thể đánh bại ta trong nhiệm vụ này. Nhiệm vụ của chúng ta." }, { Cue = "/VO/Melinoe_3112", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Vậy ra cô cũng có một chút lòng tự trọng. Cô không có gắng phủ nhận nó hoàn toàn phải không? Chỉ giữ nó trong tầm kiểm soát. Ngoài ra, ta nghĩ rằng chúng ta không hề đối lập về những gì chúng ta đang cố gắng đạt được." }, { Cue = "/VO/Nemesis_0220", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Chúng ta không hề đối lập. Nhưng ta chỉ có thể thúc ép bản thân cố gắng hết sức. Thấy cô ngày càng trở nên mạnh hơn, ngày càng tiến xa hơn... điều đó càng truyền động lực cho ta." }, { Cue = "/VO/Melinoe_3113", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Ta không ngờ đấy. Ta cứ nghĩ ta có được tinh thần phấn đấu từ cô cơ. Dù sao thì... hãy nói cho ta biết nếu cô cần giúp đỡ gì đó. Chẳng hạn như giúp cô mặc lại bộ giáp đó." }, { Cue = "/VO/Nemesis_0221", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", PostLineFunctionName = "BathHouseQuipPresentation", PostLineThreadedFunctionName = "TimePassesPresentation", PostLineThreadedFunctionArgs = { TimeTicks = 12, }, EndSound = "/Leftovers/Menu Sounds/EmoteThoughtful", PostLineRemoveContextArt = true, Text = "Hoặc cởi nó ra, phải. Tuy nhiên, ta sẽ không để bản thân phụ thuộc vào cô đâu." }, { Cue = "/VO/Nemesis_0222", NarrativeContextArt = "DialogueBackgroundBiome_Woods", PreLineFunctionName = "BathHouseEndPresentation", PreLineWait = 0.2, PostLineThreadedFunctionName = "InCombatTextEvent", PostLineThreadedFunctionArgs = GameData.PostBathHouseArgs, Emote = "PortraitEmoteSparkly", Text = "Vậy thôi, ngồi tán gẫu thế đủ rồi. Đến lúc đứng dậy hoạt động tiếp rồi." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/Melinoe_3115", Text = "Vậy thì đi thôi." }, }, }, }, -- bond forged NemesisBathHouse03 = { PauseMusicPlayerMusic = true, PlayOnce = true, OnGiftTrack = true, UseableOffSource = true, GiftableOffSource = true, DoNotFlipContextArt = true, UnfilledIcon = "EmptyHeartWithSaltsIcon", FilledIcon = "FilledHeartWithSaltsIcon", HintId = "Codex_NemesisHotSpringsGiftHintAlt", LockedHintId = "Codex_LockedActivityHint", CompletedHintId = "Codex_BondForgedNemesis", Cost = { GiftPointsRare = 1, }, GameStateRequirements = { { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeBathHouse" }, }, { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift09" }, }, { PathFalse = { "CurrentRun", "TimePassageOccurred" }, HintId = "Codex_TimePassesGiftUsed", }, }, { Cue = "/VO/Melinoe_4441", UsePlayerSource = true, Portrait = "Portrait_Mel_Pleased_01", Text = "Nemesis, cô chưa bao giờ từ chối Muối Tắm cả, tại sao vậy? Miễn là cô cảm thấy chúng ta xứng đáng được nghỉ ngơi một chút." }, { Cue = "/VO/Nemesis_0321", Portrait = "Portrait_Nemesis_Averted_01", PortraitExitAnimation = "Portrait_Nemesis_Averted_01_Exit", PostLineRemoveContextArt = true, Text = "Ta cũng không chắc. Nhưng cơ bắp ta bắt đầu căng cứng, khiến mọi việc trở nên khó khăn hơn. Vậy thì sao phải từ chối?" }, { Cue = "/VO/Nemesis_0322", PreLineFunctionName = "BathHouseStartPresentation", NarrativeContextArt = "DialogueBackground_Bathhouse", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Thật không thể tin là ta đang ở đây cùng cô. Suốt một khoảng thời gian dài, ta không chịu nổi việc nhìn thấy cô. Đã từng muốn bẻ gãy cô như một cành cây khô. Vậy mà giờ cô lại giúp ta cởi bỏ bộ đồ này." }, { Cue = "/VO/Melinoe_4442", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Chúng ta đều có thể thay đổi, phải không? Chính cô cũng tin điều đó, nếu không thì tất cả sự trừng phạt của cô giáng xuống người khác đâu còn ý nghĩ gì, đúng không? Nó không đơn thuần chỉ vì mục đích trừng phạt được." }, { Cue = "/VO/Nemesis_0323", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Sự trừng phạt chỉ là một nửa vấn đề. Nhưng đúng là vậy. Điều quan trọng là phải học hỏi, nếu không phải từ những thất bại của chính mình, thì cũng từ những thất bại liên tục diễn ra xung quanh. Vì vậy, ta không thấy mình đã thay đôi chút nào; người thay đổi là cô." }, { Cue = "/VO/Melinoe_4443", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Ta đã thay đổi ư? Ta vẫn đang cố chấp gánh lấy mọi trách nhiệm của minh. Đếm từng khoảnh khắc để có thể quay lại nhiệm vụ của mình... thay vì tận hưởng thời gian bên cô." }, { Cue = "/VO/Nemesis_0324", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", Text = "Đừng quên là chúng ta đang ở đây vì cô đã lấy hết can đảm để hỏi. Thôi được rồi, có lẽ cô cũng không thay đổi nhiều đến vậy. Có lẽ vì lý do nào đó mà ta thích con người trước đây của cô hơn." }, { Cue = "/VO/Melinoe_4444", UsePlayerSource = true, Portrait = "Portrait_Mel_Bath_01", PortraitExitAnimation = "Portrait_Mel_Bath_01_Exit", Text = "Ta cũng cảm thấy tương tự. Dù sao thì, ta đã ngưỡng mộ cô từ lúc được huấn luyện rồi. Ta thực sự rất vui khi ở bên cô... và cả việc chúng ta cùng nhau chiến đấu gần đây nữa." }, { Cue = "/VO/Nemesis_0325", Portrait = "Portrait_Nemesis_Bath_01", PortraitExitAnimation = "Portrait_Nemesis_Bath_01_Exit", PostLineFunctionName = "BathHouseQuipPresentation", PostLineThreadedFunctionName = "TimePassesPresentation", PostLineThreadedFunctionArgs = { TimeTicks = 12, }, EndSound = "/Leftovers/Menu Sounds/EmoteThoughtful", PostLineRemoveContextArt = true, Text = "Ta cũng mong muốn điều tương tự, chỉ là trước đây không nghĩ rằng đủ cho tất cả. Nói thế đủ rồi. Cô có định giúp ta gỡ mấy nút thắt trên lưng hay không?" }, { Cue = "/VO/Nemesis_0326", NarrativeContextArt = "DialogueBackgroundBiome_Woods", PreLineFunctionName = "BathHouseEndPresentation", PreLineWait = 0.2, PostLineThreadedFunctionName = "MaxedRelationshipPresentation", PostLineThreadedFunctionArgs = { Text = "NPC_Nemesis_01", Icon = "Keepsake_Nemesis", EndFunctionName = "InCombatTextEvent", EndFunctionArgs = GameData.PostBathHouseArgs }, Emote = "PortraitEmoteSparkly", -- Portrait = "Portrait_Nemesis_Averted_01", Text = "...Phải công nhận là thoải mái hơn nhiều rồi. Nhưng đừng nghĩ rằng ta sẽ nương tay với cô khi ở ngoài kia. Chúng ta coi như huề." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/Melinoe_4446", Text = "Dĩ nhiên rồi." }, }, }, }, NemesisBathHouseDecline01 = { PlayOnce = true, SkipGiftPresentationPost = true, Cost = { GiftPointsRare = 1, }, GameStateRequirements = { { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeBathHouse" }, }, { PathTrue = { "GameState", "UseRecord", "NPC_Nemesis_01" }, }, { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "Shop" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, { PathFalse = { "CurrentRun", "TimePassageOccurred" }, HintId = "Codex_TimePassesGiftUsed", }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, -- { Cue = "/VO/Melinoe_0461", Text = "Maybe some other time." }, }, }, { Cue = "/VO/Melinoe_0683", UsePlayerSource = true, Text = "Này, ừm, ta đoán ta biết câu trả lời rồi, mặc dù ta không nghĩ cô muốn ghé qua suối nước nóng nữa, phải không? Để thư giản đầu óc?" }, { Cue = "/VO/Nemesis_0170", PreLineWait = 0.35, PostLineThreadedFunctionName = "GiftPointRareRefundPresentation", Text = "Oh, {#Emph}uh... {#Prev}Ta rất cảm kích lời mời, nhưng hiện tại ta phải trực gác, có lẽ cho đến khi Thời Gian phát hiện ra chúng ta. Và bộ giáp này cũng mất khá nhiều thời gian để mặc và cởi ra..." }, }, NemesisFishingDecline01 = { PlayOnce = true, SkipGiftPresentationPost = true, Cost = { GiftPointsEpic = 1, }, GameStateRequirements = { { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeFishingPoint" }, }, { PathTrue = { "GameState", "UseRecord", "NPC_Nemesis_01" }, }, { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "Shop" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, { PathFalse = { "CurrentRun", "TimePassageOccurred" }, HintId = "Codex_TimePassesGiftUsed", }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Melinoe_0684", UsePlayerSource = true, Text = "Này, cô có thể cùng ta ra bờ sông một chút được không? Thư giản một chút, hoặc... ta có thể đẩy cô xuống nước hay gì đó?" }, { Cue = "/VO/Nemesis_0171", PostLineThreadedFunctionName = "GiftPointEpicRefundPresentation", Text = "Chúng ta có thể truy lùng nhưng kẻ tạo nghiệp trên trần gian, nhưng cô lại đề nghị ta truy bắt một con cá đáng thương ư? Ừm, không." }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, -- Maybe some other time. -- { Cue = "/VO/Melinoe_0461", Text = "Maybe some other time." }, }, }, }, NemesisFishing01 = { PauseMusicPlayerMusic = true, PlayOnce = true, UseableOffSource = true, GiftableOffSource = true, OnGiftTrack = true, UnfilledIcon = "EmptyHeartWithLuresIcon", FilledIcon = "FilledHeartWithLuresIcon", HintId = "Codex_FishingGiftHint", LockedHintId = "Codex_LockedActivityHint", Cost = { GiftPointsEpic = 1, }, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeFishingPoint" }, }, { PathTrue = { "CurrentRun", "Hero", "IsDead" }, }, { Path = { "CurrentRun", "CurrentRoom", "Encounter", "Name" }, IsNone = { "Shop" }, }, { PathTrue = { "GameState", "UseRecord", "NPC_Nemesis_01" }, }, { PathFalse = { "CurrentRun", "TimePassageOccurred" }, HintId = "Codex_TimePassesGiftUsed", }, { Path = { "CurrentHubRoom", "Name" }, IsNone = { "Hub_PreRun"}, }, }, { Cue = "/VO/Melinoe_3487", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta nghĩ ta đã thấy biến động ở bến tàu đánh cá. Một cuộc điều tra cẩn thận có lẽ là cần thiết, nhỉ?" }, { Cue = "/VO/Nemesis_0172", PostLineRemoveContextArt = true, PortraitExitAnimation = "Portrait_Nemesis_Default_01_Exit", Text = "Hoặc là đi hoặc là mục ruỗng ở đây canh gác phải không? Biết gì không, được thôi, ta sẽ đi xem thử. Chắc chắn không có gì xảy ra cả." }, { Cue = "/VO/Nemesis_0255", SkipContextArt = true, PreLineFunctionName = "FishingPierStartPresentation", Text = "Sinh ra đã là một con cá. Một cuộc đời trôi nổi trong Dòng Sông Than Khóc, để rồi bị chính cô lôi lên khỏi nước. Chúng đã làm gì để phải gánh chịu những điều này?" }, { Cue = "/VO/Melinoe_3237", UsePlayerSource = true, SkipContextArt = true, Text = "Chẳng phải cô mới là người biết câu trả lời sao? Có lẽ ý định của Nữ Thần Định Mệnh đã quyết định cách chúng ta được sinh ra. Sau đó, cô sẽ đảm bảo chúng ta sẽ nhận được những gì xứng đáng, dựa trên những lựa chọn mà chúng ta đưa ra." }, { Cue = "/VO/Nemesis_0256", SkipContextArt = true, Text = "Sẽ dễ dàng hơn nhiều nếu mọi người khi sinh ra đều bình đẳng. Nhưng không ai trong gia đình ta nghĩ rằng cuộc sống nên công bằng, ngoại trừ ta." }, { Cue = "/VO/Melinoe_3238", UsePlayerSource = true, SkipContextArt = true, Text = "Làm sao cuộc sống có thể công bằng được chứ, khi có rất nhiều loài sinh vật, chẳng hạn như những loài sinh vật sống ở vùng nước này?" }, { Cue = "/VO/Nemesis_0257", SkipContextArt = true, Text = "Chúng ta sẽ đặt ra nhiều quy trình hơn một chút về việc quyết định con người được sinh ra như thế nào. Hoặc làm thế nào để linh hồn chúng tái sinh. Bắt đầu lại ở một thời điểm khác. Ta nghĩ ta đã thấy một chút biến động ở đó.", PortraitExitAnimation = "Portrait_Nemesis_Default_01_Exit", PostLineFunctionName = "GiftActivityFishing", PostLineFunctionArgs = { FishingPointId = 585640 }, PostLineThreadedFunctionName = "TimePassesPresentation", PostLineThreadedFunctionArgs = { TimeTicks = 16, IncludeFishingSFX = true }, }, { Cue = "/VO/Nemesis_0202", PreLineFunctionName = "FishingPierEndPresentation", PortraitExitAnimation = "Portrait_Nemesis_Default_01_Exit", PostLineFunctionName = "ResourceGiftedInEventPresentation", PostLineFunctionArgs = { ResourceName = "FishFRare", SoundName = "/Leftovers/SFX/BigFishSplash", GiftWaitTime = 0 }, PostLineThreadedFunctionName = "InCombatTextEvent", PostLineThreadedFunctionArgs = GameData.PostFishingArgs, Text = "Chẳng phải chúng ta đã cho chúng một cơ hội công bằng sao. Một cuộc đấu trí thực sự đã diễn ra ở đó." }, EndWait = 0.5, EndVoiceLines = { -- }, }, }, MissingDistanceTrigger = { WithinDistance = 300, VoiceLines = { GameStateRequirements = { { Path = { "PreviousDeathAreaRoom", "Name" }, IsNone = { "Hub_PreRun" }, }, -- checking for Odysseus as well -- { FunctionName = "RequiredAlive", FunctionArgs = { Ids = { 557112 }, Alive = false }, }, }, { BreakIfPlayed = true, RandomRemaining = true, UsePlayerSource = true, SuccessiveChanceToPlayAll = 0.1, PlayOnceFromTableThisRun = true, SkipCooldownCheckIfNonePlayed = true, GameStateRequirements = { { Path = { "PreviousDeathAreaRoom", "Name" }, IsNone = { "Hub_PreRun" }, }, }, Cooldowns = { { Name = "MelinoeAnyQuipSpeech" }, }, { Cue = "/VO/Melinoe_2308", Text = "Nemesis chắc hẳn đã có khởi đầu thuận lợi...", PlayFirst = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, }, }, { Cue = "/VO/Melinoe_2309", Text = "Ta đoán Nem vẫn còn ở ngoài đó...", PlayFirst = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisCombatFirstIntro", "NemesisGift03" }, }, }, }, { Cue = "/VO/Melinoe_1152", Text = "Chắc Nemesis nghỉ ngơi rồi..." }, { Cue = "/VO/Melinoe_1153", Text = "Nemesis đi đâu rồi nhỉ?", PlayFirst = true }, }, }, }, GiftGivenVoiceLines = { BreakIfPlayed = true, PreLineWait = 1.0, PlayFromTarget = true, { Cue = "/VO/Melinoe_0682", Text = "Cảm ơn, Nem..." }, }, PlayerInjuredVoiceLineThreshold = 0.66, PlayerInjuredReactionVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.25, GameStateRequirements = { { FunctionName = "RequiredDistanceFromHero", FunctionArgs = { MaxDistance = 3000, }, }, }, Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 10 }, }, { Cue = "/VO/NemesisField_0308", Text = "Muốn gây sự à?" }, { Cue = "/VO/NemesisField_0309", Text = "Chắc cô muốn bị thương." }, { Cue = "/VO/NemesisField_0310", Text = "Đừng có gây sự." }, { Cue = "/VO/NemesisField_0311", Text = "Quá chậm." }, { Cue = "/VO/NemesisField_0312", Text = "Ô thôi đi." }, { Cue = "/VO/NemesisField_0313", Text = "Tỉnh lại đi." }, }, LastStandReactionVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.3, GameStateRequirements = { { FunctionName = "RequiredDistanceFromHero", FunctionArgs = { MaxDistance = 3000, }, }, }, Cooldowns = { { Name = "NemesisLastStandSpeech", Time = 40 }, }, TriggerCooldowns = { "NemesisAnyQuipSpeech", }, { Cue = "/VO/NemesisField_0314", Text = "Vẫn tiếp tục à?" }, { Cue = "/VO/NemesisField_0315", Text = "Cô phát điên à?" }, { Cue = "/VO/NemesisField_0316", Text = "Khó xơi hơn cô thấy đấy." }, { Cue = "/VO/NemesisField_0317", Text = "Bỏ cuộc đi." }, { Cue = "/VO/NemesisField_0318", Text = "Không tệ..." }, { Cue = "/VO/NemesisField_0319", Text = "Nào, chiến đấu đi!" }, }, KillingEnemyVoiceLines = { RandomRemaining = true, PreLineWait = 0.45, SuccessiveChanceToPlay = 0.2, Cooldowns = { { Name = "NemesisFoeSlainSpeech", Time = 30 }, { Name = "NemesisAnyQuipSpeech", Time = 10 }, }, { Cue = "/VO/NemesisField_0264", Text = "Stygius mang cô đi." }, { Cue = "/VO/NemesisField_0265", Text = "Linh hồn cho Stygius." }, { Cue = "/VO/NemesisField_0266", Text = "Trừng phạt." }, { Cue = "/VO/NemesisField_0267", Text = "Giải thoát." }, { Cue = "/VO/NemesisField_0268", Text = "Quả báo." }, { Cue = "/VO/NemesisField_0269", Text = "Đó là những gì cô đáng phải nhận." }, { Cue = "/VO/NemesisField_0270", Text = "Cô đáng phải nhận điều đó." }, { Cue = "/VO/NemesisField_0271", Text = "Cô mong đợi điều gì?" }, { Cue = "/VO/NemesisField_0272", Text = "Điều đó dành cho cô." }, { Cue = "/VO/NemesisField_0273", Text = "Đây rồi." }, { Cue = "/VO/NemesisField_0274", Text = "Đây rồi." }, { Cue = "/VO/NemesisField_0275", Text = "Của ta." }, { Cue = "/VO/NemesisField_0276", Text = "Phá hủy." }, { Cue = "/VO/NemesisField_0277", Text = "Bình tĩnh." }, { Cue = "/VO/NemesisField_0278", Text = "Yếu đuối." }, { Cue = "/VO/NemesisField_0279", Text = "Không." }, { Cue = "/VO/NemesisField_0280", Text = "Tránh ra." }, { Cue = "/VO/NemesisField_0281", Text = "Đi chỗ khác." }, { Cue = "/VO/NemesisField_0282", Text = "Gì nữa." }, { Cue = "/VO/NemesisField_0283", Text = "Ta sẽ nhớ điều đó." }, }, KillStolenVoiceLines = { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.5, SuccessiveChanceToPlay = 0.5, PlayOnceFromTableThisRun = true, Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 8 }, }, { Cue = "/VO/NemesisField_0290", Text = "Lùi lại." }, { Cue = "/VO/NemesisField_0291", Text = "Tránh đường cho ta." }, { Cue = "/VO/NemesisField_0292", Text = "Khoe mẻ." }, { Cue = "/VO/NemesisField_0293", Text = "Thôi đi..." }, { Cue = "/VO/NemesisField_0294", Text = "Chết tiệt." }, { Cue = "/VO/NemesisField_0295", Text = "Tự làm đi." }, }, EncounterEndVoiceLines = { RandomRemaining = true, PreLineWait = 1.25, { Cue = "/VO/NemesisField_0336", Text = "Thế là xong." }, { Cue = "/VO/NemesisField_0337", Text = "Đã giải quyết xong." }, { Cue = "/VO/NemesisField_0338", Text = "Được rồi." }, { Cue = "/VO/NemesisField_0339", Text = "Ổn cả rồi." }, { Cue = "/VO/NemesisField_0340", Text = "Chúng ta xong rồi." }, { Cue = "/VO/NemesisField_0341", Text = "Còn ai nữa?" }, { Cue = "/VO/NemesisField_0342", Text = "Thế là xong." }, { Cue = "/VO/NemesisField_0343", Text = "Thế là xong..." }, { Cue = "/VO/NemesisField_0344", Text = "Đơn giản." }, { Cue = "/VO/NemesisField_0345", Text = "Dễ dàng." }, { Cue = "/VO/NemesisField_0346", Text = "Chúng nhận những gì xứng đáng với chúng." }, { Cue = "/VO/NemesisField_0347", Text = "Vẫn còn ở đây à?" }, }, EncounterWonVoiceLines = { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.5, { Cue = "/VO/NemesisField_0348", Text = "Không thể tin là ta đã thua...", PlayFirst = true }, { Cue = "/VO/NemesisField_0349", Text = "Lại thua cô nữa rồi..." }, { Cue = "/VO/NemesisField_0350", Text = "Ta đã thua ư...?" }, { Cue = "/VO/NemesisField_0351", Text = "Được thôi, cô thắng rồi." }, { Cue = "/VO/NemesisField_0352", Text = "Đánh lẽ ta phải đánh bại cô..." }, { Cue = "/VO/NemesisField_0353", Text = "Cô và thứ ma thuật đáng nguyền rủa đó." }, { Cue = "/VO/NemesisField_0354", Text = "Bằng cách nào đó, cô lại thắng ta." }, { Cue = "/VO/NemesisField_0355", Text = "Nhận số Vàng chết tiệt này đi." }, { Cue = "/VO/NemesisField_0356", Text = "Công bằng là công bằng." }, }, EncounterWonBigVoiceLines = { { UsePlayerSource = true, RandomRemaining = true, PreLineWait = 0.4, SuccessiveChanceToPlay = 0.15, { Cue = "/VO/MelinoeField_0053", Text = "Cô thua rồi.", PlayFirst = true, }, { Cue = "/VO/MelinoeField_0054", Text = "Cô lại thua rồi." }, { Cue = "/VO/MelinoeField_0055", Text = "Đừng tỏ vẻ ngạc nhiên." }, }, { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.4, { Cue = "/VO/NemesisField_0357", Text = "Hôm nay không phải đêm của ta..." }, { Cue = "/VO/NemesisField_0358", Text = "Sao ta lại thua thảm hại như vậy..." }, { Cue = "/VO/NemesisField_0359", Text = "Cứ cười cho hả hê đi..." }, { Cue = "/VO/NemesisField_0360", Text = "Rõ ràng ta đã đánh giá thấp cô..." }, { Cue = "/VO/NemesisField_0361", Text = "Khiến ta trông như một kẻ ngốc..." }, { Cue = "/VO/NemesisField_0362", Text = "{#Emph}Ugh{#Prev}, nó thật kinh khủng..." }, }, }, EncounterTiedVoiceLines = { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.5, { Cue = "/VO/NemesisField_0372", Text = "Chúng ta đã hòa, nên hãy giữ số vàng của cô đi.", PlayFirst = true }, { Cue = "/VO/NemesisField_0373", Text = "Coi như đây là trận hòa." }, { Cue = "/VO/NemesisField_0374", Text = "Ta đoán là chúng ta đã hòa." }, { Cue = "/VO/NemesisField_0375", Text = "Lần này không ai thắng cả." }, { Cue = "/VO/NemesisField_0376", Text = "Lại một trận hòa khác." }, { Cue = "/VO/NemesisField_0377", Text = "Hòa cũng tốt." }, }, EncounterLostVoiceLines = { { UsePlayerSource = true, RandomRemaining = true, PreLineWait = 0.4, SuccessiveChanceToPlay = 0.15, { Cue = "/VO/MelinoeField_0050", Text = "Ta thua rồi..." }, { Cue = "/VO/MelinoeField_0051", Text = "Ta thất bại rồi..." }, { Cue = "/VO/MelinoeField_0052", Text = "{#Emph}Ungh. {#Prev}Ta xin thua." }, }, { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.4, { Cue = "/VO/NemesisField_0363", Text = "Cô thua rồi. Đưa vàng đây.", PlayFirst = true }, { Cue = "/VO/NemesisField_0364", Text = "Ta đã thắng, đưa vàng đây." }, { Cue = "/VO/NemesisField_0365", Text = "Cô thua rồi, đưa Vàng đây" }, { Cue = "/VO/NemesisField_0366", Text = "Đừng có thất vọng kiểu đó." }, { Cue = "/VO/NemesisField_0367", Text = "Ta thắng rồi, đưa vàng mau." }, { Cue = "/VO/NemesisField_0368", Text = "Đưa ta vàng." }, { Cue = "/VO/NemesisField_0369", Text = "Đánh bại cô, lấy Vàng của cô." }, { Cue = "/VO/NemesisField_0370", Text = "Có vẻ như ta lại thắng nữa." }, { Cue = "/VO/NemesisField_0371", Text = "Công bằng là công bằng..." }, { Cue = "/VO/NemesisField_0307", Text = "Ta đã cảnh báo rồi." }, }, }, RepulseOnMeleeInvulnerableHit = 150, OnHitVoiceLines = { Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 10 }, { Name = "NemesisHitRecentlySpeech", Time = 25 }, }, { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.25, ObjectType = "NPC_Nemesis_01", GameStateRequirements = { { PathEmpty = { "RequiredKillEnemies" }, }, { PathFalse = { "CurrentRun", "CurrentRoom", "SpeechRecord", "/VO/NemesisField_0220" }, }, { PathFalse = { "ScreenState", "ActiveObjectives", "NemesisDamageContest" }, }, { PathFromArgs = true, Path = { "SourceProjectile", }, IsNone = { "FrogFamiliarLand", "CatFamiliarPounce", "RavenFamiliarMelee", "HoundFamiliarBark", "PolecatFamiliarMelee" }, }, { FunctionName = "RequiredDistanceFromHero", FunctionArgs = { MaxDistance = 2000, }, }, ChanceToPlay = 0.5, }, { Cue = "/VO/NemesisField_0210", Text = "Ý kiến rồi đấy.", PlayFirst = true }, { Cue = "/VO/NemesisField_0211", Text = "Dừng lại." }, { Cue = "/VO/NemesisField_0212", Text = "Dừng lại." }, { Cue = "/VO/NemesisField_0213", Text = "Yếu quá đấy." }, { Cue = "/VO/NemesisField_0214", Text = "Dừng lại mau." }, { Cue = "/VO/NemesisField_0215", Text = "Thôi đi." }, { Cue = "/VO/NemesisField_0216", Text = "Đừng có thách ta." }, { Cue = "/VO/NemesisField_0217", Text = "Nghiêm túc à?" }, { Cue = "/VO/NemesisField_0218", Text = "Nghiêm túc à?" }, { Cue = "/VO/NemesisField_0219", Text = "Không phải lúc này." }, { Cue = "/VO/NemesisField_0220", Text = "Cảnh báo lần cuối." }, { Cue = "/VO/NemesisField_0221", Text = "Coi chừng đấy." }, { Cue = "/VO/NemesisField_0222", Text = "Thôi đi." }, { Cue = "/VO/NemesisField_0223", Text = "Cô thôi đi..." }, { Cue = "/VO/Nemesis_0085", Text = "{#Emph}Hah." }, { Cue = "/VO/Nemesis_0104", Text = "{#Emph}Urgh..." }, { Cue = "/VO/Nemesis_0105", Text = "{#Emph}Tsch." }, { Cue = "/VO/Nemesis_0106", Text = "{#Emph}Huh!" }, }, { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.25, ObjectType = "NPC_Nemesis_01", GameStateRequirements = { { PathNotEmpty = { "RequiredKillEnemies" }, }, { PathFromArgs = true, Path = { "SourceProjectile", }, IsNone = { "FrogFamiliarLand", "CatFamiliarPounce", "RavenFamiliarMelee", "HoundFamiliarBark", "PolecatFamiliarMelee" }, }, { FunctionName = "RequiredDistanceFromHero", FunctionArgs = { MaxDistance = 1000, }, }, ChanceToPlay = 0.2, }, { Cue = "/VO/NemesisField_0224", Text = "Coi chừng đấy!", PlayFirst = true }, { Cue = "/VO/NemesisField_0225", Text = "Giữ khoảng cách đi." }, { Cue = "/VO/NemesisField_0226", Text = "Mở to mắt ra." }, { Cue = "/VO/NemesisField_0227", Text = "Lùi lại!" }, { Cue = "/VO/NemesisField_0228", Text = "Cô muốn gì..." }, { Cue = "/VO/NemesisField_0229", Text = "Muốn đánh nhau à?" }, { Cue = "/VO/NemesisField_0230", Text = "Thôi đi!" }, { Cue = "/VO/NemesisField_0231", Text = "Đi mà đánh chúng!" }, { Cue = "/VO/NemesisField_0302", Text = "Tránh sang một bên." }, { Cue = "/VO/NemesisField_0303", Text = "Lùi lại." }, { Cue = "/VO/NemesisField_0304", Text = "Coi chừng." }, { Cue = "/VO/NemesisField_0305", Text = "Ta sẽ ghi nhớ lần này." }, { Cue = "/VO/NemesisField_0306", Text = "Lùi lại." }, }, }, ResistedVoiceLines = { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.35, TriggerCooldowns = { "NemesisAnyQuipSpeech" }, Cooldowns = { { Name = "NemesisHitRecentlySpeech", Time = 25 }, }, { Cue = "/VO/NemesisField_0320", Text = "Này nha!" }, { Cue = "/VO/NemesisField_0321", Text = "Coi chừng!", PlayFirst = true }, -- { Cue = "/VO/NemesisField_0322", Text = "Thôi đi!" }, { Cue = "/VO/NemesisField_0323", Text = "Sao cô dám..." }, { Cue = "/VO/NemesisField_0324", Text = "Nhận lấy." }, -- { Cue = "/VO/NemesisField_0325", Text = "Nhận lấy..." }, }, GivingItemVoiceLines = { { RandomRemaining = true, PreLineWait = 0.25, SuccessiveChanceToPlayAll = 0.66, AllowTalkOverTextLines = true, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "TextLinesRecord" }, HasNone = { "NemesisGetFreeItemIntro01", "NemesisGetFreeItemIntro02", "NemesisPostCombatBecomingCloser01" }, } }, Cooldowns = { -- { Name = "NemesisAnyQuipSpeech", Time = 10 }, }, { Cue = "/VO/NemesisField_0055", Text = "Nhận lấy.", PlayFirst = true }, { Cue = "/VO/NemesisField_0056", Text = "Nhận lấy." }, { Cue = "/VO/NemesisField_0057", Text = "ThereNhận lấy." }, { Cue = "/VO/NemesisField_0058", Text = "Của cô đây." }, { Cue = "/VO/NemesisField_0059", Text = "Của cô đây." }, { Cue = "/VO/NemesisField_0060", Text = "Của cô đây." }, { Cue = "/VO/NemesisField_0061", Text = "Của cô đây." }, { Cue = "/VO/NemesisField_0062", Text = "Tất cả là của cô." }, { Cue = "/VO/NemesisField_0063", Text = "Không cần khách sáo." }, { Cue = "/VO/NemesisField_0064", Text = "Tận hưởng đi." }, { Cue = "/VO/NemesisField_0065", Text = "Ngạc nhiên chưa." }, { Cue = "/VO/NemesisField_0066", Text = "Nhận lấy." }, { Cue = "/VO/NemesisField_0067", Text = "Một trong số này." }, }, { RandomRemaining = true, UsePlayerSource = true, PreLineWait = 0.65, SuccessiveChanceToPlay = 0.25, Cooldowns = { { Name = "MelinoeAnyQuipSpeech" }, }, { Cue = "/VO/Melinoe_2142", Text = "...Ta sẽ nhận nó. Nhưng hãy cẩn thận, Nem.", PlayFirst = true, PlayOnce = true }, { Cue = "/VO/Melinoe_2145", Text = "...Cảm ơn..." }, { Cue = "/VO/MelinoeField_0064", Text = "Cảm ơn..." }, { Cue = "/VO/MelinoeField_0065", Text = "Ta rất cảm kích..." }, { Cue = "/VO/MelinoeField_0066", Text = "Ta đã được cứu." }, { Cue = "/VO/MelinoeField_0067", Text = "Cheers." }, }, }, DealApprovedVoiceLines = { TriggerCooldowns = { "CharonSpokeRecently", }, { -- RandomRemaining = true, UsePlayerSource = true, PreLineWait = 0.35, SuccessiveChanceToPlay = 0.1, AllowTalkOverTextLines = true, { Cue = "/VO/Melinoe_2144", Text = "...Ta sẽ nhận nó..." }, }, { RandomRemaining = true, PreLineWait = 0.4, AllowTalkOverTextLines = true, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/NemesisField_0080", Text = "Thỏa thuận là thỏa thuận." }, { Cue = "/VO/NemesisField_0081", Text = "Đó là thỏa thuận." }, { Cue = "/VO/NemesisField_0082", Text = "Thỏa thuận." }, { Cue = "/VO/NemesisField_0083", Text = "Công bằng đấy." }, { Cue = "/VO/NemesisField_0084", Text = "Công bằng là công bằng." }, { Cue = "/VO/NemesisField_0085", Text = "Xong." }, { Cue = "/VO/NemesisField_0086", Text = "Kết thúc thỏa thuận." }, { Cue = "/VO/NemesisField_0087", Text = "Thông minh đấy." }, { Cue = "/VO/NemesisField_0088", Text = "Nhận hết đi." }, { Cue = "/VO/NemesisField_0089", Text = "Vậy là ổn thỏa." }, }, }, DealDeclinedVoiceLines = { { GlobalVoiceLines = "NemesisDealDeclineVoiceLines" }, { RandomRemaining = true, PreLineWait = 0.3, Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 6 }, }, { Cue = "/VO/NemesisField_0090", Text = "Tùy cô.", PlayFirst = true }, { Cue = "/VO/NemesisField_0091", Text = "Cô thua rồi.", PlayFirst = true }, { Cue = "/VO/NemesisField_0092", Text = "{#Emph}Eh." }, { Cue = "/VO/NemesisField_0093", Text = "Được thôi." }, { Cue = "/VO/NemesisField_0094", Text = "Cũng có lý." }, { Cue = "/VO/NemesisField_0095", Text = "Vẫn chưa đủ à?" }, { Cue = "/VO/NemesisField_0096", Text = "Vẫn chưa đủ tốt, huh." }, { Cue = "/VO/NemesisField_0097", Text = "Chẳng thay đổi điều gì đâu." }, { Cue = "/VO/NemesisField_0098", Text = "Giờ thì phắn khỏi đây đi." }, { Cue = "/VO/NemesisField_0099", Text = "Giờ thì đi đi." }, }, }, HitAcceptedVoiceLines = { { RandomRemaining = true, PreLineWait = 0.45, AllowTalkOverTextLines = true, { Cue = "/VO/NemesisField_0112", Text = "Ta rất sẵn lòng." }, { Cue = "/VO/NemesisField_0113", Text = "Rất sẵn lòng." }, { Cue = "/VO/NemesisField_0114", Text = "Ah tốt." }, { Cue = "/VO/NemesisField_0115", Text = "Oh tốt." }, { Cue = "/VO/NemesisField_0116", Text = "Đừng nói thêm điều gì." }, { Cue = "/VO/NemesisField_0117", Text = "Sắp xong rồi." }, { Cue = "/VO/NemesisField_0118", Text = "Cười lên." }, { Cue = "/VO/NemesisField_0119", Text = "Thế thì im lặng đi." }, { Cue = "/VO/NemesisField_0120", Text = "Tuyệt vời." }, { Cue = "/VO/NemesisField_0121", Text = "Nếu cô muốn." }, }, { UsePlayerSource = true, RandomRemaining = true, PreLineWait = 0.8, AllowTalkOverTextLines = true, { Cue = "/VO/MelinoeField_1394", Text = "...Chúc mừng." }, { Cue = "/VO/MelinoeField_1395", Text = "...Sao, chỉ thế thôi à?" }, { Cue = "/VO/MelinoeField_1396", Text = "...Không tệ." }, { Cue = "/VO/MelinoeField_1397", Text = "...{#Emph}Ow!" }, { Cue = "/VO/MelinoeField_1398", Text = "...{#Emph}Guh, heh.", PlayFirst = true }, { Cue = "/VO/MelinoeField_1399", Text = "...{#Emph}Urgh! Tsk." }, } }, HitDeclinedVoiceLines = { [1] = { GlobalVoiceLines = "NemesisDealDeclineVoiceLines" }, [2] = { RandomRemaining = true, PreLineWait = 0.8, AllowTalkOverTextLines = true, { Cue = "/VO/NemesisField_0122", Text = "Ta không nghĩ vậy." }, { Cue = "/VO/NemesisField_0123", Text = "Quá đáng sợ, huh." }, { Cue = "/VO/NemesisField_0124", Text = "Giờ không còn khó khăn nữa nhỉ." }, { Cue = "/VO/NemesisField_0125", Text = "Đó là những gì ta nghĩ." }, { Cue = "/VO/NemesisField_0126", Text = "Luôn có lần sau." }, { Cue = "/VO/NemesisField_0127", Text = "Đồ hèn..." }, { Cue = "/VO/NemesisField_0128", Text = "Ta biết ngay mà." }, { Cue = "/VO/NemesisField_0129", Text = "Có lẽ để lần sau." }, { Cue = "/VO/NemesisField_0130", Text = "Aw, có chuyện gì?" }, { Cue = "/VO/NemesisField_0131", Text = "Aw, quá tệ..." }, }, }, StartDamageContestVoiceLines = { { RandomRemaining = true, PreLineWait = 1.0, AllowTalkOverTextLines = true, { Cue = "/VO/NemesisField_0156", Text = "Đi đi." }, { Cue = "/VO/NemesisField_0157", Text = "Thế thì đi đi." }, { Cue = "/VO/NemesisField_0158", Text = "Để rồi xem." }, { Cue = "/VO/NemesisField_0159", Text = "Thách ta xem." }, { Cue = "/VO/NemesisField_0160", Text = "Thách ta xem!" }, { Cue = "/VO/NemesisField_0161", Text = "Thôi nào." }, { Cue = "/VO/NemesisField_0162", Text = "Cho ta xem đi." }, { Cue = "/VO/NemesisField_0163", Text = "Làm đi." }, { Cue = "/VO/NemesisField_0164", Text = "Làm đi!" }, { Cue = "/VO/NemesisField_0165", Text = "Cho ta xem nào.", PlayFirst = true }, }, }, PlayerWonDamageContestVoiceLines = { { UsePlayerSource = true, RandomRemaining = true, PreLineWait = 0.5, { Cue = "/VO/Melinoe_0314", Text = "{#Emph}Tsch!" }, { Cue = "/VO/Melinoe_0315", Text = "{#Emph}Hah!" }, { Cue = "/VO/Melinoe_0352", Text = "{#Emph}Hah." }, { Cue = "/VO/Melinoe_0353", Text = "{#Emph}Heh!" }, { Cue = "/VO/Melinoe_0575", Text = "{#Emph}Hm!" }, { Cue = "/VO/MelinoeField_0609", Text = "{#Emph}Heh." }, }, { RandomRemaining = true, PreLineWait = 0.8, { Cue = "/VO/NemesisField_0166", Text = "Không tệ..." }, { Cue = "/VO/NemesisField_0167", Text = "{#Emph}Oof... {#Prev}được thôi." }, { Cue = "/VO/NemesisField_0168", Text = "Được rồi, được rồi." }, { Cue = "/VO/NemesisField_0169", Text = "Mạnh hơn ta tưởng." }, { Cue = "/VO/NemesisField_0170", Text = "Ít nhất cũng cảm nhận được điều đó." }, { Cue = "/VO/NemesisField_0171", Text = "Ta đã rèn luyện." }, { Cue = "/VO/NemesisField_0172", Text = "Cũng đủ tốt." }, { Cue = "/VO/NemesisField_0173", Text = "Được rồi, thả lỏng đi." }, { Cue = "/VO/NemesisField_0174", Text = "Bình tĩnh đi." }, { Cue = "/VO/NemesisField_0175", Text = "Giờ thấy khá hơn chưa?" }, }, }, PlayerWonDamageContestBigVoiceLines = { { RandomRemaining = true, PreLineWait = 0.5, { Cue = "/VO/NemesisField_0176", Text = "Ta... {#Emph}urgh..." }, { Cue = "/VO/NemesisField_0177", Text = "Cô... {#Emph}ungh..." }, { Cue = "/VO/NemesisField_0178", Text = "Sao cô dám... {#Emph}ugh..." }, { Cue = "/VO/NemesisField_0179", Text = "Cô... dám..." }, { Cue = "/VO/NemesisField_0180", Text = "Không... tệ..." }, { Cue = "/VO/NemesisField_0181", Text = "{#Emph}Heh... {#Prev}ow." }, { Cue = "/VO/NemesisField_0182", Text = "{#Emph}Ungh... {#Prev}được rồi." }, { Cue = "/VO/NemesisField_0183", Text = "Cú đó... đau đấy..." }, { Cue = "/VO/NemesisField_0184", Text = "Công... bằng... đấy..." }, { Cue = "/VO/NemesisField_0185", Text = "Không... công bằng..." }, }, { UsePlayerSource = true, RandomRemaining = true, PreLineWait = 0.4, SuccessiveChanceToPlayAll = 0.75, { Cue = "/VO/MelinoeField_0068", Text = "Cô vui chưa?" }, { Cue = "/VO/MelinoeField_0069", Text = "Như thế nào?" }, { Cue = "/VO/MelinoeField_0070", Text = "Vui?" }, { Cue = "/VO/MelinoeField_0071", Text = "Ta nhắm vào việc khiến người khác hài lòng.", PlayFirst = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisTaverna01" }, }, }, }, }, }, PlayerLostDamageContestVoiceLines = { [1] = { GlobalVoiceLines = "NegativeReactionVoiceLines" }, [2] = { RandomRemaining = true, PreLineWait = 1.0, TriggerCooldowns = { "LostToNemesisSpeech" }, { Cue = "/VO/NemesisField_0186", Text = "{#Emph}Tsch. {#Prev}Quá yếu đuối." }, { Cue = "/VO/NemesisField_0187", Text = "Hầu như chẳng cảm thấy gì." }, { Cue = "/VO/NemesisField_0188", Text = "Thế thôi à...?" }, { Cue = "/VO/NemesisField_0189", Text = "Đó là tất cả những gì cô có ư?" }, { Cue = "/VO/NemesisField_0190", Text = "Đùa nhau à." }, { Cue = "/VO/NemesisField_0191", Text = "Thử lại lần sau khi cô mạnh hơn." }, { Cue = "/VO/NemesisField_0192", Text = "Thật thảm hại." }, { Cue = "/VO/NemesisField_0193", Text = "Ô thôi nào, tệ hết sức." }, { Cue = "/VO/NemesisField_0194", Text = "Cô chỉ làm được đến thế thôi à?" }, { Cue = "/VO/NemesisField_0195", Text = "Thật đáng xấu hổ..." }, }, }, BrowsingVoiceLines = { RandomRemaining = true, SuccessiveChanceToPlay = 0.75, PreLineWait = 0.0, ObjectType = "NPC_Nemesis_01", GameStateRequirements = { -- }, Cooldowns = { { Name = "NemesisBrowsingSpeech", Time = 200 }, }, { Cue = "/VO/NemesisField_0384", Text = "{#Emph}Hmm..." }, { Cue = "/VO/NemesisField_0385", Text = "Cái này ư...?" }, { Cue = "/VO/NemesisField_0386", Text = "Nên đủ điều kiện đi..." }, { Cue = "/VO/NemesisField_0387", Text = "Cô nghĩ thế nào về..." }, { Cue = "/VO/NemesisField_0388", Text = "Cái nào..." }, { Cue = "/VO/NemesisField_0389", Text = "Quyết định khó khăn..." }, }, PurchasedVoiceLines = { RandomRemaining = true, PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", GameStateRequirements = { -- }, { Cue = "/VO/NemesisField_0390", Text = "Chắc rồi." }, { Cue = "/VO/NemesisField_0391", Text = "Đã mua." }, { Cue = "/VO/NemesisField_0392", Text = "Đã thanh toán." }, { Cue = "/VO/NemesisField_0393", Text = "Đó là thỏa thuận." }, { Cue = "/VO/NemesisField_0394", Text = "Vàng đây." }, { Cue = "/VO/NemesisField_0395", Text = "Được rồi." }, { Cue = "/VO/NemesisField_0396", Text = "Thỏa thuận, Charon." }, }, PurchaseStolenVoiceLines = { Queue = "Interrupt", RandomRemaining = true, PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", GameStateRequirements = { -- }, { Cue = "/VO/NemesisField_0397", Text = "Nhưng ta đã..." }, { Cue = "/VO/NemesisField_0398", Text = "...Chết tiệt." }, { Cue = "/VO/NemesisField_0399", Text = "Ô cô thật là..." }, { Cue = "/VO/NemesisField_0400", Text = "Nghiêm túc đấy à?" }, { Cue = "/VO/NemesisField_0401", Text = "Thôi nào." }, }, ExitVoiceLines = { GameStateRequirements = { { Path = { "CurrentRun", "TextLinesRecord" }, HasNone = { "NemesisPostCombatBecomingCloser01" }, }, }, { RandomRemaining = true, SuccessiveChanceToPlay = 0.9, PreLineWait = 0.75, ObjectType = "NPC_Nemesis_01", Source = { LineHistoryName = "NPC_Nemesis_01", SubtitleColor = Color.NemesisVoice }, GameStateRequirements = { { PathFalse = { "CurrentRun", "Hero", "IsDead" }, }, }, Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 6 }, }, { Cue = "/VO/Nemesis_0152", Text = "Để sau đi." }, { Cue = "/VO/Nemesis_0153", Text = "Đi đây." }, { Cue = "/VO/Nemesis_0154", Text = "Ta đi đây." }, { Cue = "/VO/Nemesis_0155", Text = "'Night." }, { Cue = "/VO/Nemesis_0156", Text = "Should go." }, { Cue = "/VO/Nemesis_0157", Text = "Better go." }, { Cue = "/VO/Nemesis_0158", Text = "Enough." }, { Cue = "/VO/Nemesis_0159", Text = "Bye." }, { Cue = "/VO/Nemesis_0160", Text = "Gặp lại sau." }, { Cue = "/VO/Nemesis_0161", Text = "Đừng làm hỏng việc này." }, { Cue = "/VO/Nemesis_0162", Text = "Đi đi." }, { Cue = "/VO/Nemesis_0163", Text = "{#Emph}Ugh." }, { Cue = "/VO/Nemesis_0164", Text = "Đi đi." }, { Cue = "/VO/Nemesis_0165", Text = "Đi đi." }, }, { UsePlayerSource = true, PreLineWait = 0.3, PlayOnce = true, PlayOnceContext = "NemesisFirstExit", BreakIfPlayed = true, GameStateRequirements = { { PathFalse = { "CurrentRun", "Hero", "IsDead" }, }, }, { Cue = "/VO/Melinoe_2253", Text = "Cô ấy vừa mới...?" }, }, { UsePlayerSource = true, PreLineWait = 0.3, RandomRemaining = true, BreakIfPlayed = true, SuccessiveChanceToPlayAll = 0.33, GameStateRequirements = { { PathTrue = { "CurrentRun", "CurrentRoom", "NemesisTakeExitRecord", "I_Story01" }, }, }, { Cue = "/VO/MelinoeField_3308", Text = "{#Emph}Hey!" }, }, { UsePlayerSource = true, PreLineWait = 0.3, RandomRemaining = true, BreakIfPlayed = true, SuccessiveChanceToPlayAll = 0.33, GameStateRequirements = { { PathTrue = { "CurrentRun", "CurrentRoom", "NemesisTakeExitRecord", "TrialUpgrade" }, }, }, { Cue = "/VO/MelinoeField_1480", Text = "Cô ấy đã sử dụng Cổng Chaos...", PlayFirst = true }, { Cue = "/VO/MelinoeField_1481", Text = "Cô ấy đi rồi..." }, { Cue = "/VO/MelinoeField_1482", Text = "Cô ấy vào Cổng Chaos ư?" }, }, { UsePlayerSource = true, RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.75, SuccessiveChanceToPlay = 0.33, Cooldowns = { { Name = "MelinoeAnyQuipSpeech" }, }, { Cue = "/VO/Melinoe_2244", Text = "{#Emph}" }, { Cue = "/VO/Melinoe_2245", Text = "Đi mất rồi." }, { Cue = "/VO/Melinoe_2251", Text = "Cô ấy đi mất rồi." }, { Cue = "/VO/Melinoe_2252", Text = "Tốt...!" }, { Cue = "/VO/Melinoe_2246", Text = "'Night...", PlayFirst = true, PreLineWait = 0.5, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Nemesis_0155" }, }, }, }, { Cue = "/VO/Melinoe_2247", Text = "Bye...", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Nemesis_0159" }, }, }, }, { Cue = "/VO/Melinoe_2248", Text = "And you.", PlayFirst = true, PreLineWait = 0.5, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/Nemesis_0160" }, }, }, }, { Cue = "/VO/Melinoe_2249", Text = "Take care.", GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, }, { Cue = "/VO/Melinoe_2250", Text = "Bye, Nem...", GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, }, }, }, }, Using = { Animation = { "DeathPortraitOverlayFx", "NemesisExitStreak", }, Sounds = { "/Leftovers/SFX/RobeFlutter", "/Leftovers/World Sounds/MaskUnlatch1", "/Leftovers/World Sounds/MaskUnlatch2", "/SFX/ArmorIdleSFX", "/Leftovers/World Sounds/Unmask", "/Leftovers/World Sounds/LeavesRustle", "/Leftovers/SFX/RobeFlutter", "/Leftovers/World Sounds/LeavesRustleLimited", "/SFX/ArmorIdleSFX2", "/Leftovers/World Sounds/LeavesRustleSoft", "/Leftovers/World Sounds/LeavesRustleMedium", }, }, }, } VariantSetData.NPC_Nemesis_01 = { -- Nemesis for random events NemesisRandomEvent = { -- LastStandReactionVoiceLines = "nil", -- PlayerInjuredReactionVoiceLines = "nil", EncounterEndVoiceLines = "nil", NarrativeDataName = "NPC_Nemesis_01", InteractTextLinePriorities = "RandomEventsPriorities", AggroedEnemyUseText = "NPCUseTextTalkLocked", InteractTextLineSets = { NemesisGetFreeItemIntro01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, PreBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0002", AngleTowardHero = true, Text = "Cô bỏ lỡ trò vui rồi. Nhưng ít nhất lần này cô không tự tay làm việc đó." }, { Cue = "/VO/Melinoe_2140", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Nemesis, sao cô lại ở đây? Ai sẽ canh gác Crossroads?" }, { Cue = "/VO/NemesisField_0422", Text = "Họ tự lo được, ta đang nghỉ giải lao. Nếu cô nói với Hecate rằng cô đã gặp ta, thì đừng có trách. Ngoài ra, cô được chào đón và an toàn ở đây, vì ta đã dọn đường cho cô rồi." }, { Cue = "/VO/Melinoe_2141", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta không cần cô giúp đỡ trong việc này, ngoài những việc mà cô được phân công." }, { Cue = "/VO/NemesisField_0004", Text = "Thế à? Trông cô có vẻ mong đợi nhiều sự trợ giúp nhất có thể đấy. Nán lại đây sẽ gây rắc rối cho cô, và ta khuyên cô nên đi tiếp đi.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItemIntro02 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0039", Text = "Cô đến muộn. Ta đã xử lý mọi thứ ở đây rồi, nhưng ta chắc sẽ còn dư phần cho cô." }, { Cue = "/VO/MelinoeField_0023", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Nếu cô quyết tâm muốn truy lùng Chronos, sao chúng ta không hợp tác cùng nhau nhỉ, ít nhất là lần này?" }, { Cue = "/VO/NemesisField_0040", Text = "Ta không thể để bị nhìn thấy đang đi cùng cô, và ta không cần cô giúp. Nhưng ta biết cô cần ta giúp, nên ta đã ở đây. Cầm lấy thứ này, và coi như chúng ta chưa gặp nhau. Hiểu chưa?", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem01 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0045", Text = "Cô cần tất cả sự giúp đỡ có thể nhận được, nên ta mới ở đây! Ta cũng chẳng cần đến thứ này.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem02 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0046", Text = "Có quá nhiều thứ rác rưởi xung quanh đây. Đây rõ ràng là việc dọn dẹp của cô, không phải ta.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem03 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0047", Text = "Ta chẳng cần thứ này làm gì, nhưng có lẽ cô cần chúng hơn.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem04 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0048", Text = "Giả vờ như cô chưa từng gặp ta, và xem như ta chưa làm mọi thứ thay cô.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem05 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0049", Text = "Chà, cô thực sự đã cho họ thấy rồi sao? Và đã kiếm được một phần thưởng hấp dẫn.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem06 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisWithHecate02" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0050", Text = "Tốt nhất cô nên giữ kín chuyện này khi gặp với Hecate.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem07 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0051", Text = "Để xem ai sẽ đến đó trước. Đây, thậm chí ta còn giúp cô một bước.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem08 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0052", Text = "Cô di chuyển nhanh hơn ta, vậy nên, sao không để ta cân bằng lại sức mạnh?", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem09 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0053", Text = "Đang định vứt thứ này đi thì cô xuất hiện...", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItem10 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0054", Text = "Không có cách nào cô có thể đến đó trước ta. Thậm chí ta sẽ giúp cô đi trước.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItemIntroBridge01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "GameState", "UseRecord", "NPC_Echo_01" }, Comparison = ">=", Value = 3, }, { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0435", Text = "Đang mong chờ ai khác à? Ta cần một chút thời gian để xác định phương hướng. Nơi này đang yên tĩnh và tốt đẹp cho đến khi cô đến." }, { Cue = "/VO/MelinoeField_1972", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Gần đây cô chưa gặp Tiên Nữ phải không? Thường thì cô ấy sẽ ở trên cây cầu này." }, { Cue = "/VO/NemesisField_0436", Text = "Có lẽ ta đã khiến cô ta sợ chạy mất. Ta có việc quan trọng hơn là tìm kiếm Tiên Nữ. Dù sao thì, đi tiếp đi. Những linh hồn ở đây không thích chúng ta đối xử tử tế.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge01 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0045", Text = "You need all the help you can get, so here! Don't need this anyway.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge02 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0046", Text = "So much useless junk lying around. Here, ought to be {#Emph}you {#Prev}cleaning it up, not me.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge03 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, { Cue = "/VO/NemesisField_0047", Text = "Won't be needing this at all, but you look like you will.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, }, }, NemesisGetFreeItemBridge04 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0048", Text = "Pretend you never saw me, and I didn't make things easier for you.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge05 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0049", Text = "Wow, you really showed them, didn't you. And earned a handsome prize.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge06 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0050", Text = "Best keep your mouth shut about this next time you and Hecate catch up.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge07 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0051", Text = "We'll see who gets there first. Here, I'll even give you a boost.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge08 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0052", Text = "You travel lighter than me, so here, why don't we balance out the load.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge09 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0053", Text = "Was just about to throw this out when you came along...", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisGetFreeItemBridge10 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0054", Text = "No way you'll get there first. Even give you a head start.", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemPremiumArgs, }, }, NemesisBuyItemIntro01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0068", Text = "Ngày xưa, Vàng luôn chảy bên dưới Địa Ngục. nhưng Chronos đã biến chúng thành những đồng xu nhỏ! Giờ chúng ở khắp nơi chết tiệt này." }, { Cue = "/VO/MelinoeField_0024", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ngài Charon sẽ sớm lo liệu việc này. Ta đã đưa cho ngài ấy tất cả số Vàng ta tìm được. Để đổi lấy những món hàng từ ngài ấy." }, { Cue = "/VO/NemesisField_0069", Text = "Ta cũng sẽ làm như vậy nếu cô muốn đánh cược. Đừng lo, bất cứ đồng vàng nào ta lấy được từ cô, Charon cũng sẽ nhận từ ta.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItemFields01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "H" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeFieldsRewardFinder" } }, { Path = { "GameState", "FieldsRewardFindersActivated" }, Comparison = ">=", Value = 2, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0431", Text = "Chà, xem ai đây này! Cũng bị lạc ở Cánh Đồng này sao? Nếu ta có bản đồ, ta sẽ trao đổi với cô, nhưng cô không đủ khả năng để mua đâu, vậy nên ta sẽ dùng nó để tự thoát khỏi nơi này." }, { Cue = "/VO/MelinoeField_1970", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta không nghĩ bản đồ sẽ có ích đâu, vì những con đường này dường như sẽ thay đổi ngẫu nhiên mỗi đêm. Ít nhất thì ta sẽ tận dụng những Cây Cành Vàng rải rác khắp nơi ở đây. Còn cô thì sao?" }, { Cue = "/VO/NemesisField_0432", PreLineAnim = "Nemesis_Hub_Greet", Text = "Cây Cành Vàng. Ta chẳng biết chúng có tác dụng gì, vì trông chúng thật buồn thảm. Có lẽ ta nên chú ý hơn khi Nữ Chúa cứ lải nhải mãi về cái Vạc đó." }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem01 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0070", Text = "Đổi cho cô thứ gì đó để lấy một ít Vàng. Còn phải đổi cho Charon nữa.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem02 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0071", Text = "Ta cần một ít Vàng, và sẽ không công bằng nếu ta đánh bại cô, vậy sao không trao đổi nhỉ?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem03 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0072", Text = "Sao chúng ta không đưa ra một thỏa thuận nếu cô có Vàng?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem04 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0073", Text = "Có thứ gì đó cô sẽ cần, nhưng nó không miễn phí đâu.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem05 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0074", Text = "Có thể giúp cô tiến xa hơn, nhưng nó không rẻ đâu.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem06 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0075", Text = "Nếu muốn trở thành người giỏi nhất, thì cái giá không hề rẻ.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem07 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0076", Text = "Ta đề nghị một thỏa thuận, nhưng chỉ khi cô có đủ tiền trả.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem08 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0077", Text = "Công chúa như cô chắc hẳn sẽ có ít vàng dự trữ phải không?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem09 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0078", Text = "Cô tìm được bao nhiêu Vàng ngoài đó rồi? Ta có vài giao dịch đáng giá cho cô đây.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisBuyItem10 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0079", Text = "Ta có thể cướp hết Vàng từ cô, nhưng như thế sẽ không công bằng.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisBuyItemChoices, }, NemesisTakeDamageForItemIntro01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0100", Text = "Nhưng tên khốn khổ này chẳng là gì cả. Khi chúng ta luyện tập... ta gần như chẳng thể đánh trúng cô. Cô luôn né tránh một cách khéo léo." }, { Cue = "/VO/MelinoeField_0025", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta làm gì có lựa chọn nào khác? Chỉ cần trúng một đòn từ cô cũng đã khiến ta không thể đứng vững được. Nhưng ta đã phấn đấu!" }, { Cue = "/VO/NemesisField_0101", Text = "Cô đã mạnh mẽ hơn, phải. Nhưng mạnh cỡ nào? Ta có thể đánh cô ngay lúc này không, và nếu cô chịu được đòn này, ta sẽ cho cô phần thưởng đáng giá mà ta vừa tìm được. Đồng ý không?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItemRepeatSightings01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, -- PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisTakeDamageForItemIntro01" }, }, { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { Path = { "CurrentRun", "TextLinesRecord" }, HasNone = { "NemesisTakeDamageForItemIntro01", "NemesisTakeDamageForItem01", "NemesisTakeDamageForItem02", "NemesisTakeDamageForItem03", "NemesisTakeDamageForItem04", "NemesisTakeDamageForItem05", "NemesisTakeDamageForItem06", "NemesisTakeDamageForItem07", "NemesisTakeDamageForItem08", "NemesisTakeDamageForItem09", "NemesisTakeDamageForItem10", }, }, { Path = { "CurrentRun", "EncountersCompletedCache" }, HasAny = { "NemesisRandomEvent", "BridgeNemesisRandomEvent", "NemesisCombatF", "NemesisCombatG", "NemesisCombatH", "NemesisCombatI" } }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0433", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Cô theo dõi ta hay gì? Chưa từng gặp lại cô nhiều lần như vậy trong một đêm. Tìm đường khác của riêng cô đi." }, { Cue = "/VO/MelinoeField_1971", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Tìm đừng khác cho riêng ta? Ý cô muốn nói con đường này chẳng khác gì đã được sắp đặt một cách tối ưu nhất cho sự thành công của ta bởi Nữ Chúa và Chiến Lược Gia ư?" }, { Cue = "/VO/NemesisField_0434", PreLineAnim = "Nemesis_Hub_Glare_End", Text = "Im lặng và tránh đường cho ta. Nhưng trước hết, sao cô không để ta đấm một cái vào mặt cô, vì cô nói quá nhiều?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem01 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0102", Text = "{#Emph}Urgh{#Prev}, đôi khi ta phải đánh thứ gì đó. Cô hiểu ý ta rồi đấy. Ta có thể khiến nó xứng đáng với cô...", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem02 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0103", Text = "Ta vẫn còn nóng máu... cần phải xả giận. Chỉ cần một đòn là đủ.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem03 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0104", Text = "Ta phải đổ máu để có được thứ này. Hãy để ta lấy một chút máu của cô nếu cô muốn có nó.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem04 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0105", Text = "Cô khá mạnh mẽ đấy. Chắc chắn có thể chịu được một đòn. Muốn đánh đổi không?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem05 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0106", Text = "Cô phải chịu nhiều hơn một đòn để vượt qua nơi này...", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem06 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0107", Text = "Ta đã gặp khó khăn khi đến đây, cô muốn thử cảm giác đó không?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem07 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0108", Text = "Nếu muốn thứ gì đó từ ta, cô sẽ phải trả bằng máu.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem08 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0109", Text = "Muốn vượt qua nơi này, tốt nhất nên sẵn sàng đổ máu đi.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem09 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0110", Text = "Có lẽ cô có thể chịu được một đòn từ ta.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisTakeDamageForItem10 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, NamedRequirements = { "NoHitShieldAvailable", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0111", Text = "Ta đang nghĩ, nếu cô không chịu được một dòn từ ta, thì cô chẳng có cơ hội nào để thắng ta cả.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisTakeDamageForItemChoices, }, NemesisGiveTraitForItemIntro01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0132", Text = "Đôi khi ta nhận được một chút hỗ trợ từ Artemis, còn cô thì sao? Gần như cả Olympus đều hỗ trợ cô, nhưng vẫn chưa đủ. Đúng là được giúp nhiều quá cũng không tốt." }, { Cue = "/VO/MelinoeField_0026", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Nếu cô muốn chỉ trích thì nói thẳng với các vị thần đi. Giờ cô muốn gì ở ta?" }, { Cue = "/VO/NemesisField_0133", Text = "Muốn tự mình trải nghiệm một chút sức mạnh đó. Nào, ta sẽ trao đổi với cô...", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem01 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0134", Text = "Chắc cô sẽ không dùng hết những món quà từ họ hàng của cô đâu nhỉ?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem02 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0135", Text = "Ta có thứ cô cần ở đây, nhưng sẽ phải đổi bằng một chút sức mạnh tạm thời từ Olympus của cô.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem03 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0136", Text = "Hãy đưa ta một phần sức mạnh cô mượn được, và ta sẽ cho cô mượn một phần từ ta.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem04 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0137", Text = "Cô không cần mọi thứ từ Olympus.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem05 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0138", Text = "Muốn thứ ta đang có, phải đổi bằng thứ cô có.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem06 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0139", Text = "Ta không được trợ giúp từ Olympus, thì cô cũng không được.", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem07 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0140", Text = "Những vị thần trên đỉnh núi không muốn giúp đỡ ta, còn cô thì sao?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem08 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0141", Text = "Olympus sẽ chẳng quan tâm nếu cô từ bỏ một phước lành nho nhỏ, phải không?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem09 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0142", Text = "Cô sẵn sàng từ bỏ sức mạnh Olympus để đổi lấy thứ khác không?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisGiveTraitForItem10 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { FunctionName = "RequiredSellableGodTraits", }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, { Cue = "/VO/NemesisField_0143", Text = "Luôn phụ thuộc vào họ hàng để nhận sự giúp đỡ. Sao cô không từ bỏ nó đi?", }, PrePortraitExitFunctionName = "NemesisTradeChoice", PrePortraitExitFunctionArgs = PresetEventArgs.NemesisGiveTraitForItemChoices, }, NemesisDamageContestIntro01 = { PlayOnce = true, RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0144", Text = "Ta đã đến đây trước cô và cũng xử lý xong cả rồi. Khiến cô phát điên phải không? Đừng kiềm chế... hãy cho ta xem cô mạnh mẽ đến mức nào." }, { Cue = "/VO/MelinoeField_0027", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta không muốn đánh nhau với cô, Nemesis. Thậm chí ta cũng không muốn nói chuyện với cô lúc này." }, { Cue = "/VO/NemesisField_0145", Text = "Ta không yêu cầu cô đấu với ta. Chỉ yêu cầu cô đánh ta. Để xem liệu cô có thể khiến ta cảm thấy hề hấn gì không. Sẽ có phần thưởng xứng đáng cho cô.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest01 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0146", Text = "Với tất cả sự phẫn nộ đó. Hãy giải phóng nó. Nếu cô đánh bại ta, ta sẽ cho cô phần thưởng xứng đáng.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest02 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0147", Text = "Bọn khốn khổ đó thậm chí còn chẳng chạm được vào ta. Thật không công bằng. Cô sẽ thay thế chúng làm việc đó chứ?", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest03 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0148", Text = "Trông cô mạnh mẽ đấy. Đến đây, đánh ta mạnh nhất có thể. Sẽ có thưởng cho cô.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest04 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0149", Text = "Để xem cô đã thực sự mạnh đến mức nào. Đến đây đánh ta đi, đừng kiềm chế.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest05 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0150", Text = "Có thể thấy cô đang tức giận. Vậy thì hãy xả giận lên ta và cho ta thấy cô có thể làm được gì nào.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest06 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0151", Text = "Nhìn cô kìa, trông thật mạnh mẽ và hung tợn. Hãy cho ta thấy cô thực sự mạnh đến mức nào.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest07 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0152", Text = "Kẻ chiến thắng sẽ nhận được chiến lợi phẩm. Vậy hãy cho ta xem cô có gì nào.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest08 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0153", Text = "Không kẻ nào trong bọn này có thể chạm vào ta. Nhưng cô mạnh hơn chúng phải không?", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest09 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0154", Text = "Đừng nghĩ cô đã có hết những gì cần thiết, hãy chứng minh cho ta thấy ta đã sai đi.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, NemesisDamageContest10 = { RoomUseableOffSource = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "H_Bridge01" }, }, { Path = { "GameState", "ObjectivesCompleted", "NemesisBet" }, Comparison = ">=", Value = 8, }, }, OnQueuedFunctionName = "CheckDistanceTriggerThread", OnQueuedFunctionArgs = PresetEventArgs.NemesisRandomEventGreeting, SkipClearRoomRequiredObject = true, { Cue = "/VO/NemesisField_0155", Text = "Ngày càng trở nên mạnh mẽ hơn, nhưng cô sẽ không bao giờ sánh bằng ta. Đến đây, chứng tỏ cho ta xem đi.", PostLineFunctionName = "StartNemesisDamageContest", PostLineFunctionArgs = PresetEventArgs.NemesisDamageContestArgs, }, }, }, }, NemesisPostRandomEventCombat = { DefaultAIData = { TargetRequiredKillEnemy = true, TargetClosestToPlayer = true, IgnoreInvulnerable = true, AIWanderDistance = 200, }, AIOptions = { "AttackerAI" }, WeaponOptions = { "NemesisAttack1", "NemesisSpecial", "NemesisDash" }, OutgoingDamageModifiers = { { PlayerMultiplier = 0, }, { NonPlayerMultiplier = 1.0, }, }, IncomingDamageModifiers = { { Name = "Innate", PlayerMultiplier = 0.0, } }, }, NemesisFieldsPreRandomEventCombat = { DefaultAIData = { SentryActivateDistance = 400, SentryTetherDistance = 800, TargetMaxDistance = 600, TargetClosest = true, SentryActivateAnimation = "Nemesis_Hub_Equip", SentryActivateDelay = 1.05, SentryResetAnimation = "Nemesis_Combat_Unequip", SentryResetDelay = 1.1, SentryResetWithNoTarget = true, TargetGroups = { "GroundEnemies", "FlyingEnemies", }, }, AIOptions = { "SentryAI" }, WeaponOptions = { "NemesisAttack1", "NemesisSpecial" }, OutgoingDamageModifiers = { { PlayerMultiplier = 0, }, { NonPlayerMultiplier = 1.0, }, }, IncomingDamageModifiers = { { Name = "Innate", PlayerMultiplier = 0.0, } }, }, -- Nemesis Combat / -- NemesisCombat NemesisCombat = { PreferredSpawnPoint = "EnemyPoint", HealthBarTextId = "Chronos_Full", AlwaysShowInvulnerabubbleOnInvulnerableHit = true, DefaultAIData = { TargetRequiredKillEnemy = true, TargetClosestToPlayer = true, IgnoreInvulnerable = true, AIWanderDistance = 0, AIWanderDistanceDuration = 0, }, -- AIWakeDelay = 0.25, SkipAISetupOnActivate = true, AIOptions = { "AttackerAI" }, MaxBetAmount = 100, --NoTargetMoveTowardsPlayer = true, NoTargetWanderDuration = 1.0, -- WeaponOptions = { "NemesisAttack", "NemesisSpecial", "NemesisDash" }, WeaponOptions = { "NemesisAttack1", "NemesisSpecial" }, OutgoingDamageModifiers = { { PlayerMultiplier = 0, }, { NonPlayerMultiplier = 1.0, }, }, IncomingDamageModifiers = { { Name = "Innate", PlayerMultiplier = 0.0, } }, --[[OutgoingCritModifiers = { { Chance = 1.0, } },]] PostTextLineEvents = { { Threaded = true, FunctionName = "NemesisPostFieldsCombatCheckExits", Args = { RandomWaitMin = 1.0, RandomWaitMax = 3.0, }, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "H", }, }, }, }, }, SkipNextTextLinesCheck = true, CombatIntroTextLineSets = { NemesisCombatFirstIntro = { PlayFirst = true, PlayOnce = true, GameStateRequirements = { { }, }, { Cue = "/VO/NemesisField_0005", Text = "Chỉ cần bép xép một lời với Hecate, thì đừng có trách ta, nghe chưa? Giờ thì phắn đi, trong khi ta đang lo mọi việc ở đây." }, { Cue = "/VO/MelinoeField_0014", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Đây là nhiệm vụ của ta, không phải của cô. Và ta thất vọng với việc cô lơ là nhiệm vụ của mình. Cô thực sự khao khát muốn chứng minh bản thân vượt trội hơn ta sao?" }, { Cue = "/VO/NemesisField_0006", Text = "Cô biết đây, có lẽ tính ta là vậy. Vậy cá cược thế này thì sao: Cô có Vàng đúng không? Bọn khốn này sẽ tràn vào bất cứ lúc nào. Nếu ai giết được nhiều hơn sẽ lấy vàng của người còn lại. Cô thấy sao?" }, EndVoiceLines = { { PreLineWait = 0.45, UsePlayerSource = true, { Cue = "/VO/MelinoeField_0015", Text = "Lúc nào cô cũng muốn cá cược như thế ư?" }, }, { PreLineWait = 0.35, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/NemesisField_0007", Text = "Nếu cô ngậm mồm lại và chiến đấu thì cơ hội thắng sẽ cao hơn." }, }, }, }, NemesisPreCombatBecomingCloser01 = { PlayFirst = true, PlayOnce = true, GameStateRequirements = { -- Force = true, { PathFalse = { "CurrentRun", "TextLinesRecord", "NemesisPostCombatAboutRelationship02" } }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisPostCombatAboutRelationship02" }, }, NamedRequirements = { "NoRecentBecomingCloserEvent" }, NamedRequirementsFalse = { "NearTrueEnding" }, }, { Cue = "/VO/MelinoeField_4082", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", Text = "Nem, cô đã sẵn sàng đi tiếp chưa?" }, { Cue = "/VO/NemesisField_0479", Text = "Đừng có xem thường ta, nếu không, sau chuyện này ta sẽ lấy lại nhiều hơn những gì cô có. Giờ thì đi tiếp." }, }, -- Repeatable NemesisCombatMiscStart01 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0027", Text = "Ta sẽ tự mình xử lý Chronos nếu cô không làm được. Nhưng trước hết, phải lo xong việc ở đây đã." }, }, NemesisCombatMiscStart02 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0028", Text = "Khi chúng ta kết thúc ở đây, một người trong chúng ta sẽ giàu hơn, và người kia sẽ nghèo hơn." }, }, NemesisCombatMiscStart03 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0029", Text = "Sao cô đến được đây? {#Emph}Ungh{#Prev}, dù sao thì, hãy lấy Vàng của cô ra cược với ta." }, }, NemesisCombatMiscStart04 = { PlayFirst = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "G", }, }, }, { Cue = "/VO/NemesisField_0030", Text = "Ta khó chịu với mọi thứ từ nước đến tiếng hát này, nhưng phải làm điều này." }, }, NemesisCombatMiscStart05 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0031", Text = "Ta vừa mới bắt đầu dọn đường, sao cô không giúp sức đi." }, }, NemesisCombatMiscStart06 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0032", Text = "Nữ Thần Định Mệnh chắc hẳn đang cười với cô, vì ta sắp hoàn thành hết việc rồi." }, }, NemesisCombatMiscStart07 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0033", Text = "Sẽ có đủ bao cát cho cả hai chúng ta ở đây, chúng sắp đến rồi." }, }, NemesisCombatMiscStart08 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0034", Text = "Ở đây không cần cô giúp, nhưng sao không khiến mọi thứ trở nên thú vị hơn nhỉ..." }, }, NemesisCombatMiscStart09 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0035", Text = "Ta sẽ xử lý việc này, sau khi hoàn thành công việc, ta sẽ nhận được Vàng." }, }, NemesisCombatMiscStart10 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0036", Text = "Để xem, liệu lần này Nữ Thần Định Mệnh có đứng về phía cô không." }, }, NemesisCombatMiscStart11 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0037", Text = "Ngẫm lại thì ta có thể đứng đó để xem cuộc chiến này." }, }, NemesisCombatMiscStart12 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, { Path = { "CurrentRun", "CurrentRoom", "SpeechRecord "}, HasNone = { "/VO/NemesisField_0243", "/VO/NemesisField_0244", "/VO/NemesisField_0246", } }, }, { Cue = "/VO/NemesisField_0038", Text = "Hãy nhớ mà cẩn thận hơn, vì Vàng của cô sắp hết rồi." }, }, NemesisCombatMiscStart13 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, { Path = { "CurrentRun", "CurrentRoom", "SpeechRecord "}, HasNone = { "/VO/NemesisField_0243", "/VO/NemesisField_0244", "/VO/NemesisField_0246", } }, }, { Cue = "/VO/NemesisField_0437", Text = "Có lẽ sẽ cần nhiều vàng hơn. Hay để ta lấy thêm phần của cô khi chúng ta xong việc ở đây nhỉ?" }, }, NemesisCombatMiscStart14 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0438", Text = "Hãy sẵn sàng chiến đấu như thể rất cần Vàng để trao đổi với Charon." }, }, NemesisCombatMiscStart15 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0439", Text = "Xuất hiện đúng lúc ta sắp xử lý mọi việc một mình. Cũng tốt, đến lấy phần của cô đi." }, }, NemesisCombatMiscStart16 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, { Path = { "CurrentRun", "CurrentRoom", "SpeechRecord "}, HasNone = { "/VO/NemesisField_0243", "/VO/NemesisField_0244", "/VO/NemesisField_0246", } }, }, { Cue = "/VO/NemesisField_0440", Text = "Chia việc giết chóc ra, đại loại là vậy. Hoặc, ta sẽ lấy Vàng của cô." }, }, NemesisCombatMiscStart17 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, { Path = { "CurrentRun", "CurrentRoom", "SpeechRecord "}, HasNone = { "/VO/NemesisField_0243", "/VO/NemesisField_0244", "/VO/NemesisField_0246", } }, }, { Cue = "/VO/NemesisField_0441", Text = "Nếu cô thất bại ở đây, ta sẽ lấy hết Vàng của cô." }, }, NemesisCombatMiscStart18 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0442", Text = "Ta có Thanh Kiếm Địa Ngục. Ta không cần sự giúp đỡ của cô ở đây, cảm ơn." }, }, NemesisCombatMiscStart19 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, }, { Path = { "CurrentRun", "CurrentRoom", "SpeechRecord "}, HasNone = { "/VO/NemesisField_0243", "/VO/NemesisField_0244", "/VO/NemesisField_0246", } }, }, { Cue = "/VO/NemesisField_0443", Text = "Nếu muốn có thêm Vàng, thì ráng mà tìm. Còn bây giờ, tập trung vào, chúng đang đến." }, }, NemesisCombatMiscStart20 = { GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisCombatFirstIntro" }, } }, { Cue = "/VO/NemesisField_0444", Text = "Làm một trận chiến giao hữu chứ, Công Chúa? Đến đây, thể hiện đi." }, }, NemesisCombatMiscStart21 = { PlayFirst = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisPostCombatAboutTartarus02" }, }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "I" }, }, }, { Cue = "/VO/NemesisField_0499", Text = "Người ta nói Chronos thích vàng, nên hắn sẽ không phiền với cuộc thi tài nhỏ nhỏ của chúng ta." }, }, NemesisCombatMiscStart22 = { PlayFirst = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisPostCombatAboutTartarus02" }, }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "I" }, }, }, { Cue = "/VO/NemesisField_0480", Text = "Vậy ra nơi này là khởi nguồn của phép thuật. Để xem đội quân tinh nhuệ của Titan có thể làm được gì." }, }, }, NarrativeDataName = "NPC_Nemesis_01", InteractTextLinePriorities = "PostCombatEventsPriorities", InteractTextLineSets = { NemesisPostCombatFirstMeeting = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H" }, }, }, { Cue = "/VO/NemesisField_0008", Text = "Ta khá ngạc nhiên khi cô không giở trò trốn về đấy." }, { Cue = "/VO/MelinoeField_0016", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô chẳng biết gì về ta cả. Cô đang nghĩ gì vậy, rời khỏi vị trí công việc của mình, chống đối mệnh lệnh trực tiếp từ Nữ Chúa Hecate?" }, { Cue = "/VO/NemesisField_0009", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta nghĩ cô không đủ khả năng để hạ Titan. Nhưng ta thì có. Giờ thì biến đi." }, }, NemesisPostCombatAboutProgress01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H", }, }, }, { Cue = "/VO/NemesisField_0010", AngleTowardHero = true, Text = "Ta cứ ngỡ rằng khi cô gặp ta lần đầu tiên ở đay, cô sẽ đi mách với Hecate ngay lập tức. Nhưng cô đã không làm vậy." }, { Cue = "/VO/MelinoeField_0017", UsePlayerSource = true, -- Portrait = "Portrait_Mel_Intense_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "May cho cô là Hecate không yêu cầu ta báo cáo. Ít nhất thì cô cũng thu hút sự chú ý của vài kẻ địch khỏi ta." }, { Cue = "/VO/NemesisField_0011", Text = "Đó là điều ít nhất ta có thể làm được. Dù gì đi nữa, ta cũng sẽ không bỏ cuộc, nhưng với cách này... ta có thể tập trung vào nhiệm vụ." }, }, NemesisPostCombatAboutKeepsake01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "Hero", "TraitDictionary" }, HasAny = { "DeathVengeanceKeepsake" }, }, }, { Cue = "/VO/NemesisField_0012", Text = "{#Emph}Aw{#Prev}, cô đã mang theo Con Mắt Tà Ác mà ta đã cho cô, đáng yêu đấy. Khiến kẻ thù của chúng ta phải hối hận khi đã động đến cô." }, { Cue = "/VO/MelinoeField_0018", UsePlayerSource = true, PreLineAnim = "MelTalkBrooding01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta khá chắc kẻ thù của chúng ta cảm nhận được những gì đang đến với chúng. Còn con mắt này thì... nó gần giống như sinh vật sống. CÔ không dùng nó để theo dõi ta đấy chứ?" }, { Cue = "/VO/NemesisField_0013", Text = "Không hề. Ta nhìn cô đủ nhiều rồi. Giờ thì biến đi khỏi đây trước khi Con Mắt đó của ta sẽ chứng kiến điều không hay." }, }, NemesisPostCombatAboutHecate01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "G", }, }, }, { Cue = "/VO/MelinoeField_0019", UsePlayerSource = true, PreLineThreadedFunctionName = "PlayCharacterAnim", PreLineThreadedFunctionArgs = { Name = "MelTalkPensive01", WaitTime = 1, UsePlayerSource = true }, PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Nói đi, sao cô có thể vượt qua Nữ Chúa trên đường đi xuống được? Bà ấy luôn đợi ở rìa của Erebus." }, { Cue = "/VO/NemesisField_0016", Text = "Cô vừa hỏi vừa tự trả lời đấy. Bà ta đang đợi cô, không phải ta. Ta không phải người vẫn luôn bị kiểm tra và huấn luyện như cô. Và ta giỏi trong việc né tránh bà ta." }, }, NemesisPostCombatAboutArtemis01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathTrue = { "CurrentRun", "SpawnRecord", "NPC_Artemis_Field_01" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisGift04", "ArtemisGift02" }, }, }, { Cue = "/VO/NemesisField_0475", Text = "Ta vừa gặp Artemis ở đằng kia. Có vẻ ta và cô ấy đã gánh phân nửa công việc của cô rồi." }, { Cue = "/VO/MelinoeField_3632", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Chắc hẳn đó là cái giá mà ta phải gánh chịu, đúng không? Nhưng yên tâm, phía trước vẫn còn nhiều kẻ thù mà ta sẽ tự mình xử lý. Vậy cuộc đi săn của nữ thần săn bắt thế nào rồi?" }, { Cue = "/VO/NemesisField_0476", Text = "Có vẻ khá ổn, bọn ta đã trò chuyện một cách vui vẻ. Trước đó ta còn nghĩ rằng cô ấy đã tránh mặt ta một thời gian, dù ta chẳng thể tưởng tượng được lý do là gì." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, RequiredMinElapsedTime = 2, { Cue = "/VO/MelinoeField_3633", Text = "Ta cũng vậy." }, }, }, }, NemesisPostCombatAboutRelationship01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisTaverna01", "NemesisGift06" }, }, }, { Cue = "/VO/NemesisField_0472", Text = "Tại sao phải uống Ambrosia ở Crossroads, trong khi chúng ta có thể cùng nhau thưởng thức ở đây?" }, { Cue = "/VO/MelinoeField_3629", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Đánh bại kẻ thù không chút nhân nhượng là cách cô tận hưởng niềm vui sao? Dù vậy, điều đó cung không có nghĩa là ta không cảm thấy thỏa mãn khi hoàn thành công việc. Chờ đã, ý cô cùng nhau là sao?" }, { Cue = "/VO/NemesisField_0473", PreLineWait = 0.2, Portrait = "Portrait_Nemesis_Averted_01", Text = "Thôi im đi. Trước đây chúng ta từng đấu tập cùng nhau, và việc này cũng tương tự chuyện đó. Ta không biết ai khác có thể theo kịp, chứ đừng nói là vượt qua ta." }, { Cue = "/VO/MelinoeField_3630", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Vậy giữa chúng ta chỉ có sự cạnh tranh lành mạnh thôi sao?" }, { Cue = "/VO/NemesisField_0474", PreLineAnim = "Nemesis_Hub_Greet", -- heart unlock PostLineThreadedFunctionName = "RelationshipAdvancedPresentation", PostLineThreadedFunctionArgs = { Delay = 2.0 }, Text = "Ta bảo im đi. Cô còn mốn điều gì khác ư?" }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/MelinoeField_3631", Text = "...Ta sẽ trả lời cô sau." }, }, }, }, NemesisPostCombatAboutRelationship02 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisBathHouse03", "NemesisPostCombatAboutRelationship01" }, }, }, { Cue = "/VO/NemesisField_0445", Emote = "PortraitEmoteSurprise", Text = "...Ta đổ mồ hôi ư? Ta thực sự đổ mồ hôi. Chuyện này rất hiếm khi xảy ra, bọn chúng chỉ là lũ yếu đuối, ta... chết tiệt thật..." }, { Cue = "/VO/MelinoeField_3620", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô ổn chứ, Nem, có chuyện gì vậy? Nhìn những vết thương của cô thì có vẻ kẻ địch đã sử dụng chất độc hay thứ gì đó tương tự..." }, { Cue = "/VO/NemesisField_0446", Emote = "PortraitEmoteFiredUp", Portrait = "Portrait_Nemesis_Averted_01", Text = "Đừng chạm vào ta! Ta chẳng sao cả. Lo việc của cô đi." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/MelinoeField_3621", Text = "Chờ đã..." }, }, }, }, -- relationship NemesisPostCombatBecomingCloser01 = { PlayOnce = true, UseableOffSource = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathFalse = { "CurrentRun", "TextLinesRecord", "NemesisPostCombatAboutRelationship02" } }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H" }, }, { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisPostCombatAboutRelationship02" }, }, NamedRequirements = { "NoRecentBecomingCloserEvent" }, NamedRequirementsFalse = { "NearTrueEnding" }, }, { Cue = "/VO/NemesisField_0447", Portrait = "Portrait_Nemesis_Averted_01", Text = "Nơi này không thoải mái như ở suối nước nóng nhỉ, Công Chúa? Và đây lại là công việc đơn độc." }, { Cue = "/VO/MelinoeField_3622", UsePlayerSource = true, PreLineWait = 0.35, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cũng không hẳn, nhưng cô đã từ chối khi ta đề nghị chúng ta cùng nhau vượt qua những tầng sâu này. Giờ cô nghĩ lại chưa?" }, { Cue = "/VO/NemesisField_0448", PreLineWait = 0.35, PreLineAnim = "Nemesis_Hub_Salute", Portrait = "Portrait_Nemesis_Averted_01", Text = "Ta đã suy nghĩ, nhưng theo hướng khác. Cô đã len lỏi vào tâm trí ta. Ta muốn cô biến mất. Cô luôn khiến ta phân tâm khi chúng ta tập luyện, và giờ cô lại khiến mọi việc tồi tệ hơn." }, { Cue = "/VO/MelinoeField_3623", UsePlayerSource = true, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Cô đang nói gì vậy, ta đã làm gì đâu...? ...Ồ. Ý cô nói những suy nghĩ là... cảm xúc. Vậy... giờ phải làm sao...?" }, { Cue = "/VO/NemesisField_0449", SecretMusic = "/Music/NarcissusTheme", PreLineWait = 0.5, Portrait = "Portrait_Nemesis_Averted_01", Text = "Chưa biết, nhưng... chúng ta có thể nán lại đây một chút không, để tìm hiểu. Vì nơi này khá yên tĩnh. Ta không ép buộc, chỉ là... gần đây ta cảm thấy quá cô độc và muốn cân bằng lại." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/NemesisField_0453", Text = "Ồ, ta không cần thứ này, nhưng cô thì có." }, }, { PreLineWait = 0.6, UsePlayerSource = true, { Cue = "/VO/MelinoeField_3627", Text = "Tạm biệt, Nem..." }, }, }, { Text = "Choice_NemesisBecomingCloser01", Portrait = "Portrait_Nemesis_Averted_01", IgnoreRawText = true, IsNarration = true, IgnoreContinueArrow = true, BoxAnimation = "NarrationBubbleRomance", BoxExitAnimation = "NarrationBubbleRomanceOut", DisableCharacterFadeColorLag = true, KeepContextArt = true, TextOffsetY = 0, PreContentSound = "/Leftovers/Menu Sounds/EmoteThoughtful", Choices = { { ChoiceText = "Choice_NemesisDecline", { Cue = "/VO/MelinoeField_3628", UsePlayerSource = true, PreLineWait = 1.0, Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "...Ta cũng giống cô ở chỗ không mong chờ quá nhiều điều tốt đẹp. Ta phải làm nhiệm vụ, cô cũng vậy; ta chỉ không nghĩ mình sẽ được thanh thản. Cô hiểu ý ta không?" }, { Cue = "/VO/NemesisField_0454", EndSecretMusic = true, PreLineWait = 1.0, Portrait = "Portrait_Nemesis_Averted_01", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, Text = "Ta hiểu rồi. Quên những gì ta đã nói đi. Ít nhất chúng ta đã có cuộc nói chuyện này. Ta phải đi đây... hẹn gặp lại." }, }, { ChoiceText = "Choice_NemesisAccept", { Cue = "/VO/MelinoeField_3624", UsePlayerSource = true, PreLineWait = 1.0, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Portrait = "Portrait_Mel_Pleased_01", PortraitExitAnimation = "Portrait_Mel_Pleased_01_Exit", PostLineFunctionName = "BecomingCloserPresentation", PostLineFunctionArgs = { Sound2 = "/EmptyCue", Sound3 = "/EmptyCue", Partner = "Nemesis", TimeTicks = 10, ExtraWaitTime = 0.25 }, Text = "...Cân bằng mọi thứ... nếu muốn thoải mái và yên tĩnh, thì cô phải cởi bỏ bộ giáp. Hay để ta giúp cô một tay nhỉ, rồi sau đó tính tiếp?" }, -- INTERMISSION PRESENTATION { Cue = "/VO/MelinoeField_3625", UsePlayerSource = true, Portrait = "Portrait_Mel_PleasedFlushed_01", PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "...Bộ giáp của cô chắc sẽ rất khó khăn để mặc lại, nhưng xong rồi. Cô ổn chứ, Nem? Ít nhất thì cũng bớt phân tâm rồi nhỉ...?" }, { Cue = "/VO/NemesisField_0451", PreLineWait = 1.0, Portrait = "Portrait_Nemesis_Flushed_01", Text = "Có lẽ vậy, và giờ ta cảm thấy ổn hơn rồi. Còn cô thì sao... ý ta là..." }, { Cue = "/VO/MelinoeField_3626", UsePlayerSource = true, Portrait = "Portrait_Mel_PleasedFlushed_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Ta cũng ổn! Thật thoải mái...! Lẽ ra chúng ta nên làm nhiệm vụ, không phải ở đây xua tan nỗi cô đơn, nhưng mà... cô biết rõ hơn ai hết về việc này có xứng đáng không mà." }, { Cue = "/VO/NemesisField_0452", EndSecretMusic = true, PreLineWait = 0.5, Portrait = "Portrait_Nemesis_Flushed_01", PreLineFunctionName = "NPCRewardDropPreProcess", PostLineFunctionName = "NPCRewardDrop", PostLineFunctionArgs = PresetEventArgs.NemesisGetFreeItemArgs, PostLineThreadedFunctionName = "InCombatTextEvent", PostLineThreadedFunctionArgs = GameData.PostIntermissionArgs, Text = "Tạm thời thế này là đủ. Vậy nên đi thôi, nhưng chúng ta có thể lặp lại việc này nếu cần." }, }, }, }, }, NemesisPostCombatAboutOceanus01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "G" }, }, }, { Cue = "/VO/MelinoeField_1968", UsePlayerSource = true, PreLineThreadedFunctionName = "PlayCharacterAnim", PreLineThreadedFunctionArgs = { Name = "MelTalkPensive01", WaitTime = 1, UsePlayerSource = true }, PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Nơi toàn nước như thế này chắc gây khó chịu cho bộ đồ của lắm nhỉ. Cô vẫn chưa tìm được lối đi xuống phải không?" }, { Cue = "/VO/NemesisField_0429", Text = "Chỉ có một con đường duy nhất khác là băng qua Elysium, nhưng điều đó sẽ không xảy ra với ta hay cô. Còn cách nào tốt hơn để Chronos chứng tỏ hắn đang kiểm soát mọi thứ hơn là phong tỏa Địa Ngục chứ?" }, { Cue = "/VO/MelinoeField_1969", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Man mắn là hắn đã bỏ sót một chỗ. Dù sao thì giờ hắn cũng đã nhận ra chúng ta đang sử dụng còn đường này. Hoặc ít nhất là ta đang sử dụng nó." }, { Cue = "/VO/NemesisField_0430", Text = "Nhờ cô mà ta mới biết! Bảo sao ta lại mắc bẫy. Dù sao thì, ta nên đi ngay. Không thể để bộ giáp này bị rỉ sét, nhưng vẫn phải đề phòng." }, }, NemesisPostCombatAboutScylla01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "G" }, }, { PathTrue = { "GameState", "RoomCountCache", "G_Boss01" }, }, { PathFalse = { "GameState", "EncountersCompletedCache", "NemesisCombatH" }, }, }, { Cue = "/VO/MelinoeField_0020", UsePlayerSource = true, PreLineThreadedFunctionName = "PlayCharacterAnim", PreLineThreadedFunctionArgs = { Name = "MelTalkExplaining01", WaitTime = 1, UsePlayerSource = true }, PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô đã bao giờ vượt qua Scylla và ban nhạc Siren của cô ta chưa? Ta chỉ muốn một lần vượt qua nơi đó mà không phải nghe bài hát của họ..." }, { Cue = "/VO/NemesisField_0019", PreLineAnim = "Nemesis_Hub_Greet", Text = "Chúng biết rõ bản thân không nên động đến ta. Chờ đã, cô đã chiến đấu với chúng ư? Cô đã làm gì mà gây thù oán với một nhóm nhạc vậy?" }, { Cue = "/VO/MelinoeField_0021", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta... cũng không rõ. Nhưng họ có vẻ rất thù địch với ta." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/NemesisField_0020", Text = "Chẳng thể tưởng tượng lý do là gì." }, }, }, }, NemesisPostCombatAboutCerberus01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathTrue = { "GameState", "RoomsEntered", "H_Boss01" }, }, { Path = { "GameState", "EncountersOccurredCache" }, HasAny = { "BridgeNemesisRandomEvent", "NemesisCombatH" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisGift08" }, }, { PathFalse = { "GameState", "TextLinesRecord", "NemesisPostCombatAboutTartarus01" } }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H" }, }, }, { Cue = "/VO/MelinoeField_0760", UsePlayerSource = true, PreLineThreadedFunctionName = "PlayCharacterAnim", PreLineThreadedFunctionArgs = { Name = "MelTalkPensive01", WaitTime = 1, UsePlayerSource = true }, PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Băng qua Cánh Đồng Than Khóc, nơi dẫn xuống Tartarus... có một con quái vật ở đó... cô biết nó là gì không?" }, { Cue = "/VO/NemesisField_0021", Text = "Vấn đề là ở đó. Không phải lúc nào ta cũng tìm được đường đến đó, và ngay cả khi ta đến được đó, sinh vật đó vẫn sẽ đuổi ta đi. Nhưng đừng lo, ta sẽ để mắt đến nó." }, }, NemesisPostCombatAboutTartarus01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisPostCombatAboutChronos01" }, }, { PathTrue = { "GameState", "RoomsEntered", "I_Intro" }, }, { Path = { "GameState", "EncountersOccurredCache", "NemesisCombatH" }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/NemesisField_0425", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Hãy nói cho ta biết điều gì đó, và đừng có mà chế nhạo ta, không thì đừng trách. Làm sao... để vào Tartarus. Ta đã vượt qua Cánh Đồng, rồi lại gặp phải đường cụt. Cứ thế lặp lại." }, { Cue = "/VO/MelinoeField_1966", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Tartarus đã bị phong ấn. Lý do duy nhất mà ta có thể vào được đây là vì ngay cả Chronos cũng không thể tước đi quyền thừa kế và quyền năng thần thánh của ta đối với nơi đó. Tuy nhiên, nếu không có Nữ Chúa, ta sẽ không biết cách sử dụng nó." }, { Cue = "/VO/NemesisField_0426", PreLineAnim = "Nemesis_Hub_Glare_End", Text = "Chẳng giúp ích được gì, quên những gì ta đã hỏi đi. Phải có cách khác đề vào bên trong, và nếu không có, ta sẽ tự tạo ra cách. Hiện tại, cứ tận hưởng khoảng thời gian thiếu sự cạnh tranh đi." }, }, NemesisPostCombatAboutTartarus02 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisPostCombatAboutTartarus01" }, }, { PathTrue = { "GameState", "EnemyKills", "Chronos" }, }, }, { Cue = "/VO/MelinoeField_3676", UsePlayerSource = true, PreLineThreadedFunctionName = "PlayCharacterAnim", PreLineThreadedFunctionArgs = { Name = "MelTalkPensive01", WaitTime = 1, UsePlayerSource = true }, PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Có tiến triển gì trong việc tình cách tiến vào Tartarus không? Nếu có thể, ta sẽ trao quyền thừa kế của ta cho cô, mặc dù ta khá chắc điều đó là không thể." }, { Cue = "/VO/NemesisField_0455", Text = "Ta có quyền thừa kế của riêng mình, cảm ơn. Và đúng vậy, cũng có tiến triển. Có một con quái vật ba đầu đang ở gần nơi dẫn xuống Tartarus... nó trồi lên từ lòng đất." }, { Cue = "/VO/MelinoeField_3677", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô định đi xuống Địa Ngục thông qua cái hố mà con quái vật đó để lại ư? Cô biết đó là Cerberus, con chó của cha ta, phải không?" }, { Cue = "/VO/NemesisField_0456", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", PostLineAnim = "Nemesis_Hub_Glare_End", Text = "Điều đó càng chứng tỏ đường hầm đó dẫn ta đến nơi ta cần đến, vào một đêm nào đó. Cứ chờ mà xem." }, EndVoiceLines = { { PreLineWait = 0.4, UsePlayerSource = true, { Cue = "/VO/MelinoeField_3678", Text = "Ta sẽ chờ..." }, }, }, }, NemesisPostCombatAboutTartarus03 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "NemesisPostCombatAboutTartarus02" }, }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsAny = { "I" }, }, }, { Cue = "/VO/NemesisField_0457", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Ta đã nói rồi, ta sẽ đi được đến tận nơi này. Lãnh địa của cha cô cũng đẹp đấy. Dù ta đoán Chronos đã cải tạo lại mọi thứ rồi." }, { Cue = "/VO/MelinoeField_3679", UsePlayerSource = true, Portrait = "Portrait_Mel_Proud_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Chúc mừng cô đã đến được nơi sâu nhất, Nemesis. Và nếu cô phân tán bớt kẻ địch thì càng tốt; vẫn còn thừa kẻ địch cho hai ta. Cô đã đến chỗ Chronos chưa?" }, { Cue = "/VO/NemesisField_0458", PreLineAnim = "Nemesis_Hub_Glare_End", Text = "Ta đã đến được nơi mà ta khá chắc rằng nó là Thánh Điện của Hades, nhưng chúng không cho ta vào. Ta đã thử gõ cửa, phá cửa, nhưng vô ích. Cuối cùng thì Charon đã đưa ta về." }, { Cue = "/VO/MelinoeField_3680", UsePlayerSource = true, Emote = "PortraitEmoteSurprise", Portrait = "Portrait_Mel_Vulnerable_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô đã thuyết phục Charon cho lên thuyền ư? Ngài ấy chưa từng cho ta lên dù chỉ một lần!" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/NemesisField_0459", Text = "Có lẽ cô không có đặc quyền đó, Công Chúa." }, }, { PreLineWait = 0.33, UsePlayerSource = true, { Cue = "/VO/MelinoeField_3681", Text = "{#Emph}...Ah." }, }, }, }, NemesisPostCombatPostTrueEnding01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathTrue = { "GameState", "ReachedTrueEnding" }, }, }, { Cue = "/VO/NemesisField_0477", Text = "Ta biết cô chưa xong việc, và cô biết đấy, ta cũng vậy. Dù cô đang làm gì lúc này, ta cũng sẽ không bị bỏ lại phía sau." }, { Cue = "/VO/MelinoeField_4081", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Chắc rồi! Cứ nói chuyện với Nữ Chúa hoặc Ông Nội Chronos, họ sẽ kể cho cô biết bọn ta đang làm gì." }, { Cue = "/VO/NemesisField_0478", Text = "Cũng phải. Nếu có ai hỏi, cứ nói là ta ra ngoài để vận động cho giãn gân cốt, và tiện tay mài vũ khí." }, }, NemesisPostCombatAboutChronos01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathTrue = { "GameState", "RoomCountCache", "H_Intro" }, }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H", }, }, }, { Cue = "/VO/MelinoeField_0761", UsePlayerSource = true, PreLineThreadedFunctionName = "PlayCharacterAnim", PreLineThreadedFunctionArgs = { Name = "MelTalkPensive01", WaitTime = 1, UsePlayerSource = true }, PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Chắc hẳn giờ cô đang nghĩ bản thân có thể hạ được Chronos. Vậy cô đã gặp hắn chưa? Đã đến gần Thánh Điện của cha ta chưa?" }, { Cue = "/VO/NemesisField_0017", PreLineAnim = "Nemesis_Hub_Greet", Text = "Ta gặp phải rất nhiều trở ngại trên đường đi. Những con đường dẫn xuống Tartarus đã thay đổi. Đặc biệt là khi cô đến Cánh Đồng." }, { Cue = "/VO/MelinoeField_0762", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ta có cảm giác về nơi chúng ta cần đến. Ta đề xuất hợp tác cùng nhau nếu không có lệnh nghiêm cấm từ Nữ Chúa." }, { Cue = "/VO/NemesisField_0018", Text = "Không có chuyện đó đâu, bất kể cô nói gì. Ta sẽ tự làm việc này. Bất kể cách đó có tỷ lệ thành công cao hơn." }, }, NemesisPostCombatAboutArmor01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H" }, }, }, { Cue = "/VO/MelinoeField_1211", UsePlayerSource = true, PreLineThreadedFunctionName = "PlayCharacterAnim", PreLineThreadedFunctionArgs = { Name = "MelTalkPensive01", WaitTime = 1, UsePlayerSource = true }, PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Những trang bị nặng nề đó không khiến cô bị chậm lại sao? Trông không thoải mái lắm, đặc biệt là vùng eo." }, { Cue = "/VO/NemesisField_0014", Text = "Đúng là không thoải mái. Nhưng ít nhất thì không như ai đó bán khỏa thân mà lao vào chiến đấu." }, { Cue = "/VO/MelinoeField_1212", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô nên thử mặc đồ bán khỏa thân mà chiến đâu xem. Có thể cô sẽ thích đấy!" }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/NemesisField_0015", Text = "Thay vào đó thì ta thích bất khả xâm phạm hơn, cảm ơn." }, }, }, }, NemesisPostCombatAboutLosing01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "NemesisGift03" }, }, { Path = { "GameState", "ObjectivesCompleted", "NemesisBet" }, Comparison = ">=", Value = 8, }, { PathTrue = { "CurrentRun", "ObjectivesCompleted", "NemesisBet" }, }, { PathFalse = { "CurrentRun", "ObjectivesFailed", "NemesisBet" }, }, }, { Cue = "/VO/NemesisField_0427", AngleTowardHero = true, PreLineAnim = "Nemesis_Hub_Glare_Start", Text = "Chết tiệt! Cô còn định lấy bao nhiêu Vàng của ta nữa đây? Rốt cuộc thì, những vụ cá cược này quá có lợi cho cô." }, { Cue = "/VO/MelinoeField_1967", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Cô tự đặt ra luật đấu mà. Nem, cô sẽ không nương tay với ta phải không? Mặc dù cô cũng khiến bản thân không thể đối xử bất công với ta." }, { Cue = "/VO/NemesisField_0428", PreLineAnim = "Nemesis_Hub_Glare_End", Text = "Có lẽ đó làm điểm yếu chí mạng của ta. Được rồi, cứ đi mua thứ gì đó cho cô đi, Công Chúa. Không cần ở đây để nghe tiếng kim loại va vào nhau theo từng bước chân ta nữa." }, }, NemesisPostCombatAboutSurface01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "PrevRun", "RoomCountCache" }, HasAny = { "N_Boss01", "N_Boss02" }, }, { Path = { "GameState", "RoomCountCache", "N_Opening01", }, Comparison = ">=", Value = 5, }, { PathFalse = { "PrevRun", "UseRecord", "NPC_Nemesis_01" }, }, { PathTrue = { "GameState", "WorldUpgradesAdded", "WorldUpgradeSurfacePenaltyCure" }, }, { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H", }, }, }, { Cue = "/VO/NemesisField_0022", Text = "Lần đánh cược đầu tiên sau một khoảng thời gian. Bận rộn lên trần gian, hít thở không khí à? Ta nghĩ có lẽ cô đã tỉnh ngộ và giao hết mọi thứ lại cho ta." }, { Cue = "/VO/MelinoeField_1213", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelinoeIdleWeaponless", PostLineAnimTarget = "Hero", Text = "Ồ, ta vẫn chưa xong việc ở đây đâu. Và rõ ràng là cô cũng vậy. Vẫn như cũ à? Ta hiểu, hơi khó khăn đấy." }, EndVoiceLines = { { PreLineWait = 0.4, ObjectType = "NPC_Nemesis_01", { Cue = "/VO/NemesisField_0023", Text = "Thôi im đi." }, }, }, }, NemesisPostCombatAboutFailure01 = { PlayOnce = true, InitialGiftableOffSource = true, GiftableOffSource = true, -- PreBlockSpecialInteract = true, PostBlockSpecialInteract = true, StatusAnimation = "StatusIconWantsToTalk", PreEventFunctionName = "AngleNPCToHero", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "RoomSetName" }, IsNone = { "H" }, }, }, { Cue = "/VO/NemesisField_0196", Text = "Ngừng trì hoãn đi. Cô càng thất bại sớm, thì ta sẽ càng sớm chỉ cho cô cách làm điều đó.", }, }, }, }, NemesisCombat_G = { InheritFrom = { "NemesisCombat" }, OutgoingDamageModifiers = { { PlayerMultiplier = 0, }, { NonPlayerMultiplier = 1.0, }, }, SpeedMultiplier = 1.5, }, NemesisShopping = { NarrativeDataName = "NPC_Nemesis_01", InteractTextLinePriorities = "ShoppingPriorities", InteractTextLineSets = { NemesisShopping01 = { UseableOffSource = true, -- InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { -- None }, { Cue = "/VO/NemesisField_0041", Text = "Nhìn lại tất cả những rắc rối từ việc kinh doanh của ngài đi, Charon.", }, }, NemesisShopping02 = { PlayFirst = true, UseableOffSource = true, -- InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { -- None }, { Cue = "/VO/NemesisField_0042", Text = "Không thấy ta và anh trai ta đang bận việc à?", }, }, NemesisShopping03 = { UseableOffSource = true, -- InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { -- None }, { Cue = "/VO/NemesisField_0043", Text = "Để ta yên đi, ta đang cố gắng thương lượng.", }, }, NemesisShopping04 = { UseableOffSource = true, -- InitialGiftableOffSource = true, GiftableOffSource = true, GameStateRequirements = { -- None }, { Cue = "/VO/NemesisField_0044", Text = "Xếp hàng đi. Ta đến đây trước.", }, }, } }, } OverwriteTableKeys( EnemyData, UnitSetData.NPC_Nemesis ) OverwriteTableKeys( NPCVariantData, VariantSetData.NPC_Nemesis_01 ) -- Global Nemesis Lines GlobalVoiceLines.NemesisDeathReactionVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 1.25, NoTarget = true, Source = { LineHistoryName = "NPC_Nemesis_01", SubtitleColor = Color.NemesisVoice }, { Cue = "/VO/NemesisField_0326", Text = "Trở về với Hecate đi, ta sẽ lo liệu từ đây." }, { Cue = "/VO/NemesisField_0327", Text = "Như ta thường nói, cô không đủ khả năng." }, { Cue = "/VO/NemesisField_0328", Text = "Đừng để ta nghe thấy cô đổ lỗi cho Nữ Thần Định Mệnh về chuyện này." }, { Cue = "/VO/NemesisField_0329", Text = "Ta cứ tưởng cô chịu đựng được nhiều hơn thế." }, { Cue = "/VO/NemesisField_0330", Text = "Đó là cái giá phải trả; ta biết rõ điều đó." }, { Cue = "/VO/NemesisField_0331", Text = "Mọi thứ có vẻ hơi quá sức đối với cô nhỉ, thật đáng thương." }, { Cue = "/VO/NemesisField_0332", Text = "Tại sao bọn ta phải trông cậy vào cô?" }, { Cue = "/VO/NemesisField_0333", Text = "Thôi nào, cô có thể làm tốt hơn thế." }, { Cue = "/VO/NemesisField_0334", Text = "Biến đi, mang thân xác gầy gò của cô ra khỏi đây đi." }, { Cue = "/VO/NemesisField_0335", Text = "Ta nói rồi, cô vốn không thể chịu nổi áp lực." }, } GlobalVoiceLines.NemesisGatherReactionVoiceLines = { { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.65, SuccessiveChanceToPlay = 0.5, ObjectType = "NPC_Nemesis_01", GameStateRequirements = { { PathEmpty = { "RequiredKillEnemies" }, }, { PathFalse = { "CurrentRun", "Hero", "IsDead" } }, }, Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 10 }, }, { Cue = "/VO/NemesisField_0402", Text = "Tốt cho cô thôi." }, { Cue = "/VO/NemesisField_0403", Text = "Tạ ơn Nữ Thần Định Mệnh." }, { Cue = "/VO/NemesisField_0404", Text = "Cô may mắn đấy." }, { Cue = "/VO/NemesisField_0405", Text = "Hoàn toàn xứng đáng." }, { Cue = "/VO/NemesisField_0406", Text = "Sao rồi?" }, { Cue = "/VO/NemesisField_0407", Text = "Cô cần thứ đó để làm gì?" }, { Cue = "/VO/NemesisField_0418", Text = "May mắn đấy." }, { Cue = "/VO/NemesisField_0419", Text = "Tốt." }, { Cue = "/VO/NemesisField_0420", Text = "Wow." }, { Cue = "/VO/NemesisField_0421", Text = "Thế nào rồi?" }, }, { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.65, SuccessiveChanceToPlay = 0.5, ObjectType = "NPC_Nemesis_01", GameStateRequirements = { { PathNotEmpty = { "RequiredKillEnemies" }, }, }, Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 10 }, }, { Cue = "/VO/NemesisField_0414", Text = "Đùa ta à?" }, { Cue = "/VO/NemesisField_0415", Text = "Quay lại chiến đấu mau!" }, { Cue = "/VO/NemesisField_0416", Text = "Cô đang làm gì vậy?" }, { Cue = "/VO/NemesisField_0417", Text = "Quay lại chiến đấu mau!" }, }, } GlobalVoiceLines.NemesisExorcismReactionVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.65, SuccessiveChanceToPlay = 0.5, ObjectType = "NPC_Nemesis_01", Cooldowns = { { Name = "NemesisAnyQuipSpeech", Time = 10 }, }, { Cue = "/VO/NemesisField_0408", Text = "Tại sao phải bận tâm?" }, { Cue = "/VO/NemesisField_0409", Text = "Lại một Shade cần được chú ý." }, { Cue = "/VO/NemesisField_0410", Text = "Cô đã làm gì?" }, { Cue = "/VO/NemesisField_0411", Text = "Thật cảm động làm sao." }, { Cue = "/VO/NemesisField_0412", Text = "Có ích gì chứ?" }, { Cue = "/VO/NemesisField_0413", Text = "Gánh nặng vô dụng." }, } GlobalVoiceLines.NemesisScoffingVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.65, SuccessiveChanceToPlay = 0.5, ObjectType = "NPC_Nemesis_01", PreLineAnim = "Nemesis_Hub_Greet", { Cue = "/VO/Nemesis_0105", Text = "{#Emph}Tsch." }, { Cue = "/VO/Nemesis_0106", Text = "{#Emph}Hmph." }, }