Advertisement
Guest User

Untitled

a guest
Jul 2nd, 2021
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.20 KB | None | 0 0
  1. on death:
  2. attacker is a player:
  3. victim is a player:
  4. if {armorlevel::%victim's uuid%} is not set:
  5. set {armorlevel::%victim's uuid%} to 0
  6. else if {armorlevel::%victim's uuid%} >= 2:
  7. remove 2 from {armorlevel::%victim's uuid%}
  8. else:
  9. set {armorlevel::%victim's uuid%} to 0
  10. if {armorlevel::%attacker's uuid%} ? 0 < 29:
  11. add 1 to {armorlevel::%attacker's uuid%}
  12. setArmor(attacker)
  13. else:
  14. send action bar "&eArmor &8| &cMax. level reached!" to attacker
  15.  
  16. on respawn:
  17. setArmor(player)
  18.  
  19. function setArmor(p: player):
  20. set {_pid} to uuid of {_p}
  21. set {_amlv} to {armorlevel::%{_pid}%} ? 0
  22. set {_p}'s helmet to air
  23. set {_p}'s chestplate to air
  24. set {_p}'s leggings to air
  25. set {_p}'s boots to air
  26. if {_amlv} < 5:
  27. if {_p}'s inventory doesn't contain wooden sword:
  28. loop all items in inventory of {_p}:
  29. "%loop-item%" contains "sword":
  30. remove loop-item from inventory of {_p}
  31. set slot 0 of {_p}'s inventory to wooden sword
  32. loop 5 times:
  33. if {_amlv} = 1, 2, 3 or 4:
  34. set {_diff} to difference between {_amlv} and 1
  35. set {_mat} to "leather"
  36. if {_amlv} = 6, 7, 8 or 9:
  37. set {_diff} to difference between {_amlv} and 6
  38. set {_mat} to "chain"
  39. if {_amlv} = 11, 12, 13 or 14:
  40. set {_diff} to difference between {_amlv} and 11
  41. set {_mat} to "gold"
  42. if {_amlv} = 16, 17, 18 or 19:
  43. set {_diff} to difference between {_amlv} and 16
  44. set {_mat} to "iron"
  45. if {_amlv} = 21, 22, 23 or 24:
  46. set {_diff} to difference between {_amlv} and 21
  47. set {_mat} to "diamond"
  48. if {_amlv} = 26, 27, 28 or 29:
  49. set {_diff} to difference between {_amlv} and 26
  50. set {_mat} to "netherite"
  51. if {_amlv} = 1, 6, 11, 16, 21 or 26:
  52. set {_p}'s boots to "%{_mat}% boots" parsed as itemtype
  53. if {_amlv} = 2, 7, 12, 17, 22 or 27:
  54. set {_p}'s leggings to "%{_mat}% leggings" parsed as itemtype
  55. if {_amlv} = 3, 8, 13, 18, 23 or 28:
  56. set {_p}'s chestplate to "%{_mat}% chestplate" parsed as itemtype
  57. if {_amlv} = 4, 9, 14, 19, 24 or 29:
  58. set {_p}'s helmet to "%{_mat}% helmet" parsed as itemtype
  59. if {_diff} > 0:
  60. remove 1 from {_amlv}
  61. loop all items in inventory of {_p}:
  62. "%loop-item%" contains "sword":
  63. remove loop-item from inventory of {_p}
  64. if {_amlv} >= 5:
  65. set {_mat} to "stone"
  66. if {_amlv} >= 10:
  67. set {_mat} to "gold"
  68. if {_amlv} >= 15:
  69. set {_mat} to "iron"
  70. if {_amlv} >= 20:
  71. set {_mat} to "diamond"
  72. if {_amlv} >= 25:
  73. set {_mat} to "netherite"
  74. set slot 0 of {_p}'s inventory to "%{_mat}% sword" parsed as itemtype
  75.  
  76. command /armor [<offlineplayer>] [<text>]:
  77. trigger:
  78. player has permission "armor.change":
  79. if arg 1 is set:
  80. if arg 1 is "all":
  81. if arg 2 is "reset":
  82. set {_size} to size of {armorlevel::*}
  83. loop {armorlevel::*}:
  84. set {_p} to loop-index parsed as offlineplayer
  85. setArmor({_p})
  86. delete {armorlevel::%loop-index%}
  87. send "&eArmor &8| &7You &ereset &7the armor level of all players! &8(&7%{_size}%&8)"
  88. else if arg 2 parsed as integer is between 0 and 29:
  89. set {_size} to size of {armorlevel::*}
  90. loop {armorlevel::*}:
  91. set {armorlevel::%loop-index%} to arg 2 parsed as integer
  92. set {_p} to loop-index parsed as offlineplayer
  93. setArmor({_p})
  94. send "&eArmor &8| &7You set the armor level of all players to &e%arg 2%&7! &8(&7%{_size}%&8)"
  95. else:
  96. send "&eArmor &8| &7Please write if you want to &ereset &7or set the armor of &e%arg 1% &7to a number between &e0 &7and &e29&7!"
  97. else:
  98. if arg 2 is "reset":
  99. delete {armorlevel::%uuid of arg 1%}
  100. setArmor(arg 1)
  101. send "&eArmor &8| &7You &ereset &7the armor level of &e%arg 1%&7!"
  102. else if arg 2 parsed as integer is between 0 and 29:
  103. set {armorlevel::%uuid of arg 1%} to arg 2 parsed as integer
  104. setArmor(arg 1)
  105. send "&eArmor &8| &7You set the armor level of &e%arg 1% &7to &e%arg 2%&7!"
  106. else:
  107. send "&eArmor &8| &7Please write if you want to &ereset &7or set the armor of &e%arg 1% &7to a number between &e0 &7and &e29&7!"
  108. else:
  109. send "&eArmor &8| &7Please write the &ename of a player &7or &eall &7to change the armor stats."
  110. else:
  111. send "&eArmor &8| &cInsufficient permissions!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement