skriptMC/inventories.sk

38 lines
1.5 KiB
Text
Raw Normal View History

options:
2021-07-01 20:43:58 +02:00
tailleInventaire: 41 # 36 d'inventaire + 4 d'équipement + 1 seconde main
messagePreChangement: "&7Changement d'inventaire..."
messagePostChargement: "&7&l%{_n1}%&7 item sauvegardés et &l%{_n2}%&7 chargés."
2021-06-30 21:58:41 +02:00
on load:
ScriptList("add", script)
on unload:
ScriptList("remove", script)
function inventaire(mode: text, player: player, gamemode: text) :: number:
set {_uuid} to uuid of {_player}
set {_count} and {_nombreItems} to 0
if {_mode} is "chargement":
clear inventory of {_player}
loop {@tailleInventaire} times:
set {_item} to slot {_count} of inventory of {_player}
if {_mode} is "chargement":
2021-07-01 20:42:53 +02:00
set {_item} to {inv.%{_uuid}%.%{_gamemode}%::%{_count}%}
else if {_mode} is "sauvegarde":
set {inv.%{_uuid}%.%{_gamemode}%::%{_count}%} to {_item}
add 1 to {_count}
if "%{_item}%" is not "<none>" or "air" or "0 air":
add 1 to {_nombreItems}
return {_nombreItems}
on gamemode change:
if old gamemode of player is survival:
set {_n1} to inventaire("sauvegarde", player, "%old gamemode of player%")
send {@messagePreChangement}
set {_n2} to inventaire("chargement", player, "creative")
send {@messagePostChargement}
else if gamemode of player is survival:
set {_n1} to inventaire("sauvegarde", player, "creative")
send {@messagePreChangement}
set {_n2} to inventaire("chargement", player, "%gamemode of player%")
send {@messagePostChargement}