Example #1
0
 virtual public double Fight(IBattleProperties battleProperties)
 {
     if (battleProperties.HP > 0)
     {
         double damageDealt = AttackDMG * (battleProperties.Defense / 100);
         battleProperties.HP -= damageDealt;
         return(damageDealt);
     }
     else
     {
         return(-1);
     }
 }
 //public bool canTrigger(int code)
 //{
 //    return this._effectCodes.IndexOf(code) != -1;
 //}
 public IBattleProperties applyTo(IBattleProperties props)
 {
     int count = this._effectList.Count;
     ISkillEffect effect;
     for (int i=0;i<count;i++)
     {
         effect = this._effectList[i];
         if ( effect.getCode() == props.getCode() )
         {
             props = effect.applyTo(props);
         }
     }
     return props;
 }
Example #3
0
 override public double Fight(IBattleProperties battleProperties)
 {
     if (battleProperties.HP > 0 && Arrows > 0)
     {
         double damageDealt = AttackDMG * (battleProperties.Defense / 100);
         battleProperties.HP -= damageDealt;
         Arrows--;
         return(damageDealt);
     }
     else
     {
         return(-1);
     }
 }
 public IBattleProperties applyTo(IBattleProperties props)
 {
     throw new NotImplementedException();
 }
Example #5
0
 /// <summary>
 /// εΊ”η”¨ζ•ˆζžœ
 /// </summary>
 /// <param name="props"></param>
 /// <returns></returns>
 public IBattleProperties applyEffects(IBattleProperties props)
 {
     int len = this._buffList.Count;
     BuffDataDriven buff;
     for (int i=0;i< len;i++)
     {
         buff = this._buffList[i];
         //if ( buff.canTrigger(props.getCode()) )
         //{
         //    buff.applyTo(props);
         //}
     }
     return props;
 }
Example #6
0
 public void Command(Karl karl, IBattleProperties battleProperties)
 {
     karl.Fight(battleProperties);
 }