UnitSetData.Eris = { Eris = { InheritFrom = { "BaseBossEnemy", "BaseVulnerableEnemy"}, Portrait = "Portrait_Eris_Default_01", Groups = { "NPCs", "GroundEnemies" }, SubtitleColor = Color.ErisVoice, SpeakerName = "Eris", SpeakingStatusAnimation = "StatusIconSpeaking_Hero", FieldSpeakerName = "ErisField", LoadPackages = { "Eris", }, RunHistoryKilledByName = "NPC_Eris_01", SpeechParams = { Radius = 1, }, MaxHealth = 16000, AISetupDelay = 0.75, EmoteOffsetX = 0, EmoteOffsetY = -205, SkipDamagedFx = true, SkipUnitHitFlash = true, StopAnimationsOnHeroKill = { "ErisPowerUpFx", "ErisPowerUpFxA", "ErisPowerUpFxB", "ErisPowerUpFxB", "ErisPowerUpFxC", "ErisPowerUpFxD", "ErisPowerUpFxE", "ErisPowerUpFxF", "ErisPowerUpFxG", "ErisPowerUpFxH", "ErisPowerUpFxDarkA", "ErisPowerUpFxDarkB", "ErisPowerUpFxDarkC", "ErisPowerUpFxDarkD", "ErisPowerUpFxDarkE", "ErisPowerUpFxDarkF", "ErisPowerUpFxDarkG", "ErisPowerUpFxDarkH", "ErisPowerUpStart", }, SpeechCooldownTime = 9, SelfBuffDamage = 100, -- used for text WipeEnemyTypesOnDeath = { "GunBombUnit" }, OnDeathFunctionName = "ErisKillPresentation", OnDeathFunctionArgs = { Message = "ErisDefeatedMessage", CameraPanTime = 1.5, StartSound = "/Leftovers/Menu Sounds/EmoteShocked", FlashRed = true, AddInterBiomeTimerBlock = true }, DeathAngle = 220, DeathAnimation = "Enemy_Eris_Death", DeathFx = "ErisDeathFx", DeathSound = "/SFX/Enemy Sounds/Hades/HadesSpearEmerge", ClearChillOnDeath = true, Material = "Organic", HealthBarTextId = "Eris_Full", HealthBarOffsetY = -275, AltHealthBarTextIds = { { TextId = "Eris_AltFight01", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, }, --IgnoreInvincibubbleOnHit = true, InvulnerableFx = "Invincibubble", TextLinesUseWeaponIdle = true, BurningHitReactionWeapon = "ErisRelocate_Up", DefaultAIData = { --DashIfOverDistance = 600, DashWeapon = "ErisDash", MoveWithinRangeTimeoutMin = 2.0, MoveWithinRangeTimeoutMax = 3.0, }, WeaponOptions = { "ErisSpray", "ErisGrenadeCluster01", "ErisDash", "ErisFlyUp", "ErisSummonSelector" }, --WeaponOptions = { "ErisSummonSelector3", "ErisSpray" }, BossDifficultyShrineRequiredCount = 2, SetupEvents = { { FunctionName = "OverwriteSelf", Args = { AISetupDelay = 0.5, MaxHealth = 18500, OnDamagedEvents = { { FunctionName = "CheckComboBreakerDamageInWindow", Args = { Threshold = 800, Window = 1.0, ComboBreakerCooldown = 15.0, ForcedWeaponInterrupt = "ErisBackDashCombo", }, }, }, }, GameStateRequirements = { { FunctionName = "RequiredShrineLevel", FunctionArgs = { ShrineUpgradeName = "BossDifficultyShrineUpgrade", Comparison = ">=", Value = 2, }, }, }, }, { FunctionName = "GenericPresentation", Args = { SetAnimation = "Enemy_Eris_HubIdle", ThingProperties = { GrannyModel = "Eris_Lucifer_Mesh" }, OverwriteSourceKeys = { PortraitSwapMap = { Portrait_Eris_Default_01 = "Portrait_Eris_Default_02", Portrait_Eris_FiredUp_01 = "Portrait_Eris_FiredUp_02", Portrait_Eris_Unsure_01 = "Portrait_Eris_Unsure_02", }, }, }, GameStateRequirements = { { FunctionName = "RequiredShrineLevel", FunctionArgs = { ShrineUpgradeName = "BossDifficultyShrineUpgrade", Comparison = ">=", Value = 2, }, }, } } }, PreBossAISetupFunctionName = "GenericPresentation", PreBossAISetupFunctionArgs = { SetAnimation = "Enemy_Eris_Idle" }, AIEndHealthThreshold = 0.68, AIStages = { -- 1 { RandomAIFunctionNames = { "AttackerAI" }, EMStageDataOverrides = { UnequipAllWeapons = true, WaitDuration = 0.5, EquipWeapons = { "ErisLaserSweepLeft", "ErisLaserSweepRight", "ErisLaserStrafeLeft", "ErisLaserStrafeRight", "ErisDashLucifer", "ErisGrenadeLucifer", "ErisBombClear", "ErisFlyUp", "ErisWindBuffet", "ErisBackDashLucifer" }, AIData = { AIEndHealthThreshold = 0.68, ForcedNextWeapon = "ErisBackDashCombo", }, }, AIData = { AIEndHealthThreshold = 0.68, }, }, -- 2 { RandomAIFunctionNames = { "AttackerAI" }, EMStageDataOverrides = { WaitDuration = 0.5, EquipWeapons = { "ErisLaserSweepLeft", "ErisLaserSweepRight", "ErisLaserStrafeLeft", "ErisLaserStrafeRight", "ErisGrenadeLucifer", "ErisDashLucifer", "ErisBombClear", "ErisFlyUp", "ErisWindBuffet", "ErisBackDashLucifer" }, FireWeapon = "ErisGrenadeLuciferCluster01", AIDataOverrides = { PreferredSpawnPointGroup = "SpawnPointsPhase2" }, ThreadedEvents = { { FunctionName = "ErisOilTransition", Args = { GroupName = "Oil2", Delay = 3.0, }, }, }, }, TransitionFunction = "BossStageTransition", FireWeapon = "ErisGrenadeSelfBuff", ClearEffects = true, ThreadedEvents = { { FunctionName = "ErisOilTransition", Args = { GroupName = "Oil2", Delay = 4.0, }, }, }, AIData = { AIEndHealthThreshold = 0.36, }, UnequipAllWeapons = true, EquipWeapons = { "ErisSpreadFire", "ErisGrenadeCluster02", "ErisDash", "ErisFlyUp", "ErisSummonSelector" }, }, -- 3 { RandomAIFunctionNames = { "AttackerAI" }, EMStageDataOverrides = { WaitDuration = 0.5, EquipWeapons = { "ErisLaserSweepLeft2", "ErisLaserSweepRight2", "ErisLaserStrafeLeft2", "ErisLaserStrafeRight2", "ErisRelocateStrike", "ErisGrenadeLucifer", "ErisDashLucifer", "ErisBombClear", "ErisFlyUp", "ErisWindBuffet", "ErisBackDashLucifer" }, FireWeapon = "ErisGrenadeLuciferCluster02", AIDataOverrides = { PreferredSpawnPointGroup = "SpawnPointsPhase3" }, ThreadedEvents = { { FunctionName = "ErisOilTransition", Args = { GroupName = "Oil3", Delay = 3.0, }, }, }, }, TransitionFunction = "BossStageTransition", FireWeapon = "ErisGrenadeSelfBuff", ClearEffects = true, ThreadedEvents = { { FunctionName = "ErisOilTransition", Args = { GroupName = "Oil3", Delay = 4.0, }, }, }, AIData = { AIEndHealthThreshold = 0.05, }, UnequipAllWeapons = true, EquipWeapons = { "ErisRelocateStrike", "ErisGrenadeCluster03", "ErisDash", "ErisFlyUp", "ErisSummonSelector2" }, }, -- 4 { RandomAIFunctionNames = { "AttackerAI" }, TransitionFunction = "BossStageTransition", FireWeapon = "ErisGrenadeSelfBuffFinal", ClearEffects = true, ThreadedEvents = { { FunctionName = "ErisOilTransition", Args = { GroupName = "Oil4", Delay = 4.0, }, }, }, AIData = { AIEndHealthThreshold = 0.0, }, UnequipAllWeapons = true, EquipWeapons = { "ErisRelocateStrike", "ErisFlyUp", "ErisSummonSelector2", "ErisSnipe3" }, EMStageDataOverrides = { WaitDuration = 0.5, FireWeapon = "ErisGrenadeLuciferCluster03", EquipWeapons = { "ErisRelocateStrike", "ErisFlyUp_P4", "ErisBackDashLucifer", }, AIDataOverrides = { PreferredSpawnPointGroup = "SpawnPointsPhase4" }, DataOverrides = { BurningHitReactionWeapon = "ErisRelocate_Up_P4", }, ThreadedEvents = { { FunctionName = "ErisOilTransition", Args = { GroupName = "Oil4", Delay = 3.0, }, }, }, }, }, }, PlayerInjuredVoiceLineThreshold = 0.66, PlayerInjuredVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.65, SuccessiveChanceToPlay = 0.15, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0074", Text = "{#Emph}Đây rồi..." }, { Cue = "/VO/ErisField_0075", Text = "Đây rồi." }, { Cue = "/VO/ErisField_0076", Text = "Muốn thêm nữa à?" }, { Cue = "/VO/ErisField_0077", Text = "Đòn đó thế nào?" }, { Cue = "/VO/ErisField_0078", Text = "Còn nhiều lắm." }, { Cue = "/VO/ErisField_0079", Text = "Chết nhé." }, { Cue = "/VO/ErisField_0080", Text = "Chẳng phải thế này vui lắm sao?" }, { Cue = "/VO/ErisField_0081", Text = "{#Emph}Aw{#Prev}, tội nghiệp thật!" }, }, LastStandReactionVoiceLines = { { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.3, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.15, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 6 }, { Name = "ErisLastStandReactionSpeech", Time = 30 }, }, { Cue = "/VO/ErisField_0100", Text = "Vẫn tiếp tục à?" }, { Cue = "/VO/ErisField_0101", Text = "Bỏ cuộc đi!", PlayFirst = true }, { Cue = "/VO/ErisField_0102", Text = "Ô, thôi nào!", PlayFirst = true }, { Cue = "/VO/ErisField_0103", Text = "Chết đi!" }, { Cue = "/VO/ErisField_0104", Text = "Nữa à?" }, { Cue = "/VO/ErisField_0105", Text = "Aw, {#Emph}nghiêm túc đấy à?", PlayFirst = true }, { Cue = "/VO/ErisField_0342", Text = "Cơ hội cuối!", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/MelinoeField_0707", "/VO/MelinoeField_0709", "/VO/MelinoeField_0710", "/VO/MelinoeField_0711", "/VO/MelinoeField_0713", "/VO/MelinoeField_0714", "/VO/MelinoeField_0715", "/VO/MelinoeField_0716" }, }, }, }, { Cue = "/VO/ErisField_0343", Text = "{#Emph}Không còn phạm sai lầm nữa!", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/MelinoeField_0707" }, }, }, }, { Cue = "/VO/ErisField_0344", Text = "{#Emph}Ta sẽ khiến việc này xứng đáng!", PlayFirst = true, GameStateRequirements = { { Path = { "LastLinePlayed" }, IsAny = { "/VO/MelinoeField_0712" }, }, }, }, -- { Cue = "/VO/ErisField_0345", Text = "{#Emph}I still can fight...!" }, }, }, BlockDeathReactionVoiceLines = { { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 1.2, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 10 }, }, { Cue = "/VO/ErisField_0433", Text = "{#Emph}Moros...!" }, { Cue = "/VO/ErisField_0434", Text = "Đồ gian lận!" }, { Cue = "/VO/ErisField_0435", Text = "Cái Ghim ngu ngốc!" }, { Cue = "/VO/ErisField_0436", Text = "Bắt được rồi nha!" }, }, }, ShotsDestroyedReactionVoiceLines = { { PlayOnceFromTableThisRun = true, RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 1.2, SuccessiveChanceToPlayAll = 0.05, GameStateRequirements = { ChanceToPlay = 0.1, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 10 }, }, { Cue = "/VO/ErisField_0431", Text = "Cô đang phí phạm hết những phát bắn của ta!", GameStateRequirements = { { PathFromArgs = true, Path = { "BlockingProjectileName", }, IsAny = { "HestiaSprintDefense" }, }, } }, { Cue = "/VO/ErisField_0432", Text = "Tại sao ta lại không bắn trúng!?", PlayFirst = true }, }, }, InvulnerableVoiceLines = { { GlobalVoiceLines = "ErisInvulnerableVoiceLines" }, }, ResistedVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.35, SuccessiveChanceToPlay = 0.5, SuccessiveChanceToPlayAll = 0.1, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 10 }, }, { Cue = "/VO/ErisField_0301", Text = "Nuh-{#Emph}uh!" }, { Cue = "/VO/ErisField_0302", Text = "Ta sẽ không bao giờ đổi ý!", PlayFirst = true }, }, OnHitVoiceLinesQueueDelay = 0.35, OnHitVoiceLines = { { PlayOnce = true, PlayOnceContext = "ErisSuitHitReactionSpeech", RandomRemaining = true, GameStateRequirements = { { PathFromArgs = true, Path = { "SourceProjectile", }, IsAny = { "ProjectileSuitCharged", "ProjectileSuitSplit", "ProjectileSuitSplit2", "ProjectileSuitRangedGuided", "ProjectileSuitRangedUnguided", "ProjectileSuitRangedCharged", "ProjectileSuitRangedChargedUnguided", "ProjectileSuitRangedGuidedSplit", "ProjectileSuitRangedChargedSplit", "NyxSprintBlast", }, }, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 8 }, }, { Cue = "/VO/ErisField_0160", Text = "Gì thế này?!", PlayFirst = true }, { Cue = "/VO/ErisField_0161", Text = "Này, làm vậy để được gì?" }, }, { PlayOnce = true, BreakIfPlayed = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.3, }, { PathFromArgs = true, Path = { "SourceProjectile", }, IsAny = { "FrogFamiliarLand" }, }, { PathTrue = { "GameState", "FamiliarUpgrades", "FrogDamage" } }, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0426", Text = "Ta ghét ếch!" }, }, { PlayOnce = true, BreakIfPlayed = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.3, }, { PathFromArgs = true, Path = { "SourceProjectile", }, IsAny = { "CatFamiliarPounce" }, }, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0319", Text = "Ta ghét mèo!" }, }, { PlayOnce = true, BreakIfPlayed = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.3, }, { PathFromArgs = true, Path = { "SourceProjectile", }, IsAny = { "RavenFamiliarMelee" }, }, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0320", Text = "Ta ghét chim!" }, }, { PlayOnce = true, BreakIfPlayed = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.3, }, { PathFromArgs = true, Path = { "SourceProjectile", }, IsAny = { "HoundFamiliarBark" }, }, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0321", Text = "Ta ghét chó!" }, }, { PlayOnce = true, BreakIfPlayed = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.3, }, { PathFromArgs = true, Path = { "SourceProjectile", }, IsAny = { "PolecatFamiliarMelee" }, }, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0424", Text = "Ta ghét chồn!" }, }, }, LowHealthVoiceLineThreshold = 0.6, LowHealthVoiceLines = { BreakIfPlayed = true, RandomRemaining = true, PlayOnceFromTableThisRun = true, PreLineWait = 0.35, SuccessiveChanceToPlayAll = 0.01, Cooldowns = { { Name = "ErisSpokeRecently", Time = 25 }, }, GameStateRequirements = { }, { Cue = "/VO/ErisField_0096", Text = "nghiêm túc đấy à?" }, { Cue = "/VO/ErisField_0097", Text = "nghiêm túc đấy à!" }, { Cue = "/VO/ErisField_0098", Text = "Thôi nào..." }, }, CriticalHealthVoiceLineThreshold = 0.3, CriticalHealthVoiceLines = { BreakIfPlayed = true, RandomRemaining = true, PlayOnceFromTableThisRun = true, SuccessiveChanceToPlay = 0.05, Cooldowns = { { Name = "ErisSpokeRecently", Time = 16 }, }, PreLineWait = 0.35, GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.05, }, }, { Cue = "/VO/ErisField_0090", Text = "{#Emph}Này!" }, { Cue = "/VO/ErisField_0091", Text = "{#Emph}Chào cưng!" }, { Cue = "/VO/ErisField_0093", Text = "{#Emph}Ây!", PlayFirst = true }, { Cue = "/VO/ErisField_0094", Text = "Cô dám..." }, { Cue = "/VO/ErisField_0095", Text = "Không ổn...!" }, { Cue = "/VO/ErisField_0092", Text = "{#Emph}Ungh!" }, { Cue = "/VO/ErisField_0099", Text = "{#Emph}Guh!" }, }, DeathVoiceLines = { Queue = "Interrupt", { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 1.0, SkipAnim = true, Source = { LineHistoryName = "NPC_Eris_01", SubtitleColor = Color.ErisVoice }, { Cue = "/VO/ErisField_0120", Text = "Sao cô... có thể... tàn nhẫn quá vậy...?", PlayFirst = true }, { Cue = "/VO/ErisField_0114", Text = "{#Emph}Không! {#Prev}Không không không không, thôi nào, chờ đã!" }, { Cue = "/VO/ErisField_0115", Text = "Ôi không, không phải nữa chứ!" }, { Cue = "/VO/ErisField_0116", Text = "Oh, {#Emph}haha! {#Prev}Ta sẽ hạ cô bằng thứ này!!" }, { Cue = "/VO/ErisField_0117", Text = "Ta cứ tưởng chúng ta là bạn chứ?!" }, { Cue = "/VO/ErisField_0118", Text = "Sao cưng có thể làm vậy đối với ta chứ?!" }, { Cue = "/VO/ErisField_0119", Text = "Lạnh lẽo... bóng tối... {#Emph}ungh..." }, { Cue = "/VO/ErisField_0121", Text = "Không...! Cô đang phạm sai lầm đấy...!" }, { Cue = "/VO/ErisField_0346", Text = "...Trở về bóng tối... ngay...?", PreLineWait = 1.3 }, { Cue = "/VO/ErisField_0347", Text = "Nhưng ta không muốn đi, ta chỉ vừa đến đây thôi!" }, { Cue = "/VO/ErisField_0348", Text = "Đừng kéo ta trở về địa ngục mà không có chiến đấu!" }, { Cue = "/VO/ErisField_0349", Text = "Ta luôn là kẻ cười cuối cùng, cưng à! {#Emph}Hahaha-oww!" }, { Cue = "/VO/ErisField_0479", Text = "{#Emph}Ow ow ow ow ow ow OW!" }, { Cue = "/VO/ErisField_0480", Text = "{#Emph}Ta... vừa... đến... đây... mà!" }, { Cue = "/VO/ErisField_0484", Text = "Được rồi, được rồi, ta đi đây. Tạm biệt!" }, { Cue = "/VO/ErisField_0481", Text = "{#Emph}Augh! {#Prev}Đêm sau gặp lại nữa nhé, cưng?", PlayFirst = true, GameStateRequirements = { { PathTrue = { "PrevRun", "EnemyKills", "Eris" }, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisTaverna02" } }, }, }, { Cue = "/VO/ErisField_0482", Text = "{#Emph}Ow! {#Prev}Lần sau hãy cho ta cơ hội nhé?", PlayFirst = true, GameStateRequirements = { OrRequirements = { { { PathTrue = { "CurrentRun", "EncounterClearStats", "BossEris01" } }, { PathFalse = { "CurrentRun", "EncounterClearStats", "BossEris01", "TookDamage" } }, }, { { PathTrue = { "CurrentRun", "EncounterClearStats", "BossEris02" } }, { PathFalse = { "CurrentRun", "EncounterClearStats", "BossEris02", "TookDamage" } }, }, }, } }, { Cue = "/VO/ErisField_0483", Text = "{#Emph}Ungh{#Prev}, sao chuyện này vẫn luôn xảy ra với ta chứ?", PlayFirst = true, GameStateRequirements = { { FunctionName = "RequiredConsecutiveClearsOfRoom", FunctionArgs = { Names = { "O_Boss01", "O_Boss02" }, Count = 3 }, }, }, }, { Cue = "/VO/ErisField_0485", Text = "Sao cô... có thể nhanh đến vậy?", PlayFirst = true, GameStateRequirements = { { Path = { "GameState", "EnemyKills", "Eris" }, Comparison = ">", Value = 3, }, OrRequirements = { { { PathTrue = { "CurrentRun", "EncounterClearStats", "BossEris01" } }, { Path = { "CurrentRun", "EncounterClearStats", "BossEris01", "ClearTime" }, Comparison = "<=", Value = 20.0 }, }, { { PathTrue = { "CurrentRun", "EncounterClearStats", "BossEris02" } }, { Path = { "CurrentRun", "EncounterClearStats", "BossEris02", "ClearTime" }, Comparison = "<=", Value = 20.0 }, }, }, } }, { Cue = "/VO/ErisField_0486", Text = "Ta thậm chí còn chẳng bắn trúng cô lần nào ư?", PlayFirst = true, GameStateRequirements = { OrRequirements = { { { PathTrue = { "CurrentRun", "EncounterClearStats", "BossEris01" } }, { PathFalse = { "CurrentRun", "EncounterClearStats", "BossEris01", "TookDamage" } }, }, { { PathTrue = { "CurrentRun", "EncounterClearStats", "BossEris02" } }, { PathFalse = { "CurrentRun", "EncounterClearStats", "BossEris02", "TookDamage" } }, }, }, } }, }, }, BossKillVoiceLines = { Cooldowns = { { Name = "BossVanquishedSpeech", Time = 60 }, }, { GlobalVoiceLines = "SeleneVictoryVoiceLines" }, { GlobalVoiceLines = "BarelySurvivedBossFightVoiceLines" }, { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 7.2, SuccessiveChanceToPlay = 0.85, SuccessiveChanceToPlayAll = 0.75, UsePlayerSource = true, { Cue = "/VO/MelinoeField_1907", Text = "Do cô khơi mào trước thôi.", PlayFirst = true }, { Cue = "/VO/MelinoeField_1908", Text = "Cô ta khơi mào trước." }, { Cue = "/VO/MelinoeField_1909", Text = "Ra khỏi đây mau." }, { Cue = "/VO/MelinoeField_1910", Text = "Rời khỏi đây." }, { Cue = "/VO/MelinoeField_1911", Text = "Đừng quên điều đó." }, { Cue = "/VO/MelinoeField_1912", Text = "Cô ta chẳng học được điều gì." }, { Cue = "/VO/MelinoeField_1913", Text = "Hẹn gặp lại, Xung Đột." }, { Cue = "/VO/MelinoeField_1914", Text = "Tốt hơn rồi..." }, }, }, BossIntroTextLineSets = { ErisBossFirstMeeting = { PlayOnce = true, GameStateRequirements = { -- }, { Cue = "/VO/ErisField_0002", -- Portrait = "Portrait_Eris_FiredUp_01", -- Portrait = "Portrait_Eris_Unsure_01", -- Portrait = "Portrait_Eris_Default_02", -- Portrait = "Portrait_Eris_FiredUp_02", -- Portrait = "Portrait_Eris_Unsure_02", -- PreLineAnim = "Enemy_Eris_Hub_Flattered", -- PreLineAnim = "Enemy_Eris_Hub_Greet", -- PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Chào, thủy thủ! Thật trùng hợp khi lại gặp cô ở nơi xa như thế này. Cô đang đi đâu vậy? Ta có thể cho cô đi quá giang được không?." }, { Cue = "/VO/MelinoeField_1806", UsePlayerSource = true, Text = "Cô biết rõ nơi ta đang đến. Và ta có thể tự đi đến đó. Cảm ơn." }, { Cue = "/VO/ErisField_0003", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Cô chắc chứ? Vì có vẻ như co đã trải qua một đêm khá khó khăn để đến đây đấy. Và nó chỉ có thể trở nên tồi tệ thêm thôi." }, { Cue = "/VO/MelinoeField_1807", UsePlayerSource = true, PostLineAnim = "MelinoeIdle", PostLineAnimTarget = "Hero", Portrait = "Portrait_Mel_Intense_01", Text = "Ta chẳng quan tâm đến những lời nói mập mờ của cô, Eris. Muốn gì thì nói thẳng ra, hoặc tránh đường cho ta." }, { Cue = "/VO/ErisField_0004", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ồ, ta sẽ nói thẳng: Cô thật nhàm chán. Ta không thích cô. Và cô không có quyền ra lệnh cho ta...!" }, }, ErisBossAboutObstacles01 = { PlayOnce = true, GameStateRequirements = { { PathFalse = { "GameState", "ReachedTrueEnding" }, }, }, { Cue = "/VO/ErisField_0011", Emote = "PortraitEmoteDepressed", -- PreLineAnim = "Enemy_Eris_Hub_Flattered", -- PreLineAnim = "Enemy_Eris_Hub_Greet", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Thôi nào, nghiêm túc đấy à? Ta cứ tưởng mình đã nói rõ với cô trước đây rồi, nhưng giờ cô lại xuất hiện ở đây như chưa có chuyện gì xảy ra, và đêm nay chỉ như bao đêm khác!" }, { Cue = "/VO/MelinoeField_1920", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Đối với ta, đêm nay vẫn chỉ là đêm bình thường như mọi khi, Eris. Cô về cùng phe với Chronos để chống lại những vị thần, thì có gì quan trọng? Cô cũng chỉ là một chướng ngại vật trên chuyến hành trình của ta thôi." }, { Cue = "/VO/ErisField_0012", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ta rất tiếc phải báo với cô điều này, Rắc Rối. Những con đường này, rồi chúng sẽ dẫn cô đến gặp ta thôi, bất cứ lúc nào." }, }, ErisBossAboutRandomness01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutObstacles01" }, }, }, { Cue = "/VO/MelinoeField_3267", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", Text = "Tại sao cô lại phí công ngăn cản ta? Cô là Xung Đột; lẽ ra phải khó lường chứ! Sao cô không thử tấn công đám tay sai của Chronos đi, đổi gió một chút đi..." }, { Cue = "/VO/ErisField_0355", Emote = "PortraitEmoteFiredUp", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Sao cô lại nghĩ xấu về ta như vậy? Cưng đâu phải trung tâm của thế giới! Ta thì không thể nào khó đoán hơn được nữa! Mà cũng không hiểu vì sao chứ chạm mặt cô, thật là trùng hợp quá đi!" }, }, ErisBossAboutMistakes01 = { PlayOnce = true, GameStateRequirements = { -- }, { Cue = "/VO/ErisField_0013", Text = "Thêm lần nữa à? Ta không phải lúc nào cũng nhận ra cô cứng đầu hay chỉ đơn giản là... cô biết đấy. Dù sao thì cũng chẳng quan trọng nữa." }, { Cue = "/VO/MelinoeField_1921", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", PreLineThreadedFunctionName = "GenericPresentation", PreLineThreadedFunctionArgs = { SetAnimation = "Enemy_Eris_HubToCombatIdle" }, Text = "Cô đang cản đường ta đến với mục tiêu của ta đấy, Eris... hay chỉ đang phá phách. Vấn đề là, dù sớm hay muộn, cô cũng sẽ nhận ra đó là một sai lầm... " }, { Cue = "/VO/ErisField_0014", PreLineThreadedFunctionName = "GenericPresentation", PreLineThreadedFunctionArgs = { SetAnimation = "Enemy_Eris_Reload_PreFight" }, PreLineFunctionName = "StartBossRoomMusic", Text = "{#Emph}Aw{#Prev}, nhưng tất cả chúng ta đều mắc sai lầm, phải không? Nếu không thì không ai trong chúng ta sẽ ở đây cả. Vậy bây giờ cô đã sẵn sàng chưa? Vui vẻ một chút nào." }, }, ErisBossAboutRelaxation01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "GamePhase" }, Comparison = "~=", Value = 5, }, }, { Cue = "/VO/ErisField_0015", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Thật tuyệt vời phải không, Rắc Rối? Trước khi ta tiễn cô về địa ngục, ta chỉ muốn chúng ta dành chút thời gian để vui đùa và thư giản... và ta thực sự biết ơn những gì chúng ta đang có." }, { Cue = "/VO/MelinoeField_1922", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Những trận chiến vô nghĩa với cô... ta không hề cảm thấy trân trọng chúng chút nào. Ít nhất thì, Trăng đêm nay cũng khá đẹp nhỉ?" }, { Cue = "/VO/ErisField_0016", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Tinh thần phải như vậy! Vậy sao chúng ta không nhuộm màu ánh trăng nhợt nhạt bằng máu và mồ hôi nhỉ? Và chúng ta sẽ để biển uống nó một cách say sưa!" }, }, ErisBossAboutRelationship01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "UseRecord", "NPC_Eris_01" }, Comparison = ">=", Value = 4, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisGift05" }, }, }, { Cue = "/VO/ErisField_0155", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Cô nghĩ chỉ cần làm thân với ta ở Crossroads là ta sẽ buông tha cho cô ở đây ư? Sai rồi, cưng à! Ta biết mục đích của cô là gì mà." }, { Cue = "/VO/MelinoeField_3075", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Ta đã cố giải thích rất nhiều lần và rõ ràng, nhưng cô vẫn giả vờ như ta đang âm mưu điều gì đó." }, { Cue = "/VO/ErisField_0156", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "{#Emph}Ohh{#Prev}, và giờ cô đang cố đổ lỗi cho ta để khiến mọi chuyện tồi tệ hơn? Thôi thì ta cũng chẳng cần nghe những lời vớ vẩn đó nữa. Không ai có quyền bắt nạt ta, hiểu chưa?" }, }, ErisBossAboutPurpose01 = { PlayOnce = true, GameStateRequirements = { { } }, { Cue = "/VO/MelinoeField_3076", UsePlayerSource = true, Text = "Lúc nào sẵn sàng và háo hức chiến đấu. Ta chưa từng gặp ai vừa quyết tâm vừa thiếu mục đích đến vậy." }, { Cue = "/VO/ErisField_0157", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ta sắp khai sáng cho cưng đấy, sẵn sàng chưa? Nghĩ mà xem, không có mục đích cũng là phương châm sống đấy! Giờ ta sẽ cho cô trải nghiệm cảm giác đó." }, }, ErisBossAboutConsequences01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = "<=", Value = 0, }, }, { Cue = "/VO/ErisField_0048", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Ta phải thừa nhận, cô mãnh mẽ hơn vẻ ngoài đấy, Rắc Rối. Và ta sẽ đáp trả cô cả gốc lẫn lãi với những gì cô đã đối xử với ta lần trước." }, { Cue = "/VO/MelinoeField_1923", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Kết quả của lần gặp trước là hệ quả trực tiếp từ sự khiêu khích và thù địch của cô. Đêm nay có thể sẽ còn tồi tệ hơn nữa." }, { Cue = "/VO/ErisField_0049", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Chờ đã, ý cô muốn nói rằng mọi lựa chọn của chúng ta đều để lại hậu q-q-quả...? Thôi nào, đừng ngây thơ như thế chứ. Dù sao thì, ta sẽ bắt đầu cuộc chiến." }, }, ErisBossAboutProblems01 = { PlayOnce = true, GameStateRequirements = { { }, }, { Cue = "/VO/MelinoeField_3082", UsePlayerSource = true, Text = "Phải thừa nhận rằng, một kẻ tồn tại nhờ sự hỗn loạn như cô lại xuất hiện rất đúng lúc và đều đặn, Eris. Cứ mỗi lần ta băng qua Rãnh Nứt, đều gặp cô đang đứng chờ sẵn." }, { Cue = "/VO/ErisField_0169", PreLineAnim = "Enemy_Eris_Hub_Scoff", Portrait = "Portrait_Eris_Unsure_01", Text = "Không cần phải châm chọc đâu! Nghe này, ta biết chuyện này bắt đầu vượt ngoài tầm kiểm soát, nhưng ta hứa, ta có thể xử lý được. Chỉ cần hứa với ta rằng sẽ không nói cho ai nghe nhé?" }, { Cue = "/VO/MelinoeField_3083", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", Text = "Cô muốn ta hứa rằng sẽ không kể cho ai nghe về việc đúng giờ và đều đặn của cô ư? Tại sao, cô sợ họ nghĩ tốt về cô một lần trong đời ư?" }, { Cue = "/VO/ErisField_0170", Emote = "PortraitEmoteFiredUp", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Um, {#Emph}đúng vậy! {#Prev}Mà... từ khi nào ta lại quan tâm đến việc người khác nghĩ gì về mình chứ? Đó không phải con người ta! Tất cả đều do cô đã làm hỏng hết mọi thứ!" }, }, ErisBossAboutProblems02 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "ErisBossAboutProblems01", "NemesisGift06", "ErisGift06" } }, }, { Cue = "/VO/MelinoeField_4060", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", Text = "Cô chưa từng đến muộn trong những cuộc chiến giữa chúng ta — dù ta có đến đây nhanh thế nào, cô vẫn là người đến trước. Vậy mục tiêu của cô đơn giản chỉ là ta, hay thứ gì đó sâu xa hơn?" }, { Cue = "/VO/ErisField_0437", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Mục tiêu của ta là không bao giờ đặt ra mục tiêu cho cuộc đời mình! Chỉ là, ta nghĩ mình đang trải qua một giai đoạn nào đó thôi. Chắc hẳn sự cạnh tranh giữa cô và Nemesis đã ảnh hưởng đến ta." }, { Cue = "/VO/MelinoeField_4061", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", Text = "Vậy cô nghĩ chúng ta cạnh tranh nhau vì điều gì? Xem ai sẽ bị đẩy về Địa Ngục trước ư?" }, { Cue = "/VO/ErisField_0438", Emote = "PortraitEmoteFiredUp", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ta chưa từng nói là sẽ cạnh tranh với cưng cả. Và cô biết ta nhận ra điều gì sau những chuyện này không? Kỷ luật và hỗn loạn luôn song hành cùng nhau." }, }, ErisBossAboutProblems03 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "TextLinesRecord" }, HasAll = { "ErisBossAboutProblems02" } }, }, { Cue = "/VO/ErisField_0439", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Có lẽ việc ta xuất hiện đúng giờ cũng không tệ lắm. Cô luôn có thể tin tưởng vào Xung Đột mà! Nghe cũng hay nhỉ?" }, { Cue = "/VO/MelinoeField_4062", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", Text = "Nếu cô muốn được tin tưởng, thì không chỉ việc xuất hiện đúng lúc, mà còn phải tỏ ra hữu ích theo một cách nào đó. Mặc dù ta cho rằng điều đó có hơi quá sức đối với cô." }, { Cue = "/VO/ErisField_0440", -- Portrait = "Portrait_Eris_Unsure_01", Portrait = "Portrait_Eris_FiredUp_01", Emote = "PortraitEmoteFiredUp", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Cô khiến ta suýt nghi ngờ bản thân, chỉ vì một chút sự quan tâm của cô đấy! Nhưng đừng lo... ta sẽ tự mình giải quyết vấn đề đó theo cách của ta!" }, }, -- about other characters ErisBossAboutAres01 = { PlayOnce = true, GameStateRequirements = { { PathFalse = { "CurrentRun", "UseRecord", "AresUpgrade" } }, { Path = { "CurrentRun", "UseRecord" }, CountOf = { "ZeusUpgrade", "HeraUpgrade", "PoseidonUpgrade", "DemeterUpgrade", "HephaestusUpgrade", "AphroditeUpgrade", "HestiaUpgrade", "HermesUpgrade", }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/ErisField_0162", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Hầu hết những vị thần trên đỉnh Olympus đều dốc sức giúp đỡ cô, nhỉ? Hẳn cô đang tự hào lắm. Thường thì những vị thần, họ chẳng đồng thuận với nhau bất cứ chuyện gì." }, { Cue = "/VO/MelinoeField_3078", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Đúng là họ không đồng thuận. Nhưng khi cần thiết, họ có thể gạt bỏ sự bất đồng. Đó là điều mà cô nên học hỏi khi đối xử với chính người thân của mình." }, { Cue = "/VO/ErisField_0163", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Cô có biết ai mới thực sự là người hiểu mọi chuyện đang xảy ra trên đó không? Là Ares. Nếu ai đó có thể khiến gia đình đó đoàn kết lại, thì chính là thần chiến tranh. Ngay cả ta cũng ủng hộ lý tưởng của anh ta!" }, }, ErisBossAboutAres02 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutAres01" } }, { PathTrue = { "CurrentRun", "UseRecord", "AresUpgrade" } }, }, { Cue = "/VO/MelinoeField_3079", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Nếu cô đã ngưỡng mộ Ares đến vậy, thì chắc hẳn cô cũng đã biết anh ta đang giúp đỡ ta; ta đang nhận phước lành từ anh ta. Nhưng ta đoán, cô cũng sẽ không chịu nhường đường, đúng không?" }, { Cue = "/VO/ErisField_0164", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Cô đoán đúng rồi đấy! Và cứ cho là Ares đã bù đắp cho mọi khuyết điểm của cô, thì có lẽ là vì anh ta muốn cuộc chiến này kéo dài mãi mãi! Anh ta có thể giúp cô; còn ta giúp anh ta." }, }, ErisBossAboutAres03 = { PlayOnce = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutAres02" } }, { PathTrue = { "GameState", "RoomsEntered", "Q_Boss01" }, }, { PathTrue = { "CurrentRun", "UseRecord", "AresUpgrade" } }, }, { Cue = "/VO/ErisField_0350", Portrait = "Portrait_Eris_Unsure_01", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Ta không thể tin rằng Ares lại giúp cô thay vì ta. Ta đã cố tìm cách nói chuyện với anh ta, nghĩ rằng anh ta sẽ lắng nghe ta, nhưng Đỉnh Olympus lúc nào cũng sấm chớp mù mịt. Này, cô có thể...? Cô hiểu ý ta mà..." }, { Cue = "/VO/MelinoeField_3264", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Cô muốn ta cầu xin Thần Chiến Tranh giúp đỡ cô, để khiến việc hỗ trợ anh ta và gia đình của anh ta chống lại Typhon, đã khó nhằn, nay lại càng trở nên vô vọng ư?" }, { Cue = "/VO/ErisField_0351", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Thôi mỉa mai ta đi, Rắc Rối! Ta chỉ muốn nhờ cô giúp một chuyện thôi mà, vậy mà... cô lại xúc phạm ta. Thôi được rồi! Ta sẽ tự mình gây sự chú ý với Thần Chiến Tranh!" }, }, ErisBossAboutCirce01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "Hero", "TraitDictionary", "CirceEnlargeTrait" }, }, }, { Cue = "/VO/ErisField_0171", Portrait = "Portrait_Eris_FiredUp_01", Emote = "PortraitEmoteSurprise", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Whoa, Rắc Rối, trông cô to lớn thế! Ta cứ ngỡ cô và Nemmie có con với nhau ấy! Nghĩ lại thì, đó quả là điều kinh khủng nhất có thể tưởng tượng ra. Mà ta thì thường tưởng tượng nhiều thứ lắm rồi." }, { Cue = "/VO/MelinoeField_3084", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Vậy thì hãy tưởng tượng xem ta sẽ làm gì với cô trong hình dạng này, nhờ ơn Phù Thủy Circe. Nếu cô không phá phách như thế, thì có lẽ cũng học hỏi được vài điều từ bà ấy." }, { Cue = "/VO/ErisField_0172", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Học cách trở thành kẻ quái dị ư? Đó là sự khác biệt giữa ta và cô: Cô cần người khác dạy dỗ từng chút một, còn ta được sinh ra với bản năng thuần túy!" }, }, ErisBossAboutCirce02 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "Hero", "TraitDictionary", "CirceShrinkTrait" }, }, }, { Cue = "/VO/ErisField_0173", Portrait = "Portrait_Eris_FiredUp_01", Emote = "PortraitEmoteCheerful", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "{#Emph}Ah, hahaha{#Prev}, lúc này cưng trông thật nhỏ bé đấy! Dễ thương quá đi. Chắc mụ phù thủy Circe đã làm phép cho cô, phải không? Ta từng lượn quang hòn đảo nhỏ của bà ta, nơi bà ta thực hiện những thí nghiệm điên rồ đó." }, { Cue = "/VO/MelinoeField_3085", UsePlayerSource = true, Text = "Cô từng là học trò rất có tiềm năng, Eris... ngay cả bây giờ cô cũng dễ dàng nhận ra tác phẩm của một phù thủy lão luyện. Nhưng cô lại chối bỏ vai trò đó." }, { Cue = "/VO/ErisField_0174", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Vai trò của cô đã biến cô thành trò hề cho thiên hạ! Ta chỉ đang nói sự thật thôi. Mà dù chuyện gì xảy ra tiếp theo, thì cũng cảm ơn cô vì đã mua vui!" }, }, ErisBossAboutIcarus01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "UseRecord", "NPC_Icarus_01" }, }, }, { Cue = "/VO/ErisField_0356", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Cô biết tên nhóc Shade mảnh khảnh bay lượn, tên gì ấy nhỉ...? Ick, Icky... Icarus! Ta đã thấy hắn liếc nhìn, bay lượn xung quanh... bắt chước ta! Hắn lấy đâu ra đôi cánh đó vậy?" }, { Cue = "/VO/MelinoeField_3268", UsePlayerSource = true, Text = "Icarus chắc chắn không bắt chước cô. Nghe thì khó tin, nhưng hiện tại vẫn có người đang cố gắng làm những việc có ích... thay vì phá hoại kế hoạch của bọn ta." }, { Cue = "/VO/ErisField_0357", Portrait = "Portrait_Eris_FiredUp_01", Emote = "PortraitEmoteSurprise", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Cô gọi việc hắn làm là có ích ư? Pff, thôi đi! Hắn chỉ là tên nhãi nhép lập dị. Có khi hắn mê bọn Harpy rồi nên mới tìm cách làm thân với chúng... nhưng mà, ai thèm quan tâm chứ!" }, }, ErisBossAboutRavenFamiliar01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "EquippedFamiliar" }, IsAny = { "RavenFamiliar" }, }, }, { Cue = "/VO/ErisField_0358", PreLineAnim = "Enemy_Eris_Hub_Scoff", Emote = "PortraitEmoteAffection", Text = "Aww, nhìn kìa! Cô mang theo một con chim xấu xí ư? Đó là cách cô mơ ước đạt được đôi cánh như ta sao? Nhưng cô lại phải cuốc bộ đi khắp nơi. Chẳng trách cô lại cau có đến vậy!" }, { Cue = "/VO/MelinoeField_3269", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Ta không cau có. Ta đã đi thuyền hầu hết chặng đường đến đây, cảm ơn đã quan tâm! Rất nhiều thuyền là đằng khác! Và ta sẽ không để cô xúc phạm Raki trước mặt ta, hoặc trước mặt nó." }, { Cue = "/VO/ErisField_0359", Emote = "PortraitEmoteSurprise", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Thôi nào cưng. Con chim đó trắng bệch như sắp chết đến nơi rồi kìa! Nào, để ta giải thoát cho nó nhé. Và cả cô nữa." }, }, ErisBossAboutCharon01 = { PlayOnce = true, GameStateRequirements = { { Path = { "CurrentRun", "ResourcesSpent", "Money" }, Comparison = ">=", Value = 725, }, }, { Cue = "/VO/ErisField_0445", Portrait = "Portrait_Eris_Unsure_01", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Cuối cùng cũng mua sắm xong rồi sao, Rắc Rối? Có vẻ như Charon có rất nhiều hàng hóa trên con thuyền sang trọng đó nhỉ? Thế mà ông ta chẳng chịu bán cho ta bất kỳ thứ gì." }, { Cue = "/VO/MelinoeField_4065", UsePlayerSource = true, Text = "Ta e rằng ngài ấy sẽ không bao giờ làm vậy. Ngài Charon trung thành tuyệt đối với Địa Ngục. Còn cô thì không. Đơn giản vậy thôi, dù cô có phải em gái của ngài ấy đi chăng nữa." }, { Cue = "/VO/ErisField_0446", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Trung thành với Địa Ngục. Ít nhất thì ta cũng không phải kẻ nịnh hót! Nhưng nếu cô quý ông ta đến vậy, thì ta sẽ ban cho cô lý do để khóc lóc kể lể với ông ta." }, }, ErisBossAboutSelene01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "UseRecord", "SpellDrop" }, }, }, { Cue = "/VO/ErisField_0447", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Ánh trăng đang dẫn đường cho cô đêm nay nhỉ! Đáng tiếc là Selene không thể dùng cỗ xe ngựa để đưa cô lên thẳng đỉnh Olympus. Sao lại không thể nhỉ? Ta cứ tưởng bà ta là bạn của cô chứ!" }, { Cue = "/VO/MelinoeField_4066", UsePlayerSource = true, Text = "Có lẽ Selene cũng có sứ mệnh của riêng mình, dù chẳng biết giải thích thế nào cho cô hiểu. Hoặc cô có thể thay Selene đưa ta lên đỉnh Olympus được không?" }, { Cue = "/VO/ErisField_0448", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Xin phép từ chối. Đôi cánh này không thể nâng nổi cả hai chúng ta! Nhưng... ta có thứ này dành cho cô đây." }, }, ErisBossAboutPolyphemus01 = { PlayOnce = true, GameStateRequirements = { -- }, { Cue = "/VO/ErisField_0443", Portrait = "Portrait_Eris_Unsure_01", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Tên Cyclops ở bến cảng Ephyra bị gì vậy? Hắn suýt nữa đã ném đá trúng ta khi ta đang bay ngang qua đó vài đêm trước!" }, { Cue = "/VO/MelinoeField_4064", UsePlayerSource = true, Text = "Hắn là Polyphemus. Hắn bị mù, nên đừng nghĩ việc hắn ném đá là vì tư thù. Có lẽ hắn nhầm cô với ta thôi." }, { Cue = "/VO/ErisField_0444", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Oh, thật nhẹ nhõm làm sao! Ta đã trộm đàn cừu của hắn, đừng hỏi lý do vì sao, và bắt đầu lo sợ rằng hắn đã nhận ra. Ta thì có đồ ăn, còn cô thì hứng chịu cơn thịnh nộ của hắn!" }, }, ErisBossAboutPrometheus01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "RoomsEntered", "P_Boss01" }, Comparison = ">=", Value = 3, }, }, { Cue = "/VO/ErisField_0165", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Chờ đã, vậy Promethus là kẻ chỉ huy cuộc chiến ác liệt ở đây ư? Ta cứ ngỡ hắn đang bị con chim nào đó mổ chết, hết lần này đến lần khác chứ." }, { Cue = "/VO/MelinoeField_3080", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", Text = "Ta có thể làm chứng rằng hắn và con chim đó đã làm hòa. Thôi nào, Eris, đông cảm với ta một chút đi. Ta phải đối phó với lửa và lông vũ đấy. Và thêm một lần nữa ở Đỉnh Olympus." }, { Cue = "/VO/ErisField_0166", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Nghe cũng thuyết phục đấy... nhưng tiếc cho cưng là ta không có chút rung động nào. Vậy nên, chuẩn bị đi. Đón nhận phần lửa và lông vũ đầu tiên của cô đi." }, }, ErisBossAboutTyphon01 = { PlayOnce = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutPrometheus01" }, }, { PathTrue = { "GameState", "RoomsEntered", "Q_Boss01" }, }, }, { Cue = "/VO/ErisField_0167", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Vậy nếu cô vượt qua ta lần nữa, thì tiếp theo sẽ là gì, Rắc Rối? Ta chưa từng thấy ai cố chấp đến vậy chỉ để gặp người thân. Không giống như cô, hầu hết bọn ta đều cố gắng tránh xa gia đình mình!" }, { Cue = "/VO/MelinoeField_3081", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Nếu cô chưa biết thì phía sau đám mây âm u đang bao phủ Olympus là nơi mà Typhon đang ẩn nấp. Ta khá ngạc nhiên là cô chưa tự mình đến gặp hắn! Dù sao thì Prometheus mới là kẻ tiếp theo, sau đó mới đến Typhon. Còn hiện tại là cô." }, { Cue = "/VO/ErisField_0168", Emote = "PortraitEmoteCheerful", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ý cưng là cưng đến đây chỉ để gây sự thôi, phải không? Ta cảm nhận được giữa chúng ta có điểm chung nào đó, nhưng không ngờ lại giống nhau đến thế! Đến đây nào, bắt đầu thôi." }, }, ErisBossAboutTyphon02 = { PlayOnce = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutTyphon01" }, }, { PathTrue = { "GameState", "RoomsEntered", "Q_Boss01" }, }, }, { Cue = "/VO/MelinoeField_3265", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Cô thà để Typhon tàn phá Olympus, chứ thực sự không muốn tránh đường cho ta ư, Eris? Mà nếu đến mức đó thật thì cuộc chiến này cũng sẽ kết thúc." }, { Cue = "/VO/ErisField_0352", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Chắc chắn là vậy rồi! Nhưng rồi mọi thứ sẽ trở nên hỗn loạn ngoài tầm kiểm soát, và... ai mà biết được Typhon sẽ làm gì tiếp theo? Nghe hấp dẫn nhỉ!" }, }, ErisBossAboutTyphon03 = { PlayOnce = true, GameStateRequirements = { { PathFalse = { "GameState", "TyphonDefeatedWithStormStop" }, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutTyphon01" }, }, { PathTrue = { "PrevRun", "Cleared" }, }, { Path = { "PrevRun", "RoomsEntered" }, HasAny = { "Q_Boss01", "Q_Boss02" }, }, { PathFalse = { "PrevRun", "UseRecord", "NPC_Eris_01" }, }, }, { Cue = "/VO/ErisField_0353", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Chuyện gì đã xảy ra trên Đỉnh Olympus đêm qua vậy? Trông có vẻ như cơn bão đã tan đi một chút. Suýt nữa thì ta ghé qua xem thử, nhưng mà... ta không thích lạnh!" }, { Cue = "/VO/MelinoeField_3266", UsePlayerSource = true, Text = "Cô muốn biết ư? Sau khi vượt qua cô, ta leo lên đỉnh núi và đánh bại Quái Vật Thủy Tổ, Typhon, khiến hắn rơi xuống đất." }, { Cue = "/VO/ErisField_0354", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Emote = "PortraitEmoteSurprise", Text = "Thật ư? Whoa, chắc hẳn cô mạnh lắm, hoặc Typhon quá yếu! Mà cô đã quay lại thì chắc hẳn mọi chuyện chẳng thu lại được gì!" }, }, ErisBossAboutTyphonDeath01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TyphonDefeatedWithStormStop" }, }, }, { Cue = "/VO/ErisField_0441", Portrait = "Portrait_Eris_Unsure_01", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Lâu rồi không thấy cưng đến đây đấy. Mà Typhon đâu rồi nhỉ? Chẳng thấy bóng dáng đâu cả!" }, { Cue = "/VO/MelinoeField_4063", UsePlayerSource = true, Text = "Typhon đã rời bỏ thực tại mà chúng ta từng biết. Xin lỗi nhé, Eris. Ta đoán là cô còn chưa kịp giới thiệu bản thân với hắn, nhỉ?" }, { Cue = "/VO/ErisField_0442", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Emote = "PortraitEmoteFiredUp", Text = "Không, ta chưa gặp hắn. Nhưng nếu hắn dễ dàng bị tống khứ như vậy thì càng tốt chứ sao! Mà cô lên đỉnh Olympus làm gì vậy? Đừng nói với ta là dự tiệc nhé, vì ta có được mời đâu!" }, }, ErisBossAboutHarpies01 = { PlayOnce = true, GameStateRequirements = { { Path = { "CurrentRun", "EnemyKills" }, HasAny = { "HarpyCutter", "HarpyCutter_Elite" } }, }, { Cue = "/VO/ErisField_0372", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Ở đây có khá nhiều bọn Harpy, mặc dù chúng chỉ là bọn dễ bắt nạt. Chúng biết ai là kẻ đứng đầu và tôn thờ ta như nữ thần!" }, { Cue = "/VO/MelinoeField_3276", UsePlayerSource = true, Text = "Bởi vì cô vốn là nữ thần, Eris. Còn bọn Harpy vẫn chưa nhận ra thần khí của ta..." }, { Cue = "/VO/ErisField_0373", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Có lẽ bọn chúng không thích cô vì cô không có cánh chăng? Tuy nhiên, trong trường hợp của cô, có thể là do nhiều nguyên nhân khác..." }, }, -- other reactions ErisBossLowHealth01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "RoomsEntered", "O_PostBoss01" }, }, { FunctionName = "RequiredHealthFraction", FunctionArgs = { Comparison = "<=", Value = 0.33, }, }, { Path = { "GameState", "ShrineUpgrades", "HealingReductionShrineUpgrade" }, Comparison = "<", Value = 3, }, NamedRequirementsFalse = { "StandardPackageBountyActive" }, }, { Cue = "/VO/ErisField_0370", PreLineAnim = "Enemy_Eris_Hub_Scoff", Emote = "PortraitEmoteFiredUp", Text = "{#Emph}Pff. {#Prev}Cô mất khá nhiều thời gian để đến đây, để rồi lại xuất hiện trong tình trạng gần như sắp chết đến nơi, chẳng khác gì bọn thủy thủ đoàn xác sống trên những con thuyền đang trôi về phía này!" }, { Cue = "/VO/MelinoeField_3275", UsePlayerSource = true, Text = "Thứ lỗi vì sự bất tiện này, Eris. May mắn là gần đây có đài phun nước mát lạnh, sẽ giúp chữa lành vết thương của ta rất nhiều." }, { Cue = "/VO/ErisField_0371", Portrait = "Portrait_Eris_FiredUp_01", Emote = "PortraitEmoteSurprise", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "{#Emph}Oh{#Prev}, vậy thì khá gần rồi đấy. Nếu liều thử một phen, biết đâu cô sẽ thoát. Lối ra ở ngay phía sau ta này..." }, }, ErisBossLowHealth02 = { PlayOnce = true, GameStateRequirements = { { FunctionName = "RequiredHealthFraction", FunctionArgs = { Comparison = "<=", Value = 0.33, }, }, }, { Cue = "/VO/ErisField_0374", Emote = "PortraitEmoteDepressed", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "{#Emph}Aww{#Prev}, có vẻ như bọn thủy thủ kia đã khiến cô bầm dập khá nhiều trên đường đến đây! Nhưng đừng lo! Ta sẽ sớm chấm dứt nỗi đau này cho cưng!" }, }, ErisBossCloseMatch01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = "<=", Value = 0.15, }, { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = ">", Value = 0, }, }, { Cue = "/VO/ErisField_0379", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Lần trước cưng suýt đánh bại ta đấy! Ta cảm thấy đôi cánh nặng trĩu... cảm giác như Địa Ngục đang kéo ta về vậy. Nhưng giờ thì ta hoàn toàn ổn!" }, { Cue = "/VO/MelinoeField_3280", UsePlayerSource = true, Text = "Tạm thời thôi. Cô sẽ sớm cảm thấy Địa Ngục đang kéo cô trở về lần nữa. Và cô sẽ phải đi, dù có muốn hay không." }, { Cue = "/VO/ErisField_0380", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "{#Emph}Ooh{#Prev}, ta rất thích những lời đe dọa đó! Được rồi, để xem ai sẽ về nhà trước nhé? Biết đâu lại giống như lần trước thì sao..." }, }, ErisBossAboutSuit01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "CurrentRun", "Hero", "Weapons", "WeaponSuit" }, }, { PathFalse = { "CurrentRun", "Hero", "TraitDictionary", "SuitMarkCritAspect" }, }, }, { Cue = "/VO/ErisField_0158", PreLineAnim = "Enemy_Eris_Hub_Scoff", Emote = "PortraitEmoteSurprise", Text = "Này, cưng đang mặc cái quái gì thế? Cô nên thay đổi phong cách đi, chứ như thế này thì hơi màu mè quá đấy." }, { Cue = "/VO/MelinoeField_3077", UsePlayerSource = true, Text = "Ồ, chắc cô là đang nói đến Hắc Chiến Giáp. Cô nói đúng, nó không phải sở thích thời trang của ta, nhưng cũng không phải để khoe khoang. Cô sẽ hiểu ngay thôi." }, { Cue = "/VO/ErisField_0159", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Chờ đã, ta nhớ ra rồi, nó là Hắc Chiến Giáp! Hóa ra nó trông như thế này ư? Thế mà ta cứ tưởng Khẩu Súng Adamant của đã lố bịch lắm rồi! Hóa ra Nyx có gu thẩm mỹ tệ thật." }, }, ErisBossAboutNyxAspect01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutSuit01" } }, { PathTrue = { "CurrentRun", "Hero", "TraitDictionary", "SuitMarkCritAspect" }, }, }, { Cue = "/VO/ErisField_0381", PreLineAnim = "Enemy_Eris_Hub_Scoff", Emote = "PortraitEmoteDepressed", Text = "{#Emph}Eugh{#Prev}, trông cô giống Nyx thật! Vẫn là bộ Hắc Chiến Giáp đó phải không? Có vẻ như cô đã làm gì đó với nó..." }, { Cue = "/VO/MelinoeField_3315", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Đây chính là Ý Chí Xinth của Nyx, người đã cho rằng ta xứng đáng kế thừa nó. Có lẽ là để ta thay mẹ cô dạy cô một bài học." }, { Cue = "/VO/ErisField_0382", Portrait = "Portrait_Eris_FiredUp_01", Emote = "PortraitEmoteSurprise", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Dạy dỗ ta ư? Cưng à, ta từng cãi nhau với Nyx suốt đấy, nhưng chưa từng đối đầu như thế này. Thế này tốt hơn nhiều! Đến đây nào, Mẹ, hãy cho con thấy hết khả năng của người đi." }, }, ErisBossAboutGoldenApples01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = "<=", Value = 0, }, { Path = { "GameState", "LifetimeResourcesGained", "MixerOBoss" }, Comparison = ">=", Value = 1, }, }, { Cue = "/VO/ErisField_0146", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Trả lại Quả Táo Vàng mà lần trước cô đã cướp của ta, và có thể ta sẽ để cô đi. Ý cô thế nào?" }, { Cue = "/VO/MelinoeField_1924", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Ý cô là Quả Táo Vàng mà rất có khả năng cô mới là kẻ trộm nó ư? Ta nghe nói chúng chỉ mọc trong một khu vườn duy nhất, và ta khó mà tin được một nơi như vậy lại cho phép cô vào đấy." }, { Cue = "/VO/ErisField_0147", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Cuộc sống sẽ trở nên thú vị hơn nhiều khi cô nhận ra rằng không phải lúc chỉ đến lúc nhận được lời mời thì mới xuất hiện. Thôi được! Cứ giữ lấy Quả Táo đi. Ta còn nhiều thứ khác lắm..." }, }, ErisBossAboutKeepsake01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "LastAwardTrait" }, IsAny = { "EscalatingKeepsake" }, }, }, { Cue = "/VO/ErisField_0175", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Ta nghe tiếng ù trong tai, hay là tiếng chuông nhỉ? Ồ, cô mang theo Kỷ Vật của ta phải không? Cô nghĩ thứ đó sẽ giúp ích cho cô ở đây ư?" }, { Cue = "/VO/MelinoeField_3086", UsePlayerSource = true, Text = "Nếu nó khiến cô cảm thấy khó chịu và bối rối, thì nó đã giúp ích cho ta rồi. Ta thừa biết cô chẳng đơn giản tặng một món quà mà không có âm mưu nào." }, { Cue = "/VO/ErisField_0176", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Còn cô chỉ biết tặng quà bằng những suy nghĩ thuần khiết trong cái đầu rỗng tuếch đó, thứ dễ bị ngắm bắn nhất. Thôi nào! Chẳng ai làm thế cả, kể cả cưng." }, }, ErisBossAboutNemesisKeepsake01 = { PlayOnce = true, GameStateRequirements = { { Path = { "CurrentRun", "Hero", "TraitDictionary" }, HasAny = { "DeathVengeanceKeepsake" }, }, }, { Cue = "/VO/ErisField_0451", Emote = "PortraitEmoteSurprise", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Ôi không, cô mang theo Con Mắt Tà Ác của Nemesis ư? Chứng tỏ cô ta coi trọng sự công bằng đến mức nào, bắt cô dùng thứ đó chỉ để trả thù ta!" }, { Cue = "/VO/MelinoeField_4068", UsePlayerSource = true, Text = "Chính ta mới là người quyết định mang theo Con Mắt, chứ không phải Nemesis. Mặc dù cô ấy là Hiện Thân Báo Ứng, nên ta nghĩ, nếu cô ấy biết chuyện này, cô ấy sẽ chẳng phản đối." }, { Cue = "/VO/ErisField_0452", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Chẳng cần là thiên tài cũng biết được điều đó, cưng à. Ta là em gái bé bỏng của cô ta mà! Con gái út của Nyx, nhỏ bé và dễ bị chèn ép nhất. Nhưng ta luôn vùng lên... hoặc tấn công trước!" }, }, ErisBossAboutMorosKeepsake01 = { PlayOnce = true, GameStateRequirements = { { Path = { "CurrentRun", "Hero", "TraitDictionary" }, HasAny = { "BlockDeathKeepsake" }, }, }, { Cue = "/VO/ErisField_0453", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Cô hẳn phải đặc biệt lắm mới được Moros tặng cho chiến Ghim lấp lánh đó! Có lẽ anh ta nghĩ rằng cô sẽ không sống nổi nếu thiếu anh ta đấy! Trông cô đúng là kiểu người cần được giúp đỡ đấy, cưng à." }, { Cue = "/VO/MelinoeField_4069", UsePlayerSource = true, Text = "Và ý cô muốn nói là gì? Để ta nói cho cô biết, Ngài Moros tặng ta món kỷ vật này chỉ là phép lịch sự tối thiểu, không hơn không kém." }, { Cue = "/VO/ErisField_0454", Emote = "PortraitEmoteSparkly", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ồ thế à. Hoặc cả hai đều ngu ngốc như nhau! Giờ thì để xem, Moros có đến cứu cô không nhé..." }, }, ErisBossAboutFishing01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisFishing01" }, }, { PathTrue = { "GameState", "WeaponsUnlocked", "ToolFishingRod" }, }, { Path = { "GameState", "FishingSuccessesManual" }, Comparison = ">=", Value = 4, }, { PathNotEmpty = { "CurrentRun", "CurrentRoom", "FishingPointChoices" }, }, { Path = { "GameState", "EquippedFamiliar" }, IsNone = { "CatFamiliar" }, }, }, { Cue = "/VO/ErisField_0449", PreLineAnim = "Enemy_Eris_Hub_Scoff", Emote = "PortraitEmoteSurprise", Text = "Có một điều mà ta muốn nói về nơi này, câu cá ở đây dễ hơn nhiều so với ở Crossroads. Ta suýt thì thương cảm cho cô, khi phải dùng cần câu như người phàm đói khát." }, { Cue = "/VO/MelinoeField_4067", UsePlayerSource = true, Text = "Ta cứ tưởng cô thích câu cá chứ. Nếu giờ cô đổi ý thì ít nhất cũng nên tôn trọng cách thức truyền thống." }, { Cue = "/VO/ErisField_0450", Emote = "PortraitEmoteFiredUp", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ồ, ta đoán là ta không cần bày tỏ sự tôn trọng kiểu đó! Trong lúc chờ đợi cô, ta đã định bắn con cá bơi gần bờ, thì cô bất ngờ xuất hiện, và giờ cô sẽ là người đầu tiên thử cảm giác đó!" }, }, ErisBossAboutDeath01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "EnemyKills", "Eris" }, Comparison = ">=", Value = 8, }, { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = "<=", Value = 0, }, }, { Cue = "/VO/MelinoeField_3277", UsePlayerSource = true, Text = "Cảm giác thế nào khi bị lôi về Địa Ngục sau từng ấy lần? Ít nhất thì cô cũng biết rõ nơi mình thuộc về rồi đấy." }, { Cue = "/VO/ErisField_0375", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Cả cưng và ta đều vậy. Cô mới là người không nên ở đây! Còn chuyện kéo xuống thì cũng chẳng sao cả. Ta chỉ cần bay lên thôi!" }, { Cue = "/VO/MelinoeField_3278", UsePlayerSource = true, Portrait = "Portrait_Mel_Hesitant_01", Text = "Nhưng khi cô suy yếu, nhưng linh hồn người chết sẽ tóm lấy cô lần nữa. Rất nhiều người trong số họ có lẽ đang chờ đợi để trả thù những gì mà cô đã gây ra..." }, { Cue = "/VO/ErisField_0376", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Vậy thì cứ để bọn chúng thoải mái xâu xé, vì ta cũng chẳng thiệt thòi gì!" }, }, ErisBossAboutUnderworld01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisGift02" }, }, { SumPrevRuns = 4, IgnoreCurrentRun = true, Path = { "RoomsEntered" }, TableValuesToCount = { "O_Boss01", "O_Boss02" }, Comparison = "<=", Value = 0, }, }, { Cue = "/VO/ErisField_0377", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Ta cứ tưởng cô sẽ không đến nữa chứ! Bỏ mặt ta chờ thêm một đêm nữa, ý ta là... sao lại không nhỉ? Cô lúc nào cũng vô tâm cả!" }, { Cue = "/VO/MelinoeField_3279", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Ý cô là trong lúc ta đang mắc kẹt ở Địa Ngục, thì cô đang chờ ta ở đây hết đêm này đến đêm khác ư? Và hà cớ gì ta phải báo trước hành trình cho cô biết?" }, { Cue = "/VO/ErisField_0378", Emote = "PortraitEmoteFiredUp", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Đấy là việc mà một người bạn thực sự sẽ làm, mà có lẽ không phải cô rồi! Đáng lẽ cô không nên quay lại. Mà ta quan tâm làm gì nhỉ?" }, }, ErisBossAboutShrine01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "ActiveShrineBounty" }, IsAny = { "BountyTorchHeat1OBoss", "BountyAxeHeat2OBoss", "BountyDaggerHeat4OBoss", "BountyStaffHeat8OBoss", "BountySuitHeat12OBoss", "BountyLobHeat16OBoss", "BountyShrineStaffOBoss", "BountyShrineDaggerOBoss", "BountyShrineTorchOBoss", "BountyShrineAxeOBoss", "BountyShrineLobOBoss", "BountyShrineSuitOBoss", }, }, { Path = { "GameState", "EnemyKills", "Eris" }, Comparison = ">", Value = 2, }, -- back compat { PathFalse = { "GameState", "TextLinesRecord", "ErisAboutShrine01" } }, --[[ { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "PolyphemusAboutPackagedBounties01" }, Min = 3 }, }, ]]-- }, { Cue = "/VO/ErisField_0360", PreLineAnim = "Enemy_Eris_Hub_Flattered", Portrait = "Portrait_Eris_Unsure_01", Emote = "PortraitEmoteDepressed", Text = "Đêm nay trông u ám quá nhỉ? Ngay cả bọn thủy thủ đã chết ở Rãnh Nứt cũng trông có vẻ hoảng sợ. Có lẽ có chuyện gì đó đang xảy ra chăng...?" }, { Cue = "/VO/MelinoeField_3270", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Đó là do Nỗi Sợ đang bao trùm. Cô đã chống lại di nguyện của Màn Đêm quá nhiều lần, Eris. Lần này, ta không chỉ đến vì Olympus, mà còn vì cô." }, { Cue = "/VO/ErisField_0361", Portrait = "Portrait_Eris_FiredUp_01", Emote = "PortraitEmoteSurprise", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ý cô là Nyx đang ra lệnh cho cô làm việc này ư? Pff, phải rồi! Bà ta chưa từng quan tâm đến ta, và bây giờ cũng vậy." }, }, ErisBossAboutShrine02 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "ActiveShrineBounty" }, IsAny = { "BountyTorchHeat1OBoss", "BountyAxeHeat2OBoss", "BountyDaggerHeat4OBoss", "BountyStaffHeat8OBoss", "BountySuitHeat12OBoss", "BountyLobHeat16OBoss", "BountyShrineStaffOBoss", "BountyShrineDaggerOBoss", "BountyShrineTorchOBoss", "BountyShrineAxeOBoss", "BountyShrineLobOBoss", "BountyShrineSuitOBoss", }, }, -- back compat { PathFalse = { "GameState", "TextLinesRecord", "ErisAboutShrine02" } }, --[[ { FunctionName = "RequireRunsSinceTextLines", FunctionArgs = { TextLines = { "PolyphemusAboutPackagedBounties01" }, Min = 3 }, }, ]]-- }, { Cue = "/VO/ErisField_0362", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Lần trước cô đã bảo rằng Nỗi Sợ đang bao trùm. Có lẽ cô đang thực hiện những mưu đồ bẩn thỉu của Nyx! Nếu đúng là vậy thì, cô ngu ngốc hơn ta tưởng nhiều..." }, { Cue = "/VO/MelinoeField_3271", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Cô từng được trao cơ hội để trở thành một phần của Hội Vô Hình. Nhưng cô đã chọn quay lưng, không chỉ với bọn ta, mà với cả mẹ của ngươi và Địa Ngục. Hành động đó sẽ phải trả giá." }, { Cue = "/VO/ErisField_0363", Emote = "PortraitEmoteFiredUp", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Và cô đến đây để đòi nợ à? Rất tiếc là ta không có gì cho cô cả. Trừ khi cô thích những mảnh kim loại nhỏ bắn ra từ khẩu Rail của ta thì ta rất sẵn lòng." }, }, ErisBossAboutShrine03 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "SpentShrinePointsCache" }, Comparison = ">=", Value = 14, }, -- back compat { PathFalse = { "GameState", "TextLinesRecord", "ErisAboutShrine03" } }, { Path = { "CurrentRun", "TextLinesRecord" }, HasNone = GameData.AboutShrineEvents, }, }, { Cue = "/VO/ErisField_0368", Emote = "PortraitEmoteFiredUp", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Phù, quả là một đêm tuyệt vời cho ta! Ngoài kia như một bữa tiệc điên loạn vậy, mọi thứ đều bùng nổ và hỗn loạn hơn bao giờ hết. Ta chẳng cần biết chuyện gì đang xảy ra, ta chỉ cảm thấy phấn khích thôi." }, { Cue = "/VO/MelinoeField_3274", UsePlayerSource = true, Text = "Cô chưa từng quan tâm đến Lời Thề Vô Hình, nhưng vẫn hưởng lợi rất nhiều từ nó. Có lẽ mẹ của cô, Nyx, cũng không hoàn toàn vô tâm với cô." }, { Cue = "/VO/ErisField_0369", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ý cô là những đêm hỗn loạn như thế này là một lời xin lỗi muộn màng vì sự thờ ơ của Nyx ư...? Cũng gọi là có chút cố gắng đấy!" }, }, ErisAboutPackagedBounties01 = { PlayOnce = true, GameStateRequirements = { NamedRequirements = { "StandardPackageBountyActive" }, }, { Cue = "/VO/ErisField_0364", PreLineAnim = "Enemy_Eris_Hub_Flattered", PreLineThreadedFunctionName = "PlayEmoteAnimFromSource", PreLineThreadedFunctionArgs = { Emote = "PortraitEmoteSurprise", Portrait = "Portrait_Eris_Unsure_01", WaitTime = 4.35 }, Text = "{#Emph}Ah{#Prev}, suýt nữa thì cô đến sớm hơn ta rồi, Rắc Rối! Cô đến sớm hơn kế hoạch nhiều! Mặc dù... ừm... ta đang nói gì thế này? Kế hoạch á?! Chuyện gì đang xảy ra với ta vậy...?" }, { Cue = "/VO/MelinoeField_3272", UsePlayerSource = true, Text = "Nếu cô cảm thấy đêm nay không bình thường, thì có lẽ là do Đấng Chaos Toàn Năng đang tác động lên thực tại mà chúng ta hằng biết." }, { Cue = "/VO/ErisField_0365", Emote = "PortraitEmoteSparkly", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ồ, thế à, nghe cũng hợp lý! Chaos đã tạo ra mọi thứ. Nhưng cô biết không, ngay lúc này chúng ta cũng có thể tạo ra một chút hỗn loạn đấy." }, }, ErisAboutPackagedBounties02 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisAboutPackagedBounties01" }, }, NamedRequirements = { "StandardPackageBountyActive" }, }, { Cue = "/VO/ErisField_0366", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Cô vượt qua Ephyra nhanh thật đấy, Rắc Rối. Chắc hẳn Chaos lại tác động lên thực tại rồi, phải không...?" }, { Cue = "/VO/MelinoeField_3273", UsePlayerSource = true, Text = "Vấn đề là thế này, Eris... Ta có thể thẳng thắn thừa nhận với cô, nhưng cô luôn có cái nhìn tiêu cực nhất về bất cứ điều gì ta nói. Vậy thì câu trả lời của ta có như thế nào cũng đâu quan trọng!" }, { Cue = "/VO/ErisField_0367", Emote = "PortraitEmoteSparkly", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Đấy, đó chính xác là những gì ta cảm nhận được - có quan trọng gì đâu. Có lẽ chỉ quan trọng với Chaos thôi nhỉ? Muốn biết thì phải thử thôi." }, }, ErisBossAboutAltFight01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/ErisField_0386", PreLineAnim = "Enemy_Eris_Hub_Scoff", -- Portrait = "Portrait_Eris_Unsure_01", -- Portrait = "Portrait_Eris_Default_02", -- Portrait = "Portrait_Eris_FiredUp_02", -- Portrait = "Portrait_Eris_Unsure_02", Text = "Cưng thấy ta có gì đó thay đổi không? Tất nhiên là không rồi! Ta thì chẳng thay đổi chút nào, nhưng Khẩu Adamant thì có đấy! Ngắm nhìn nó mà xem!" }, { Cue = "/VO/MelinoeField_3487", UsePlayerSource = true, Portrait = "Portrait_Mel_Intense_01", Text = "Chắc hẳn nó là Khía Cạnh khác của Rail. Có thể cô đã làm gì đó khiến nó thay đổi hình dạng... hoặc cũng không ngoại trừ khả năng là do ta." }, { Cue = "/VO/ErisField_0387", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Lại nữa rồi, lúc nào cô cũng nhận hết công trạng về mình! Nhưng Rail không nghe theo lệnh của cô, nó phục tùng ta. Và ta cũng đã khám phá hết khả năng mới của nó rồi!" }, EndVoiceLines = { PreLineWait = 1.0, ObjectType = "Eris", TriggerCooldowns = { "ErisSpokeRecently" }, { Cue = "/VO/ErisField_0388", Text = "Hãy xem đây...!" }, }, }, ErisBossAboutAltFight02 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/ErisField_0389", -- Portrait = "Portrait_Eris_Unsure_01", -- Portrait = "Portrait_Eris_Default_02", -- Portrait = "Portrait_Eris_FiredUp_02", -- Portrait = "Portrait_Eris_Unsure_02", Text = "Vừa này, Rail lại chuyển sang hình dạng khác. Cứ như thể nó biết cô đang đến vậy! Ta cũng biết cô đang đến, vì cô khá dễ phát hiện từ phía trên." }, { Cue = "/VO/MelinoeField_3488", UsePlayerSource = true, Text = "Cô có biết Khía Cạnh đó thuộc về ai không? Hay tại sao vũ khí cổ xưa do Định Mệnh ban cho cô lại có thể tự ý biến đổi hình dạng bằng ma thuật mà không cần đến sự tác động của cô?" }, { Cue = "/VO/ErisField_0390", Emote = "PortraitEmoteFiredUp", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Không! Cô nói như thể ta phải run sợ thứ này, trong khi chính cô mới là kẻ đang dè chừng khi họng súng chĩa về hướng cô." }, }, ErisBossAboutAltFight03 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = "<", Value = 2, }, { PathTrue = { "GameState", "LastBossDifficultyRecord", "Eris" }, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutAltFight01" }, }, }, { Cue = "/VO/ErisField_0391", Portrait = "Portrait_Eris_Unsure_01", -- Portrait = "Portrait_Eris_Default_02", -- Portrait = "Portrait_Eris_FiredUp_02", -- Portrait = "Portrait_Eris_Unsure_02", Emote = "PortraitEmoteFiredUp", Text = "Chết tiệt, ta cứ chờ mãi khẩu Rail chuyển sang hình dạng kia, nhưng nó chẳng thay đổi một chút nào! Vẫn là thứ cũ kỹ vô dụng. Đến cả việc nạp đạn cũng mất khá nhiều thời gian..." }, { Cue = "/VO/MelinoeField_3489", UsePlayerSource = true, Text = "Cứ tiếp tục nói xấu về nó như thế thì nó sẽ càng ít nghe lệnh từ cô thôi! Ta khá ngạc nhiên khi cô có Ý Chí của riêng mình đấy." }, { Cue = "/VO/ErisField_0392", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Emote = "PortraitEmoteCheerful", Text = "Đúng là ngạc nhiên nhỉ, Rắc Rối! Dù sao thì ta vẫn thích hình dạng này hơn. Giờ hãy thử xem nó còn nghe lệnh ta không nhé!" }, }, ErisBossAboutAltFight04 = { PlayOnce = true, GameStateRequirements = { { PathFalse = { "GameState", "LastBossDifficultyRecord", "Eris" }, }, { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, { PathTrue = { "GameState", "TextLinesRecord", "ErisBossAboutAltFight03" }, }, }, { Cue = "/VO/ErisField_0393", Portrait = "Portrait_Eris_FiredUp_01", -- Portrait = "Portrait_Eris_Default_02", -- Portrait = "Portrait_Eris_FiredUp_02", -- Portrait = "Portrait_Eris_Unsure_02", Emote = "PortraitEmoteFiredUp", Text = "Khẩu Rail lại thay đổi hình dạng lần nữa! Mà khoan đã, biết đâu đây mới là Ý Chí thực sự thuộc về ta, còn hình dạng cũ mới thuộc về ai kia? Hình dạng này còn có gương mặt giống ta, thậm chí có cả đôi cánh nữa!" }, { Cue = "/VO/MelinoeField_3490", UsePlayerSource = true, Text = "Nghe này, lý do duy nhất mà cô có thể sử dụng Ý Chí này là nhờ Lời Thề Vô Hình. Cô không cảm nhận được Nỗi Sợ đang lan tỏa trong đêm ư?" }, { Cue = "/VO/ErisField_0394", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Điều duy nhất ta cảm nhận được lúc này, là khao khát muốn biến cưng thành những mảnh vụn nhỏ cháy xém bằng thứ này. Cô nghĩ ta quan tâm đến mấy Lời Thề đó ư? Ta là Nyx chắc?!" }, }, ErisBossAboutAltFight05 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/ErisField_0395", Text = "Cô chọn nhầm bãi biển rồi, Rắc Rối. Thấy cái xác to đùng, bốc mùi đằng kia không? Kết cục của cô cũng sẽ giống y như vậy." }, { Cue = "/VO/MelinoeField_3491", UsePlayerSource = true, Text = "Ta không to xác như thứ đó, Eris. Cũng không phải sinh vật biển, và cô cũng không thể nào giết được ta. Nhưng cũng phải nói thật, bãi biển này thật kinh khủng, và cái xác kia lại càng làm tồi tệ hơn." }, { Cue = "/VO/ErisField_0396", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Cô thì biết gì về bãi biển và xác chết chứ? Ta có hình dạng đặc biệt của Rail ở đây, cùng cảnh vật, âm thanh và mùi muối biển. Vậy thì ta đâu cần cô ở đây nữa?!" }, }, ErisBossAboutRelationship02 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisAboutRelationship01" }, }, { PathFalse = { "GameState", "TextLinesRecord", "ErisAboutRelationship02"} }, }, { Cue = "/VO/Melinoe_4367", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Trong lần nói chuyện trước, cô nói rằng bản chất của cô là không thể thay đổi. Tại sao cô lại nghĩ vậy?" }, { Cue = "/VO/Eris_0260", Portrait = "Portrait_Eris_Unsure_01", PreLineAnim = "Enemy_Eris_Hub_Flattered", Text = "Cảm ơn vì đã quan tâm, đó chỉ là một khoảng khắc yếu lòng thôi, còn cô lại làm quá vấn đề. Ai mà chẳng có một chút tổn thương chứ??" }, { Cue = "/VO/Melinoe_4368", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Có lẽ vậy. Nhưng chúng ta có thể cải thiện bản thân nhờ nỗ lực và kỷ luật. Hoặc nếu không, chúng ta chỉ mãi cản đường nhau." }, { Cue = "/VO/Eris_0261", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Vấn đề là, ta không muốn làm khó bản thân. Không phải vì chuyện này, cũng không phải vì cô. Ta muốn mọi thứ dễ dàng, còn cô lại muốn mọi thứ khó khăn hơn. Ít nhất thì bây giờ chúng ta thực sự hiểu nhau rồi đấy!" }, }, ErisBossAboutBecomingCloser01 = { PlayOnce = true, GameStateRequirements = { { Path = { "GameState", "TextLinesChoiceRecord", "ErisBecomingCloser01", }, IsAny = { "Choice_ErisAccept" }, }, }, { Cue = "/VO/ErisField_0383", PreLineAnim = "Enemy_Eris_Hub_Flattered", Emote = "PortraitEmoteCheerful", Text = "Quay lại với công việc thường ngày! Chẳng có gì khác ngoài việc bắn nát cô hết đêm này đến đêm khác, như thể mọi chuyện rất bình thường." }, { Cue = "/VO/MelinoeField_3527", UsePlayerSource = true, PreLineAnim = "MelTalkExplaining01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkExplaining01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Lẽ ra ta không nên ngạc nhiên khi biết cô sắp giao chiến với ta như mọi khi, Eris, nhưng... ta vẫn hy vọng cô sẽ nhìn nhận ta theo một cách khác. Có vẻ hơi thừa nhỉ?" }, { Cue = "/VO/ErisField_0384", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Quá thừa là đằng khác! Và đừng vội tự mãn. Chẳng phải chúng ta còn chưa từng tâm sự với nhau lần nào ư? Mà ta cũng không chắc là có chuyện gì để chia sẻ với cô. Vậy nên đừng mong ta sẽ tôn trọng cô." }, { Cue = "/VO/MelinoeField_3528", UsePlayerSource = true, PreLineAnim = "MelTalkPensive01", PreLineAnimTarget = "Hero", PostLineAnim = "MelTalkPensive01ReturnToIdle", PostLineAnimTarget = "Hero", Text = "Việc cô ngăn cản ta lên đỉnh Olympus thì đó có phải tôn trọng không?" }, { Cue = "/VO/ErisField_0385", Emote = "PortraitEmoteSurprise", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Cưng nói đúng đấy! Nhưng ta sẽ không dừng lại để suy ngẫm đâu. Chiến ngay thôi!" }, }, ErisBossPostTrueEnding01 = { PlayOnce = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisPostTrueEnding01" }, }, { PathTrue = { "GameState", "ReachedTrueEnding" }, }, }, { Cue = "/VO/MelinoeField_4070", UsePlayerSource = true, Text = "Giờ anh trai ta đã trở lại, nhưng cô vẫn không có ý định trả lại Khẩu Adamant, đúng không? Dù rõ ràng thứ đó vốn thuộc về anh ấy trước khi những chuyện này xảy ra." }, { Cue = "/VO/ErisField_0455", Emote = "PortraitEmoteSurprise", PreLineAnim = "Enemy_Eris_Hub_Scoff", Text = "Sao cưng lại nghĩ anh ta có quyền sở hữu nó hơn ta chứ? Anh ta còn chẳng thèm dùng nó trong hầu hết thời gian! Với lại, đối với anh ta, nó chỉ là một trong những món vũ khí khác thôi, nhưng đối với ta, nó là vũ khí duy nhất." }, { Cue = "/VO/MelinoeField_4071", UsePlayerSource = true, Text = "Nghe thật cảm động đấy! Ta tin chắc mẹ của cô sẽ lo liệu mọi chuyện ổn thỏa, nhất là khi bà ấy đã trở lại. Ta tự hỏi liệu bà ấy đã biết trước việc cô sẽ đoạt lại nó hay không?" }, { Cue = "/VO/ErisField_0456", Portrait = "Portrait_Eris_FiredUp_01", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, PreLineFunctionName = "StartBossRoomMusic", Text = "Ồ, bà ta biết chứ! Vì đây đâu phải lần đầu tiên của ta! Có lúc ta để vụt mất khỏi tay, và anh trai cô đã vớ được... nhưng ta luôn lấy lại những thứ thuộc về mình." }, }, -- Repeatable / other general cases ErisBossMiscStart01 = { { Cue = "/VO/ErisField_0005", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Đã khóa mục tiêu và sẵn sàng bắn, vậy nên, hãy di chuyển đi, Rắc Rối." }, }, ErisBossMiscStart02 = { { Cue = "/VO/ErisField_0006", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Không thể quay lại như trước được, bất kể cô có làm gì đi chăng nữa." }, }, ErisBossMiscStart03 = { { Cue = "/VO/ErisField_0007", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Cô sẵn sàng thể hiện hết sức ở đây chưa, Rắc Rối? Vì ta sẵn sàng rồi đấy." }, }, ErisBossMiscStart04 = { { Cue = "/VO/ErisField_0008", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ai cũng luôn muốn tạo ra sự khác biệt. Nhưng chẳng ai làm được." }, }, ErisBossMiscStart05 = { { Cue = "/VO/ErisField_0009", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Khi ta bắt đầu cảm thấy chán, thì Rắc Rối xuất hiện!" }, }, ErisBossMiscStart06 = { { Cue = "/VO/ErisField_0010", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Sẽ không có gì thay đổi! Ngoại trừ số lỗ đạn trên người cô." }, }, ErisBossMiscStart07 = { { Cue = "/VO/ErisField_0130", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Việc này là vì lợi ích của cô thôi, Rắc Rối! Cũng là của ta nữa." }, }, ErisBossMiscStart08 = { { Cue = "/VO/ErisField_0131", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Uh-uh-{#Emph}uh! {#Prev}Phòng trường hợp cô chưa biết thì, con đường lên đỉnh núi đã bị phong ấn rồi, cưng à." }, }, ErisBossMiscStart09 = { GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = "<", Value = 2, }, }, { Cue = "/VO/ErisField_0132", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Quay lại làm hiệp khác à? Rất tốt, vì ta còn hàng nghìn hiệp nữa cơ." }, }, ErisBossMiscStart10 = { { Cue = "/VO/ErisField_0133", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Nhìn chúng ta xem, việc này như một thói quen hằng ngày rồi đấy. Ta ghét lặp lại thói quen." }, }, ErisBossMiscStart11 = { { Cue = "/VO/ErisField_0134", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ta ghét phải đối xử với cưng thế này, nhưng... ô, ta đang đùa với ai thế nhỉ?" }, }, ErisBossMiscStart12 = { { Cue = "/VO/ErisField_0135", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Trông cô như bị lạc đường nhỉ, Rắc Rối. Để ta giúp cô tìm đường về nhà nhé." }, }, ErisBossMiscStart13 = { { Cue = "/VO/ErisField_0136", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Không cần lý do để bắn vào mặt cô. Ta chỉ đơn giản là thích làm vậy thôi!" }, }, ErisBossMiscStart14 = { { Cue = "/VO/ErisField_0137", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Vậy, cô đã sẵn sàng để bị tiễn về địa ngục chưa, Rắc Rối?" }, }, ErisBossMiscStart15 = { { Cue = "/VO/ErisField_0138", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Hy vọng cưng không bị say sóng. Vì cưng sắp hứng chịu chấn động đấy." }, }, ErisBossMiscStart16 = { GameStateRequirements = { { PathTrue = { "CurrentRun", "Hero", "Weapons", "WeaponSuit" }, }, }, { Cue = "/VO/ErisField_0139", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Giá như cưng có thể bay. Nhưng rất tiếc là không thể! Và ta sẽ không để cưng rời khỏi đây đâu." }, }, ErisBossMiscStart17 = { { Cue = "/VO/ErisField_0140", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Cưng à, những gì chúng ta sắp làm có thể kéo dài cả đêm đấy... từ đêm này sang đêm khác." }, }, ErisBossMiscStart18 = { { Cue = "/VO/ErisField_0141", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Có lẽ ta không thể giết được cô, Rắc Rối, nhưng ta vẫn sẽ thử." }, }, ErisBossMiscStart19 = { GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = "<=", Value = 0, }, }, { Cue = "/VO/ErisField_0141", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Có lẽ ta không thể giết được cô, Rắc Rối, nhưng ta vẫn sẽ thử." }, }, ErisBossMiscStart20 = { GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0, }, }, { Cue = "/VO/ErisField_0142", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ta phải bắn hạ cưng bao nhiêu lần nữa đây?" }, }, ErisBossMiscStart21 = { GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0, }, { FunctionName = "RequiredConsecutiveDeathsInRoom", FunctionArgs = { Names = { "O_Boss01", "O_Boss02" }, Count = 2 }, }, }, { Cue = "/VO/ErisField_0143", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Trông cưng không được khỏe nhỉ! Thất bại hết lần này đến lần khác mà cưng vẫn không bỏ cuộc ư?" }, }, ErisBossMiscStart22 = { GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = "<=", Value = 0, }, }, { Cue = "/VO/ErisField_0144", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Không phải lúc nào cũng có thể ngăn cản cô, nhưng ta luôn có thể khiến cô chậm lại." }, }, ErisBossMiscStart23 = { GameStateRequirements = { { Path = { "GameState", "LastBossHealthBarRecord", "Eris" }, Comparison = "<=", Value = 0, }, }, { Cue = "/VO/ErisField_0145", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ta là một tay chơi thể thao giỏi, Rắc Rối. Thắng hay thua đối với ta cũng không khác biệt." }, }, ErisBossMiscStart24 = { PlayFirst = true, GameStateRequirements = { { Path = { "PrevRun", "RoomsEntered" }, HasNone = { "O_Boss01", "O_Boss02" } }, { PathFalse = { "PrevRun", "UseRecord", "NPC_Eris_01" } }, --[[ { SumPrevRuns = 2, Path = { "RoomsEntered", "O_Boss01" }, Comparison = ">=", Value = 0, }, ]]-- }, { Cue = "/VO/ErisField_0148", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Cuối cùng cũng đến! Cô biết đấy, ta đã đứng đây ngắm mặt nước cũng lâu rồi đó!" }, }, ErisBossMiscStart25 = { PlayFirst = true, GameStateRequirements = { { Path = { "PrevRun", "RoomsEntered" }, HasAny = { "O_Boss01", "O_Boss02" } }, }, { Cue = "/VO/ErisField_0149", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ta chưa từng nghĩ mình sẽ là kiểu người sống theo thói quen nào đó, nhưng giờ hãy nhìn ta đi!" }, }, ErisBossMiscStart26 = { { Cue = "/VO/ErisField_0150", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Đừng nói với ta rằng cô định leo lên đỉnh núi đó thật nhé, Rắc Rối?" }, }, ErisBossMiscStart27 = { { Cue = "/VO/ErisField_0151", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Cứ tận hưởng đi cưng! Ta và cô không có nhiều thời gian dành cho nhau đâu." }, }, ErisBossMiscStart28 = { { Cue = "/VO/ErisField_0152", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Sự khác biệt giữa cô và ta là ta không bận tâm đến chuyện thắng hay thua." }, }, ErisBossMiscStart29 = { { Cue = "/VO/ErisField_0153", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Cô thích thế này phải không, Rắc Rối? Không cần nói cho ta nghe đâu. Cứ thừa nhận đi!" }, }, ErisBossMiscStart30 = { { Cue = "/VO/ErisField_0154", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ta ghét việc dễ đoán, nhưng ta thích chọc tức cô, vậy nên... coi như hòa nhau nhé!" }, }, ErisBossMiscStart31 = { { Cue = "/VO/ErisField_0026", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Cưng đừng để bụng nhé, nhưng có những việc ta bắt buộc phải làm, cưng hiểu không?" }, }, ErisBossMiscStart32 = { { Cue = "/VO/ErisField_0027", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Mặc dù ta rất muốn giữ chân cô bằng một cuộc trò chuyện thú vị, nhưng ta nghĩ việc này sẽ hiệu quả hơn." }, }, ErisBossMiscStart33 = { { Cue = "/VO/ErisField_0028", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Nghe này! Ta biết giữa chúng ta có chút bất hòa, nhưng mà... có lẽ sau này khi nghĩ lại chỉ thấy buồn cười thôi!", }, }, ErisBossMiscStart34 = { { Cue = "/VO/ErisField_0029", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Trông cưng có vẻ không vui khi gặp ta nhỉ? Mà ta đã làm gì đâu..." }, }, ErisBossMiscStart35 = { PlayFirst = true, GameStateRequirements = { { FunctionName = "RequiredConsecutiveClearsOfRoom", FunctionArgs = { Names = { "O_Boss01", "O_Boss02" }, Count = 3 }, }, }, { Cue = "/VO/ErisField_0030", Portrait = "Portrait_Eris_Unsure_01", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Emote = "PortraitEmoteFiredUp", Text = "{#Emph}Ungh! {#Prev}Thế này là khôgn được rồi...! Sao cô không dừng lại đi? Phải làm sao cô mới chịu dừng lại đây?" }, }, ErisBossMiscStart36 = { PlayFirst = true, GameStateRequirements = { { FunctionName = "RequiredConsecutiveClearsOfRoom", FunctionArgs = { Names = { "O_Boss01", "O_Boss02" }, Count = 3 }, }, }, { Cue = "/VO/ErisField_0031", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Emote = "PortraitEmoteAnger", Text = "Cô không biết khi nào nên dừng lại ư, Rắc Rối? Được thôi!" }, }, ErisBossMiscStart37 = { PlayFirst = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, { PathFalse = { "GameState", "LastBossDifficultyRecord", "Eris" }, }, }, { Cue = "/VO/ErisField_0457", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Emote = "PortraitEmoteSparkly", Text = "Nhìn xem ta nhận được gì này, vì một lý do kỳ lạ nào đó mà ta không hiểu nổi, Rắc Rối!" }, }, ErisBossMiscStart38 = { PlayFirst = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/ErisField_0458", Emote = "PortraitEmoteSparkly", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ta thích Khẩu Rail cũ, nhưng Khẩu Rail mới này thì càng tuyệt hơn! Mặc dù nó không dành cho cô." }, }, ErisBossMiscStart39 = { PlayFirst = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/ErisField_0459", Emote = "PortraitEmoteFiredUp", Portrait = "Portrait_Eris_FiredUp_01", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Một đêm tuyệt vời! Ta đã có Hình Dạng mới của Khẩu Rail và một mục tiêu ngon lành để thử nghiệm." }, }, ErisBossMiscStart40 = { PlayFirst = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, { Cue = "/VO/ErisField_0460", Portrait = "Portrait_Eris_FiredUp_01", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Hãy cùng tìm hiểu xem Hình Dạng mới của Khẩu Rail này có thể làm được gì nhé!" }, }, ErisBossMiscStart41 = { PlayFirst = true, GameStateRequirements = { -- }, { Cue = "/VO/ErisField_0461", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Đừng đùa nữa, Rắc Rối! Ta có thể không phải hiện thân Thống Khổ, nhưng ta cũng là thứ tương tự chẳng kém!" }, }, ErisBossMiscStart42 = { PlayFirst = true, GameStateRequirements = { { PathTrue = { "GameState", "TextLinesRecord", "ErisTaverna02" } }, }, { Cue = "/VO/ErisField_0462", PreLineFunctionName = "StartBossRoomMusic", PreLineThreadedFunctionName = "PlayErisTauntAnim", PreLineWait = 0.35, Text = "Ta có chút quý mến cưng, nhưng điều đó không ngăn ta làm những gì cần phải làm." }, }, }, Using = { Sounds = { "/SFX/Player Sounds/ZagreusGunRunningMisc", }, }, }, } -- Global Eris Lines GlobalVoiceLines.ErisBossGreetingLines = { { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.5, SuccessiveChanceToPlay = 0.85, ObjectType = "Eris", PreLineAnim = "Enemy_Eris_Hub_Greet", { Cue = "/VO/Eris_0072", Text = "Xem ai đây này!" }, { Cue = "/VO/Eris_0074", Text = "{#Emph}Ahh, heh!" }, { Cue = "/VO/Eris_0077", Text = "Chào cưng!" }, { Cue = "/VO/ErisField_0050", Text = "Chào cưng!" }, { Cue = "/VO/ErisField_0051", Text = "Xin chào!" }, { Cue = "/VO/ErisField_0052", Text = "Biết ngay đó là cô mà." }, { Cue = "/VO/ErisField_0053", Text = "Nhìn xem ai này!" }, { Cue = "/VO/ErisField_0054", Text = "Ta đến đây trước nhé!" }, { Cue = "/VO/ErisField_0055", Text = "Cô làm được rồi!", PlayFirst = true }, { Cue = "/VO/ErisField_0405", Text = "Nhìn xem thứ gì trôi dạt vào đây này..." }, { Cue = "/VO/ErisField_0406", Text = "Làm gì mà lâu vậy?" }, { Cue = "/VO/ErisField_0407", Text = "{#Emph}Uh-uh-uhh!" }, { Cue = "/VO/ErisField_0408", Text = "Ồ, là cô sao!" }, { Cue = "/VO/ErisField_0409", Text = "Thật kỳ diệu...!" }, { Cue = "/VO/ErisField_0410", Text = "Cô đến rồi sao!" }, { Cue = "/VO/ErisField_0411", Text = "Thực hành ngắm bắn mục tiêu..." }, { Cue = "/VO/ErisField_0403", Text = "Ai đã dọn sạch bãi biển vậy...?", PlayFirst = true, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "O_Boss01" }, }, { PathTrue = { "GameState", "LastBossDifficultyRecord", "Eris" }, }, }, }, { Cue = "/VO/ErisField_0404", Text = "Rail ngu ngốc...", PlayFirst = true, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "O_Boss01" }, }, { PathTrue = { "GameState", "LastBossDifficultyRecord", "Eris" }, }, }, }, { Cue = "/VO/ErisField_0056", Text = "Rắc Rối!", GameStateRequirements = { { FunctionName = "RequiredQueuedTextLine", FunctionArgs = { IsNone = { "ErisBossAboutTyphon01", }, }, }, }, }, { Cue = "/VO/ErisField_0057", Text = "Rắc Rối.", GameStateRequirements = { { FunctionName = "RequiredQueuedTextLine", FunctionArgs = { IsNone = { "ErisBossAboutTyphon01", }, }, }, }, }, { Cue = "/VO/ErisField_0397", Text = "{#Emph}Eugh{#Prev}, chuyện gì xảy ra trên bãi biển này vậy...?", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/ErisField_0398", Text = "Có thứ gì đó bốc mùi...!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/ErisField_0399", Text = "Nhìn thứ này đi!", PlayFirst = true, GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/ErisField_0400", Text = "Xem ta có gì này!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/ErisField_0401", Text = "Xem ta có gì này...!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/ErisField_0402", Text = "Đây là chương trình đặc biệt hàng đêm!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, }, { RandomRemaining = true, PreLineWait = 1.0, SuccessiveChanceToPlay = 0.5, UsePlayerSource = true, { Cue = "/VO/MelinoeField_3485", Text = "Chuyện gì xảy ra ở đây vậy...?", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/MelinoeField_3486", Text = "Bãi biển này...", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/MelinoeField_1903", Text = "Eris...", PlayFirst = true }, { Cue = "/VO/MelinoeField_1905", Text = "Lại là cô.", PlayFirst = true }, { Cue = "/VO/MelinoeField_1904", Text = "Cô đang ngán đường ta." }, { Cue = "/VO/MelinoeField_1906", Text = "Lúc nào cũng vậy..." }, }, } GlobalVoiceLines.ErisAttemptedExitVoiceLines = { BreakIfPlayed = true, RandomRemaining = true, PreLineWait = 0.35, ObjectTypes = { "Eris", "NPC_Eris_01" }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 6 }, }, { Cue = "/VO/ErisField_0038", Text = "Này?" }, { Cue = "/VO/ErisField_0039", Text = "Oh, cô đừng hòng!", PlayFirst = true }, { Cue = "/VO/ErisField_0041", Text = "Dừng lại đó." }, { Cue = "/VO/Eris_0081", Text = "Có chuyện gì à?" }, { Cue = "/VO/Eris_0082", Text = "{#Emph}Aw{#Prev}, sao vậy?" }, { Cue = "/VO/ErisField_0338", Text = "Này?" }, { Cue = "/VO/ErisField_0339", Text = "Cô không được đi đâu cả.", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "O_Boss01", "O_Boss02" }, }, }, }, { Cue = "/VO/ErisField_0340", Text = "Cưng đừng đi!", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "O_Boss01", "O_Boss02" }, }, }, }, { Cue = "/VO/ErisField_0341", Text = "Cô phải ở lại đây!", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "O_Boss01", "O_Boss02" }, }, }, }, { Cue = "/VO/ErisField_0040", Text = "{#Emph}Aw{#Prev}, thôi nào.", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "O_Boss01", "O_Boss02" }, }, }, }, } GlobalVoiceLines.ErisInvulnerableVoiceLines = { RandomRemaining = true, PreLineWait = 0.25, ObjectTypes = { "Eris", "NPC_Eris_01" }, GameStateRequirements = { { PathFromArgs = true, Path = { "SourceProjectile", }, IsNone = { "FrogFamiliarLand", "CatFamiliarPounce", "RavenFamiliarMelee", "HoundFamiliarBark", "PolecatFamiliarMelee" }, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 6 }, }, { Cue = "/VO/ErisField_0043", Text = "Nu-{#Emph}uh!", PlayFirst = true }, { Cue = "/VO/ErisField_0044", Text = "Không phải lúc này." }, { Cue = "/VO/ErisField_0045", Text = "Có cố gắng đấy!" }, { Cue = "/VO/ErisField_0046", Text = "Như cô mong muốn!" }, { Cue = "/VO/ErisField_0047", Text = "{#Emph}Dễ thương đấy!" }, { Cue = "/VO/ErisField_0333", Text = "{#Emph}Hah! {#Prev}Không được." }, { Cue = "/VO/ErisField_0334", Text = "Không đau chút nào!" }, { Cue = "/VO/ErisField_0336", Text = "Khá lắm." }, { Cue = "/VO/ErisField_0335", Text = "Không đau chút nào.", GameStateRequirements = { { PathTrue = { "GameState", "SpeechRecord", "/VO/ErisField_0334" } }, }, }, { Cue = "/VO/ErisField_0042", Text = "Có lẽ để sau vậy?", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsNone = { "O_Boss01", "O_Boss02" }, }, }, }, { Cue = "/VO/ErisField_0332", Text = "Ồ, cô đừng hòng!", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "O_Boss01", "O_Boss02" }, }, }, }, { Cue = "/VO/ErisField_0337", Text = "Xin lỗi!", GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "Name" }, IsAny = { "O_Boss01", "O_Boss02" }, }, }, }, } GlobalVoiceLines.ErisAttackVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.35, SuccessiveChanceToPlay = 0.33, ObjectType = "Eris", GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.15, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0058", Text = "Nhận lấy!" }, { Cue = "/VO/ErisField_0059", Text = "Chạy đi...!", PlayFirst = true }, { Cue = "/VO/ErisField_0060", Text = "Vào tầm ngắm rồi nhé!" }, { Cue = "/VO/ErisField_0061", Text = "Ngay lúc này..." }, { Cue = "/VO/ErisField_0062", Text = "Nhận lấy này!" }, { Cue = "/VO/ErisField_0063", Text = "Ngay lúc này...!" }, { Cue = "/VO/ErisField_0064", Text = "{#Emph}" }, { Cue = "/VO/ErisField_0065", Text = "{#Emph}Bùm!" }, { Cue = "/VO/ErisField_0066", Text = "Tốt hơn nên trốn đi!" }, { Cue = "/VO/ErisField_0067", Text = "Thế này thì sao?" }, { Cue = "/VO/ErisField_0068", Text = "Muốn thêm nữa không?" }, { Cue = "/VO/ErisField_0069", Text = "Đỡ này." }, } GlobalVoiceLines.ErisShotgunVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.35, SuccessiveChanceToPlay = 0.33, ObjectType = "Eris", GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0251", Text = "Bùng cháy đi!", PlayFirst = true }, { Cue = "/VO/ErisField_0252", Text = "Suy ngẫm về thứ này đi!" }, { Cue = "/VO/ErisField_0253", Text = "Mở rộng...!" }, { Cue = "/VO/ErisField_0254", Text = "Bùng nổ đi!" }, { Cue = "/VO/ErisField_0255", Text = "Tiếp tục chạy đi!" }, { Cue = "/VO/ErisField_0256", Text = "Đứng yên đó!" }, } GlobalVoiceLines.ErisGrenadeVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.5, SuccessiveChanceToPlay = 0.33, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0070", Text = "Coi chừng!" }, { Cue = "/VO/ErisField_0071", Text = "Bom đến đây!" }, { Cue = "/VO/ErisField_0072", Text = "Đỡ này!" }, { Cue = "/VO/ErisField_0073", Text = "{#Emph}Bùm!" }, { Cue = "/VO/ErisField_0258", Text = "Muốn nữa không?" }, { Cue = "/VO/ErisField_0259", Text = "Của cô đây!" }, { Cue = "/VO/ErisField_0262", Text = "Bên dưới coi chừng!" }, { Cue = "/VO/ErisField_0415", Text = "Bùng nổ đi!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, } GlobalVoiceLines.ErisGrenadeClusterVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.55, SuccessiveChanceToPlay = 0.5, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0257", Text = "Đỡ này!" }, { Cue = "/VO/ErisField_0260", Text = "Nhìn chúng bay kìa!" }, { Cue = "/VO/ErisField_0262", Text = "Đỡ này!" }, { Cue = "/VO/ErisField_0412", Text = "Đỡ này!" }, { Cue = "/VO/ErisField_0417", Text = "Cẩn thận bước chân đấy, cưng!" }, { Cue = "/VO/ErisField_0471", Text = "Mưa bom đây!" }, { Cue = "/VO/ErisField_0472", Text = "{#Emph}Đến lúc bùng nổ rồi!" }, { Cue = "/VO/ErisField_0473", Text = "Coi chừng này!" }, { Cue = "/VO/ErisField_0474", Text = "Coi chừng này!" }, { Cue = "/VO/ErisField_0475", Text = "{#Emph}Whoosh..." }, { Cue = "/VO/ErisField_0476", Text = "{#Emph}Ba-boom!" }, { Cue = "/VO/ErisField_0413", Text = "Ooh, {#Emph}bùng nổ!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/ErisField_0414", Text = "Tỏa sáng!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, { Cue = "/VO/ErisField_0416", Text = "Bùng nổ!", GameStateRequirements = { { Path = { "GameState", "ShrineUpgrades", "BossDifficultyShrineUpgrade" }, Comparison = ">=", Value = 2, }, }, }, } GlobalVoiceLines.ErisSniperAimVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.2, SuccessiveChanceToPlay = 0.75, ObjectType = "Eris", GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, SkipCooldownCheckIfNonePlayed = true, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, { Name = "ErisSnipedRecently", Time = 40 }, }, { Cue = "/VO/ErisField_0271", Text = "Ta thấy cô rồi...!" }, { Cue = "/VO/ErisField_0272", Text = "Cô đây rồi..." }, { Cue = "/VO/ErisField_0273", Text = "Vào tầm ngắm nhé..." }, { Cue = "/VO/ErisField_0274", Text = "Đừng cố trốn làm gì..." }, { Cue = "/VO/ErisField_0275", Text = "Vào tầm ngắm nhé...", PlayFirst = true }, { Cue = "/VO/ErisField_0276", Text = "Một phát bắn đẹp..." }, { Cue = "/VO/ErisField_0277", Text = "Đã vào tầm ngắm..." }, { Cue = "/VO/ErisField_0278", Text = "Sẵn sàng... ngắm..." }, } GlobalVoiceLines.ErisSniperFireVoiceLines = { Queue = "Never", RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.05, SuccessiveChanceToPlay = 0.75, ObjectType = "Eris", -- TriggerCooldowns = { "ErisSpokeRecently" }, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, { Cue = "/VO/ErisField_0279", Text = "{#Emph}Bắn!!" }, { Cue = "/VO/ErisField_0280", Text = "{#Emph}Bang!" }, { Cue = "/VO/ErisField_0281", Text = "{#Emph}Blam!" }, { Cue = "/VO/ErisField_0282", Text = "{#Emph}Blamm-o!" }, { Cue = "/VO/ErisField_0283", Text = "{#Emph}Ka-blam!" }, { Cue = "/VO/ErisField_0284", Text = "{#Emph}Ka-pow!" }, } GlobalVoiceLines.ErisSwoopInVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.4, SuccessiveChanceToPlay = 0.33, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, { Name = "ErisSwoopedDownRecently", Time = 60 }, }, { Cue = "/VO/ErisField_0245", Text = "Tới đây!" }, { Cue = "/VO/ErisField_0246", Text = "{#Emph}Yoo-hoo!" }, { Cue = "/VO/ErisField_0247", Text = "Đằng này nè!" }, { Cue = "/VO/ErisField_0248", Text = "Chào cưng!" }, { Cue = "/VO/ErisField_0249", Text = "Ta đã trở lại!" }, { Cue = "/VO/ErisField_0250", Text = "Nhớ ta không?" }, } GlobalVoiceLines.ErisSpawnWaveVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 1.0, SuccessiveChanceToPlay = 0.75, ObjectType = "Eris", SkipAnim = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSummonedRecently", Time = 60 }, }, TriggerCooldowns = { "ErisSpokeRecently" }, { Cue = "/VO/ErisField_0233", Text = "Xem ta tìm được gì này!" }, { Cue = "/VO/ErisField_0234", Text = "{#Emph}Đến đây!" }, { Cue = "/VO/ErisField_0235", Text = "Đến đây...!" }, { Cue = "/VO/ErisField_0236", Text = "Chuyến hàng đặc biệt đây!" }, { Cue = "/VO/ErisField_0237", Text = "Cưng đánh rơi thứ này nè!" }, { Cue = "/VO/ErisField_0238", Text = "Bọn ta chỉ muốn làm bạn thôi mà!" }, { Cue = "/VO/ErisField_0239", Text = "Nhìn bọn lập dị kìa!" }, { Cue = "/VO/ErisField_0241", Text = "Đến đây mọi người, tham chiến nào!" }, { Cue = "/VO/ErisField_0242", Text = "Miễn phí cho tất cả!", PlayFirst = true }, { Cue = "/VO/ErisField_0243", Text = "Có vẻ thủy triều đã dâng rồi!" }, { Cue = "/VO/ErisField_0244", Text = "Đã tìm thấy vài người bạn cũ của cô!" }, { Cue = "/VO/ErisField_0468", Text = "Thế bọn này thì sao?" }, { Cue = "/VO/ErisField_0470", Text = "Mọi người đều được mời đến!" }, { Cue = "/VO/ErisField_0240", Text = "Có khách cho cô đây!", GameStateRequirements = { { PathTrue = { "GameState", "SpeechRecord", "/VO/ErisField_0239" } }, }, }, } GlobalVoiceLines.ErisFishSpawnWaveVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 1.0, SuccessiveChanceToPlay = 0.75, SuccessiveChanceToPlayAll = 0.25, ObjectType = "Eris", SkipAnim = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSummonedRecently", Time = 60 }, }, TriggerCooldowns = { "ErisSpokeRecently" }, -- { Cue = "/VO/ErisField_0463", Text = "Và đây là phần hấp dẫn nhất đêm nay!" }, -- { Cue = "/VO/ErisField_0464", Text = "Aren't these supposed to be on Olympus?" }, -- { Cue = "/VO/ErisField_0465", Text = "Got some rare imports for you here!" }, { Cue = "/VO/ErisField_0466", Text = "Here comes the catch of the {#Emph}night!" }, { Cue = "/VO/ErisField_0467", Text = "Cưng là thức ăn cho cá đấy!", PlayFirst = true }, { Cue = "/VO/ErisField_0469", Text = "{#Emph}Eugh{#Prev}, mấy thứ đó ở đâu ra vậy?" }, } GlobalVoiceLines.ErisAutomatonSpawnWaveVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 1.0, SuccessiveChanceToPlay = 0.75, SuccessiveChanceToPlayAll = 0.25, ObjectType = "Eris", SkipAnim = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSummonedRecently", Time = 60 }, }, TriggerCooldowns = { "ErisSpokeRecently" }, { Cue = "/VO/ErisField_0463", Text = "Này, ngươi không phải người ở đây!" }, { Cue = "/VO/ErisField_0464", Text = "Những thứ đó lẽ ra phải ở trên đỉnh Olympus chứ?", PlayFirst = true }, { Cue = "/VO/ErisField_0465", Text = "Có vài món hàng hiếm cho cô đây!" }, } GlobalVoiceLines.ErisSelfBuffAppliedVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.3, SuccessiveChanceToPlay = 0.33, ObjectType = "Eris", GameStateRequirements = { }, Cooldowns = { -- { Name = "ErisSpokeRecently", Time = 8 }, { Name = "ErisPoweredUpRecently", Time = 20 }, }, TriggerCooldowns = { "ErisSpokeRecently" }, { Cue = "/VO/ErisField_0209", Text = "{#Emph}Aw{#Prev}, được lắm..." }, { Cue = "/VO/ErisField_0210", Text = "Ah, {#Emph}được lắm!" }, { Cue = "/VO/ErisField_0211", Text = "{#Emph}Woo, được lắm!", PlayFirst = true }, { Cue = "/VO/ErisField_0212", Text = "Thật tuyệt vời!" }, { Cue = "/VO/ErisField_0213", Text = "{#Emph}Wooo!" }, { Cue = "/VO/ErisField_0214", Text = "Oh, {#Emph}hohohohohoh!" }, { Cue = "/VO/ErisField_0215", Text = "Giờ thì cô sẵn sàng đón nhận đi!" }, { Cue = "/VO/ErisField_0216", Text = "Chuẩn bị tinh thần đi..." }, { Cue = "/VO/ErisField_0217", Text = "Tốt nhất cưng nên chạy đi!" }, { Cue = "/VO/ErisField_0218", Text = "Việc này sẽ khá đau đấy!" }, { Cue = "/VO/ErisField_0219", Text = "Quẫy lên nào!" }, { Cue = "/VO/ErisField_0220", Text = "Được lắm!!" }, { Cue = "/VO/ErisField_0221", Text = "...Gấp đôi sát thương." }, { Cue = "/VO/ErisField_0222", Text = "{#Emph}Gấp đôi sát thương...!" }, } GlobalVoiceLines.ErisSelfBuffClearedVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.3, SuccessiveChanceToPlay = 0.33, ObjectType = "Eris", GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 8 }, { Name = "ErisPoweredDownRecently", Time = 60 }, }, { Cue = "/VO/ErisField_0223", Text = "{#Emph}Whew..." }, { Cue = "/VO/ErisField_0224", Text = "Trở về bình thường...", PlayFirst = true }, { Cue = "/VO/ErisField_0226", Text = "{#Emph}Aw {#Prev}chỉ thế thôi à?" }, { Cue = "/VO/ErisField_0227", Text = "Hết sức rồi..." }, { Cue = "/VO/ErisField_0228", Text = "Thế là xong..." }, { Cue = "/VO/ErisField_0229", Text = "Vậy là xong..." }, { Cue = "/VO/ErisField_0230", Text = "Tận hưởng thời gian còn lại..." }, { Cue = "/VO/ErisField_0231", Text = "Giờ thì an toàn rồi..." }, { Cue = "/VO/ErisField_0232", Text = "Đến lượt cô đấy..." }, { Cue = "/VO/ErisField_0225", Text = "Sát thương đơn...", PlayFirst = true, GameStateRequirements = { { Path = { "CurrentRun", "CurrentRoom", "SpeechRecord" }, HasAny = { "/VO/ErisField_0221", "/VO/ErisField_0222" } }, }, }, } GlobalVoiceLines.ErisFireEscapeVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.35, SuccessiveChanceToPlay = 0.33, ObjectType = "Eris", GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.2, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0326", Text = "Tránh khỏi lửa!" }, { Cue = "/VO/ErisField_0327", Text = "{#Emph}Whew {#Prev}cũng khá nóng đấy!", PlayFirst = true }, { Cue = "/VO/ErisField_0328", Text = "Sao cô không thử nhảy vào lửa xem?" }, { Cue = "/VO/ErisField_0329", Text = "Nó ấm lắm đấy, cô nên nhảy vào đó!" }, { Cue = "/VO/ErisField_0330", Text = "Nhảy vào đi, lửa ấm lắm đấy!" }, { Cue = "/VO/ErisField_0331", Text = "Không khí nóng lên!" }, } GlobalVoiceLines.ErisGatherReactionVoiceLines = { RandomRemaining = true, BreakIfPlayed = true, PreLineWait = 0.65, SuccessiveChanceToPlay = 0.5, ObjectType = "Eris", -- SkipCooldownCheckIfNonePlayed = true, GameStateRequirements = { { Path = { "CurrentRun", "BossHealthBarRecord", "Eris" }, Comparison = ">=", Value = 0.25, }, }, Cooldowns = { { Name = "ErisSpokeRecently", Time = 12 }, }, { Cue = "/VO/ErisField_0263", Text = "Cô được lợi gì?" }, { Cue = "/VO/ErisField_0264", Text = "Ta thấy rồi!" }, { Cue = "/VO/ErisField_0265", Text = "Nó là của ta!", PlayFirst = true }, { Cue = "/VO/ErisField_0266", Text = "Trả lại đây!" }, { Cue = "/VO/ErisField_0267", Text = "Nghiêm túc đấy à, Rắc Rối?" }, { Cue = "/VO/ErisField_0268", Text = "Để yên đó được không?" }, { Cue = "/VO/ErisField_0269", Text = "Đừng có nhặt đồ nữa!" }, { Cue = "/VO/ErisField_0270", Text = "{#Emph}Đồ nghiện sạch sẽ!" }, } OverwriteTableKeys( EnemyData, UnitSetData.Eris )