#AxSaveEq - Skrypt na zapisywanie ekwipunku i jego przywracanie #$ Wersja: 3.5 $# #Konfiguracja options: NumberOfRecords: 9 CooldownTime: 5 minutes AutoSaveTime: 10 minute #Funkcje function AxSaveEq_save(p: player, reason: String="&eAuto Save", killer: string=""): add 1 to {AxSaveEq::%{_p}%::next} if {AxSaveEq::%{_p}%::next} >= {@NumberOfRecords}+1: set {AxSaveEq::%{_p}%::next} to 1 clear {AxSaveEq::%{_p}%::%{AxSaveEq::%{_p}%::next}%::Inventory::*} and {AxSaveEq::%{_p}%::%{AxSaveEq::%{_p}%::next}%::Armour::*} set {AxSaveEq::%{_p}%::%{AxSaveEq::%{_p}%::next}%::Inventory::*} to (all items in {_p}'s inventory) set {AxSaveEq::%{_p}%::%{AxSaveEq::%{_p}%::next}%::Armour::*} to {_p}'s helmet and {_p}'s chestplate, {_p}'s leggings, {_p}'s boots set {AxSaveEq::%{_p}%::%{AxSaveEq::%{_p}%::next}%::Info} to " &7Date: &e%now%|| &7Ping: &e%{_p}'s ping%|| &7Health: &e%{_p}'s health%|| &7Reason: &e%{_reason}%%{_killer}%|| &7Items: &e%size of {AxSaveEq::%{_p}%::%{AxSaveEq::%{_p}%::next}%::Inventory::*}%{restore}||&8------------------------------|| &7Click &ePPM &7to restore the inventory|| &7Click &eLPM &7to view inventory" #Komendy command /saveeq []: aliases: xAxee:saveeq, zapiszeq usage: &6/saveeq trigger: if executor has permission "AxSaveEq": if arg 1 is set: if arg is "all" or "*": loop all players: AxSaveEq_save(loop-player, "Global save by: &a%executor%") send "&aSucces! &7All inventories saved!" stop if arg is online: AxSaveEq_save(arg, "Save by: &a%executor%") send "&aSucces! &7Inventory saved &7(&e%arg%&7)" stop send "&4Error: &e%arg% &7is offline!" stop AxSaveEq_save(player, "Player save") send "&aSucces! &7Inventory saved!" stop if (difference between {AxSaveEq::%player%::$Cooldown} and now) <= {@CooldownTime}: send "&4Error! &7Cooldown &e%difference between {AxSaveEq::%player%::$Cooldown} and now%/{@CooldownTime}" stop AxSaveEq_save(player, "Player save") send "&aSucces! &7Inventory saved!" set {AxSaveEq::%player%::$Cooldown} to now command /backeq []: aliases: xAxee:backeq permission: AxSaveEq permission message: &4Error! &7You don't have permission! trigger: if arg 1 is set: set {_gui} to chest inventory named "&eBackEq &7- &e%arg%" loop {@NumberOfRecords} times: if {AxSaveEq::%arg%::%loop-number%::Info} is not set: continue set {_lore} to {AxSaveEq::%arg%::%loop-number%::Info} replace all "{restore}" with ({AxSaveEq::%arg%::%loop-number%::Restored} ? "") in {_lore} set slot (loop-number)-1 of {_gui} to ("%arg%" parsed as offline player)'s skull named "&6Save: &e%loop-number%" with lore (split {_lore} at "||") open {_gui} to player stop send "&4Error! &7Player is not set!" #Automatyczny zapis every {@AutoSaveTime}: loop all players: AxSaveEq_save(loop-player) #AxAutoUpdate section (https://skript.pl/temat/40795-axautoupdate) on load: set {AxUpdate::AxSaveEq::link} to "https://code.skript.pl/ryg8Qz5z/raw" set {AxUpdate::AxSaveEq::status} to true set {AxUpdate::AxSaveEq::name} to "AxSaveEq" set {AxUpdate::AxSaveEq} to script #Inventory on inventory click: if uncolored name of event-inventory doesn't contain "BackEq - " or " Save: ": stop cancel event if uncolored name of event-inventory contain "BackEq - ": set {_p} to (uncolored name of event-inventory).replace("BackEq - ", "") parsed as player stop if clicked slot is not between 0 and ({@NumberOfRecords}-1) if click action is left mouse button: set {_gui} to chest inventory named "&e%{_p}% &6Save: &7%index of clicked slot+1%" with 5 rows loop {AxSaveEq::%{_p}%::%index of clicked slot+1%::Inventory::*}: set slot (loop-index parsed as integer)-1 of {_gui} to loop-value loop {AxSaveEq::%{_p}%::%index of clicked slot+1%::Armour::*}: set slot (loop-index parsed as integer)+40 of {_gui} to loop-value open {_gui} to player if click action is right mouse button: add {AxSaveEq::%{_p}%::%index of clicked slot+1%::Inventory::*} to {_p} equip {_p} with {AxSaveEq::%{_p}%::%index of clicked slot+1%::Armour::*} set {AxSaveEq::%{_p}%::%index of clicked slot+1%::Restored} to "|| &cRestored by: &e%player% &6(%now%)" close player's inventory send "&aSucces! &7Restored items" to player on death of player: AxSaveEq_save(victim, "&eDeath", "|| &7Death reason: &e%death message%")