五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Mod開(kāi)發(fā)-掉落

2022-03-15 22:49 作者:道家深湖  | 我要投稿

今日有人群里提問(wèn),“怎么生成掉落物”。

如果是你,你會(huì)怎么回答他?


如果你不分類討論,直接回答了這個(gè)問(wèn)題,那答案一定是錯(cuò)的。

方塊打碎和實(shí)體打碎都有掉落物;修改自己引入的方塊或?qū)嶓w,與修改原版的又不同。排列組合一下,這就四種情況了。遇到這種情況,最好是問(wèn)清楚他要干什么。

固然,本質(zhì)上掉落物都是EntityItem類的對(duì)象,一個(gè)個(gè)對(duì)應(yīng)著ItemStack的實(shí)體,但是如何找準(zhǔn)修改掉落物的接口,調(diào)用哪些接口生成這些掉落物,是因情況而異的。

先討論那些可以修改原版內(nèi)容的情況。

生物的死亡戰(zhàn)利品,我推薦監(jiān)聽(tīng)LivingDropsEvent事件,往getDrops獲得的list里塞EntityItem。

方塊的摧毀戰(zhàn)利品,我推薦監(jiān)聽(tīng)BlockEvent.HarvestDropsEvent,往getDrops獲得的list里塞ItemStack。


如果是你自己構(gòu)造的新方塊呢?

Block::getDrops(NonNullList<ItemStack> drops, IBlockAccess world, BlockPos pos, IBlockState state, int fortune)

覆寫一下,往drops列表里塞東西。


如果是自己的新實(shí)體呢?

EntityLiving::dropLoot(boolean wasRecentlyHit, int lootingModifier, DamageSource source)?

覆寫一下,調(diào)用EntityLiving::dropItem,這個(gè)參數(shù)傳的是Item,簡(jiǎn)單,但不適合掉落具有復(fù)雜nbt的道具。

或者調(diào)用entityDropItem,這個(gè)參數(shù)傳的是ItemStack,方便掉落具有復(fù)雜nbt的道具。

LootTable這種東西不是不能用,它只是很不方便debug。如果你想用,可以去看其他的教程。


Mod開(kāi)發(fā)-掉落的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
宜兴市| 建瓯市| 连山| 甘孜| 康乐县| 探索| 甘洛县| 澄江县| 荔浦县| 宜丰县| 西安市| 万盛区| 岚皋县| 平江县| 进贤县| 新宁县| 屏南县| 揭西县| 肇东市| 临安市| 光泽县| 耒阳市| 巴林左旗| 竹溪县| 正蓝旗| 易门县| 东乌珠穆沁旗| 秦皇岛市| 贡嘎县| 遂昌县| 铁力市| 武强县| 湘阴县| 清远市| 收藏| 莆田市| 东光县| 禹州市| 隆德县| 巴彦淖尔市| 樟树市|