/// <summary> /// 触发毒陷阱 /// </summary> /// <returns>The trap triggered.</returns> /// <param name="battlePlayer">Battle player.</param> private IEnumerator PoisonTrapTriggered(BattlePlayerController battlePlayer) { int count = 0; battlePlayer.SetEffectAnim(CommonData.poisonedEffectName, null, 0, 3f); while (count < 3) { yield return(new WaitForSeconds(1f)); yield return(new WaitUntil(() => !battlePlayer.isInEvent)); MyTowards towards = battlePlayer.GetReversedTowards(); battlePlayer.AddHurtAndShow(100, HurtType.Physical, towards); ExploreManager.Instance.expUICtr.UpdatePlayerStatusBar(); if (battlePlayer.agent.health <= 0) { //ExploreManager.Instance.DisableAllInteractivity(); battlePlayer.AgentDie(); yield break; } count++; } }
/// <summary> /// 触发尖刺陷阱 /// </summary> /// <param name="battlePlayer">Battle player.</param> private void ThornTrapTriggered(BattlePlayerController battlePlayer) { mapItemRenderer.sprite = thornTrapOnSprite; MyTowards towards = battlePlayer.GetReversedTowards(); battlePlayer.AddHurtAndShow(50, HurtType.Physical, towards); if (battlePlayer.agent.health <= 0) { //ExploreManager.Instance.DisableAllInteractivity(); battlePlayer.AgentDie(); } ExploreManager.Instance.expUICtr.UpdatePlayerStatusBar(); }
// public override void ShowFightTextInOrder () // { // bmUICtr.fightTextManager.ShowFightTextInOrder (); // } /// <summary> /// 判断战斗是否结束 /// </summary> public override bool CheckFightEnd() { if (bpCtr.agent.health <= 0) { bpCtr.AgentDie(); return(true); } else if (agent.health <= 0) { return(true); } else { return(false); } }