我们知道,当一个类实现了接口 IPointerClickHandler,就能响应鼠标点击事件,但这是怎么实现的呢?
假设我们自己写一个接口:IUseItemHandler,就是我想让物品被使用时,会被触发。
这个触发机制如何实现?
// 接口
public interface IUseItemHandler {
public void UseItem( GameObject whoUseItem, ItemInfo item );
}
// 玩家脚本
public class PlayerController : MonoBehavie, IUseItemHandler
{
// Other Code ..........
public void UseItem( GameObject whoUseItem, ItemInfo item ) {
print( whoUseItem.name + "使用了物品" + item.name );
}
}
// 物品
public class ItemInfo {
// Other Code ....
public beUsed( GameObejct whoUsed ) {
// 当该物品被使用时,如何去调用所有实现了IUseItemHandler接口的类中的接口方法?
// 这里怎么让我的接口能够触发???
}
}