瞬时补血对于不死族有负面的伤害作用
而瞬时伤害对于不死族则是正面的补血作用
因此通过透支瞬时补血,可以一次性杀死一群僵尸猪人
当然这个肯定不是最重要的内容
这么多猪人,如果不用lootingIII[掠夺3]的剑感觉就是浪费
但是毕竟剑还是有耐久的,用经验换金子值不值得呢?
关于MC中的伤害判定:
其实我们来研究一下MC的RPG元素
MC里面对于伤害的判断其实是很松懈的
只要是被伤害对象在指定时间内死亡,死亡都是算在造成伤害的人身上
很经典的一个应用就是,把怪打下悬崖
虽然摔落伤害不是我们造成的
但是由于我们最后一击和怪物摔死的时间差在伤害时效范围内
所以说怪物虽然是摔死的但是还是算在我们头上
因此我们这样杀死怪物也可以得到经验物品等
可以说是出于编程的方便,一个攻击并没有带上信息
因此也就是说,一个怪物被攻击了,怪物的代码只知道是被某个玩家攻击了
而不知道被什么武器攻击的
武器有没有sharpness?有没有knockback?有没有looting?
这些代码都是无从而知的
因此为了要判断武器的属性,MC的代码做了一件很巧妙的事
在伤害造成的时候检查造成伤害玩家手里的武器
这个是很巧妙的办法,对于剑等的攻击来说伤害造成的时候手里肯定就是造成伤害所用的剑
所以说检查玩家手中的武器就可以知道所带的特殊附魔效果了
这样做,每次攻击代码不需要带上额外数据存入游戏中
但是考虑一下远程攻击的情况
如果说我射了一支箭,在箭击中怪物之前把手中的武器换成剑,会怎么样呢?
怪物收到伤害了,自然代码就会用所谓巧妙的办法检查玩家手中的武器
然后发现玩家手中的是剑,就按照剑的附魔等特殊效果进行处理
这个时候就是应该利用这个代码的漏洞
如果你有一把lootingIII附魔的剑
先用弓射一个怪物,在箭击中怪物之前把手中的武器切换成剑
击中时,代码就会判断你手中的武器,就会认为伤害是被这把lootingIII的剑造成的
因此物品掉落就会有lootingIII的效果
尽管玩家根本没有用剑攻击怪物!
在这里我们也做相同的事情
利用可投掷的瞬时补血药水进行大范围攻击
在药水击中他们之前,利用键盘的1-9将武器切换成lootingIII的剑
击中之后,伤害就会认为是被这把剑造成的
因此所有30个猪人掉落都会有lootingIII的效果
尽管我根本没有使用剑,也不会消耗剑的耐久
简单来说就是:
我先用弓射你一箭然后在箭没射到你的时候换成剑这样射到你身上的伤害就是剑的伤害