public override IEnumerator DecrementHealth(int Decrementby, Skills.ElementalType elementalType, float TimeTillInitalDamage, float TimeTillHoveringUiElement, float TimeTillDamage) { string AttackingElement = elementalType.ToString(); string ElementalWeakness = elementalWeakness.ToString(); string ElementalStrength = elementalStrength.ToString(); int ArgumentReference = Decrementby; float ConvertToFloat = ArgumentReference / 1.5f; int ConvertToInt = Mathf.CeilToInt(ConvertToFloat); Decrementby = ConvertToInt; PressTurnManager.PressTurnReactions PressturnReaction = PressTurnManager.PressTurnReactions.Normal; if (AttackingElement.Equals(ElementalWeakness)) { Decrementby += Decrementby / 4; yield return(new WaitForSeconds(TimeTillHoveringUiElement)); FloatingUiElementsController.CreateFloatingText(Decrementby.ToString(), m_SpawnObject.transform, FloatingUiElementsController.UiElementType.Weak, m_IsUi); PressturnReaction = PressTurnManager.PressTurnReactions.Weak; } if (AttackingElement.Equals(ElementalStrength)) { Decrementby -= Decrementby / 4; yield return(new WaitForSeconds(TimeTillHoveringUiElement)); FloatingUiElementsController.CreateFloatingText(Decrementby.ToString(), m_SpawnObject.transform, FloatingUiElementsController.UiElementType.Strong, m_IsUi); PressturnReaction = PressTurnManager.PressTurnReactions.Strong; } yield return(new WaitForSeconds(TimeTillInitalDamage)); FloatingUiElementsController.CreateFloatingText(Decrementby.ToString(), m_SpawnObject.transform, FloatingUiElementsController.UiElementType.Text, m_IsUi); m_CurrentHealth -= Decrementby; DeathCheck(); // m_Status.RedTest(); yield return(new WaitForSeconds(3.0f)); TacticsManager.instance.CharacterSkillFinished(this, PressturnReaction); }
public void CharacterSkillFinished(Creatures aCreature, PressTurnManager.PressTurnReactions aPressTurnReaction) { m_PressTurnReactions.Add(aPressTurnReaction); for (int i = 0; i < m_CreaturesInSkill.Count; i++) { if (m_CreaturesInSkill[i] == aCreature) { m_CreaturesInSkill.RemoveAt(i); break; } } if (m_CreaturesInSkill.Count == 0) { PressTurnManager.instance.ProcessTurn(m_PressTurnReactions); for (int i = m_PressTurnReactions.Count - 1; i > -1; i--) { m_PressTurnReactions.RemoveAt(i); } } }