截图
介绍
Di Library
This is a small multifunctional datapack library reduced repetitive works.
- Version number: 2.4
- Game versions: 1.20.3-1.20.4
- Author: Minecraft_hyr
- Project Links: Modrinth, Github
Feature List
English
Fabric Convention Tags (namespace: c)
- Tags from Fabric API / Fabric Convention Tags For mod compatibility. License LGPL-2.1-only
Minecraft files (namespace: minecraft)
- If you want to embed tick/load function Di Library in your datapack, please add functions in minecraft tag file
- If you are not using tick/load functions, you may not need this.
Di Library files (namespace: dilib)
- If player join the game and there is only 1 player, game will run
function #minecraft:load(reload only functions) - Stored some tags & item_modifiers & predicates
- If a item has tag
{dilib:{clear:1b}}, it will be clear in inventory / in world
/function dilib:presets/objectives: This function will load when install.
Load some scoreboard objectives, some display names are official translate text.
Can be used for check statics, but please do not modify these scores
/function dilib:presets/const: This function will load when install. Add to theconstobjectives: -1000..1000 ±(10^\), ±(10^\-1) ±(2^\), ±(2^\-1) 10\* 100..1000,-100..-1000
Add into storage dilib:data const: pi:3.141592653589793d,tau:6.283185307179586d,e:2.718281828459045d
/function dilib:presets/durability: Calculate damage to item for unbreaking item. Input:score damage dilib..temp: Expect damage to item (default: 1)storage dilib:data temp: Item NBT (id,tag,Count)storage dilib:data temp.slot: Item slot string for/itemcommand
/function dilib:presets/explosion: Explosion selecting location without creeper ghost. Macro:$(radius): NBTExplosionRadius
/function dilib:presets/uuid_pointing: Select entity that UUID pointing. Macro:$(UUID): Target entity.$(command): The command will running on target entity.
/function dilib:presets/slot_to_string/player: Convert input byte data to string can be used in/itemcommand. Input:storage dilib:data input.slot: Byte data。 Output:storage dilib:data output.slot: String。
/function dilib:presets/killA powerful kill won’t keep anything
tag global.ignore
/function dilib:presets/math/powerCalculate power. Input:score input dilib..temp: basescore power dilib..temp: power Output:score output dilib..temp
/function dilib:presets/math/sqrtCalculate square root. Input:score input dilib..tempOutput:score output dilib..temp
/function dilib:presets/math/avgCalculate the average value (anti-overflow). Input:score input1 dilib..tempscore input2 dilib..tempOutput:score output dilib..temp
/function dilib:presets/math/unit_fractionCalculate unit fraction (Fraction with numerator 1). Input:score input dilib..temp: denominator Output:score output dilib..temp
/function dilib:debug:
- First execute: Show particles at marker, notification when function loaded, show player’s dilib only actions in action bar.
- Second execute: Remove all features.
Add your functions in tags to run function every times event happen:
| _Player_
tag/functions #dilib:player/trigger_menus:
Execute when /trigger menus.
Example:
tellraw @s {"text": "[Minecraft Remade]","clickEvent": {"action": "run_command","value": "/function mc_remade:tag/menu/configs/1"},"hoverEvent": {"action": "show_text","contents": "Click me to config Minecraft Remade"},"color": "green"}
tag/functions #dilib:player/new:
Execute when new player join.
players @s dilib..player_id: (In world) Player IDplayers players dilib..player_id: Joined player counter
tag/functions #dilib:player/death:
Execute when player death.
tag/functions #dilib:player/respawn:
Execute when player respawn.
tag/functions #dilib:player/sneaking:
Execute when player is sneaking.
@s dilib..sneak_time: Player sneaked time
tag/functions #dilib:player/sneak_end:
Execute when player stops sneaking.
@s dilib..sneak_time: Player sneaked time when stops sneaking
tag/functions #dilib:player/jump:
Execute when player jump.
tag/functions #dilib:player/fall_end:
Execute when player stops falling.
@s dilib..fall_one_cm: Player felled distance when stops falling
tag/functions #dilib:player/level_changed
Execute when player level changed.
@s dilib..stored_level: Last tick level@s level: Current levelstep dilib..temp: Level stepped
| _Entity_
tag/functions #dilib:entity/new_item_checker:
Execute when new item appear.
@sselect the armor_stand that mainhand hold the item \*: Modifies to the item will apply tostorage dilib:data temp.Item@e[type=item,tag=dilib.this,limit=1]select the Item (Entity)storage dilib:data temp.ItemItem data
tag/functions #dilib:entity/new_item_check:
Execute when new item appear.
storage dilib:data temp.ItemItem data \*: Modifies to the Item data will apply to Item (Entity)
| _World_
tag/functions #dilib:world/day_changed:
Execute when day changed.
stored_day dilib..data: Last tick daycurrent_day dilib..data: Current daystep dilib..temp: Day stepped
tag/functions #dilib:world/daytime_changed:
Execute when daytime changed.
stored_daytime dilib..data: Last tick daytimecurrent_daytime dilib..data: Current daytimestep dilib..temp: Daytime stepped
中文
Fabric Convention Tags (命名空间: c)
- 标签来自 Fabric API / Fabric Convention Tags 为兼容模组添加。 许可证 LGPL-2.1-only
Retina 文件 (命名空间: retina)
- 见 Retina 为视线追踪添加。 ❗ 仍在 1.20.2,等待更新
Minecraft 文件(命名空间: minecraft)
- 如果你要把 Di Library 内置的 tick/load 相关的函数在你的数据包里,请在你的对应标签文件中添加函数
- 如果你没有使用 tick/load 相关的函数,那么你可能不需要这个。
Di Library 文件(命名空间: dilib)
- 如果玩家加入世界且只有一个玩家,会执行
function #minecraft:load(只重载函数) - 存放了一些标签、物品修饰器、谓词
- 如果一个物品有标签
{dilib:{clear:1b}},它在物品栏或在世界里会被清除。
/function dilib:presets/objectives: 该功能在安装时会被加载。 加载一些计分项。部分显示出的名称是官方的可翻译文本。可以用来统计数据,但请不要修改这些数据
/function dilib:presets/const: 该功能在安装时会被加载。 向计分项 const 里加入: -1000..1000 ±(10^\), ±(10^\-1) ±(2^\), ±(2^\-1) 10\* -100..1000,-100..-1000
- 向
storage dilib:data const加入:pi:3.141592653589793d,tau:6.283185307179586d,e:2.718281828459045d
/function dilib:presets/durability: 计算有耐久附魔的物品耐久 输入:score damage dilib..temp: 预期对物品的伤害 (默认: 1)storage dilib:data temp: 物品 NBT (id,tag,Count)storage dilib:data temp.slot: 对/item命令使用的槽位名称
/function dilib:presets/explosion: 在当前位置执行没有苦力怕鬼影的爆炸。 宏:$(radius): NBTExplosionRadius
/function dilib:presets/uuid_pointing: 选中 UUID 指向的实体. 宏:$(UUID): 目标实体$(command): 目标实体执行的命令。
/function dilib:presets/slot_to_string/player: 将输入的 byte 数据转换为可以在/item命令中使用的字符串 输入:storage dilib:data input.slot: Byte 数据。 输出:storage dilib:data output.slot: 字符串。
/function dilib:presets/kill不保留任何东西的 kill
tag global.ignore
/function dilib:presets/math/power计算乘方。输入:score input dilib..temp: 底数score power dilib..temp: 指数 输出:score output dilib..temp
/function dilib:presets/math/sqrt计算平方根。输入:score input dilib..temp输出:score output dilib..temp
/function dilib:presets/math/avg计算平均值(防溢出)。输入:score input1 dilib..tempscore input2 dilib..temp输出:score output dilib..temp
/function dilib:presets/math/unit_fraction计算单位分数(分子为 1 的分数)。 输入:score input dilib..temp: 分母 输出:score output dilib..temp
/function dilib:debug:
- 第一次执行: 每一秒在标记处显示粒子,函数加载完毕时进行反馈,显示玩家在 DiLib 专属的动作于快捷栏标题。
- 第二次执行: 清除上述所有特性
将你的函数加入标签,函数会在事件发生时运行:
| _玩家_
tag/functions #dilib:player/trigger_menus:
在 /trigger menus 时触发。
例:
tellraw @s {"text": "[Minecraft Remade]","clickEvent": {"action": "run_command","value": "/function mc_remade:tag/menu/configs/1"},"hoverEvent": {"action": "show_text","contents": "Click me to config Minecraft Remade"},"color": "green"}
tag/functions #dilib:player/new:
新玩家加入时触发。
dilib:tags/advancements/tick:
@s dilib..player_id: (世界中的)玩家 IDplayers dilib..player_id: 进入过的玩家总数
tag/functions #dilib:player/death:
玩家死亡时触发。
tag/functions #dilib:player/respawn:
玩家重生时触发。
tag/functions #dilib:player/sneaking:
玩家潜行时触发。
@s dilib..sneak_time: 玩家已潜行时间
tag/functions #dilib:player/sneak_end:
玩家潜行结束时触发。
@s dilib..sneak_time: 玩家潜行结束时的潜行时间
tag/functions #dilib:player/jump:
玩家跳跃时触发。
tag/functions #dilib:player/fall_end:
玩家摔落结束时触发。
@s dilib..fall_one_cm: 玩家摔落结束时的摔落距离
tag/functions #dilib:player/level_changed
玩家等级改变时触发。
@s dilib..stored_level: 上一刻的等级@s level: 当前等级step dilib..temp: 步进的等级
| _实体_
tag/functions #dilib:entity/new_item_checker:
新物品出现时触发。
@s主手持有物品的盔甲架 \*: 更改物品会应用于对应的storage dilib:data temp.Item上@e[type=item,tag=dilib.this,limit=1]选中当前物品(实体)storage dilib:data temp.Item: 物品数据
tag/functions #dilib:entity/new_item_check:
新物品出现时触发。
storage dilib:data temp.Item: 物品数据 \*: 更改物品数据会应用于对应的物品(实体)上
| _世界_
tag/functions #dilib:world/day_changed:
日期变化时触发。
stored_day dilib..data: 上一刻的日期current_day dilib..data: 当前日期step dilib..temp: 步进的日期
tag/functions #dilib:world/daytime_changed:
今日时间变化时触发。
stored_daytime dilib..data: 上一刻的今日时间current_daytime dilib..data: 当前今日时间step dilib..temp: 步进的时间
常见问题
Di Library 支持哪些 Minecraft 版本?
Di Library 支持 Minecraft Java 版 1.20.2–1.20.4,共 2 个版本。下载时注意选择和你游戏版本一致的文件。
Di Library 怎么安装?
新建世界时在「数据包」里把下载的 .zip 拖进去;已有的存档,把文件放进存档目录下的 datapacks 文件夹,进游戏输入 /reload 即可生效。服务器同样放在世界目录的 datapacks 里。
Minecraft_hyr 的其他作品
查看全部 →
Resource Fixes & Tweaks
Optimize block models and fix bugs in Default resources.
Minecraft Remade
Tweaks Minecraft. Keeps in balanced.
Upgradeable Spawner
An upgradeable spawner!
Trigger Utilities
This is a datapack add some useful trigger commands. /trigger hat/separate_item/kill/sit/death_point/rtp
评论
登录后评论和评分