如何知道用户使用的是什么道具?
用户的背包中有很多的可用道具,例如使用VIP7天卡可以开通VIP,使用200金币卡可以增加200金币,这个功能相信大家都知道,但是如何实现呢,怎么才能知道用户使用的是什么道具,又如何执行该道具相应的效果,求大神指点。。
个人感觉,如果是我来实现这个功能的话,实现如下:
1.道具有一个基类,其他所有的道具都必须继承这个基类,
2.基类中有一个使用的方法,每一个类型的道具,在继承这个基类以后都必须重写这个方法,来实现使用每一类道具的效果都不相同,
3.在每当用户在背包中右击(一般都是右击,反正我玩过的游戏都是)道具,那么,得到被点击的这个对象以后.调用这个对象的使用方法.
希望对你有所帮助.
感谢您的回答,这个建议很好,但是,如果有的道具不能使用呢,比如武器道具,只能装备,不能直接使用,又该如何设计呢
@周佳强: 武器也是可以使用的啊.使用结果就是装备到人物的身上吧.?我的理解是这样,
如果真的有一种道具是不能使用的,例如任务道具,
那么在使用的时候应该弹出提示信息,提示这个任务不能被使用,
如果你不想这么设计的话.那么就做一个接口,接口里面有一个使用方法,
如果有使用功能的道具就继承这个接口,如果不能使用的道具,那么就不继承,就可以了,
@发粪图墙: 如果道具种类很多,或者同种类的道具效果不同,不是要每个道具都要见一个类吗?那样不就会有很多的类了吗?加Q吧:271626270,方便技术交流。