advancedss.sk

Created by Gioggino

Just so you know, we don't know the file format for every file. If it's just a bunch of random characters, it's probably a .zip or .jar.

#------------------------------------------------#
#                                                #
#                    AdavcedSS                   #
#               Script by gioggino               #
#                   Version: 1.0                 #
#               Spigot/Paper: 1.9+               # 
#                                                #
#------------------------------------------------#

#COMPATIBLE WITH: PermisisonsEx, Groupmanager, zPermissions, Multiverse

# Change those options to adapt this skript to your server
options:
    prefix: &8[&9Advanced&fSS&8]
    sslocation: -67, 49, 264 # coordinates of the screenshare world
    ssworld: "World" # name of the screenshare world
    defaultlocation: -61, 64, 264 # coordinates of the default world
    defaultworld: "World" # name of the default world

#--------------------------------------------#
#   DON'T CHANGE ANYTHING BELOW THIS POINT   #
#   IF YOU DON'T KNOW WHAT ARE YOU DOING     #
#   SOME CHANGES MAY BREAK THE WOLE SKRIPT   #
#   vvv vvv vvv vvv vvv vvv vvv vvv vvv vvv  #
#--------------------------------------------#

variables:
   {freeze.%player%} = 0 # Changing this variable will break part of the skript

# Custom chat format
on chat:
    if player is in world {@ssworld}:
        cancel event
        if player has permission "advancedss.screenshare":
            send "&9[STAFF] &r%player% &7&l> &r%message%" to all players in radius 20 of player
        else:
            send "&c[SUSPECT] &r%player% &7&l> &r%message%" to all players in radius 20 of player

# Main command
command /screenshare [<offline player>] [<text>]:
    aliases: /ss
    executable by: players and console
    permission: advancedss.screenshare
    permission message: &r{@prefix} &rYou don't have permission to use that
    description: Advancedss screenshare command
    usage: /screenshare <player> [<text>]
    trigger:
        if arg-1 is set:
            if arg-1 is online:
                set {_sslocation} to location {@sslocation} in world {@ssworld}
                set {_defaultlocation} to location {@defaultlocation} in world {@defaultworld}
                if arg-2 is "end": # end the screenshare 
                    set {screensharing.%player%} to 0
                    set tablist name of arg-1 to "%arg-1%"
                    set tablist name of player to "%player%"
                    send "&r{@prefix} &rScreenshare ended" to player
                    send "&r{@prefix} &rScreenshare ended" to arg-1
                    set {freeze.%player%} to 0
                    teleport arg-1 to {_defaultlocation}
                    teleport player to {_defaultlocation}
                else if arg-2 Is set: # If custom message is set
                    send title "&7&l<< &r&4SCREEN&fSHARE&7&l >>" with subtitle "%player% wants to screenshare you" to arg-1
                    send "&8&m-------------------&8[ &4SCREEN&fSHARE &r&8]&r&8&m--------------------" to arg-1
                    send "" to arg-1
                    send "&4Requested by: &r%player%" to arg-1
                    send "&4Message: &r%arg-2%" to arg-1
                    send "&4Instructions: &rgive <link:https://anydesk.com/downloads><tooltip:&6Click to download>&6Anydesk &rcode and join <suggest command:ts.link.here><tooltip:&6Click for link>&6Teamspeak" to arg-1
                    send "&4Time: &r3 minutes" to arg-1
                    send "&4Attention: &rQuit = tempban 35 days, Admission = tempban 20 days" to arg-1
                    send "" to arg-1
                    send "&8&m-----------------------------------------------------" to arg-1
                    send "&r{@prefix} &rScreenshare request sent" to player
                    send "&r{@prefix} &rActions:" and "<suggest command:/tempban <player> 30d Cheating (ss) -s><tooltip:&cHack found: 30 days>&c[HACKING]" and "<suggest command:/tempban <player> 35d SS refused -s><tooltip:&6SS refused: 35 days>&6[REFUSED]" and "<suggest command:/tempban <player> 20d Hack admitted -s><tooltip:&eHack admitted: 20 days>&e[ADMITTED]" and "<suggest command:/screnshare <player> end><tooltip:&aNo Hack found>&a[CLEAN]" to player
                    set tablist name of arg-1 to "&c[SUSPECT] &r%arg-1%"
                    set tablist name of player to "&9[STAFF] &r%player%"
                    teleport arg-1 to {_sslocation}
                    teleport player to arg-1
                    clear inventory of arg-1
                    set {freeze.%player%} to 1
                else: # same code but without custom message
                    send title "&7&l<< &r&4SCREEN&fSHARE&7&l >>" with subtitle "%player% wants to screenshare you" to arg-1
                    send "&8&m-------------------&8[ &4SCREEN&fSHARE &r&8]&r&8&m--------------------" to arg-1
                    send "" to arg-1
                    send "&4Requested by: &r%player%" to arg-1
                    send "&4Instructions: &rgive <link:https://anydesk.com/downloads><tooltip:&6Click to download>&6Anydesk &rcode and join <suggest command:ts.link.here><tooltip:&6Click for link>&6Teamspeak" to arg-1
                    send "&4Time: &r3 minutes" to arg-1
                    send "&4Attention: &rQuit = tempban 35 days, Admission = tempban 20 days" to arg-1
                    send "" to arg-1
                    send "&8&m-----------------------------------------------------" to arg-1
                    send "&r{@prefix} &rScreenshare request sent" to player
                    send "&r{@prefix} &rActions:" and "<suggest command:/tempban <player> 30d Cheating (ss) -s><tooltip:&cHack found: 30 days>&c[HACKING]" and "<suggest command:/tempban <player> 35d SS refused -s><tooltip:&6SS refused: 35 days>&6[REFUSED]" and "<suggest command:/tempban <player> 20d Hack admitted -s><tooltip:&eHack admitted: 20 days>&e[ADMITTED]" and "<suggest command:/screnshare <player> end><tooltip:&aNo Hack found>&a[CLEAN]" to player
                    set tablist name of arg-1 to "&c[SUSPECT] &r%arg-1%"
                    set tablist name of player to "&9[STAFF] &r%player%"
                    teleport arg-1 to {_sslocation}
                    teleport player to arg-1
                    clear inventory of arg-1
                    set {freeze.%player%} to 1
                    while {freeze.%player%} is 1:
                        wait 1 ticks
                        teleport arg-1 to arg-1
                    stop
        # Error handling
            else if arg-1 has played before:
                send "&r{@prefix} &r&6%arg-1% is offline"
            else:
                send "&r{@prefix} &r&6%arg-1% has never played on this server"
        else:
            send "&r{@prefix} &rYou need to specify a player to screenshare" to player

