unity-学习笔记-久久更新一下

这篇博客记录了在Unity中实现炸弹碰撞检测与角色生命值清零后的重生功能。作者通过挂载脚本来监控碰撞,播放特效和音效,并与服务器交互。遇到的问题包括连续攻击时的重生逻辑处理和脚本间的交互导致的UI bug。解决方案包括存储死亡状态以避免重复重生调用,以及暂时关闭语音脚本中的UI控制代码。未来计划实现NPC对话、动画接入及表情联动等任务。
摘要由CSDN通过智能技术生成

unity-学习笔记

最近都在做旧东西,更新场地资源,给场地中的一些物体添加功能(爆炸和人物生命值归0弹出死亡的界面,并且在倒计时之后自动到维修室进行生命值的恢复)
这两个功能看起来都不太麻烦,不过因为都是第一次做所以还是花了一点时间,而且感觉也还是有一些问题存在的
炸弹的功能,我是在炸弹的身上挂了脚本去监控炸弹和人物之间的碰撞然后播放制作好的粒子爆炸特效和音效,同时让炸弹消失,接着给服务器发送消息扣除生命,给人物的材质上一个中毒颜色并且语音提示用户人物受到了伤害
整个流程就是这样,代码就补贴了这个功能实现的还算顺利,就是由于炸弹的位置是提前已经摆放好的,个人感觉按照常理来说应该是通过代码去生成的比较合理不过时间关系就先这样做了
第二个是生命为0时的重生功能
首先需要判断生命值是否等于或者小于0
这里就遇到了一些问题因为有的攻击是连续的,也就是当我生命值为0 的时候,会出现多次调用重生办法的情况,想了一会儿,决定使用playerfes将死亡的状态存储在本地中,第二次的时候发现是已经死了的状态就不调用重生的方法(说来容易,其实想了半天没有想到这个办法)感觉这个可能最好是和服务器关联能比较稳定的保证不出现bug或者隐患(如用户知道这个bug会通过这个去避开一些关卡)
第二个问题就是生命值为0 的这个功能需要的环境比较多,比如人物的状态的脚本,ui的脚本,场地的脚本,语音的脚本等
还需要制作一个显示重生进度的进度条和一些小特效以及音效
简单来说就是脚本之间的关联变得比之前复杂了,加上之前没有很好的去思考有关ui阻碍的条件,导致在同时调用了这么多脚本的时候,会有些变量之间相互影响导致一些小bug,如在语音的脚本里我设置了在播放语音的时候ui是不能动的,当播放完毕之后ui恢复,而在重生功能里需要倒计时和语音播放提示用户人物死亡,重生倒计时时ui不能动,语音播放的时候不能动这些没问题,就是在语音播放完之后,重生的倒计时还没结束,但是语音的脚本里设置了播放完毕之后就会恢复ui,导致了在重生的时候倒计时到一半就能操控人物接着移动了,这显然是不行的
目前我的解决办法就是先关闭了语音播放里控制ui状态的代码
因为语音脚本里对应的方法时间不是很长,所以不会对整体的体验有太大的影响,但是这个也说明了对功能没有整体的把控去实现功能出现的问题会比较麻烦
加油吧
明天实现一个简单的npc对话文字显示的功能,加上把动画师做好的二阶段的人物动画模型接入到项目里
以及把表情和图灵接口回传的表情id做一个联动
后面还有的工作我看看:面罩的材质,估计还要更新一次场地资源(现在打包出来已经200m了)
学习aesShadergragh的全屏特效制作应用到项目里
合并;同事代码
整体打包和原生app对接融合

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

淳杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值