原创
今天就来给大家分享一个越变越强的技能:暴食。
暴食特点:越吃越厉害 。
那么第一个难题就是怎么得到玩家吃了多少东西呢。我们回想起来吃了多少东西在游戏里会有一个显示食物的buff,上面还有个数字。一般buff描述的数字都是变量,所以找到它可能有突破。
找到这个buff,发现$foodAmountAdd这个变量,这个变量是显示现在还有多少食物没消化,玩家如果没有进食的话这个变量只会慢慢变小或不变。如果这个变量增加了那就是吃了多少东西。
用新变量 $foodAmountAdd_上一秒 记录上一秒的食物量,当现在的食物量如果大于上一秒的食物说明过去的一秒内玩家进食了,那么上一秒内玩家吃的食物量 – 这一秒消化的食物(很小最多1,忽略)= 当前的食物量 – 上一秒的食物量。我们用 $暴食进度 储存玩家累计进食量。为了平缓成长曲线。我们用经验值和等级的方式来获得增益。
先初始化我们的经验,然后设定每级所需的经验增长,这样单独写出来方便后期维护和修改数值
然后写升级逻辑,当前经验大于升级所需经验就升级。然后让经验减去当前所需经验,计算之后再让升级所需经验增加。这儿为什么不能清零经验?因为如果你吃了120饱食度的食物按理是升两级还剩15点经验,如果清0的话就只会升一级。
然后写效果,根据等级计算加成。其中伤害加成显示为百分比,实际效果是小数,我们再算一个变量出来方便Location引用。
最后写Location,方便玩家查看等级、经验、实际效果。
进游戏测试,点一级暴食技能,然后吃下一个饱食度为122的意大利面后,我们发现暴食显示等级为2,伤害加成为10%,血量加成为10。暴食进度=122-50-55=17对的,升级所需经验=50+5+5=60也对,符合我们要求。
隐藏内容需要付费才可以看见
















鄂公网安备42011202002543号




学习了!虽然用不到这个技能。支持一下。
个人主页afdian.com/a/mrjh19969966
我tm吃吃吃此吃吃吃吃吃吃吃吃吃
队友吃,敌人吃,野猪吃,商人吃
爱发电https://afdian.com/a/ma2097
好帖,我自己研究了好几天想搞一个击杀加生命值上限的buff可以无限叠加的没研究出来
有点离谱,数值过高还无限叠加。
大佬,我这边这个红字看着像是有MOD跟你这个暴食在读取上被视为了同一种MOD,大概能是和哪些MOD冲突啊?
感谢楼主分享····
我既是饭桶
挺好的