示例#1
0
 public void ApplyUseCost(CharacterContext context, EffectType type)
 {
     if (context.ContextState == ContextState.Planning)
     {
         var currentMana = (int)context.GetState(CharacterWorldState.Mana);
         var newMana     = currentMana - _manaCost;
         if (type == EffectType.Permanent)
         {
             context.Self.Mana = newMana;
         }
         else
         {
             context.SetState(CharacterWorldState.Mana, (byte)newMana, type);
         }
     }
     else
     {
         context.Self.Mana -= _manaCost;
     }
 }