# -------------------------------------------------- # SkArmorEvent v. 1.1 # Skrypt na eventy wywołujące się przy zakładaniu i zdejmowaniu zbroi # # by Kormic # -------------------------------------------------- custom event "onArmorEquip": pattern: sk(ae|ArmorEvent) armo[u]r (equip|wear) event-values: player, item check: continue custom event "onArmorUnequip": pattern: sk(ae|ArmorEvent) armo[u]r un(equip|wear) event-values: player, item check: continue function skArmorEventCheckArmor(p: player, i: item) :: boolean: {_i} is not any armor: return false if {_i} is any helmet: {_p}'s helmet is not air return false else if {_i} is any chestplate: {_p}'s chestplate is not air return false else if {_i} is any leggings: {_p}'s leggings is not air return false else if {_i} is any boots: {_p}'s boots is not air return false return true function skArmorEventIsCancelled(p: player, i: item, n: text) :: boolean: set {_e::player} to {_p} set {_e::item} to {_i} set {_event} to custom event "%{_n}%" with {_e::*} call event {_event} if {_event} is cancelled: return true return false on right click: set {_i} to player's tool if skArmorEventCheckArmor(player, {_i}) is false: stop if skArmorEventIsCancelled(player, {_i}, "onArmorEquip") is true: cancel event on inventory click: clicked inventory is player's inventory if click type is left mouse button or right mouse button: clicked slot is between 36 and 39 set {_i} to "%event-slot%" parsed as item if player's cursor slot is any armor: if skArmorEventIsCancelled(player, {_i}, "onArmorEquip") is true: cancel event else if player's cursor slot is air: {_i} is not air if skArmorEventIsCancelled(player, {_i}, "onArmorUnequip") is true: cancel event else if click type is left mouse button with shift or right mouse button with shift: set {_i} to "%event-slot%" parsed as item if clicked slot is between 36 and 39: {_i} is not air if skArmorEventIsCancelled(player, {_i}, "onArmorUnequip") is true: cancel event if skArmorEventCheckArmor(player, {_i}) is false: stop if skArmorEventIsCancelled(player, {_i}, "onArmorEquip") is true: cancel event