# 战利品功能

# 作者:境界

战利品功能可以赋予战利品更加强大的能力,以僵尸正常掉落战利品的情况为例,functions内定义了两个功能:set_count和looting_enchant,前者是设置掉落腐肉时的数量,后者是被抢夺附魔赋予的额外数量。min是最小值,而max是最大值,数量会在这区间内随机产生。

除此之外,原版还有非常多的功能以供选择。

# 与附魔相关的有:

enchant_with_levels:通过附魔等级给予附魔。可以设置为附魔等级设置固定数值或随机区间。

{
  "function": "enchant_with_levels", //功能名称
  "treasure": false, //若为真,则赋予稀有的附魔
  "levels": 1 //附魔等级
}
{
  "function": "enchant_with_levels", //功能名称
  "treasure": false,//若为真,则赋予稀有的附魔
  "levels": {"min":1, "max": 2}//附魔等级
}

enchant_randomly:随机附魔。

{
  "function": "enchant_randomly",//功能名称
  "treasure": false,//若为真,则赋予稀有的附魔
}

enchant_random_gear:给予随机的护甲附魔。

{
  "function": "enchant_random_gear", //功能名称
  "chance": 0 //概率,0.0~1.0区间,1.0=100%
}

specific_enchants:指定附魔和等级(等级可以超过原版上限,但游戏内只会显示原版的最高等级)。

{
  "function": "specific_enchants",
  "enchants": [
      {
        "id": "aqua_affinity",
        "level": 1      
      }
    ]
}

# 与物品相关的有:

set_data://指定物品附加值,如羊毛附加值15为黑色羊毛。

{
   "function": "set_data",
   "data": 15
}

set_damage:指定物品百分比耐久度,1=100%的剩余耐久度,0为没有剩余耐久度,取值在0.0~1.0之间。

{
  "function": "set_damage",
  "damage": 1
}

set_data_from_color_index:根据minecraft:color行为设置对应的附加值,原版使用minecraft:color行为的生物有羊,因此会根据羊的羊毛颜色掉落对应的羊毛。

{
  "function": "set_data_from_color_index"
}

random_aux_value:会给予一个非方块物品随机的附加值。

{
    "function": "random_aux_value",
    "values": {
        "min": 2,
        "max": 9
    }
}

set_book_contents:会给予一本写好的书书名、作者、以及书本内容。

{
  "function": "set_book_contents",
  "title": "1",
  "author": "1",
  "pages": [
    "1111",
    "2222"
  ]
}

fill_container:会掉落或者给予一个箱子方块、发射器方块、漏斗方块一个自定义的战利品配置表。

{
  "function": "fill_container",
  "loot_table": "loot_tables/table.json"
}

furnace_smelt:会掉落一个带有熔炉配方的道具的配方结果,如牛肉变烤牛肉;条件目前只有on_fire着火和on_ground着地两种。

{
  "function": "furnace_smelt",
  "conditions": [
    {
      "condition": "entity_properties",
      "entity": "this",
      "properties": {
        "on_fire": true
      }
    }
  ]
}

set_banner_details:设置旗帜的细节。

{
  "function": "set_banner_details",
  "conditions": [
    {
      "condition": "entity_properties",
      "type": 1    
     }
  ]
}

exploration_map:设置地图变为探险家地图,其中destination的目标值为原版/locate指令的参数,包括 "monument", "mansion", "village", "stronghold", "temple", "ruins", "shipwreck", "pillageroutpost", "buriedtreasure", "mineshaft", "endcity", "fortress", "ruinedportal", "bastionremnant"。

{ 
  "function": "exploration_map", 
  "destination": "monument" 
}

random_block_state:随机选取一个block state值,当设置的物品为方块物品且含有该值的话,如 "coral_color", "flower_type", "sapling_type",更多blockstate请参考wiki:https://minecraft.gamepedia.com/Block_states (opens new window)

{ 
  "function": "random_block_state", 
  "values":   { 
      "min": 1, 
      "max": 1 
    }
}

set_lore:设置物品词缀。

{ 
  "function": "set_lore", 
  "lore": [ "111" ] 
}

set_name:设置物品名称。

{
   "function": "set_name", 
   "name": "design" 
}

set_actor_id:设置生物蛋物品的生物ID,会掉落该生物的生物蛋。

{
  "function": "set_actor_id",
  "id": "minecraft:zombie"
}