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.
options:
silent: no
perm: punish.use
# Only use yes / no in silent option
on inventory click:
if player's current inventory's name contains "&6Punish":
cancel event
command /punish [<offline player>]:
aliases: p
usage: /punish [<offline player>]
executable by: players
permission: {@perm}
trigger:
if arg-1 is "Help" or "help":
send "&6&l&m---------------------------------"
send "&6/p help &r&a- Sends all commands and how to use them"
send "&6/p [<Offline player>] &r&a- Oepn the GUI to take actions with the selected player"
send "&6/p reload &r&a- Reload the Skript"
send "&6/p credits &r&a- Sends the credits"
send "&6&l&m---------------------------------"
else:
if arg-1 is "reload":
execute console command "sk reload punish.sk"
send "&4&lSkript Reloaded !"
else:
if arg-1 is "credits":
send "&6&l&m---------------------------------"
send "&6Developed and maintained by IdealWolf"
send "Click &9&n<link:https://shorturl.at/chyTV>Here<reset> &ffor link!"
send "&6&l&m---------------------------------"
else:
if arg-1 is not set:
send "&6&l&m---------------------------------"
send "&6/p help &r&a- Sends all commands and how to use them"
send "&6/p [<Player>] &r&a- Oepn the GUI to take actions with the selected player"
send "&6/p reload &r&a- Reload the Skript"
send "&6/p credits &r&a- Sends the credits"
send "&6&l&m---------------------------------"
else:
if arg-1 is a player:
set {_head} to arg-1's skull
set {player} to arg-1
set {_exc} to the command executor
set {_gui} to a new chest inventory with 5 row with name "&6Punish %arg-1%"
set slot 0,1,2,3,4,5,6,7,8,9,17,18,26,27,35,36,37,38,39,41,42,43,44 and 54 of {_gui} to black glass pane named "&f"
set slot 10 of {_gui} to red wool named "&4Ip-Ban %arg-1%"
set slot 11 of {_gui} to red wool named "&4Temp-Ban %arg-1%" with lore "&77 Days"
set slot 12 of {_gui} to red wool named "&4Temp-Ban %arg-1%" with lore "&714 Days"
set slot 13 of {_gui} to red wool named "&4Temp-Ban %arg-1%" with lore "&721 Days"
set slot 14 of {_gui} to light green wool named "&bPerm-Mute %arg-1%"
set slot 15 of {_gui} to light green wool named "&bIP-Mute %arg-1%"
set slot 16 of {_gui} to light green wool named "&bTemp-Mute %arg-1%" with lore "&71 Hour"
set slot 19 of {_gui} to light green wool named "&bTemp-Mute %arg-1%" with lore "&712 Hours"
set slot 20 of {_gui} to light green wool named "&bTemp-Mute %arg-1%" with lore "&724 Hours"
set slot 21 of {_gui} to yellow wool named "&9Kick %arg-1%" with lore "&7Immediate rejoin"
set slot 22 of {_gui} to yellow wool named "&9Kick %arg-1%" with lore "&75 Minutes"
set slot 23 of {_gui} to yellow wool named "&9Warn %arg-1%" with lore "&7Reason: Spamming"
set slot 24 of {_gui} to yellow wool named "&9Warn %arg-1%" with lore "&7Reason: Breaking the rules"
set slot 25 of {_gui} to yellow wool named "&9Warn %arg-1%" with lore "&7Reason: Swearing"
set slot 28 of {_gui} to {_head} named "&6&l%arg-1%" with lore "&7Rank: %{rank::%arg-1's uuid%}%" and "&7Alts: Click to check" and "&7Warns: %{warns::%arg-1's uuid%}%"
set slot 40 of {_gui} to paper named "&aMore actions" with lore "&7Click to open"
set slot 34 of {_gui} to barrier named "&4&lClose"
open {_gui} to player
else:
send "&6Invalid Name"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 10:
cancel event
IP-ban {player}
if {@silent} = no:
broadcast "&4&lPunisher: &r&f%{player}% has been IP-Banned by %{_exc}%"
else:
send "&4You IP-banned %{player}%" to {_exc}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 11:
cancel event
ban {player} for 7 days
kick {player}
if {@silent} = no:
broadcast "&4&lPunisher: &r&f%{player}% has been Banned by %{_exc}% for 7 Days"
else:
send "&4You banned %{player}% for 7 days" to {_exc}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 12:
cancel event
ban {player} for 14 days
kick {player}
if {@silent} = no:
broadcast "&4&lPunisher: &r&f%{player}% has been Banned by %{_exc}% for 14 days"
else:
send "&4You banned %{player}% for 14 days" to {_exc}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 13:
cancel event
ban {player} for 21 days
kick {player}
if {@silent} = no:
broadcast "&4&lPunisher: &r&f%{player}% has been Banned by %{_exc}% for 21 days"
else:
send "&4You banned %{player}% for 21 days" to {_exc}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 14:
cancel event
execute player command "/mute {player} 10000000000"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 15:
cancel event
execute player command "/mute {player} 10000000000"
if {check::*} contains "%{player}%'s ip":
send "&6 This player has an alt"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 16:
cancel event
execute player command "/mute {player} 3600"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 19:
cancel event
execute player command "/mute {player} 43200"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 20:
cancel event
execute player command "/mute {player} 86400"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 21:
cancel event
kick {player} due to "Kicked by the kicking hammer!"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 22:
cancel event
kick {player} due to "Kicked for 5 minutes!"
set {kicked::%player%} to 5
every 1 minute in world "world":
loop all players:
if {kicked::%loop-player%} is greater than 0:
remove 1 from {kicked::%loop-player%}
else:
delete {kicked::%loop-player%}
on join:
if {kicked::%player%} is more than 0:
kick player
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 23:
cancel event
execute player command "/warn %{player}%"
send "&4You have warned %{player}% for Spamming"
send "&7You have been warned for Spamming" to {player}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 24:
cancel event
execute player command "/warn %{player}%"
send "&4You have warned %{player}% for Breaking the rules"
send "&7You have been warned for Breaking the rules" to {player}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 25:
cancel event
execute player command "/warn %{player}%"
send "&4You have warned %{player}% for Swearing"
send "&7You have been warned for Swearing" to {player}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 28:
cancel event
execute player command "/alts %{player}%"
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 34:
cancel event
close player's inventory
on inventory click:
if player's current inventory's name contains "&6More":
if index of event-slot = 7:
cancel event
close player's inventory
on inventory click:
if player's current inventory's name contains "&6More":
if index of event-slot = 1:
cancel event
kill {player}
on inventory click:
if player's current inventory's name contains "&6More":
if index of event-slot = 3:
cancel event
strike lightning at {player}
on inventory click:
if player's current inventory's name contains "&6More":
if index of event-slot = 5:
cancel event
clear {player}'s inventory
send "&4&lCleared" to {_exc}
on inventory click:
if player's current inventory's name contains "&6Punish":
if index of event-slot = 40:
set {_pop} to a new chest inventory with 1 row with name "&6More actions"
set slot 0,2,4,6 and 8 of {_pop} to black glass pane named "&f"
set slot 1 of {_pop} to blue wool named "&5Kill %{player}%"
set slot 3 of {_pop} to blue wool named "&5Smite %{player}%"
set slot 5 of {_pop} to blue wool named "&5Clear %{player}%'s Inventory"
set slot 7 of {_pop} to barrier named "&4&lClose"
open {_pop} to player
on inventory click:
if player's current inventory's name contains "&6More":
cancel event
on first join:
add "%player%'s ip %player%" to {check::*}
add player to {players::*}
command /alts [<offline player>]:
trigger:
if {players::*} does not contain player:
add player to {players::*}
if {check::*} contains "%arg-1%'s ip %arg-1%":
remove "%arg-1%'s ip %arg-1%" from {check::*}
loop {players::*}:
if {check::*} contains "%arg-1%'s ip %loop-value%":
send "&c%loop-value% found."
else:
send "&cNone found."
add "%arg-1%'s ip %arg-1%" to {check::*}
command /mute [<offline player>] [<number>]:
permission: mute.*
permission message: &cYou do not have permission for that!
executable by: players and console
trigger:
if arg 1 is not set:
message "&c/mute <player> <seconds>"
if arg 1 is set:
set {mute::%arg 1%} to number-argument
if {@silent} = no:
broadcast "&b%arg 1% &6was muted by &c%player% for %arg-2% seconds"
else:
send "&4You muted %{player}%"
every 1 second:
loop all players:
if {mute::%loop-player%} is more than 0:
remove 1 from {mute::%loop-player%}
else:
delete {mute::%loop-player%}
on chat:
if {mute.%player%} is true:
cancel event
every 20 seconds in world "world":
loop all players:
if {mute::%loop-player%} is greater than 0:
set action bar of loop-player to "&6You can talk in &b%{mute::%loop-player%}% &cseconds."
command /unmute [<offline player>]:
permission: mute.*
permission message: &cYou do not have permission for that!
executable by: players and console
trigger:
if arg 1 is not set:
message "&c/unmute <player>"
if arg 1 is set:
delete {mute::%arg 1%}
broadcast "&b%arg-1% &6was unmuted by &c%player%"
command warn [<offline player>]:
permission: {@perm}
trigger:
add 1 to {warns::%arg-1's uuid%}