

(请忽视那个打错的Mode。。。本来是想打Mod的)
上图所示的逻辑是,首先注册一个mod,名字是“ModName”。然后使用AddCallback添加回调。当触发MC_USE_ITEM(使用主动)的时候,就执行FnRef里面的东西,同时最下面的一个块用来指定使用的主动是D20。
执行的操作是一个if块。也就是当条件满足时xxx会做点什么。这里的条件是一个大于号,玩家的魂心数除以2大于3,由于这里的魂心数单位是半颗心,所以这里的意思就是魂心数量大于3的时候,执行一个操作。
执行的操作是BombDamage,也就是爆炸伤害,Position是位置,这里指的是玩家的位置,剩下的就是一些伤害值、半径之类的。在网站中做出这张图后,点击Lua按钮,就能生成脚本,这个脚本就可以直接作为自己做的mod的main.lua文件内容来使用。这里生成的脚本如下:
MyMode = RegisterMod('ModName',1)Isaac.AddCallback(MyMode,ModCallbacks.MC_USE_ITEM,function(__arg_0,__arg_1,__arg_2) if (Isaac.GetPlayer(0)):GetSoulHearts() / 2 > 3 then (Game()):BombDamage((Isaac.GetPlayer(0)).Position,1,1,true,Isaac.GetPlayer(0),0,0,true) endend ,CollectibleType.COLLECTIBLE_D20)
这个功能就是,使用D20时,如果玩家魂心超过三颗,就对玩家造成一次爆炸伤害。
其实还是有一定的门槛的。汉化以后门槛应该就会低很多了,目前只是把demo做了出来,感兴趣的话可以先体验一下,如果会用的话还是能做到不少事情的。