本文整理汇总了C#中Ship.ApplyDamageModifier方法的典型用法代码示例。如果您正苦于以下问题:C# Ship.ApplyDamageModifier方法的具体用法?C# Ship.ApplyDamageModifier怎么用?C# Ship.ApplyDamageModifier使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Ship
的用法示例。
在下文中一共展示了Ship.ApplyDamageModifier方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CalculateDps
public override float CalculateDps(Ship owner)
{
var meanDamage = (minDamage + maxDamage) / 2f;
meanDamage = owner.ApplyDamageModifier(Mathf.FloorToInt(meanDamage));
return meanDamage / fireRate;
}
示例2: Activate
public override void Activate(Ship activator, int slot)
{
if (Cooldown > 0)
{
return;
}
var hardpoint = activator.GetHardpointAt(slot);
var module = activator.ModuleLoadout.GetSlot(slot);
var aimingAt = module.Aim;
if (hardpoint.CanAimAt(aimingAt))
{
var firedTransform = hardpoint ? hardpoint.transform : activator.transform;
var aimRot = Quaternion.LookRotation((module.Aim - firedTransform.position).normalized);
var bulletInstance = (Bullet)Instantiate(bulletType, firedTransform.position, aimRot);
bulletInstance.owner = activator;
var randomDamage = UnityEngine.Random.Range(minDamage, maxDamage);
bulletInstance.damage = activator.ApplyDamageModifier(randomDamage);
if (activator.GetComponent<Rigidbody>())
{
bulletInstance.baseVelocity = activator.GetComponent<Rigidbody>().velocity;
}
if (muzzleFlashType)
{
var flash = (Transform)Instantiate(muzzleFlashType, firedTransform.position, firedTransform.rotation);
flash.SetParent(firedTransform, true);
}
Cooldown = fireRate;
}
}