/* * Called in the Start() method of the controller class of the world actor */ public void Begin(b_Character _character) { character = _character; tick = true; tickSeconds = Meta.World.Automation.TICK; StartCoroutine(Tick()); }
public override void Execute(b_Character caster, b_Character[] targets) { base.Execute(caster, targets); float chance = 0.1f + (0.1f * caster.GetSkill(primarySkill)); caster.AddBlockMarker(new BlockMarker(Util.MapSecondarySkillToSkillname(secondarySkill), damageReduction, chance, maxNumTargets)); }
public override void ExecuteDamage(int attackDamage, b_Character damageReceiver, b_Character attacker) { int damage = CalculateDamage(attackDamage, damageReceiver); damageReceiver.AddHealth(-damage); damage = CalculateParry(weapon, attacker); attacker.AddHealth(-damage); }
private int CalculateDamage(int attackDamage, b_Character damageReceiver) { //TODO //if chance for hit... and so on... //=> //calculate reduced damage through the skill and the damageReduction stat return(0); }
public override void Execute(b_Character caster, params b_Character[] targets) { base.Execute(caster, targets); //for strike targets is only one so: b_Character target = targets[0]; int damage = Mathf.Abs(healthBalance) + Mathf.RoundToInt((Mathf.Abs(healthBalance) * 0.1f * caster.GetSkill(primarySkill)) + (Mathf.Abs(healthBalance) * 0.1f * caster.GetSkill(secondarySkill))); target.AddHealth(-damage); }
//------------------------------------------- public virtual void SwitchToCombat(b_Character _character) { //saftey measure if (active) { return; } character = _character; }
protected override void Start() { base.Start(); interactibles = new ArrayList(); player = gameObject; character = new b_Character(); character.GetInventory().Add(Util.MakeRation()); character.GetInventory().Add(Util.MakeRation()); character.GetInventory().Add(Util.MakeRation()); character.GetInventory().Add(Util.MakeRation()); character.GetInventory().Add(Util.MakeRation()); worldTickManager = GetComponent <b_WorldTickManager>(); worldTickManager.Begin(character); }
public void ReceiveHit(b_Character attacker, int damage) { //TODO Add activation of passive abilities with call on hit if (blockMarkers.Count > 0) { BlockMarker marker = ((BlockMarker)blockMarkers[0]); marker.ExecuteDamage(damage, this, attacker); if (marker.HitsLeft == 0) { blockMarkers.Remove(marker); } } else { AddHealth(-damage); } }
public virtual void SwitchToWorld(b_Character _character) { character = _character; active = true; }
public virtual void Execute(b_Character caster, b_Character[] targets) { //code for executing ability resides in here //different for every ability }
private int CalculateParry(Weapon _weapon, b_Character _attacker) { //TODO return(0); }
public override void ExecuteDamage(int attackDamage, b_Character damageReceiver, b_Character attacker) { int damage = CalculateDamage(attackDamage, protector); protector.AddHealth(-damage); }
public ProtectionMarker(b_Character _protector, Type.SkillName _skill, int _reduction, float _chance, int _hits) : base(_skill, _reduction, _chance, _hits) { protector = _protector; }
public virtual void ExecuteDamage(int attackDamage, b_Character damageReceiver, b_Character attacker) { int damage = CalculateDamage(attackDamage, damageReceiver); damageReceiver.AddHealth(-damage); }