# Reload command (give this permisison to only who have acces to server's console)
command /screensharereload:
    aliases: /ssreload
    executable by: players and console
    permission: advancedss.reload
    permission message: &r{@prefix} &rYou don't have permission to use that
    description: Advancedss reload plugin command
    usage: /screensharereload
    trigger:
        execute console command "/sk reload advancedss"
        send "&r{@prefix} &rSkript reloaded" to player

# Help command
command /screensharehelp [<text>]:
    aliases: /sshelp
    executable by: players and console
    permission: advancedss.screenshare
    permission message: &r{@prefix} &rYou don't have permission to use that
    description: Advancedss help command
    usage: /screensharehelp <page>
    trigger:
        set {_num} to arg-1 parsed as an integer
        if {_num} is 1:
            send "&8&m--------------------&8[ &9Advanced&fSS &r&8]&r&8&m--------------------"
            send "&e/ss <player> &8- &7Use this command to ask for a screenshare to a player"
            send "&e/ss <player> [<text>] &8- &7Use this command to add a custom message to the screenshare request (optional)"
            send "&e/ss <player> end &8- &7Use this command to end the screenshare"
            send "&e/ssreload &8- &7Use this command to reload the skript"
            send "&8&m---------------------&8[ &9Page &f1/2 &r&8]&r&8&m--------------------"
        else if {_num} is 2:
            send "&8&m--------------------&8[ &9Advanced&fSS &r&8]&r&8&m--------------------"
            send ""
            send "                                  Credits:"
            send ""
            send "&6Skript made by: &rgioggino"
            send "&6Version: &r1.0"
            send "&6Special thanks to: &rTheDiamond2111, skUnity forum and minehut for the help"
            send ""
            send "&8&m---------------------&8[ &9Page &f2/2 &r&8]&r&8&m--------------------"
        else if {_num} is greater than 2:
            send "&r{@prefix} &rPage %{_num}% doesn't exist" to player
        else:
            send "&r{@prefix} &rYou need to specify an help page" to player