主题
作用
NoDrop 用于阻止玩家主动丢弃物品。
它适合用来约束大厅、菜单服、活动等待区、剧情服等不希望玩家把物品随手扔在地上的世界。
默认配置:GroovyConfig/NoDrop.yml
如果你在
config.yml -> feature-scripts.config-directory中改过脚本配置目录,请以实际目录为准。
配置示例
yml
# 是否启用该脚本
enabled: true
# 生效世界列表
# 留空 [] 表示所有世界都生效
worlds: []
# 拥有该权限的玩家可绕过限制
bypass-permission: 'hncore.scripts.nodrop.bypass'
# 取消丢弃时发送给玩家的提示
# 留空 '' 表示不发送
message: '&c当前禁止丢弃物品!'关键项说明
worlds
限定脚本生效的世界。
[]:所有世界生效- 填世界名列表:只在这些世界生效
bypass-permission
拥有该权限的玩家可以正常丢弃物品。
适合给管理员、测试人员、特殊职业或特殊玩法组单独放行。
message
玩家尝试丢弃物品被拦截时发送的提示。
- 留空:不发送消息
- 填文本:提示玩家当前世界不允许丢弃物品
实际行为
当前实现监听的是 PlayerDropItemEvent。
只要满足:
- 脚本已启用
- 当前世界命中
worlds - 玩家没有
bypass-permission
就会直接取消这次丢弃行为。
启用与重载
修改这个脚本的配置文件后,通常执行:
text
/hncore reload scripts如果你改的是 config.yml 中的脚本目录名、脚本系统总开关等核心配置,则应执行:
text
/hncore reload联动说明
- 想同时阻止玩家乱放 / 乱拆 / 乱交互:搭配 WorldProtect
- 想让大厅区域更像纯展示世界:可再搭配 NoRain、FixedTime
- 想看全部脚本索引:看 GroovyScripts 总览
注意事项
- 它只阻止“主动丢弃”,不会拦截死亡掉落、容器移动或脚本/插件直接生成掉落物
worlds: []表示全服所有世界都不能丢物,开启前最好确认是否符合玩法预期
