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.
# ____ _____ _____ _____ ____ ____ _ _ ____ ___ ____ _____ ____
# | _ \ | ____| | ___| | ____| | _ \ | _ \ / \ | | / ___| / _ \ | _ \ | ____| / ___|
# | |_) | | _| | |_ | _| | |_) | | |_) | / _ \ | | | | | | | | | | | | | _| \___ \
# | _ < | |___ | _| | |___ | _ < | _ < / ___ \ | |___ | |___ | |_| | | |_| | | |___ ___) |
# |_| \_\ |_____| |_| |_____| |_| \_\ |_| \_\ /_/ \_\ |_____| \____| \___/ |____/ |_____| |____/
#
#Author: YoshYz
#Version: v1.3
#Only Skript Needed
#==========================================================================================================#
# -------------------------------------------------------------------------------------------------------- #
# OPTIONS #
# -------------------------------------------------------------------------------------------------------- #
#==========================================================================================================#
options:
permissionMessage: &cYou don't have the permission to execute this command.
prefix: &9▪ Referral&9>
reward_command: /eco give [player] 1200
#==========================================================================================================#
# -------------------------------------------------------------------------------------------------------- #
# MAIN COMMAND #
# -------------------------------------------------------------------------------------------------------- #
#==========================================================================================================#
command /referral [<text>] [<text>]:
trigger:
if argument-1 isn't set:
if player has permission "referral.use":
if {referrals::referral::%uuid of player%} isn't set:
set {percent_%%} to 10
loop 3 times:
set {percent_%%} to a random integer between {percent_%%}+5 and ({percent_%%}+7)*2
if {percent_%%} < 100:
message " {@prefix} &7Creating your unique code... &8[&a%{percent_%%}%%%&8]"
else:
stop loop
message ""
set {_numbers} to "%random integer between 1000 and 999999%" parsed as integer
set {_char} to "%player's name%"
set {_char} to the first (index of "%player's name%" in {_char} + 4) characters of {_char}
set {referrals::referral::%uuid of player%} to "%{_char}%_%{_numbers}%"
set {referrals::%{referrals::referral::%uuid of player%}%::uses} to 0
add {referrals::referral::%uuid of player%} to {referral::codes::*}
set {referrals::%{referrals::referral::%uuid of player%}%::owner} to "%player's name%"
message " {@prefix} &7Your unique code is&8: &b%{referrals::referral::%uuid of player%}% &8[&a100%%&8]"
stop
else:
message " {@prefix} &7Your unique code is&8: &b%{referrals::referral::%uuid of player%}%"
message " {@prefix} &7Your code was used for &a%{referrals::%{referrals::referral::%uuid of player%}%::uses}% &7times."
stop
else:
message " {@prefix} {@permissionMessage}"
stop
if argument-1 is "use":
if player has permission "referral.use":
if argument-2 is set:
loop {referral::codes::*}:
if arg-2 is loop-value:
loop {referral::%uuid of player%::codes::*}:
if loop-value-2 is arg-2:
message " {@prefix} &7You already used this referral code."
stop
if {referrals::%loop-value%::owner} isn't player's name:
add "%loop-value%" to {referral::%uuid of player%::codes::*}
add 1 to {referrals::%loop-value%::uses}
message " {@prefix} &7You used the referral code of &a%{referrals::%loop-value%::owner}%&7."
message " {@prefix} &7Use &b/referral claim &7to claim your reward."
set {_player} to "%{referrals::%loop-value%::owner}%" parsed as offlineplayer
set {_uuid} to "%uuid of {_player}%"
if {_player} is online:
message " {@prefix} &a%player% &7used your referral code." to {_player}
message " {@prefix} &7Use &b/referral claim &7to claim your reward." to {_player}
add 1 to {referrals::claims::%{_uuid}%}
add 1 to {referrals::claims::%uuid of player%}
stop
else:
message " {@prefix} &7You can't claim your own referral code."
stop
else:
message " {@prefix} {@permissionMessage}"
stop
if argument-1 is "codes" or "list":
if player has permission "referral.admin":
loop {referral::codes::*}:
message " {@prefix} &3%loop-index%&8) &a%{referrals::%loop-value%::owner}% &8- &b%loop-value%"
stop
else:
message " {@prefix} {@permissionMessage}"
stop
if argument-1 is "claim":
if player has permission "referral.use":
if {referrals::claims::%uuid of player%} > 0:
remove 1 from {referrals::claims::%uuid of player%}
set {_command} to "{@reward_command}"
replace all "[player]" with "%player%" in {_command}
make console execute command "%{_command}%"
message " {@prefix} &7You claimed your reward."
message " {@prefix} &7You still have &a%{referrals::claims::%uuid of player%}% &7rewards to claim."
stop
else:
message " {@prefix} &7You don't have anything to claim."
stop
else:
message " {@prefix} {@permissionMessage}"
stop
if argument-1 is "reset", "delete" or "del":
if player has permission "referral.admin":
if argument-2 is set:
set {_player} to "%arg-2%" parsed as offlineplayer
set {_uuid} to "%uuid of {_player}%"
remove {referrals::referral::%{_uuid}%} from {referral::codes::*}
clear {referrals::%{referrals::referral::%{_uuid}%}%::*}
delete {referrals::referral::%{_uuid}%}
message " {@prefix} &7You have reset the &a%arg-2%&7's referral."
stop
else:
message " {@prefix} &7You have to write the player's name."
stop
else:
message " {@prefix} {@permissionMessage}"
stop
if argument-1 is "info", "ver", "version" or "author":
message " {@prefix} &aYoshYz Version&8: &7v1.3"
stop
if argument-1 is "help":
if player has permission "referral.use":
message "&f&l&m---------------------------------------"
message "&a&l REFERRAL CODES"
message " &9▪ /referral help"
message " &9▪ /referral ver"
message " &9▪ /referral"
message " &9▪ /referral use [<code>]"
message " &9▪ /referral claim"
message " &9▪ /referral reset [<player>]"
message " &9▪ /referral codes/list"
message "&f&l&m---------------------------------------"
stop
else:
message " {@prefix} {@permissionMessage}"
stop