- 版权类型
- 二次开发
- 插件中文名称
- 自定义玩家屏幕菜单
- 插件英文名称
- CustomScreenMenu
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- Purpur
- 语言支持
- 中文(简体)
- 前置组件
- ProtocolLib
PlaceholderAPI
- 适配版本(Java)
- 26.x
- 1.21
- 1.20
- 1.19
CustomScreenMenu 插件
插件简介
一款支持高版本 Minecraft 使用的自定义玩家屏幕交互插件,可通过指令快速调用,适用于特殊场景下的屏幕点击交互(如玩家首次进入游戏时的专属起始菜单界面)。(PS:如需兼容其他端和插件或有建议功能可添加作者qq:3357153117,开源将不会获得作者的支持和帮助,目前核心主要是适配PAPER1.21.4)
开源地址:https://github.com/JSGDJD/CustomScreenMenu
点击链接加入群聊【熊式插件】
核心功能亮点
- 支持高版本 Minecraft 稳定运行
- 指令化操作,灵活控制屏幕交互流程
- 特殊场景适配(如玩家进入游戏时的起始菜单)
- 集成物品 3D 模型展示功能
- 可与其他插件联动扩展(如 ItemsAdder、betterhud)
- 文字样式旋转,上下移动,左右移动,多样化发展
指令列表
/cursormenu run [name] 启动指定名称的屏幕菜单界面/cursormenu stop 立即停止当前运行的屏幕菜单/cursormenu items [item_name] 展示指定物品的 3D 模型/cursormenu itemsstop 停止当前物品的 3D 模型展示/cursormenu reload 重载插件配置文件(修改配置后需执行)/cursormenu run [name] player 为指定玩家启动指定名称的屏幕菜单界面
变量API
%cursormenu_current_menu% – 当前打开的菜单名称%cursormenu_selected_option% – 当前高亮的选项名称
%cursormenu_display_item_id% – 当前展示物品的 ID
%cursormenu_clicked_option% – 刚刚点击的文字布局组件键名
%cursormenu_is_attacking_or_breaking% – 检测当前玩家破坏或攻击的变量,true为是,false为否
%cursormenu_menu_world% – 菜单所在世界
%cursormenu_button_x% – 所选按钮的 X 坐标
%cursormenu_button_y% – 所选按钮的 Y 坐标
%cursormenu_button_z% – 所选按钮的 Z 坐标
扩展联动
结合 ItemsAdder 插件(自定义物品)与 betterhud 插件(HUD 界面优化),可实现:- 物品的 3D 模型悬浮展示
- 更丰富的交互式物品信息面板设计
以下为插件实现效果视频介绍:
视频(视频菜单)
视频(3D模型展示)
视频(视频菜单2)
Java:
version: "1.1" # 不要修改
Debug: false
messages:
prefix: '&f[&eCustomScreenMenu&f] '
command_blocked: '&c固定视角下无法使用命令!'
sound:
name: 'music.menu'
volume: 1
pitch: 1
# 循环音效
loop:
# 是否开启
enabled: true
# 每隔多少秒播放一次
duration: 30
# 加入游戏就执行菜单
join-run:
enabled: true
# 延迟多少秒执行
delay: 3
# 执行的菜单
menu: 'test'
cursor-item:
material: 'ARROW'
custom-model-data: 0
scale: 0.5
# 最大3个X轴 已经为屏幕横向可容纳最大
max-x: 3
# 最大1.5个Y轴 已经为屏幕纵向可容纳最大
max-y: 1.5
# 光标Z轴偏移量
z-offset: 0.5
menu:
test:
# 按钮所在的位置
camera-position:
# 与文字组件的距离
distance: 1.5
world: "world"
x: -275
y: 78
z: -52
yaw: 90.0 # 水平旋转角度 (0-360)
pitch: 0.0 # 垂直旋转角度 (-90到90)
layout:
# 文字组件1
layout1:
name: "そ"
# 文字组件的x轴
x: -1.3
# 文字组件的y轴
y: 1
# 文字组件的z轴
z: 2
tilt:
x: 0.0 # 上下倾斜(俯仰)
y: 40.0 # 左右倾斜(偏航)
z: 0.0 # 前后倾斜(翻滚)
# 点击的执行命令
command:
- '[player] say test'
- '[op] give %player% stone 1'
# 点击后是否结束菜单
stop-menu:
enabled: true
# 结束后传送
teleport:
enabled: false
# 返回原本位置 或 返回指定位置
back-original: true
world: 'world'
x: 10
y: 80
z: 10
# 结束后执行的命令
command:
enabled: false
list:
- '[player] say stop'
# 文字组件2
layout2:
name: "き"
# 文字组件的x轴
x: 1
# 文字组件的y轴
y: 0.5
# 文字组件的z轴
z: 2
tilt:
x: 0.0 # 上下倾斜(俯仰)
y: 40.0 # 左右倾斜(偏航)
z: 0.0 # 前后倾斜(翻滚)
command:
- '[player] say test'
- '[op] give %player% stone 1'
stop-menu:
enabled: false
teleport:
enabled: false
world: 'world'
x: 20
y: 90
z: 20
command:
enabled: false
list:
- '[player] say stop'
lobby:
camera-position:
distance: 2
world: "world"
x: 0
y: 100
z: 0
yaw: 0.0 # 水平旋转角度 (0-360)
pitch: 0.0 # 垂直旋转角度 (-90到90)
layout:
layout1:
name: "Start"
x: 0
y: 0
z: 0
tilt:
x: 0.0 # 上下倾斜(俯仰)
y: 0.0 # 左右倾斜(偏航)
z: 0.0 # 前后倾斜(翻滚)
command:
- '[player] say test'
- '[op] give %player% stone 1'
stop-menu:
enabled: false
teleport:
enabled: false
world: 'world'
x: 10
y: 80
z: 10
command:
enabled: false
list:
- '[player] say stop'
layout2:
name: "Options"
x: 0
y: -1
z: 0
tilt:
x: 0.0 # 上下倾斜(俯仰)
y: 0.0 # 左右倾斜(偏航)
z: 0.0 # 前后倾斜(翻滚)
command:
- '[player] say test'
- '[op] give %player% stone 1'
stop-menu:
enabled: false
teleport:
enabled: false
world: 'world'
x: 20
y: 90
z: 20
command:
enabled: false
list:
- '[player] say stop'
代码:
# 物品显示配置
display-items:
# 物品ID (用于命令参数)
example_item:
material: "DIAMOND_SWORD" # 物品材质
custom-model-data: 0 # 自定义模型数据
scale: 0.3 # 显示缩放比例
offset: # 相对于玩家视角的偏移量
x: 0.5
y: 0
z: 2.0
glow: true # 是否发光
rotate: true # 是否旋转
rotate-speed: 2.0 # 旋转速度(数值越大越快)
测试视频: