📦 Bookshelf - 3.1.0#
💫 The Spatial Update!
Introduces Moon and Sun position features, as well as fully customizable hitboxes that integrate across the entire Bookshelf ecosystem.
Bookshelf is now based on Minecraft 1.21.8.
🧱 bs.block#
🐛 #469 - 修复基于位置的战利品表运行时缺失
execute in minecraft:overworld的问题。
🔬 bs.dump#
🐛 #441 - 修复
#bs.dump:var错误添加undefined到输出的问题。
⛰️ bs.environment#
✨ #14 - Added
#bs.environment:get_sun_angleto get the sun’s angle at a specific time on the Y axis relative to the horizon, in degrees.✨ #14 - Added
#bs.environment:get_moon_angleto get the moon’s angle at a specific time on the Y axis relative to the horizon, in degrees.✨ #14 - Added
#bs.environment:get_current_sun_angleto get the current sun’s angle on the Y axis relative to the horizon, in degrees.✨ #14 - Added
#bs.environment:get_current_moon_angleto get the current moon’s angle on the Y axis relative to the horizon, in degrees.✨ #14 - Added
#bs.environment:get_moon_phaseto get the current moon phase as a string identifier following Minecraft’s 8-day lunar cycle.✨ #14 - Added
#bs.environment:look_at_sunto orient the executing entity to look at the sun.✨ #14 - Added
#bs.environment:look_at_moonto orient the executing entity to look at the moon.✨ #475 - Added time-based predicates:
is_day_time,is_night_time,is_sunrise_time,is_sunset_timefor determining current time of day.✨ #475 - Added villagers behavior predicates:
is_villager_working_time,is_villager_socializing_time,is_villager_sleeping_timefor detecting villager activity phases.✨ #475 - Added beds usage predicate:
is_bed_timefor determining when players can use beds based on weather and time conditions.✨ #475 - Added mobs behavior predicates:
is_undead_burning_time,is_monster_spawning_timefor detecting mob behavior condition according to weather and time.✨ #475 - Added bees behavior predicate:
is_bee_sleeping_timefor detecting time when bees are in their nests/hives.✨ #475 - Added creakings spawning predicate:
is_creaking_spawn_timefor detecting time when creakings can spawn.
❤️ bs.health#
🐛 #466 - 修复Paper服务器上治疗总将玩家生命值设为最大值的问题。
🎯 bs.hitbox#
✨ #465 - 新增自定义碰撞箱支持。
#bs.hitbox:get_entity现在额外返回depth值。对于大多数动态实体depth等于width,但静态实体(如物品展示框、画)及自定义碰撞箱除外。
🖱️ bs.interaction#
🐛 #463 - 修复左/右键点击事件可能错误定位至先前点击实体的问题。
🏃 bs.move#
✨ #465 - 优化移动实体的边界框计算,增加烘焙和自定义碰撞箱支持。
🧭 bs.position#
🐛 #455 – 在
bs.position中用/tp替换/rotate,解决抖动和动量问题。
🎲 bs.random#
🔦 bs.raycast#
🧣 bs.spline#
✨ #417 - 新增完整线性样条曲线支持。