GhostInventory
幽灵背包
一款方便快捷易操作的NK操作背包插件
作者darker
幽灵背包
一款方便快捷易操作的NK操作背包插件
作者darker
?️ 插件功能







? 插件特点
简单易上手,只要会打开背包就知道怎么操作,被操纵者完全没有任何提示【可作为反作弊的一环】。
实用性极高,无论是否在线均可作出及时处理,甚至在被查玩家上下线时智能切换查背状态。
功能使用,效果稳定,无论是丢掉玩家的物品还是直接给予物品都十分的方便,无需输入多个命令进行繁琐操作。
? 使用方法
[TABLE=centered]
[TR]
[TD]
权限
[/TD][TD]
指令
[/TD][TD]
说明
[/TD][/TR]
[TR]
[TD]
OP
[/TD][TD]
/gi <玩家名>
[/TD][TD]
连接某玩家的背包
[/TD][/TR]
[TR]
[TD]
OP
[/TD][TD]
/gi
[/TD][TD]
打开快捷选择被链接玩家界面
[/TD][/TR]
[/TABLE]
补充:若要退出连接背包状态,潜行即可。
如果遇到名字中带空格的玩家,请使用双引号包裹玩家名称
Java:
private ArrayList<String> parseArguments(String cmdLine) {
StringBuilder sb = new StringBuilder(cmdLine);
ArrayList<String> args = new ArrayList<>();
boolean notQuoted = true;
int start = 0;
for (int i = 0; i < sb.length(); i++) {
if (sb.charAt(i) == '\\') {
sb.deleteCharAt(i);
continue;
}
if (sb.charAt(i) == ' ' && notQuoted) {
String arg = sb.substring(start, i);
if (!arg.isEmpty()) {
args.add(arg);
}
start = i + 1;
} else if (sb.charAt(i) == '"') {
sb.deleteCharAt(i);
--i;
notQuoted = !notQuoted;
}
}
String arg = sb.substring(start);
if (!arg.isEmpty()) {
args.add(arg);
}
return args;
}
以后不需要再用什么&代替空格了,直接打双引号
?️感谢:Reiyans,花生,半藏,666的帮助测试
?当前版本:1.5.2
演示视频
熊孩子视角
事件
GhostInventoryLaunchEvent
当启用背包连接时被触发
可被取消
GhostInventorySyncEvent
当背包连接任意一方背包物品被改动时触发
可被取消
GhostInventoryTerminationEvent
当背包连接取消时被触发
以上事件均包括holder(幽灵背包主动发起者)和target(幽灵背包被动连接者)信息,没有setter方法。
API
GhostInventory.getInstance()
获取插件实例
GhostInventory.getInstance().getAsyncWorker()
获取异步背包连接同步线程
GhostInventoryManager.getGhostStorageMap()
获取连接发起者的背包备份