#-------------------------------------------------------------------------------------------# # EmpireHorses # # BY: T Y L E R :0 # # ---------------------------------------[ DONT EDIT ]--------------------------------------# on script load: # Loading send "&8[&5EmpireHorses&8] &7Loading..." to console send "&8[&5EmpireHorses&8] &7Added &a4 &7effects, &a4 &7expressions and &a0 &7conditions" to console if yaml "cconfig" is loaded: send "&8[&5EmpireHorses&8] &7Found &5EmpireEco&7... Success!" to console send "&8[&5EmpireHorses&8] &aIs now loaded!" to console load yaml "plugins/EmpireHorses/config.yml" as "EmpireHorses-config" load yaml "plugins/EmpireHorses/playerdata.yml" as "EmpireHorses-data" set the header of "EmpireHorses-config" to "temp" # YML Values if yaml node "eco-buy-type" in "EmpireHorses-config" doesn't have value: set yaml value "eco-buy-type" in "EmpireHorses-config" to "Vault" if yaml node "eco-upgrade-type" in "EmpireHorses-config" doesn't have value: set yaml value "eco-upgrade-type" in "EmpireHorses-config" to "XP" if yaml node "Item-name" in "EmpireHorses-config" doesn't have value: set yaml value "Item-name" in "EmpireHorses-config" to "&6Jhu le Horse" if yaml node "Item-cost.1" in "EmpireHorses-config" doesn't have value: set yaml value "Item-cost.1" in "EmpireHorses-config" to "20000" if yaml node "Item-cost.2" in "EmpireHorses-config" doesn't have value: set yaml value "Item-cost.2" in "EmpireHorses-config" to "80000" if yaml node "Item-cost.3" in "EmpireHorses-config" doesn't have value: set yaml value "Item-cost.3" in "EmpireHorses-config" to "200000" # lvl 1 if yaml node "horse-level.1.name-color" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.1.name-color" in "EmpireHorses-config" to "&b" if yaml node "horse-level.1.horse-color" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.1.horse-color" in "EmpireHorses-config" to "259" if yaml node "horse-level.1.speed" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.1.speed" in "EmpireHorses-config" to "0.3" if yaml node "horse-level.1.armor" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.1.armor" in "EmpireHorses-config" to "none" # lvl 2 if yaml node "horse-level.2.name-color" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.2.name-color" in "EmpireHorses-config" to "&d" if yaml node "horse-level.2.horse-color" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.2.horse-color" in "EmpireHorses-config" to "256" if yaml node "horse-level.2.speed" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.2.speed" in "EmpireHorses-config" to "0.5" if yaml node "horse-level.2.armor" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.2.armor" in "EmpireHorses-config" to "iron_horse_armor" if yaml node "horse-level.2.levelup-cost" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.2.levelup-cost" in "EmpireHorses-config" to "150" # lvl 3 if yaml node "horse-level.3.name-color" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.3.name-color" in "EmpireHorses-config" to "&5" if yaml node "horse-level.3.horse-color" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.3.horse-color" in "EmpireHorses-config" to "260" if yaml node "horse-level.3.speed" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.3.speed" in "EmpireHorses-config" to "0.7" if yaml node "horse-level.3.armor" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.3.armor" in "EmpireHorses-config" to "diamond_horse_armor" if yaml node "horse-level.3.levelup-cost" in "EmpireHorses-config" doesn't have value: set yaml value "horse-level.3.levelup-cost" in "EmpireHorses-config" to "300" save yaml "EmpireHorses-config" on join: if yaml node "%player%.horse-level" in "EmpireHorses-data" doesn't have value: set yaml value "%player%.horse-level" in "EmpireHorses-data" to 1 save yaml "EmpireHorses-data" # ----------------[ API ]----------------# effect [empire[horses]] set %player%'s horse (level|lvl) to %number%: trigger: if expression-2 > 0: if expression-2 <= 3: set yaml value "%expression-1%.horse-level" in "EmpireHorses-data" to "%expression-2%" save yaml "EmpireHorses-data" effect [empire[horses]] (level|lvl) up horse of %player%: trigger: set {_lvl} to yaml value "%expression-1%.horse-level" in "EmpireHorses-data" if {_lvl} = 1: set yaml value "%expression-1%.horse-level" in "EmpireHorses-data" to 2 save yaml "EmpireHorses-data" else if {_lvl} = 2: set yaml value "%expression-1%.horse-level" in "EmpireHorses-data" to 3 save yaml "EmpireHorses-data" else: set yaml value "%expression-1%.horse-level" in "EmpireHorses-data" to 3 save yaml "EmpireHorses-data" effect [empire[horses]] (add|give) %number% to horse (level|lvl) of %player%: trigger: set {_lvl} to yaml value "%expression-2%.horse-level" in "EmpireHorses-data" if {_lvl} = 1: if expression-1 >= 1: if expression-1 <= 2: add expression-1 to {_lvl} set yaml value "%expression-2%.horse-level" in "EmpireHorses-data" to {_lvl} save yaml "EmpireHorses-data" if {_lvl} = 2: if expression-1 = 1: add expression-1 to {_lvl} set yaml value "%expression-2%.horse-level" in "EmpireHorses-data" to {_lvl} save yaml "EmpireHorses-data" else: set yaml value "%expression-2%.horse-level" in "EmpireHorses-data" to 3 save yaml "EmpireHorses-data" effect [empire[horses]] (take|remove) %number% from horse (level|lvl) of %player%: trigger: set {_lvl} to yaml value "%expression-2%.horse-level" in "EmpireHorses-data" if {_lvl} = 3: if expression-1 >= 1: if expression-1 <= 2: remove expression-1 from {_lvl} set yaml value "%expression-2%.horse-level" in "EmpireHorses-data" to {_lvl} save yaml "EmpireHorses-data" if {_lvl} = 2: if expression-1 = 1: remove expression-1 from {_lvl} set yaml value "%expression-2%.horse-level" in "EmpireHorses-data" to {_lvl} save yaml "EmpireHorses-data" else: set yaml value "%expression-2%.horse-level" in "EmpireHorses-data" to 1 save yaml "EmpireHorses-data" expression [empire[horses]] [horse] (level|lvl) %number% [(1¦name color)] [(2¦horse color)] [(3¦speed)] [(4¦armor)] [(5¦(level|lvl) [up] cost)] value: get: if expression-1 <= 3: if expression-1 > 0: if parse mark is 1: set {_value} to yaml value "horse-level.%expression-1%.name-color" in "EmpireHorses-config" return {_value} if parse mark is 2: set {_value} to yaml value "horse-level.%expression-1%.horse-color" in "EmpireHorses-config" return {_value} if parse mark is 3: set {_value} to yaml value "horse-level.%expression-1%.speed" in "EmpireHorses-config" return {_value} if parse mark is 4: set {_value} to yaml value "horse-level.%expression-1%.armor" in "EmpireHorses-config" return {_value} if parse mark is 5: set {_value} to yaml value "horse-level.%expression-1%.levelup-cost" in "EmpireHorses-config" return {_value} else: if parse mark is 1: set {_value} to yaml value "horse-level.1.name-color" in "EmpireHorses-config" return {_value} if parse mark is 2: set {_value} to yaml value "horse-level.1.horse-color" in "EmpireHorses-config" return {_value} if parse mark is 3: set {_value} to yaml value "horse-level.1.speed" in "EmpireHorses-config" return {_value} if parse mark is 4: set {_value} to yaml value "horse-level.1.armor" in "EmpireHorses-config" return {_value} if parse mark is 5: set {_value} to yaml value "horse-level.1.levelup-cost" in "EmpireHorses-config" return {_value} else: if parse mark is 1: set {_value} to yaml value "horse-level.3.name-color" in "EmpireHorses-config" return {_value} if parse mark is 2: set {_value} to yaml value "horse-level.3.horse-color" in "EmpireHorses-config" return {_value} if parse mark is 3: set {_value} to yaml value "horse-level.3.speed" in "EmpireHorses-config" return {_value} if parse mark is 4: set {_value} to yaml value "horse-level.3.armor" in "EmpireHorses-config" return {_value} if parse mark is 5: set {_value} to yaml value "horse-level.3.levelup-cost" in "EmpireHorses-config" return {_value} expression [empire[horses]] eco[nomy] type: get: set {_value} to yaml value "eco-type" in "EmpireHorses-config" return {_value} expression [empire[horses]] horse level of %player%: get: set {_lvl} to yaml value "%expression-1%.horse-level" in "EmpireHorses-data" return {_lvl} expression [empire[horses]] [the] defined horse saddle: get: set {_name} to yaml value "Item-name" in "EmpireHorses-config" set {_item} to saddle named "%{_name}%" return {_item} # ----------------[ COMMANDS ]----------------# command /horse [] []: permission: eph.player permission message:: &cSorry! You don't have access to this command. cooldown: 2 seconds cooldown message: &cPlease wait before using this command again. trigger: if arg-1 is not set: message "&8&m----&b<> Required&8&m----&b[] Optional&8&m-------" message "&d/horse upgrade &8- &7Upgrade your horse" message "&d/horse buy &8- &7Buy a saddle" message "&d/horse level|lvl [player] &8- &7Get your horse's level [or player's]" else if arg-1 is "level" or "lvl": if arg-2 is set: message "&aYour horse's level is: &f%horse level of arg-2%" else: message "&aYour horse's level is: &f%horse level of player%" else if arg-1 is "upgrade": set {_type} to yaml value "eco-upgrade-type" in "EmpireHorses-config" if horse level of player is 1: set {_money} to horse level 2 lvl up cost value if {_type} = "Vault" or "vault": if player's balance >= {_money}: subtract {_money} from player's balance level up horse of player message "&aYour horse was upgraded to level %horse level of player%" else: message "&cYou do not have enough money" else if {_type} = "XP" or "xp": if player's level >= {_money}: subtract {_money} from player's level level up horse of player message "&aYour horse was upgraded to level %horse level of player%" else: message "&cYou do not have enough EXP levels" else if {_type} = "EmpireEco" or "empireeco": if player's gold >= {_money}: subtract {_money} gold from player's vault level up horse of player message "&aYour horse was upgraded to level %horse level of player%" else: message "&cYou do not have enough coins" else: message "&cError! Economy plugin wasn't defined. Please report this error to an admin." else if horse level of player is 2: set {_money} to horse level 3 lvl up cost value if {_type} = "Vault" or "vault": if player's balance >= {_money}: subtract {_money} from player's balance level up horse of player message "&aYour horse was upgraded to level %horse level of player%" else: message "&cYou do not have enough money" else if {_type} = "XP" or "xp": if player's level >= {_money}: subtract {_money} from player's level level up horse of player message "&aYour horse was upgraded to level %horse level of player%" else: message "&cYou do not have enough EXP levels" else if {_type} = "EmpireEco" or "empireeco": if player's gold >= {_money}: subtract {_money} gold from player's vault level up horse of player message "&aYour horse was upgraded to level %horse level of player%" else: message "&cYou do not have enough coins" else: message "&cError! Economy plugin wasn't defined. Please report this error to an admin." else if horse level of player is 3: message "&cYour horse is already at max level." else if arg-1 is "buy" or "get" or "buysaddle" or "buy-saddle" or "getsaddle" or "get-saddle": set {_type} to yaml value "eco-buy-type" in "EmpireHorses-config" set {_name} to yaml value "Item-name" in "EmpireHorses-config" if horse level of player is 1: set {_money} to yaml value "Item-cost.1" in "EmpireHorses-config" if {_type} = "Vault" or "vault": if player's balance >= {_money}: subtract {_money} from player's balance give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough money" else if {_type} = "XP" or "xp": if player's level >= {_money}: subtract {_money} from player's level give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough EXP levels" else if {_type} = "EmpireEco" or "empireeco": if player's gold >= {_money}: subtract {_money} gold from player's vault give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough coins" else: message "&cError! Economy plugin wasn't defined. Please report this error to an admin." else if horse level of player is 2: set {_money} to yaml value "Item-cost.2" in "EmpireHorses-config" if {_type} = "Vault" or "vault": if player's balance >= {_money}: subtract {_money} from player's balance give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough money" else if {_type} = "XP" or "xp": if player's level >= {_money}: subtract {_money} from player's level give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough EXP levels" else if {_type} = "EmpireEco" or "empireeco": if player's gold >= {_money}: subtract {_money} gold from player's vault give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough coins" else: message "&cError! Economy plugin wasn't defined. Please report this error to an admin." else if horse level of player is 3: set {_money} to yaml value "Item-cost.3" in "EmpireHorses-config" if {_type} = "Vault" or "vault": if player's balance >= {_money}: subtract {_money} from player's balance give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough money" else if {_type} = "XP" or "xp": if player's level >= {_money}: subtract {_money} from player's level give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough EXP levels" else if {_type} = "EmpireEco" or "empireeco": if player's gold >= {_money}: subtract {_money} gold from player's vault give player 1 saddle named "%{_name}%" else: message "&cYou do not have enough coins" else: message "&cError! Economy plugin wasn't defined. Please report this error to an admin." else: message "&cError! Your horse level is false defined. Contact an admin." else: message "&8&m----&b<> Required&8&m----&b[] Optional&8&m-------" message "&d/horse upgrade &8- &7Upgrade your horse" message "&d/horse buy &8- &7Buy a saddle" command /eph [] [] []: permission: eph.admin permission message:: &cSorry! You don't have access to this command. cooldown: 2 seconds cooldown message: &cPlease wait before using this command again. trigger: if arg-1 is "upgrade": if arg-2 is set: level up horse of arg-2 message "&a%arg-2%'s horse was upgraded to &f%horse level of player%&a." message "&aYour horse was upgraded by %player%." to arg-2 else: message "&cPlease provide the name of the player." else if arg-1 is "set": if arg-2 is set: if arg-3 is set: if arg-3 is "1" or "2" or "3": set {_arg-3} to arg-3 parsed as a number set arg-2's horse level to {_arg-3} message "&a%arg-2%'s horse was set to %arg-3%" message "&aYour horse was set to %arg-3% by %player%." to arg-2 else: message "&cThis is not a defined level. Please set it to 1,2 or 3." else: message "&cPlease provide the level you want to set. 1,2 or 3." else: message "&cPlease provide the name of the player." else if arg-1 is "get" or "give": if arg-2 is set: give arg-2 the defined horse saddle message "&aYou were given a horse saddle." to arg-2 message "&aYou gave %arg-2% a horse saddle." else: give player the defined horse saddle message "&aYou were given a horse saddle." else if arg-1 is "reset": if arg-2 is set: set arg-2's horse level to 1 message "&aYou reset the horse level of %arg-2%." message "&cYour horse level was set to 1." else: message "&cPlease provide the name of the player." else if arg-1 is "reload": message "&8[&5!&8] &7Reloading..." wait 5 ticks execute console command "/sk reload EmpireHorses" message "&8[&5!&8] &aEmpireHorses was reloaded!" else: message "&8&m----&b<> Required&8&m----&b[] Optional&8&m-------" message "&d/eph upgrade &8- &7Upgrade someones horse" message "&d/eph set &8- &7set someones horse to 1,2,3" message "&d/eph get/give [player] &8- &7Get/give [player] a saddle" message "&d/eph reset &8- &7reset player's horse level" message "&d/eph reload &8- &7reload the script" # ----------------[ EVENTS ]----------------# on right click with saddle: set {_itemname} to yaml value "Item-name" in "EmpireHorses-config" if player's tool is saddle named "%{_itemname}%": if {empire.horsespawn::%player%} is false: if horse level of player is 1: set {empire.horsespawn::%player%} to true set {_namecolor} to horse level 1 name color value set {_horsecolor} to horse level 1 horse color value set {_speed} to horse level 1 speed value set {_armor} to horse level 1 armor value spawn horse at player set age of last spawned horse to 1 if {_armor} is "none": add "{Variant:%{_horsecolor}%,SaddleItem:{id:saddle,Count:1},Age:0,Attributes:[{Name:generic.movementSpeed,Base:%{_speed}%}],NoAI:1}" to last spawned entity's nbt else: add "{Variant:%{_horsecolor}%,SaddleItem:{id:saddle,Count:1},Age:0,ArmorItem:{id:%{_armor}%,Count:1},Attributes:[{Name:generic.movementSpeed,Base:%{_speed}%}],NoAI:1}" to last spawned entity's nbt apply resistance 100000 without any particles to spawned horse for 99999 seconds tame last spawned entity to player make player ride spawned horse set name of spawned horse to "%{_namecolor}%%player%'s Horse" set {empire.horse::%player%} to last spawned horse if horse level of player is 2: set {empire.horsespawn::%player%} to true set {_namecolor} to horse level 2 name color value set {_horsecolor} to horse level 2 horse color value set {_speed} to horse level 2 speed value set {_armor} to horse level 2 armor value spawn horse at player set age of last spawned horse to 1 if {_armor} is "none": add "{Variant:%{_horsecolor}%,SaddleItem:{id:saddle,Count:1},Age:0,Attributes:[{Name:generic.movementSpeed,Base:%{_speed}%}],NoAI:1}" to last spawned entity's nbt else: add "{Variant:%{_horsecolor}%,SaddleItem:{id:saddle,Count:1},Age:0,ArmorItem:{id:%{_armor}%,Count:1},Attributes:[{Name:generic.movementSpeed,Base:%{_speed}%}],NoAI:1}" to last spawned entity's nbt apply resistance 100000 without any particles to spawned horse for 99999 seconds tame last spawned entity to player make player ride spawned horse set name of spawned horse to "%{_namecolor}%%player%'s Horse" set {empire.horse::%player%} to last spawned horse if horse level of player is 3: set {empire.horsespawn::%player%} to true set {_namecolor} to horse level 3 name color value set {_horsecolor} to horse level 3 horse color value set {_speed} to horse level 3 speed value set {_armor} to horse level 3 armor value spawn horse at player set age of last spawned horse to 1 if {_armor} is "none": add "{Variant:%{_horsecolor}%,SaddleItem:{id:saddle,Count:1},Age:0,Attributes:[{Name:generic.movementSpeed,Base:%{_speed}%}],NoAI:1}" to last spawned entity's nbt else: add "{Variant:%{_horsecolor}%,SaddleItem:{id:saddle,Count:1},Age:0,ArmorItem:{id:%{_armor}%,Count:1},Attributes:[{Name:generic.movementSpeed,Base:%{_speed}%}],NoAI:1}" to last spawned entity's nbt apply resistance 100000 without any particles to spawned horse for 99999 seconds tame last spawned entity to player make player ride spawned horse set name of spawned horse to "%{_namecolor}%%player%'s Horse" set {empire.horse::%player%} to last spawned horse else: set {empire.horsespawn::%player%} to false loop horses in radius 5 around player: if loop-value is {empire.horse::%player%}: delete {empire.horse::%player%} delete loop-entity message "&cYour horse was removed." on dismount: set {empire.horsespawn::%player%} to false loop horses in radius 5 around player: if loop-value is {empire.horse::%player%}: delete {empire.horse::%player%} delete loop-entity on join: set {empire.horsespawn::%player%} to false on quit: set {empire.horsespawn::%player%} to false loop horses in radius 5 around player: if loop-value is {empire.horse::%player%}: delete {empire.horse::%player%} delete loop-entity on inventory click: if name of event-inventory contains "%player%'s Horse": cancel event on drop: if {empire.horsespawn::%player%} is true: cancel event