969808187 发表于 2024-3-27 13:24:51

【转载】【1.11x-1.18x】AFK-挂机+

原帖地址:        https://www.spigotmc.org/resources/afk.35065/
下载地址:        https://www.spigotmc.org/resources/afk.35065/download?version=308054

插件命令(食用方法):
/afk:开始挂机
(如果是/afk [玩家id],那么如果你有权限,可以为其他玩家开启挂机)
/afkplus:显示插件信息
(如果是/afkplus [玩家名]则告诉你这位玩家有没有在挂机,如果他在挂机,还会告诉op他挂机了多久)
(以上内容,[]为选填项<>为必填项(虽然没有<>)
关于权限:
op自带所有权限
vip存在的意义是不会被警告,不会被强制踢出游戏(-1就是无限)
0表示无权这么做
TimeToAFK是指如果在静止不动的情况下,持续多久可以进入挂机模式

关于config:

UpdateDownload: true
#是否开启更新检测


#这里请设置一个如果玩家挂机过久之后踢出玩家的理由
#Failure to do this wil result in the command being run every second请不要留空,并且保持以“kick 打头,后面加踢出理由(这里的原文存疑,故保留原文)
Action: "kick 您挂机时间太长,系统自动为您断开了连接!"

#这里选择玩家受到警告湿的提示音
#如果不需要声音,请填写(注意是英文双引号):""
#请在此处寻找可以播放的声音:https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Sound.html
WarningSound: "LEVEL_UP"

#当一个玩家不与世界(服务器)交互的时候,他就会被视为AFK状态(或正在发展为)
#那么,交互的定义是哪些呢?
#输入false忽略不需要的内容
EnabledDetections:
#发送聊天信息
Chat: true
#移动(包括移动视角都算)
Move: true
#攻击实体(敌人,动物或者矿车一类)
Attack: true
#输入指令
Command: true
#右击方块
Interact: true
#放置方块
BlockPlace: true
#破坏方块
BlockBreak: true

#当有一个玩家的AFK状态发生改变时,谁会收到消息?
#Self = 那个玩家自己
#Vanish = 如果那个状态发生改变的玩家处于AFK状态
Broadcast:
Console: true
OtherPlayers: true
Self: true
Vanish: false

#启用高级AFK检测,但是有可能使服务器运行速度变慢
#更加严格的管控AFK,但是如果玩家只是在缓慢移动,则也有可能被标记为AFK
#如果你的服务器经常有玩家使用挂机钓鱼机的话,请打开,否则,保持关闭
AggressiveAFKDetection: false

#Permissions的值可以是bolean函数(true或false)或者一个数值
#0 = false, 1 = true 其余任何一个整数表示一个值
#e.g. AFKSelf = 0 or 1 或者 TimeToAFK 可以设置一个整数作为秒数
#注意,警告的时间是指玩家进入AFK状态多久,而不是距离最后一次交互多久
Permissions:
afkplus,player:
    #填写谁可以有这个权限 0 = 没有人, 1 =所有人, 2 = Op
    Default: 1
    Priority: 1
    #这个玩家可不可以使用命令/afk进入AFK状态
    AFKSelf: 1
    #这个玩家可不可以使用/afk命令使其他人进入AFK
    AFKOthers: 0
    #当玩家多久没有交互时,进入AFK状态
    TimeToAFK: 30
    #当玩家持续AFK状态多久的时候,会被警告
    TimeToWarning: 90
    #玩家持续挂机多久的时候,会被执行Action中设置的命令
    TimeToAction: 120
    CanUpdate: 0
afkplus,vip:
    Default: 0
    Priority: 2
    AFKSelf: 1
    AFKOthers: 0
    TimeToAFK: 60
    TimeToWarning: 120
    TimeToAction: 150
    CanUpdate: 0
afkplus,admin:
    Default: 2
    Priority: 3
    AFKSelf: 1
    AFKOthers: 1
    TimeToAFK: 90
    TimeToWarning: -1
    TimeToAction: -1
    CanUpdate: 1


message(汉化):
ConfigVersion: 2

PrimaryColor: "&6"
SecondaryColor: "&3"

#The language used for time values like "60 minutes from now"
#Accepted values can be found at http://www.ocpsoft.org/prettytime/#i18n
#Please use the abbreviation next to the language e.g. DE for German or FR for french
PrettyTimeLocale: "en"

#These are sent to all players when AFK starts and stops
Broadcast:
Start: "&8[&6AFK&4+&8] &s{PLAYER}&p 开始了挂机"
Stop: "&8[&6AFK&4+&8] &s{PLAYER}&p 结束了挂机"

Updater:
NoUpdate: "&p目前无更新"
UpdateFound: "&p现在有更新了qwq"
UpdateDownloading: "&p插件已经自动更新,下次重启服务器将开始使用"

Player:
AFK: "&s{PLAYER}&p 从 &s{TIME} 开始挂机"
NotAFK: "&s{PLAYER}&p 没有在挂机"

#Sent when the player is AFK long enough for a warning to be sent
Warning: "&8[&6AFK&4+&8]&p 您挂机太久了,可能为您断开连接!"

Help:
Help: "下面是本插件命令:\n"
AFKPlus: ""/afkplus"\n
显示插件信息"
AFKPlusHelp: ""/afkplus "\n
显示插件命令集"
AFKPlusUpdate: ""/afkplus "\n
检测插件更新"
AFKPlusPlayer: ""/afkplus "\n
告诉您此玩家有没有在挂机"
AFK: ""/afk "\n
若没有玩家ID,则为您设置挂机状态\n
若有id,则为此玩家设置挂机状态(在有权限的情况下)"

Error:
MustBePlayer: "&s只有玩家才可以使用!"
PlayerNotFound: "&s没有找到此玩家"
NotPermitted: "&s您没有这么做的权限"

#----------------------------
#汉化by fantuan
#----------------------------


prefix:
prefix如果有需要,请下载打包好的版本,或者自行使用IDE(Maven)进行编译
1,https://github.com/Dart2112/AFKPlusPrefix
可以让服务器tab列表中现实玩家是否再AFK状态,并且防止AFK状态被别的玩家打断

2,https://github.com/Dart2112/AFKPlusRandomMessages
这个prefix可以对AFK状态的开始和结束发送随机的消息,而不是呆板地发送预设好,无聊的消息

3,https://github.com/Dart2112/AFKPlusReconnect
这个prefix可以防止玩家因为AFK状态持续过久而被踢出后,再次快速加入服务器的行动(就是说,向那些老是挂机,不上线的屑玩家说不)

4,https://github.com/Dart2112/AFKPlusEventCommands
这个prefix允许使用多个指令来达到插件中的事件(比如,进入挂机)

5,https://github.com/Dart2112/AFKPlusBungee
这个prefix允许在Bungee服务端的情况下,将AFK消息发送至所有子服

6,https://github.com/Dart2112/AFKPlusPAPI
这个prefix的用处是为其他插件提供前置
可供调用的变量包括"AFKPlus_Status" & "AFKPlus_AFKTime"
(其他插件可以获取玩家的AFK状态和持续时长)

页: [1]
查看完整版本: 【转载】【1.11x-1.18x】AFK-挂机+