Пример #1
0
 /*
  * 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());
 }
Пример #2
0
        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));
        }
Пример #3
0
        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);
        }
Пример #4
0
 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);
 }
Пример #5
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);
        }
Пример #6
0
    //-------------------------------------------
    public virtual void SwitchToCombat(b_Character _character)
    {
        //saftey measure
        if (active)
        {
            return;
        }

        character = _character;
    }
Пример #7
0
    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);
    }
Пример #8
0
 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);
     }
 }
Пример #9
0
 public virtual void SwitchToWorld(b_Character _character)
 {
     character = _character;
     active    = true;
 }
Пример #10
0
 public virtual void Execute(b_Character caster, b_Character[] targets)
 {
     //code for executing ability resides in here
     //different for every ability
 }
Пример #11
0
 private int CalculateParry(Weapon _weapon, b_Character _attacker)
 {
     //TODO
     return(0);
 }
Пример #12
0
        public override void ExecuteDamage(int attackDamage, b_Character damageReceiver, b_Character attacker)
        {
            int damage = CalculateDamage(attackDamage, protector);

            protector.AddHealth(-damage);
        }
Пример #13
0
 public ProtectionMarker(b_Character _protector, Type.SkillName _skill, int _reduction, float _chance, int _hits) : base(_skill, _reduction, _chance, _hits)
 {
     protector = _protector;
 }
Пример #14
0
    public virtual void ExecuteDamage(int attackDamage, b_Character damageReceiver, b_Character attacker)
    {
        int damage = CalculateDamage(attackDamage, damageReceiver);

        damageReceiver.AddHealth(-damage);
    }