Simple Yet Advanced AFK 1.0

A simple AFK plugin that gives you so many features

  1. xUbalubex
    Tested Minecraft Versions:
    • 1.16
    [​IMG]
    --------------------------------------------------------------------------------------------------
    What is it?
    ---

    Simple Yet Advanced AFK [SYAA] is a plugin that provides you with a, well, simple yet advanced AFK plugin. This plugin will take the AFK system a bit further. This plugin will allow you to do things like send players to another world when they are afk, play sounds on afk, execute commands, and more!
    -----------------------------------------------------------------------------------------------------------------------
    Features
    ---

    Send Players to Another World When AFK
    Play Sounds When AFK
    Execute Commands When AFK
    Show Titles When AFK
    Send Messages To The Server And To The Player AFK
    Make AFK Players Invulnerable
    Kick Players If They Are AFK For Too Long

    -----------------------------------------------------------------------------------------------------------------------
    Commands
    ---
    You can type /syaa for help!
    -----------------------------------------------------------------------------------------------------------------------

    Config File

    ---
    Code (YAML):
    #--------------------------------------------------------------------------------
    #░██████╗██╗███╗░░░███╗██████╗░██╗░░░░░███████╗  ██╗░░░██╗███████╗████████╗
    #██╔════╝██║████╗░████║██╔══██╗██║░░░░░██╔════╝  ╚██╗░██╔╝██╔════╝╚══██╔══╝
    #╚█████╗░██║██╔████╔██║██████╔╝██║░░░░░█████╗░░  ░╚████╔╝░█████╗░░░░░██║░░░
    #░╚═══██╗██║██║╚██╔╝██║██╔═══╝░██║░░░░░██╔══╝░░  ░░╚██╔╝░░██╔══╝░░░░░██║░░░
    #██████╔╝██║██║░╚═╝░██║██║░░░░░███████╗███████╗  ░░░██║░░░███████╗░░░██║░░░
    #╚═════╝░╚═╝╚═╝░░░░░╚═╝╚═╝░░░░░╚══════╝╚══════╝  ░░░╚═╝░░░╚══════╝░░░╚═╝░░░
    #
    #░█████╗░██████╗░██╗░░░██╗░█████╗░███╗░░██╗░█████╗░███████╗██████╗░
    #██╔══██╗██╔══██╗██║░░░██║██╔══██╗████╗░██║██╔══██╗██╔════╝██╔══██╗
    #███████║██║░░██║╚██╗░██╔╝███████║██╔██╗██║██║░░╚═╝█████╗░░██║░░██║
    #██╔══██║██║░░██║░╚████╔╝░██╔══██║██║╚████║██║░░██╗██╔══╝░░██║░░██║
    #██║░░██║██████╔╝░░╚██╔╝░░██║░░██║██║░╚███║╚█████╔╝███████╗██████╔╝
    #╚═╝░░╚═╝╚═════╝░░░░╚═╝░░░╚═╝░░╚═╝╚═╝░░╚══╝░╚════╝░╚══════╝╚═════╝░
    #
    #░█████╗░███████╗██╗░░██╗
    #██╔══██╗██╔════╝██║░██╔╝
    #███████║█████╗░░█████═╝░
    #██╔══██║██╔══╝░░██╔═██╗░
    #██║░░██║██║░░░░░██║░╚██╗
    #╚═╝░░╚═╝╚═╝░░░░░╚═╝░░╚═╝
    #
    #                           Made By XboxSignsOut
    #
    #--------------------------------------------------------------------------------
    #
    #
    #How much time until a player is declared AFK
    #
    AfkTime
    : 30
    #
    # ________________________________________
    #|                                        |
    #|                 Worlds                 |
    #|________________________________________|
    #
    #
    #Should the player be teleported to the a manually set world upon being AFK?
    #
    ChangeWorldOnAFK
    : false
    #Should the player be teleported to the spot they were before they went afk?
    TeleportToLastPosition
    : false
    #
    #------------ [ Default World Location ] ------------
    #
    DefaultWorldLocation
    :
      ==
    : org.bukkit.Location
      world
    : world
      x
    : 169.03726267213807
      y
    : 67.0
      z
    : 255.41755286510596
      pitch
    : 37.199986
      yaw
    : 79.95028
    #
    #
    #------------ [ AFK World Location ] ------------
    #
    AFKWorldLocation
    :
      ==
    : org.bukkit.Location
      world
    : world2
      x
    : 62.71404809580642
      y
    : 71.0
      z
    : 219.72690600204206
      pitch
    : 2.9999688
      yaw
    : 129.60065
    #
    # _________________________________________
    #|                                         |
    #|                 Kicking                 |
    #|_________________________________________|
    #
    #
    #Should the player be kicked if they are afk too long?
    #
    KickPlayer
    : false
    #
    #How much time to wait before kicking a player
    #
    KickTime
    : 30
    #
    #The kick message
    #
    KickMessage
    : '&c&lYou were AFK for too long.'
    #
    # __________________________________________
    #|                                          |
    #|                 Commands                 |
    #|__________________________________________|
    #
    #
    #Execute a command when a player goes AFK
    #
    CMDOnAfk
    : true
    #
    #Execute a command when a player returns
    #
    CMDOnNoLongerAfk
    : true
    #
    #Execute commands from the console
    #
    ExecuteAsConsole
    : true
    #
    #Commands to execute when a player is AFK
    #
    CMDsOnAFK
    :
    - 'tell [player] afk'
    #
    #Commands to execute when a player returns
    #
    CMDsOnNoLongerAFK
    :
    - 'tell [player] not afk anymore'
    #
    #
    # _________________________________________
    #|                                         |
    #|                 Effects                 |
    #|_________________________________________|
    #
    #
    #Should afk players be invulnerable (Unkillable)
    #
    MakeAFKPlayersInvincible
    : true
    #
    # __________________________________________
    #|                                          |
    #|                 Messages                 |
    #|__________________________________________|
    #
    #
    #Should it announce to every player in the server when a player goes afk?
    #
    AnnounceAFK
    : false
    #
    #Should it send a message to the player when they go afk?
    #
    MessageAFK
    : true
    #
    #Show a title when you are afk
    #
    ShowTitle
    : true
    #
    #------------ [ Announcement Messages ] ------------
    #
    AFKAnnouncement_AFK
    : '&c&l[player] is now AFK'
    AFKAnnouncement_NoLongerAFK
    : '&a&l[player] is no longer AFK'
    #
    #------------ [ Player Messages ] ------------
    #
    AFKPlayer_AFK
    : '&c&lYou are now AFK'
    AFKPlayer_NoLongerAFK
    : '&a&lYou are no longer AFK'
    #
    # ________________________________________
    #|                                        |
    #|                 Titles                 |
    #|________________________________________|
    #
    #
    AFKPlayer_Title
    : '&c&lYou are AFK'
    AFKPlayer_Subtitle
    : '&6&lMove to go back to your last position'
    # ________________________________________
    #|                                        |
    #|                 Sounds                 |
    #|________________________________________|
    #
    #Play sounds when a player goes afk
    PlaySoundsOnAFK
    : true
    #
    #Format: <SoundEffect>~<volume>~<pitch>
    AFKSound
    : 'BLOCK_NOTE_BLOCK_BIT~1~1'
    NoLongerAFKSound
    : 'BLOCK_NOTE_BLOCK_BIT~1~1'
    -----------------------------------------------------------------------------------------------------------------------
    Developers
    ---

    With SYAA, there are 2 events that you can execute or listen for.

    OnPlayerAFKEvent
    Executes when a Player goes AFK
    --
    getPlayer() - gets the player that went AFK


    OnPlayerNoLongerAFKEvent
    Executes when a Player returns from being AFK

    --
    getPlayer() - gets the player that returned


    -----------------------------------------------------------------------------------------------------------------------