public override bool UseBaseAttack(Combatant target, BattleAction ba, bool counter, float damageFactor, float damageMultiplier) { bool hit = false; bool found = false; for(int i=0; i<this.equipment.Length; i++) { if(this.equipment[i].IsWeapon()) { Weapon wpn = DataHolder.Weapon(this.equipment[i].equipID); if(wpn.ownAttack) { if(wpn.UseBaseAttack(this, target, damageFactor, damageMultiplier)) { hit = true; } found = true; } } } if(!found) { hit = DataHolder.BaseAttack(this.baseAttack[this.baIndex]).Use(this, this.baseElement, target, damageFactor, damageMultiplier); } if(!this.isDead && counter && this.battleID != target.battleID) { if(DataHolder.BattleSystem().IsRealTime()) target.UseCounter(this); else if(ba != null) ba.doCounter = new bool[] {target.UseCounter(this)}; } return hit; }