跳转至

计分板

abi.h 里的分节说明

§F 计分板(§F scoreboard)

槽位

scoreboard_op

C
bool (*scoreboard_op)(int32_t op, PierStr a, PierStr b, int64_t n, void* ctx, PierStrSink out);

PierScoreboardOp

scoreboard_op 的操作(参数:a 为计分项或显示位置,b 为目标,n 为数值)。

名称 值 说明
PIER_SB_ADD_OBJECTIVE 0 a 为名字,b 为显示名,输出 "1",调用 Scoreboard::addObjective("dummy")
PIER_SB_REMOVE_OBJECTIVE 1 a 为名字,调用 Scoreboard::removeObjective
PIER_SB_LIST_OBJECTIVES 2 输出 SNBT [{name,display},…],取自 Scoreboard::getObjectives
PIER_SB_GET_SCORE 3 a 为计分项,b 为虚拟玩家名,输出分数,取自 Objective::getPlayerScore
PIER_SB_SET_SCORE 4 a 为计分项,b 为名字,n 为数值,调用 Scoreboard::modifyPlayerScore(Set)
PIER_SB_ADD_SCORE 5 a 为计分项,b 为名字,n 为数值,同上(Add)
PIER_SB_REDUCE_SCORE 6 a 为计分项,b 为名字,n 为数值,同上(Subtract)
PIER_SB_RESET_SCORE 7 a 为计分项,b 为名字,调用 Scoreboard::resetPlayerScore
PIER_SB_SET_DISPLAY 8 a 为显示位置("sidebar"、"list" 或 "belowname"),b 为计分项,调用 setDisplayObjective
PIER_SB_CLEAR_DISPLAY 9 a 为显示位置,调用 clearDisplayObjective