public override AttackManager Attack(float damageMultiplier, List <IAttacker> owners) { if (GetAttack == null) { return(null); } AttackManager attack = base.Attack(damageMultiplier, owners); if (attack == null) { return(null); } IAmmo ammo = (IAmmo)attack; ammo.SetInitialWeaponDirection(DirectionalObject.Direction); ammo.SetIntialVelocity(FireVelocity); ammo.SetInitialWeaponPosition(WeaponPosition); owners.ForEach(t => t.ReceiveStoppingPower(stoppingPower)); Instantiate(muzzleFlashEffect, WeaponPosition, transform.rotation, null); return(ammo.GetAttackManager); }
public override AttackManager Attack(float damageMultiplier, List <IAttacker> owners) { AttackManager attack = base.Attack(damageMultiplier, owners); if (attack == null) { return(null); } IAmmo ammo = (IAmmo)attack; ammo.SetInitialWeaponPosition(weaponPivot.position); return(attack); }