public void GetDamage(CreatureNew Dealer, int Damage) { for (int i = 0; i < Effects.Count; i++) { Effects[i].WhenGetDamage(Dealer, Damage); } }
public void DealDamage(CreatureNew Target, int Damage) { for (int i = 0; i < Effects.Count; i++) { Effects[i].WhenGetDamage(Target, Damage); } }
public void SetEverything(CreatureNew CS) { AI = 0; EI = 0; WriteAbilities(CS); WriteEffects(CS); UEBH.SetActive(false); UABH.SetActive(false); DEBH.SetActive(true); DABH.SetActive(true); if (EL.Count <= 5) { DEBH.SetActive(false); } if (AL.Count <= 5) { DABH.SetActive(false); } Image.sprite = CS.Sprite; Name.text = CS.Name + ". Level:" + CS.lvl.ToString(); Description.text = CS.Description; Health.text = "Health:" + CS.Health.ToString() + "/" + CS.HealthMax.ToString(); Mana.text = "Mana:" + CS.Mana.ToString() + "/" + CS.ManaMax.ToString(); Energy.text = "Energy:" + CS.Energy.ToString() + "/" + CS.EnergyMax.ToString(); DMG.text = "Average damage:" + CS.damage.ToString() + " + " + ((CS.pureDmg + CS.waterDmg + CS.darkDmg + CS.earthDmg + CS.fireDmg + CS.lightDmg + CS.airDmg) / 7).ToString(); RESISTS.text = "Average resist:" + CS.armor.ToString() + " + " + ((CS.waterRes + CS.darkRes + CS.earthRes + CS.fireRes + CS.lightRes + CS.airRes) / 6).ToString(); ScreenItSelf.SetActive(true); }
public void Attacking(CreatureNew Target) { for (int i = 0; i < Effects.Count; i++) { Effects[i].WhenAttacking(Target); } }
public void WasAttacked(CreatureNew Attacker) { for (int i = 0; i < Effects.Count; i++) { Effects[i].WhenAttacked(Attacker); } }
public void DealFireDamage(int damage, CreatureNew Target) { Target.Health -= Mathf.RoundToInt(damage * Mathf.Pow(0.95f, Target.fireRes)); if (Mathf.RoundToInt(damage * Mathf.Pow(0.95f, Target.fireRes)) != 0) { UIManager.instance.Print(Target.Name + " получил " + Mathf.RoundToInt(damage * Mathf.Pow(0.95f, Target.fireRes)) + " огненного урона"); } }
public void DealPhysDamage(int damage, CreatureNew Target) { Target.Health -= Mathf.RoundToInt(damage * Mathf.Pow(0.95f, Target.armor)); if (Mathf.RoundToInt(damage * Mathf.Pow(0.95f, Target.armor)) != 0) { UIManager.instance.Print(Target.Name + " получил " + Mathf.RoundToInt(damage * Mathf.Pow(0.95f, Target.armor)) + " физического урона"); } }
public void SaveAbilities(CreatureNew CS) { AL.Clear(); for (int i = 0; i < CS.Abilities.Count; i++) { AL.Add(CS.Abilities[i].Name); } }
public void SaveEffects(CreatureNew CS) { EL.Clear(); for (int i = 0; i < CS.Effects.Count; i++) { EL.Add(CS.Effects[i].EffectName); } }
public void DealPureDamage(int damage, CreatureNew Target) { Target.Health -= damage; if (damage != 0) { UIManager.instance.Print(Target.Name + " получил " + damage + " чистого урона"); } }
public void WriteEffects(CreatureNew CS) { SaveEffects(CS); for (int i = 0; i < 5; i++) { ETL[i].text = ""; } if (EL.Count >= 5) { for (int i = 0; i < 5; i++) { ETL[i].text = EL[i]; } } else { for (int i = 0; i < EL.Count; i++) { ETL[i].text = EL[i]; } } }
public void WriteAbilities(CreatureNew CS) { SaveAbilities(CS); for (int i = 0; i < 5; i++) { ATL[i].text = ""; } if (AL.Count >= 5) { for (int i = 0; i < 5; i++) { ATL[i].text = AL[i]; } } else { for (int i = 0; i < AL.Count; i++) { ATL[i].text = AL[i]; } } }
public virtual void WhenGetDamage(CreatureNew Dealer, int Damage) { }
public virtual void WhenDealDamage(CreatureNew Target, int Damage) { }
public virtual void WhenAttacked(CreatureNew Attacker) { }
public virtual void WhenAttacking(CreatureNew Target) { }
public virtual void WhenCasting(CreatureNew Target) { }
public void SetCasterAndContinue(int Id) { Caster = GameLogic.instance.PlayerCharacters[Id]; SetAbility(); }
public virtual void WhenSpelled(CreatureNew Caster) { }
public void SetCasterAndContinue(CreatureNew cstr) { }