纱夜
本帖最后由 纱夜 于 2023-1-28 20:26 编辑

battlelib.zip (655.6 KB, 下载次数: 11)

Battle Library


战斗地图用基础(前置?)库,提供了一些基础的scoreboard和回调,具体参考之后介绍。
数据包默认初始化函数包含一下规则:


gamerule maxCommandChainLength 400000
gamerule keepInventory true
gamerule doEntityDrops false
gamerule doDaylightCycle false
gamerule doWeatherCycle false
gamerule mobGriefing false

Example:  


# 初始化(会预先调用一次卸载)
# 会强制加载区块0 0
function battle:init

# 卸载
function battle:uninstall

APIs


# 初始化
# 会强制加载区块0 0
function battle:init

# 以执行位置击退玩家[tag=driveoff] bas::driveoff * 0.25格的距离(至多歪40格)
#
function battle:driveoff

# 以执行位置中心半径为rad,调用battleapi:circle_cb
function battle:circle/{rad}

# 以执行位置前面宽度半径为width长度为len的直线,调用battleapi:line_cb
function battle:line/width/len

# 以执行位置中心画斜向箭头指向玩家,调用battleapi:x2self_cb
function battle:x2self

# 以执行位置面向往前,以scoreboard中bas的forward参数值的0.25倍的格为距离
# 如果一格范围内有block标签的实体则会停止
# 路径回调battleapi:forward_cb
# 如果bas的fr为1,最终结束的位置会产生一个包含标签forward_result的armor_stand
function battle:forward

# 在执行位置生成盔甲架显示数字
# 使用0 8 0和0 9 0位置方块
# 使用bas的n的分数作为数字
function battle:displayn

api callback


chant_cb: 咏唱技能时每个tick回调
circle_cb: 圆圈上采样点的回调
forward_cb: forward函数路径回调
gcd_cb: 公共冷却时回调
line_cb: 直线打表回调
on_death: 玩家死亡回调
on_move: 玩家走路/跑步回调
on_sneak: 玩家潜行回调
posttick: battlelib跑完自身tick回调
pre: battlelib进行tick之前的回调
x2out_cb: 玩家往外的箭头图案回调
x2self_cb: 箭头指向玩家的回调

Scoreboards



Tags



Predicates


r1d{n}: 表示1/n的概率通过


Notes


瞬间伤害0=3♥ 2.5♥(抗性提升0)  1.5♥(1)

瞬间伤害1=6♥ 4.5♥(抗性提升0)  3.5♥(1)

瞬间伤害2=12♥ 9.5♥(抗性提升0) 7♥(1)

瞬间伤害3=24♥ 19♥(抗性提升0) 14♥(1)


瞬间治疗0=2♥

瞬间治疗1=4♥
瞬间治疗2=8♥


伤害吸收1级=2♥


3s生命恢复0=0.5♥
2s生命恢复1=0.5♥
1s生命恢复2=0.5♥
1s生命恢复3=1.5♥


2凋零0=0.5♥
1凋零1=0.5♥
1凋零2=1♥


1.5中毒0=0.5♥


1中毒max=1♥




该前置制作地图成果参考视频:
https://www.bilibili.com/video/BV1fR4y187bb

烟岚云岫

MCBBS有你更精彩~

嗦你牛子
新人报道,顺便看看大佬操作

魏、
ssssssssssssssssssssssssss

魏、
sssssssssssssssssssss

魏、
ssssssssssssssssssssssssss

第一页 上一页 下一页 最后一页