- Source of resources
- Original
- Copyright link
- #
- Language
- Chinese(Simplified)
- Precondition
- [可选]BEPlaceholderAPI 前置组件
- GMLIB - 功能强大的前置库 https://www.minebbs.com/resources/gmlib.6636/
- GMLIB-LegacyRemoteCallApi https://www.minebbs.com/resources/gmlib-legacyremotecallapi-gmlib-remotecallapi.7159/
- Supported version
- The latest version
介绍:
这是一款自定义侧边栏,它支持 多达 88+ 种变量 可以多行动态切换跳动
性能优化好,根据变量使用情况灵活调用服务器资源,公共资源每次刷新只调用一次(全部玩家共用,极大的节约服务器资源)对接 BEPlaceholderAPI 变量使用简单 还支持 js 表达式!
如果遇到问题可以 点击我加群询问 ( 往下滑动 有视频教程 )
配置监听记分板(>=0.1.3支持)
(旧版配置需要自行添加on配置项)
例如:
变量列表:
变量统一用 {变量名} 包裹
玩家的 pl
IntPos类型介绍 完整用法 pl.pos.x
日期时间的 date
玩家设备的 dv
封装的其它变量 yoyo (BEPlaceholderAPI支持 变量调用 %s_yoyo_itemSum% )
BEPlaceholderAPI前置插件支持 你可以这样(>=0.1.3支持)
bep | b | B | Bep
JavaScript 表达式(>=0.1.5支持)
注意:
BEPlaceholderAPI的变量这里无法直接 b.xx bep.xx
需要这样:
例如:
配置文件路径:
玩家命令(0.1.20更新修改)
控制台命令(0.1.20更新修改)
配置文件:
hz:600 是刷新频率单位毫秒
title:["我是标题"] 这是标题该数组添加多个可以循环切换显示
data:["第一行","第二行"] 这个里面每一行代表一行侧边栏
data:["第一行","第二行",["第三行,第一条","第三行,第二条"]] 同样和标题一样支持多条切换
data:["我叫:{pl.name}","第二行"] 比如这个我们添加了一个{pl.name}显示玩家名称的变量
视频演示:
这是一款自定义侧边栏,它支持 多达 88+ 种变量 可以多行动态切换跳动
性能优化好,根据变量使用情况灵活调用服务器资源,公共资源每次刷新只调用一次(全部玩家共用,极大的节约服务器资源)对接 BEPlaceholderAPI 变量使用简单 还支持 js 表达式!
如果遇到问题可以 点击我加群询问 ( 往下滑动 有视频教程 )
重构更新 0.1.0
配置监听记分板(>=0.1.3支持)
(旧版配置需要自行添加on配置项)
例如:
JavaScript:
"on": {
"money": {
'<=0': '{num}一干二净',//小于等于 0
'=100': '小钱带',
'500': '钱包鼓鼓',// = 可以忽略不写
'>1000': '小富',//大于1000
'>=5000': '富豪',//大于等于5000
'>=100000': '富可敌国'
}//监听 money 记分项 只对该记分项生效
},//记分板监听 显示不同字符串
// {num} 是监听记分板的值 的变量 (这里只支持这一种!!!)
变量列表:
变量统一用 {变量名} 包裹
玩家的 pl
属性 | 含义 | 类型 |
---|---|---|
pl.llmoney | 玩家llmoney | Integer |
pl.name | 玩家名 | String |
pl.pos | 玩家所在坐标 | number |
pl.blockPos | 玩家所在的方块坐标 | IntPos |
pl.lastDeathPos | 玩家上次死亡的坐标 | IntPos |
pl.realName | 玩家的真实名字 | String |
pl.xuid | 玩家XUID字符串 | String |
pl.uuid | 玩家Uuid字符串 | String |
pl.permLevel | 玩家的操作权限等级(0 - 4) | Integer |
pl.gameMode | 玩家的游戏模式(0 - 3) | Integer |
pl.canFly | 玩家是否可以飞行 | Boolean |
pl.canSleep | 玩家是否可以睡觉 | Boolean |
pl.canBeSeenOnMap | 玩家是否可以在地图上看到 | Boolean |
pl.canFreeze | 玩家是否可以冻结 | Boolean |
pl.canSeeDaylight | 玩家是否能看到日光 | Boolean |
pl.canShowNameTag | 玩家是否可以显示姓名标签 | Boolean |
pl.canStartSleepInBed | 玩家是否可以开始在床上睡觉 | Boolean |
pl.canPickupItems | 玩家是否可以拾取物品 | Boolean |
pl.maxHealth | 玩家最大生命值 | Integer |
pl.health | 玩家当前生命值 | Integer |
pl.inAir | 玩家当前是否悬空 | Boolean |
pl.inWater | 玩家当前是否在水中 | Boolean |
pl.inLava | 玩家是否在熔岩中 | Boolean |
pl.inRain | 玩家是否下雨 | Boolean |
pl.inSnow | 玩家是否在雪中 | Boolean |
pl.inWall | 玩家是否在墙上 | Boolean |
pl.inWaterOrRain | 玩家是否在水中或雨中 | Boolean |
pl.inWorld | 玩家是否在世界 | Boolean |
pl.inClouds | 玩家是否在云端 | Boolean |
pl.sneaking | 玩家当前是否正在潜行 | Boolean |
pl.speed | 玩家当前速度 | Float |
pl.directionStr | 玩家当前朝向 | DirectionAngle |
pl.uniqueId | 玩家(实体的)唯一标识符 | String |
pl.langCode | 玩家设置的语言的标识符(形如zh_CN) | String |
pl.isLoading | 玩家是否已经加载 | Boolean |
pl.isInvisible | 玩家是否隐身中 | Boolean |
pl.isInsidePortal | 玩家在传送门中 | Boolean |
pl.isHurt | 玩家是否受伤 | Boolean |
pl.isTrusting | 未知 | Boolean |
pl.isTouchingDamageBlock | 玩家是否在能造成伤害的方块上 | Boolean |
pl.isHungry | 玩家是否饿了 | Boolean |
pl.isOnFire | 玩家是否着火 | Boolean |
pl.isOnGround | 玩家是否在地上 | Boolean |
pl.isOnHotBlock | 玩家是否在高温方块上(岩浆等) | Boolean |
pl.isTrading | 玩家在交易 | Boolean |
pl.isAdventure | 玩家是否是冒险模式 | Boolean |
pl.isGliding | 玩家在滑行 | Boolean |
pl.isSurvival | 玩家是否是生存模式 | Boolean |
pl.isSpectator | 玩家是否是观众模式 | Boolean |
pl.isRiding | 玩家是否在骑行 | Boolean |
pl.isDancing | 玩家在跳舞? | Boolean |
pl.isCreative | 玩家是否是创造模式 | Boolean |
pl.isFlying | 玩家是否在飞行 | Boolean |
pl.isSleeping | 玩家是否正在睡觉 | Boolean |
pl.isMoving | 玩家是否正在移动 | Boolean |
pl.ip | 玩家设备IP地址 | String |
pl.getScore(name) | 获取玩家计分项的分数(方便函数) | Integer |
pl.isOP() | 玩家是否为OP | Boolean |
根据llse 玩家对象 文档 | 基本上函数都可以调用不过除非你知道你在干嘛,否则不要乱来哦 | 危险危险危险 |
IntPos类型介绍 完整用法 pl.pos.x
成员 | 含义 | 类型 |
---|---|---|
pos.x | x 坐标 | Integer |
pos.y | y 坐标 | Integer |
pos.z | z 坐标 | Integer |
pos.dim | 维度文字名 | String |
pos.dimid | 维度ID | Integer |
日期时间的 date
变量名 | 描述 | 返回值 |
---|---|---|
date.Y | 年 | 2021 |
date.M | 月 | 10 |
date.D | 日 | 24 |
date.h | 小时(24小时制) | 02 |
date.m | 分 | 07 |
date.s | 秒 | 43 |
date.ms | 毫秒 | 321 |
玩家设备的 dv
属性 | 含义 | 类型 |
---|---|---|
dv.ip | 玩家设备的IP地址 | String |
dv.avgPing | 玩家的平均网络延迟时间(ms) | Integer |
dv.avgPacketLoss | 玩家的平均网络丢包率(%) | Float |
dv.lastPing | 玩家的网络延迟时间(ms) | Integer |
dv.lastPacketLoss | 玩家的网络丢包率(%) | Float |
dv.os | 玩家设备的操作系统类型 | String |
dv.inputMode | 玩家的操作模式 | Integer |
dv.playMode | 玩家的游玩模式 | Integer |
dv.serverAddress | 玩家连接的地址 | String |
dv.clientId | 玩家客户端的识别码ID | String |
封装的其它变量 yoyo (BEPlaceholderAPI支持 变量调用 %s_yoyo_itemSum% )
变量名 | 描述 | 返回值 |
---|---|---|
yoyo.itemSum | 已加载区块的掉落物实体总数 | 14 |
yoyo.itemDetailSum | 掉落物物品数量 | 125 |
yoyo.beingSum | 已加载区块的生物实体总数 | 43 |
yoyo.playerSum | 当前在线玩家总数 | 3 |
yoyo.bdsv | 返回BDS当前版本 | 1.17.30 |
yoyo.llv | 返回LiteXLoader当前版本 | 0.5.7 |
yoyo.tps | 返回当前tps值 | 19.89(最大20) |
yoyo.bdsa | bds版本协议 |
BEPlaceholderAPI前置插件支持 你可以这样(>=0.1.3支持)
bep | b | B | Bep
JavaScript 表达式(>=0.1.5支持)
注意:
BEPlaceholderAPI的变量这里无法直接 b.xx bep.xx
需要这样:
例如:
配置文件路径:
玩家命令(0.1.20更新修改)
控制台命令(0.1.20更新修改)
配置文件:
JSON:
{
"hz": 800,
"on": {
"money": {
"500": "{num}钱包鼓鼓",
"<=0": "{num}一干二净",
"=100": "{num}小钱带",
">1000": "{num}小富",
">=5000": "{num}富豪",
">=100000": "富可敌国"
}
},
"title": [
"§1§g\\公告:§5欢迎您加入我们哦! ",
"§1§g-公告:§5欢迎您加入我们哦! ",
"§1§g/公告:§5欢迎您加入我们哦! "
],
"data": [
"§e{pl.realName},§g你好!",
"§g记分板:§5{pl.getScore(money)}",
[
"§g平台: §5{dv.os}",
"§g延迟: {js:(dv.avgPing>=100?'§4':'§2')+dv.avgPing}ms",
"§g版本:§6{yoyo.bdsv}"
],
"§g掉落物: §4{js:(yoyo.itemDetailSum>=1000?'§4(好多)':'§2(挺少)')+yoyo.itemDetailSum},§g生物: §4{yoyo.beingSum}",
"§g玩家: §5{yoyo.playerSum},§g朝向:§5{pl.directionStr}",
"§gmoney: §3{pl.llmoney}",
"§g现在是:§5{date.D}号 {date.h}:{date.m}:{date.s},{js:date.h>=22||date.h<4?'§l§8夜深了':'§3嗨起来'}",
"§g是否悬空:§5{pl.inAir},§gTps:§5{yoyo.tps}"
]
}
hz:600 是刷新频率单位毫秒
title:["我是标题"] 这是标题该数组添加多个可以循环切换显示
data:["第一行","第二行"] 这个里面每一行代表一行侧边栏
data:["第一行","第二行",["第三行,第一条","第三行,第二条"]] 同样和标题一样支持多条切换
data:["我叫:{pl.name}","第二行"] 比如这个我们添加了一个{pl.name}显示玩家名称的变量
视频演示: