34 lines
996 B
C#
34 lines
996 B
C#
using Fantasy;
|
||
|
||
namespace Fantasy;
|
||
|
||
[AttributeUsage(AttributeTargets.Class, AllowMultiple = true,Inherited = false)]
|
||
public sealed class ItemUseAttribute : Attribute
|
||
{
|
||
public ItemUseEffect Type { get; }
|
||
|
||
public ItemUseAttribute(ItemUseEffect type)
|
||
{
|
||
Type = type;
|
||
}
|
||
}
|
||
|
||
public interface IItemUse
|
||
{
|
||
/// <summary>
|
||
/// 正常的情况下,应该是使用Unit,因为这个代表的是某一个单位。
|
||
/// 由于课程中没有这个Unit,所以暂时用Account来代替。
|
||
/// </summary>
|
||
/// <param name="account"></param>
|
||
/// <param name="config"></param>
|
||
/// <param name="count"></param>
|
||
/// <returns></returns>
|
||
uint CanUse(Account account, ItemConfig config, ref int count);
|
||
/// <summary>
|
||
/// 使用物品的逻辑。
|
||
/// </summary>
|
||
/// <param name="account"></param>
|
||
/// <param name="config"></param>
|
||
/// <param name="count"></param>
|
||
void Use(Account account, ItemConfig config, ref int count);
|
||
} |