这里我将源码调整为新手也能看得懂的个大概的,去掉了面向对象的编程。
我先把项目包放在这里,再来一个个解释一下。
剑.rbxl (54.8 KB)
1、项目中的Workspace里有个enemy文件夹,这个是用来放置NPC敌人的。
2、ReplicatedStorage中放置着两个文件夹,event是用来放置服务器与客户端通信的对象的,而script文件夹中放着一个moudlescript,里面的比较复杂的代码都进行简化过,这个脚本是用来执行剑的功能的。
3、ServerScriptService中有个Attack的脚本,主要是用来接受来自客户端的数据和伤害的,其中有一段“玩家加入游戏时触发事件”的代码,该事件的功能是用来判断四连击的次数的。
4、最后在StarterPlayer——StarterCharacterScripts中放置着一个布尔值对象StartAttack,还有一把剑。布尔值对象是用来检测此时是否正在进行攻击,如果正在攻击过程,则不触发下一段攻击,主要是为了限制攻击的时间。
工具剑(太刀)中有个Localscript脚本,还有:
5个动作(da:攻击第一段;db:攻击第二段;dc:攻击第三段;dd:攻击第四段;start:拿剑动作);
两个值(disvalue是攻击范围,hitvalue是伤害);
skill是Ui按钮;
Handle中有一些音效之类的。
我也很难去解释了,可以自己凑合着学习学习,我就不多解释了,因为自己是独立开发者,又是个大学生,所以只对主要功能进行注释,大多数代码都没有去注释的。还有,空岛冒险者的动作不能开源,所以就用Roblox的官方动作进行四连击的展示了。
好了,下次再见。