Mineore
我先说下始末吧:有个插件叫LastLoginAPI,有个变量是%lastloginapi_last_logout_elapsed%,能显示玩家距离上次登出的时间,即离线时间。之后我用另一个插件ConditionalEvents检测变量,当变量为1m 30s(1分30秒)时,执行指令,一切正常,能执行不报错。
但问题是,离线后变量不更新、不计算。试过了offlinepapi的离线变量,但没用,也许是他记录的是不变的值吧。
因此,需要解决的是,如何让玩家离线后,变量继续实时更新,并且还能让ConditionalEvents插件获取到变量的值。


执笔绘君衣
你去搞个自定义变量然后用监听插件去监听玩家是否在线 不在线的 让监听插件给这个自定义变量一秒执行一次+1 或者一分钟执行一次+1

Mineore
执笔绘君衣 发表于 2023-5-12 11:09
你去搞个自定义变量然后用监听插件去监听玩家是否在线 不在线的 让监听插件给这个自定义变量一秒执行一次+1 ...

有没有监听插件推荐个?就是可以实现这些操作的插件。

冰砚炽
这个问题我感觉更像是 LastLoginAPI 的功能缺陷,跟作者提一下看看能不能加入。

Mineore
冰砚炽 发表于 2023-5-12 11:18
LastLoginAPI 如果本身就是把玩家离线的时间戳储存的话,实现起来应该很简单。

这个问题我感觉更像是 Last ...

OfflinePlaceHolders插件可以实现,但问题是不支持1.18版本QAQ

冰砚炽
Mineore 发表于 2023-5-12 11:25
OfflinePlaceHolders插件可以实现,但问题是不支持1.18版本QAQ

我从网上搜索到的帖子貌似写了支持 1.18.

这种跟游戏本身关系不大的插件应该可以版本通用吧

Mineore
冰砚炽 发表于 2023-5-12 11:38
我从网上搜索到的帖子貌似写了支持 1.18.

这种跟游戏本身关系不大的插件应该可以版本通用吧 ...

用计分板显示的时候并不能正常显示,输入/papi parse me %offlineplaceholder_last_login%也不行,后台papi报错
[11:42:05] [信息]: Fande issued server command: /papi parse me %offlineplaceholder_last_login%
[11:42:06] [错误]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'papi' in plugin PlaceholderAPI v2.11.3
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_18_R2.CraftServer.dispatchCommand(CraftServer.java:826) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1957) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1796) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1777) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:46) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:31) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.util.thread.IAsyncTaskHandler.d(SourceFile:157) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.d(SourceFile:23) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1190) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:1) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.util.thread.IAsyncTaskHandler.y(SourceFile:131) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.MinecraftServer.be(MinecraftServer.java:1169) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1162) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.util.thread.IAsyncTaskHandler.bo(SourceFile:116) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1145) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1051) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:304) ~[spigot-1.18.2-R0.1-SNAPSHOT.jar:3498-Spigot-b081915-10ba1be]
        at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.lang.NoSuchMethodError: 'long org.bukkit.OfflinePlayer.getLastSeen()'
        at me.albert.offlineplacehodlers.OfflinePlaceHolder.onRequest(OfflinePlaceHolder.java:98) ~[?:?]
        at me.clip.placeholderapi.replacer.CharsReplacer.apply(CharsReplacer.java:119) ~[?:?]
        at me.clip.placeholderapi.PlaceholderAPI.setPlaceholders(PlaceholderAPI.java:71) ~[?:?]
        at me.clip.placeholderapi.commands.impl.local.CommandParse.evaluateParseSingular(CommandParse.java:117) ~[?:?]
        at me.clip.placeholderapi.commands.impl.local.CommandParse.evaluate(CommandParse.java:57) ~[?:?]
        at me.clip.placeholderapi.commands.PlaceholderCommandRouter.onCommand(PlaceholderCommandRouter.java:114) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        ... 21 more

第一页 上一页 下一页 最后一页