本文整理汇总了C#中Attachment.SpendCharge方法的典型用法代码示例。如果您正苦于以下问题:C# Attachment.SpendCharge方法的具体用法?C# Attachment.SpendCharge怎么用?C# Attachment.SpendCharge使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Attachment
的用法示例。
在下文中一共展示了Attachment.SpendCharge方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Apply
public override void Apply(string guid)
{
Action<Damage> preventDamage = null;
Attachment titanArmor = new Attachment() {
Effect = this,
RemainingCharges = Charges(),
OnDestroy = () => {
DamagePrevention.PreventDamage -= preventDamage;
}
};
preventDamage = (Damage damage) => {
if (damage.Target == guid && damage.Magnitude > 0) {
titanArmor.SpendCharge();
damage.Magnitude = 0;
}
};
DamagePrevention.PreventDamage += preventDamage;
GameState.Attach(guid, titanArmor, Slot.Chest);
GameState.AddWeight(guid, Weight());
}
示例2: Apply
public override void Apply(string guid)
{
Action<Damage> onDamage = null;
Attachment self = new Attachment() {
Effect = this,
RemainingCharges = NumCharges(),
OnDestroy = () => {
DamageProvider.DamageBoost -= onDamage;
}
};
onDamage = (Damage damage) => {
if (damage.Source == guid) {
if (!TemplateStatus.Templating) {
self.SpendCharge();
}
damage.Magnitude += DamageIncrease();
}
};
DamageProvider.DamageBoost += onDamage;
GameState.Attach(guid, self, Slot.Arm);
}