Newer
Older
DungeonShooting / DungeonShooting_Godot / src / game / activity / package / IPackageItem.cs
  1.  
  2. /// <summary>
  3. /// 可放入背包中的物体接口,泛型T表示所属角色对象类型
  4. /// </summary>
  5. public interface IPackageItem<T> where T : Role
  6. {
  7. /// <summary>
  8. /// 物体所属角色
  9. /// </summary>
  10. T Master { get; set; }
  11.  
  12. /// <summary>
  13. /// 物体在背包中的索引, 如果不在背包中则为 -1
  14. /// </summary>
  15. int PackageIndex { get; set; }
  16.  
  17. /// <summary>
  18. /// 当物体拾起并放入背包时调用 (在 Master 赋值之后调用)
  19. /// </summary>
  20. void OnPickUpItem();
  21. /// <summary>
  22. /// 当物体从背包中移除时调用 (在 Master 置为 null 之前调用)
  23. /// </summary>
  24. void OnRemoveItem();
  25. /// <summary>
  26. /// 当切换到当前物体时调用
  27. /// </summary>
  28. void OnActiveItem();
  29. /// <summary>
  30. /// 当收起当前物体时调用
  31. /// </summary>
  32. void OnConcealItem();
  33.  
  34. /// <summary>
  35. /// 当道具溢出时调用, 也就是修改了背包大小后背包容不下这个道具时调用, 用于处理扔下道具
  36. /// </summary>
  37. void OnOverflowItem();
  38. }