🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
之前在AI设计中,我们遇到了`hasSkill`;在刚才创建距离修改技能的时候,又体会了它为我们的设计思路带来的影响。现在,我们就来具体认识它一下。 </br>说起来`hasSkill`的来头可不小呢。前面和我们经常打交道的ServerPlayer还记得吧?就是经常以`player`的形象出现的那些角色对象的真身。然而,强大的ServerPlayer只是出来冲锋陷阵的大将,它还有个师傅躲在幕后没露过面呢。 </br>这个师傅叫做Player,也就是操控角色的玩家了,我们可以在游戏源码(可在群文件里搜索 秒沉水 查找到源码)的src\core\player.h文件中看到对它的详细介绍。这个`addSkill`就是这位Player的一个成员函数。ServerPlayer师承Player,因此也拥有了调用这个成员函数的能力。 它的原型是这样的: ``` hasSkill(skill_name) ``` ![](https://img.kancloud.cn/ab/e5/abe5393233ae1549fecdf4f85ec4616a_470x24.png) </br>翻译过来,就是:hasSkill(技能名称) </br>这个函数被我们用来判定一个玩家对象是否拥有指定的技能,返回`true`表示拥有,而`false`表示没有。 </br>鉴于`hasSkill`的威力我们已经领教过了,这里就不再关心它的应用了。大家都是老朋友了吧?