战利品
在这章中会采用原生的KubeJs实现战利品的修改和添加,并不会使用LootJs进行修改战利品,LootJs的修改在模组篇章中
在原生kubeJs中,作者一共给我们提供了以下6种战利品修改或添加的方式
虽然说是六种,但其实战利品的添加都是差不多的
建议在写之前看看战利品表和战利品谓词,有空的话也可以再额外看一个物品修饰词
LootBuilderPool通用方法
setUniformRolls(int1,int2)
int1->最小抽取次数 int2->最大抽取次数
随机从奖池抽取次数
void
addCondition(JsonObject)
~
~
ConditionContainer
addConditionalFunction(Consumer<ConditionalFunction>)
~
~
FunctionContainer
addEmpty(int)
int->空值占比权重
设置抽到空的权重
LootTableEntry
addEntry(JsonObject)
~
~
LootTableEntry
addItem(ItemStack)
->
添加物品
LootTableEntry
addItem(ItemStack,int)
int-> 权重占比
添加物品
LootTableEntry
addItem(ItemStack,int,NumberProvider)
NumberProvider-> 数量范围
添加物品
LootTableEntry
addLootTable(ResourceLocation)
->
添加到其他的战利品表里
LootTableEntry
addTag(string,bool)
string->tagId bool-> 是否从其中抽取一个
添加tag作为战利品
LootTableEntry
randomChanceWithLooting(int1,int2)
int1->chance int2->multiplier
~
ConditionContainer
count(NumberProvider)
->
设置数量范围
FunctionContainer
damage(NumberProvider)
->
设置损坏值范围
FunctionContainer
enchantRandomly(ResourceLocation[])
->
随机附魔
FunctionContainer
enchantWithLevels(NumberProvider,bool)
~
~
FunctionContainer
entityProperties(EntityTarget,JsonObject)
~
~
ConditionContainer
entityScores(EntityTarget,Map<string, any>)
~
~
ConditionContainer
entries()
-
获取entries列表
JsonArray
killedByPlayer()
-
设置需要玩家击杀
ConditionContainer
randomChance(int)
->
~
ConditionContainer
randomChanceWithLooting(int1,int2)
int1-> chance int2-> multiplier
~
ConditionContainer
setBinomialRolls(int1,int2)
~
~
void
survivesExplosion()
-
~
ConditionContainer
furnaceSmelt()
-
掉落物品可被火焰附加熔炼
FunctionContainer
Last updated