henry900326

Untitled

Sep 16th, 2018
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 38.84 KB | None | 0 0
  1. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  2. # [ Options 選項 ]
  3. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  4. Options:
  5. Tag: &6技能 &c&l>>
  6. #[ 炎靈地獄]
  7. 炎靈地獄.CD: 4
  8. 炎靈地獄.MP: 85
  9. 炎靈地獄.Max: 5
  10.  
  11. #[ 流星雨 ]
  12. 流星雨.CD: 18
  13. 流星雨.MP: 250
  14. 流星雨.Max: 10
  15.  
  16. #[ 毒霧 ]
  17. 毒霧.CD: 12
  18. 毒霧.MP: 135
  19. 毒霧.Max: 5
  20.  
  21. #[ 劇毒麻痺 ]
  22. 劇毒麻痺.CD: 6
  23. 劇毒麻痺.MP: 80
  24. 劇毒麻痺.Max: 5
  25.  
  26. #[ 智慧昇華 ]
  27. 智慧昇華.Max: 10
  28.  
  29. #[ 元素傳動-火毒 ]
  30. 元素傳動-火毒.CD: 120
  31. 元素傳動-火毒.受益時間: 120
  32. 元素傳動-火毒.MP: 200
  33. 元素傳動-火毒.Max: 5
  34.  
  35.  
  36.  
  37. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  38. # [ Function 函式 ]
  39. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  40. Function 火毒魔導skill(P:player):
  41. set slot 4 of {_P}'s current inventory to 1 of gold hoe with no nbt named "&e火毒魔導" with lore "&f《&e剩餘技能點&f: &6%{玩家資料.%{_P}%::剩餘技能點}% &f》"
  42. set slot 19 of {_P}'s current inventory to magma block with no nbt named "&c炎靈地獄" with lore "&e技能介紹:||&f釋放難以掌控的火精靈向前攻擊||&f對直線敵人造成1~3次魔法傷害||&e傷害量: &f(魔法攻擊力)*%(650+50*{技能.%{_P}%::炎靈地獄})%%%||&e有效範圍: &f30格||&e冷卻時間: &f4秒||&e魔力消耗量: &f85MP||&e技能類型: &c主動技能"
  43. if {技能.%{_P}%::炎靈地獄} >= 5:
  44. set slot 28 of {_P}'s current inventory to blue stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::炎靈地獄}%/5" with lore "&c等級已滿 無法升級"
  45. else if {技能.%{_P}%::炎靈地獄} >= 0:
  46. set slot 28 of {_P}'s current inventory to white stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::炎靈地獄}%/5" with lore "&a點此升級炎靈地獄"
  47. set slot 20 of {_P}'s current inventory to fire charge with no nbt named "&c流星雨" with lore "&e技能介紹:||&f召喚宇宙中徘徊的流星雨||&f對範圍內所有敵人造成1次大量魔法傷害||&e傷害量: &f(魔法攻擊力)*%(1500+200*{技能.%{_P}%::流星雨})%%%||&e攻擊範圍: &f12格||&e冷卻時間: &f18秒||&e魔力消耗量: &b250MP||&e技能類型: &c主動技能"
  48. if {技能.%{_P}%::流星雨} >= 10:
  49. set slot 29 of {_P}'s current inventory to blue stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::流星雨}%/10" with lore "&c等級已滿 無法升級"
  50. else if {技能.%{_P}%::流星雨} >= 0:
  51. set slot 29 of {_P}'s current inventory to white stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::流星雨}%/10" with lore "&a點此升級流星雨"
  52. set slot 21 of {_P}'s current inventory to slimeball with no nbt named "&c劇毒麻痺" with lore "&e技能介紹:||&f在前方召喚一個劇毒魔法球||&f1.5秒後爆炸並對魔法球周圍6格內敵人造成傷害||&f在魔法球中心敵人將受到2倍傷害||&e傷害量: &f(魔法攻擊力)*%(1000+150*{技能.%{_P}%::劇毒麻痺})%||&e麻痺時間: &f5秒||&e冷卻時間: &f6秒||&e魔力消耗量: &f80MP||&e技能類型: &c主動技能"
  53. if {技能.%{_P}%::劇毒麻痺} >= 5:
  54. set slot 30 of {_P}'s current inventory to blue stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::劇毒麻痺}%/5" with lore "&c等級已滿 無法升級"
  55. else if {技能.%{_P}%::劇毒麻痺} >= 0:
  56. set slot 30 of {_P}'s current inventory to white stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::劇毒麻痺}%/5" with lore "&a點此升級劇毒麻痺"
  57. set slot 23 of {_P}'s current inventory to glowing dye:2 with no nbt named "&a毒霧" with lore "&e技能介紹:||&f召喚出持續反應的劇毒||&f時間內對固定範圍敵人每2秒造成傷害||&e每秒傷害量: &f(魔法攻擊力)*%(500+30*{技能.%{_P}%::毒霧})%%%||&e持續時間: &f10秒||&e攻擊範圍: &f7格||&e冷卻時間: &f12秒||&e魔力消耗量: &b135MP||&e技能類型: &c主動技能"
  58. if {技能.%{_P}%::毒霧} >= 5:
  59. set slot 32 of {_P}'s current inventory to blue stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::毒霧}%/5" with lore "&c等級已滿 無法升級"
  60. else if {技能.%{_P}%::毒霧} >= 0:
  61. set slot 32 of {_P}'s current inventory to white stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::毒霧}%/5" with lore "&a點此升級毒霧"
  62. set slot 24 of {_P}'s current inventory to glowing dye:5 named "&a智慧昇華" with lore "&e技能介紹:||&f將智慧的效果提高至另一層級||&f每級提升40點最大MP,20點魔法攻擊力||&e最大MP提升量: &f%40*{技能.%{_P}%::智慧昇華}%||&e魔法攻擊力提升量: &f%25*{技能.%{_P}%::智慧昇華}%||&e技能類型: &a被動技能"
  63. if {技能.%{_P}%::智慧昇華} >= 10:
  64. set slot 33 of {_P}'s current inventory to blue stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::智慧昇華}%/10" with lore "&c等級已滿 無法升級"
  65. else if {技能.%{_P}%::智慧昇華} >= 0:
  66. set slot 33 of {_P}'s current inventory to white stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::智慧昇華}%/10" with lore "&a點此升級智慧昇華"
  67. set slot 25 of {_P}'s current inventory to beacon named "&5元素傳動-火毒" with lore "&e技能介紹:||&f讓體內的魔力轉換屬性||&f時間內每級提高自身的||&f8%%爆擊傷害,25點魔法攻擊力,200點最大血量,10點魔量吸收量||&e爆擊傷害提升量: &f%8*{技能.%{_P}%::火毒傳動}%%%||&e魔法攻擊力提升量: &f%25*{技能.%{_P}%::火毒傳動}%||&e最大血量提升量: &f%200*{技能.%{_P}%::火毒傳動}%%%||&e魔量吸收量提升量: &f%10*{技能.%{_P}%::火毒傳動}%%%||&e持續時間: &f120秒||&e冷卻時間: &f120秒||&e魔力消耗量: &b200MP||&e技能類型: &a主動技能"
  68. if {技能.%{_P}%::火毒傳動} >= 5:
  69. set slot 34 of {_P}'s current inventory to blue stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::火毒傳動}%/5" with lore "&c等級已滿 無法升級"
  70. else if {技能.%{_P}%::火毒傳動} >= 0:
  71. set slot 34 of {_P}'s current inventory to white stained glass pane named "&6技能等級&7: &f%{技能.%{_P}%::火毒傳動}%/5" with lore "&a點此升級元素傳動-火毒"
  72.  
  73. Function SkillLevelUp(P:player, S:text, M:number):
  74. if {玩家資料.%{_P}%::剩餘技能點} is larger than 0:
  75. {技能.%{_P}%::%{_S}%} < {_M}
  76. {技能.%{_P}%::%{_S}%} >= 0
  77. remove 1 from {玩家資料.%{_P}%::剩餘技能點}
  78. add 1 to {技能.%{_P}%::%{_S}%}
  79. else:
  80. send "&6技能 >> &c您的技能點數不足 無法升級該技能" to {_P}
  81.  
  82. Function Skill(P:player, S:text, Max:number, CD:number, MP:number) :: boolean:
  83. set {_Skill} to uncolored {_S}
  84. if {技能.%{_P}%::%{_Skill}%} <= 0:
  85. send "{@Tag} &c尚未學習 &f<%{_S}%&f>" to {_P}
  86. return false
  87. stop
  88. if {技能.%{_P}%::%{_Skill}%} > {_Max}:
  89. send "{@Tag} &c&l注意! 你的技能等級出現錯誤! 請盡速尋求管理員協助!" to {_P}
  90. return false
  91. stop
  92. set {_冷卻} to "%difference between {冷卻.%{_P}%::%{_Skill}%} and now%"
  93. replace "seconds" and "second" and " " with "" in {_冷卻}
  94. set {_冷卻} to {_冷卻} parsed as number
  95. set {_CD} to {_CD} parsed as number
  96. if {_冷卻} is less than {_CD}:
  97. set {_冷卻} to "%difference between {_CD} and {_冷卻}%"
  98. replace "seconds" and "second" and " " with "" in {_冷卻}
  99. send "{@Tag} &f技能冷卻中 &f<%{_S}%&f> &f還有 &e%{_冷卻}% &f秒" to {_P}
  100. return false
  101. stop
  102. if {玩家魔力值.%{_P}%} is larger or equal to {_MP}:
  103. remove {_MP} from {玩家魔力值.%{_P}%}
  104. set {_math} to 0.99 * {玩家魔力值.%{_P}%} / {玩家資料.%{_P}%::魔力值}
  105. if {_math} is more than or equal to 1:
  106. set {_math} to 0.99
  107. set level progress of {_P} to {_math}
  108. set {_P}'s level to {玩家魔力值.%{_P}%}
  109. send "{@Tag} &f施放技能 &f<%{_S}%&f> &f消耗了 &9%{_MP}% &f魔力值" to {_P}
  110. else:
  111. send "{@Tag} &c魔力不足 無法施放 &f<%{_S}%&f>" to {_P}
  112. return false
  113. stop
  114. return true
  115.  
  116.  
  117. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  118. # [ SkillGui 技能介面 ]
  119. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  120. command /skill3c3:
  121. trigger:
  122. if {玩家資料.%player%::玩家職業} is "火毒魔導":
  123. set {技能.%player%::炎靈地獄} to {技能.%player%::炎靈地獄} parsed as number
  124. set {技能.%player%::流星雨} to {技能.%player%::流星雨} parsed as number
  125. set {技能.%player%::劇毒麻痺} to {技能.%player%::劇毒麻痺} parsed as number
  126. set {技能.%player%::毒霧} to {技能.%player%::毒霧} parsed as number
  127. set {技能.%player%::智慧昇華} to {技能.%player%::智慧昇華} parsed as number
  128. set {技能.%player%::火毒傳動} to {技能.%player%::火毒傳動} parsed as number
  129. open chest with 5 rows named "&c&l火毒魔導[3轉] &6&l技能介面" to player
  130. wait 1 ticks
  131. loop 2 times:
  132. set slot (loop-number) of player's current inventory to 1 of gray stained glass pane named "&7"
  133. set slot (loop-number + 5) of player's current inventory to 1 of gray stained glass pane named "&7"
  134. set slot (1 + (loop-number * 2)) of player's current inventory to 1 of orange stained glass pane named "&7"
  135. loop 6 times:
  136. set slot ((loop-number - 1) * 9) of player's current inventory to 1 of gray stained glass pane named "&7"
  137. set slot (8 + (loop-number - 1) * 9) of player's current inventory to 1 of gray stained glass pane named "&7"
  138. loop 7 times:
  139. set slot (9 + loop-number) of player's current inventory to 1 of orange stained glass pane named "&7"
  140. set slot (36 + loop-number) of player's current inventory to 1 of gray stained glass pane named "&7"
  141. 火毒魔導skill(player)
  142.  
  143. on inventory click:
  144. name of player's current inventory contains "火毒魔導[3轉]":
  145. cancel event
  146. if lore of item contains "&a點此升級炎靈地獄":
  147. SkillLevelUp(player,"炎靈地獄",{@炎靈地獄.Max})
  148. if lore of item contains "&a點此升級流星雨":
  149. SkillLevelUp(player,"流星雨",{@流星雨.Max})
  150. if lore of item contains "&a點此升級劇毒麻痺":
  151. SkillLevelUp(player,"劇毒麻痺",{@劇毒麻痺.Max})
  152. if lore of item contains "&a點此升級毒霧":
  153. SkillLevelUp(player,"毒霧",{@毒霧.Max})
  154. if lore of item contains "&a點此升級智慧昇華":
  155. if {玩家資料.%player%::剩餘技能點} is larger than 0:
  156. SkillLevelUp(player,"智慧昇華",{@智慧昇華.Max})
  157. add 40 to {玩家資料.%player%::魔力值}
  158. add 20 to {玩家資料.%player%::魔法攻擊力}
  159. if lore of item contains "&a點此升級元素傳動-火毒":
  160. SkillLevelUp(player,"火毒傳動",{@元素傳動-火毒.Max})
  161. 火毒魔導skill(player)
  162.  
  163.  
  164.  
  165. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  166. # [ Skill 技能 ]
  167. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  168. on right click:
  169. {玩家資料.%player%::玩家職業} is "火毒魔導"
  170. set {_STRATK} to {玩家資料.%player%::力量} * 0.5
  171. set {_DEXATK} to {玩家資料.%player%::敏捷} * 0.7
  172. set {_INTATK} to {玩家資料.%player%::智慧} * 0.6
  173. set {_LUKATK} to {玩家資料.%player%::幸運} * 0.4
  174. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 0:
  175. add ({_STRATK} + {_DEXATK} + {_LUKATK}) to {_PHYSICDMG}
  176. add ({_INTATK} + {_LUKATK}) to {_MAGICDMG}
  177. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 1:
  178. add ({_STRATK} + {_DEXATK} + {_LUKATK})*1.2 to {_PHYSICDMG}
  179. add ({_INTATK} + {_LUKATK})*1.2 to {_MAGICDMG}
  180. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 2:
  181. add ({_STRATK} + {_DEXATK} + {_LUKATK})*1.4 to {_PHYSICDMG}
  182. add ({_INTATK} + {_LUKATK})*1.4 to {_MAGICDMG}
  183. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 3:
  184. add ({_STRATK} + {_DEXATK} + {_LUKATK})*1.8 to {_PHYSICDMG}
  185. add ({_INTATK} + {_LUKATK})*1.8 to {_MAGICDMG}
  186. set {_check} to {玩家資料.%player%::最大血量}
  187. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 0:
  188. add ({玩家資料.%player%::力量} * 5) to {_check}
  189. add ({玩家資料.%player%::智慧} * 4) to {_check}
  190. add ({玩家資料.%player%::敏捷} * 3) to {_check}
  191. add ({玩家資料.%player%::幸運} * 2) to {_check}
  192. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 1:
  193. add ({玩家資料.%player%::力量} * 5)*1.25 to {_check}
  194. add ({玩家資料.%player%::智慧} * 4)*1.25 to {_check}
  195. add ({玩家資料.%player%::敏捷} * 3)*1.25 to {_check}
  196. add ({玩家資料.%player%::幸運} * 2)*1.25 to {_check}
  197. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 2:
  198. add ({玩家資料.%player%::力量} * 5)*1.5 to {_check}
  199. add ({玩家資料.%player%::智慧} * 4)*1.5 to {_check}
  200. add ({玩家資料.%player%::敏捷} * 3)*1.5 to {_check}
  201. add ({玩家資料.%player%::幸運} * 2)*1.5 to {_check}
  202. if {幾轉職業::%{玩家資料.%player%::玩家職業}%} is 3:
  203. add ({玩家資料.%player%::力量} * 5)*2 to {_check}
  204. add ({玩家資料.%player%::智慧} * 4)*2 to {_check}
  205. add ({玩家資料.%player%::敏捷} * 3)*2 to {_check}
  206. add ({玩家資料.%player%::幸運} * 2)*2 to {_check}
  207. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  208. #[ 炎靈地獄 ]
  209. if uncolored name of player's tool contains "炎靈地獄":
  210. if Skill(player, "&c炎靈地獄", {@炎靈地獄.Max}, {@炎靈地獄.CD}, {@炎靈地獄.MP}) is true:
  211. set {冷卻.%player%::炎靈地獄} to now
  212. drawWings style 12, particle1 "flame", speed 0, XYZ 0, 0, 0, particle2 "redstone", particle3 "redstone", center player, id "炎靈地獄%player%", isSingle false, player, rainbowMode true, flapSpeed 2, flapRange 30, angle 120, height 0, space 0.2, visibleRange 30, tps 0, second 3
  213. play "ENTITY_WITHER_AMBIENT" to player with volume 1 and pitch 2
  214. set {_location.1} to location at player
  215. if {玩家資料.%player%::玩家等級} is more than or equal to 100:
  216. set {_120炎靈} to 25
  217. else:
  218. set {_120炎靈} to 15
  219. increase y-coordinate of {_location.1} by -1
  220. set {_location.2} to block 30 in front player
  221. set {_x.1} to x-coordinate of {_location.1}
  222. set {_x.2} to x-coordinate of {_location.2}
  223. set {_y.1} to y-coordinate of {_location.1}
  224. set {_y.2} to y-coordinate of {_location.2}
  225. set {_z.1} to z-coordinate of {_location.1}
  226. set {_z.2} to z-coordinate of {_location.2}
  227. set {_x.difference} to ({_x.2} - {_x.1}) / {_120炎靈}
  228. set {_y.difference} to ({_y.2} - {_y.1}) / {_120炎靈}
  229. set {_z.difference} to ({_z.2} - {_z.1}) / {_120炎靈}
  230. set {_count} to 0
  231. wait 5 tick
  232. play "ENTITY_WITHER_SHOOT" to player with volume 1 and pitch 3
  233. loop {_120炎靈} times:
  234. increase {_count} by 1
  235. stopEffect "炎靈地獄%player%-1"
  236. set {_location.1} to location of {_location.1}
  237. drawAtom particle1 "redstone", particle2 "flame", center {_location.1}, id "炎靈地獄%player%-1", rainbowMode true, innerPCount 5, innerRadius 1, outerPCount 2, orbitCount 5, start 0, visibleRange 30, rotation 15
  238. increase x-coordinate of {_location.1} by {_x.difference}
  239. increase y-coordinate of {_location.1} by {_y.difference}
  240. increase z-coordinate of {_location.1} by {_z.difference}
  241. if {_count} is 3 or 6 or 9 or 12 or 15 or 18 or 21 or 24:
  242. set {_location.3} to {_location.1}
  243. increase x-coordinate of {_location.3} by {_x.difference}
  244. increase y-coordinate of {_location.3} by {_y.difference}
  245. increase z-coordinate of {_location.3} by {_z.difference}
  246. loop entities in radius 3 around block at location of {_location.1}:
  247. if loop-entity isn't a player or a dropped item:
  248. make player damage loop-entity by ({_MAGICDMG})*(6.5+0.5*{技能.%player%::炎靈地獄})
  249. drawDot count 4, particle "lava", XYZ 0.5, 1, 0.5, center loop-entity, visibleRange 32, pulseDelay 2, keepFor 0.1 seconds
  250. play "ENTITY_ENDERDRAGON_FIREBALL_EXPLODE" to player with volume 1 and pitch 2
  251. push loop-entity (direction from loop-entity to {_location.3}) at speed 0.2
  252. wait 1 ticks
  253. stopEffect "炎靈地獄%player%"
  254. stopEffect "炎靈地獄%player%-1"
  255. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  256. #[ 流星雨 ]
  257. if uncolored name of player's tool contains "流星雨":
  258. if Skill(player, "&c流星雨", {@流星雨.Max}, {@流星雨.CD}, {@流星雨.MP}) is true:
  259. set {冷卻.%player%::流星雨} to now
  260. set {_location.1} to location of player
  261. increase y-coordinate of {_location.1} by 4
  262. # drawImage file "流星雨.png", center {_location.1}, id "流星雨%player%-2", randomRotation false, "y", pixelStepX 5, pixelStepY 5, scale 20, visibleRange 300, tps 0, second 2
  263. # wait 1 seconds
  264. # stopeffect "流星雨%player%-2"
  265. if {玩家資料.%player%::玩家等級} is more than or equal to 110:
  266. set {_120流星} to 17
  267. else:
  268. set {_120流星} to 12
  269. loop entities in radius {_120流星} of player:
  270. if loop-entity isn't a player or a dropped item:
  271. add loop-entities to {_流星雨::*}
  272. loop {_流星雨::*}:
  273. set {_location} to location of loop-value
  274. set {_X} to 4
  275. set {_y} to 6
  276. set {_z} to 4
  277. add {_X} to x-loc of {_location}
  278. add {_Y} to y-loc of {_location}
  279. add {_Z} to z-loc of {_location}
  280. set {_location1} to {_location}
  281. add 2 to y-loc of {_location1}
  282. drawWarpRings style 4, particle "redstone", RGB 237, 21, 93, center {_location1}, id "流星雨%player%", rainbowMode false, scan true, height 4, radius 2, ringCount 5, ringDensity 20, visibleRange 32, pulseDelay 3
  283. wait 2 tick
  284. stopeffect "流星雨%player%"
  285. loop {_流星雨::*}:
  286. play "ENTITY_ENDERDRAGON_SHOOT" to player with volume 1000 and pitch 1
  287. set {_location} to location of loop-value
  288. set {_X} to 4
  289. set {_y} to 6
  290. set {_z} to 4
  291. add {_X} to x-loc of {_location}
  292. add {_Y} to y-loc of {_location}
  293. add {_Z} to z-loc of {_location}
  294. loop 10 times:
  295. if {_X} isn't 0:
  296. reduce x-loc of {_location} by 1
  297. reduce {_X} by 1
  298. if {_Y} isn't 0:
  299. reduce y-loc of {_location} by 2
  300. reduce {_Y} by 1
  301. if {_Z} isn't 0:
  302. reduce z-loc of {_location} by 1
  303. reduce {_Z} by 1
  304. drawAtom particle1 "redstone", particle2 "flame", center {_location}, id "流星雨%player%-1", rainbowMode true, innerPCount 10, innerRadius .5, outerPCount 2, orbitCount 5, start 0, visibleRange 30, rotation 15
  305. wait 1 tick
  306. stopeffect id "流星雨%player%-1"
  307. drawDot count 1, particle "explosionlarge", speed 1, XYZ 0.5, 1, 0.5, center loop-value, rainbowMode false, visibleRange 32, pulseDelay 2, keepFor 0.5 seconds
  308. make player damage loop-value by ({_MAGICDMG})*(15+2*{技能.%player%::流星雨})
  309. drawDot count 1, particle "explosionlarge", speed 1, XYZ 0.5, 1, 0.5, center loop-value, rainbowMode false, visibleRange 32, pulseDelay 2, keepFor 0.5 seconds
  310. play "ENTITY_ENDERDRAGON_FIREBALL_EXPLODE" to player with volume 1000 and pitch 1
  311. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  312. #[ 劇毒麻痺 ]
  313. if uncolored name of player's tool contains "劇毒麻痺":
  314. if Skill(player, "&c劇毒麻痺", {@劇毒麻痺.Max}, {@劇毒麻痺.CD}, {@劇毒麻痺.MP}) is true:
  315. set {冷卻.%player%::劇毒麻痺} to now
  316. if {玩家資料.%player%::玩家等級} is more than or equal to 105:
  317. set {_120劇毒} to 2
  318. else:
  319. set {_120劇毒} to 1
  320. play "BLOCK_FIRE_EXTINGUISH" to player with volume 1000 and pitch 2
  321. set {_location.1} to location at player
  322. increase y-coordinate of {_location.1} by 1
  323. set {_location.2} to block 6 horizontally in front and 0.4 up player
  324. set {_x.1} to x-coordinate of {_location.1}
  325. set {_x.2} to x-coordinate of {_location.2}
  326. set {_y.1} to y-coordinate of {_location.1}
  327. set {_y.2} to y-coordinate of {_location.2}
  328. set {_z.1} to z-coordinate of {_location.1}
  329. set {_z.2} to z-coordinate of {_location.2}
  330. set {_x.difference} to ({_x.2} - {_x.1}) / 10
  331. set {_y.difference} to ({_y.2} - {_y.1}) / 10
  332. set {_z.difference} to ({_z.2} - {_z.1}) / 10
  333. loop 10 times:
  334. drawSphere style 1, particle "critmagic", center {_location.1}, id "劇毒麻痺1%player%", rainbowMode true, radius 1, density 30, visibleRange 32, pulseDelay 1
  335. drawSphere style 1, particle "redstone", RGB 68, 166, 99, center {_location.1}, id "劇毒麻痺2%player%", rainbowMode false, radius 1, density 30, visibleRange 32, pulseDelay 1
  336. increase x-coordinate of {_location.1} by {_x.difference}
  337. increase y-coordinate of {_location.1} by {_y.difference}
  338. increase z-coordinate of {_location.1} by {_z.difference}
  339. wait 1 ticks
  340. stopEffect "劇毒麻痺1%player%"
  341. stopEffect "劇毒麻痺2%player%"
  342. wait 0.5 second
  343. loop 3 times:
  344. drawSphere style 1, particle "critmagic", center {_location.1}, id "劇毒麻痺1%player%", rainbowMode true, radius (0.5+(loop-number*0.5)), density 30, visibleRange 32, pulseDelay 1
  345. drawSphere style 1, particle "redstone", RGB 68, 166, 99, center {_location.1}, id "劇毒麻痺2%player%", rainbowMode false, radius (0.5+(loop-number*0.5)), density 30, visibleRange 32, pulseDelay 1
  346. wait 0.5 second
  347. wait 1 ticks
  348. stopEffect "劇毒麻痺1%player%"
  349. stopEffect "劇毒麻痺2%player%"
  350. play "ENTITY_GENERIC_EXPLODE" to player with volume 1000 and pitch 0
  351. play "BLOCK_FIRE_EXTINGUISH" to player with volume 1000 and pitch 0
  352. play "ENTITY_ELDER_GUARDIAN_CURSE" to player with volume 1000 and pitch 2
  353. drawWarpRings style 3, particle "redstone", RGB 68, 166, 99, center {_location.1}, id "劇毒麻痺3%player%", rainbowMode false, scan true, height 3.5, radius 5, ringCount 20, ringDensity 8, visibleRange 32, pulseDelay 1
  354. loop entities in radius 1.5 around block at location of {_location.1}:
  355. if loop-entity isn't a player or a dropped item:
  356. make player damage loop-entity by ({_MAGICDMG})*(10+1.5*{技能.%player%::劇毒麻痺})*{_120劇毒}
  357. apply slowness of tier 10 to loop-entity for 5 second
  358. loop entities in radius 6 around block at location of {_location.1}:
  359. if loop-entity isn't a player or a dropped item:
  360. make player damage loop-entity by ({_MAGICDMG})*(10+1.5*{技能.%player%::劇毒麻痺})*{_120劇毒}
  361. apply slowness of tier 10 to loop-entity for 5 second
  362. wait 1 second
  363. stopEffect "劇毒麻痺3%player%"
  364. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  365. #[ 毒霧 ]
  366. if uncolored name of player's tool contains "毒霧":
  367. if Skill(player, "&c毒霧", {@毒霧.Max}, {@毒霧.CD}, {@毒霧.MP}) is true:
  368. set {冷卻.%player%::毒霧} to now
  369. wait 10 tick
  370. set {_毒霧} to 0
  371. set {_毒霧.loc} to location of player
  372. set {_毒霧.loc.1} to location of player
  373. increase y-coordinate of {_毒霧.loc.1} by 4
  374. # drawImage file "毒霧.png", center {_毒霧.loc.1}, id "毒霧%player%-5", randomRotation false, "y", pixelStepX 1, pixelStepY 1, scale 20, visibleRange 30, tps 0, second 2
  375. # wait 1 second
  376. # stopeffect id "毒霧%player%-5"
  377. loop 7 times:
  378. increase {_毒霧} by 1
  379. drawSphere style 1, particle "redstone", RGB 68, 166, 99, center {_毒霧.loc}, id "毒霧%player%", rainbowMode false, radius {_毒霧}, density 10, visibleRange 32, pulseDelay 1
  380. if {_毒霧} < 6:
  381. if {玩家資料.%player%::玩家等級} is more than or equal to 115:
  382. wait 2 ticks
  383. else:
  384. wait 5 ticks
  385. stopeffect id "毒霧%player%"
  386. else:
  387. stop loop
  388. loop 5 times:
  389. loop entities in radius 7 of {_毒霧.loc}:
  390. if loop-entity isn't a player or a dropped item:
  391. if player is online:
  392. make player damage loop-entity by ({_MAGICDMG})*(5+0.3*{技能.%player%::毒霧})
  393. drawDot count 8, particle "redstone", RGB 68, 166, 99, center loop-entity, visibleRange 32, pulseDelay 2, keepFor 0.3 seconds
  394. play "ENTITY_WITCH_HURT" to player with volume 1 and pitch 2
  395. wait 40 ticks
  396. stopeffect id "毒霧%player%"
  397. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  398. #[ 元素傳動-火毒 ]
  399. if uncolored name of player's tool contains "元素傳動-火毒":
  400. if Skill(player, "&5火毒傳動", {@元素傳動-火毒.Max}, {@元素傳動-火毒.CD}, {@元素傳動-火毒.MP}) is true:
  401. play "ENTITY_BLAZE_BURN" to player with volume 100 and pitch 2
  402. play "BLOCK_FIRE_EXTINGUISH" to player with volume 100 and pitch 2
  403. set {冷卻.%player%::火毒傳動} to now
  404. set {_location.1} to block 3 left of player
  405. set {_location.2} to block 3 right of player
  406. set {_location.3} to block 3 in front of player
  407. increase y-coordinate of {_location.1} by 1.5
  408. increase y-coordinate of {_location.2} by 1.5
  409. increase y-coordinate of {_location.3} by 1.5
  410. drawSphere style 1, particle "redstone", RGB 250, 0, 0, center {_location.1}, id "元素傳動-火毒%player%", rainbowMode false, radius 1, density 20, visibleRange 32, pulseDelay 1
  411. drawSphere style 1, particle "redstone", RGB 0, 250, 0, center {_location.2}, id "元素傳動-火毒%player%-1", rainbowMode false, radius 1, density 20, visibleRange 32, pulseDelay 1
  412. drawSphere style 1, particle "redstone", RGB 0, 255, 255, center {_location.3}, id "元素傳動-火毒%player%-2", rainbowMode false, radius 1, density 20, visibleRange 32, pulseDelay 1
  413. wait 10 tick
  414. drawLine particle redstone, RGB 255, 255, 255, center {_location.1}, target {_location.2}, id "元素傳動-火毒%player%-3", rainbowMode false, solid true, density 10, length 0, zigZag count 50, height 0, visibleRange 32, displacementXYZ 0, 0, 0, pulseDelay 1
  415. drawLine particle redstone, RGB 255, 255, 255, center {_location.1}, target {_location.3}, id "元素傳動-火毒%player%-4", rainbowMode false, solid true, density 10, length 0, zigZag count 50, height 0, visibleRange 32, displacementXYZ 0, 0, 0, pulseDelay 1
  416. drawLine particle redstone, RGB 255, 255, 255, center {_location.2}, target {_location.3}, id "元素傳動-火毒%player%-5", rainbowMode false, solid true, density 10, length 0, zigZag count 50, height 0, visibleRange 32, displacementXYZ 0, 0, 0, pulseDelay 1
  417. drawSphere style 1, particle "spellinstant", XYZ 0, 2, 0, center player, id "元素傳動-火毒%player%-6", rainbowMode true, radius 1, density 10, visibleRange 32, pulseDelay 1
  418. wait 1 second
  419. stopEffect "元素傳動-火毒%player%"
  420. stopEffect "元素傳動-火毒%player%-1"
  421. stopEffect "元素傳動-火毒%player%-2"
  422. stopEffect "元素傳動-火毒%player%-3"
  423. stopEffect "元素傳動-火毒%player%-4"
  424. stopEffect "元素傳動-火毒%player%-5"
  425. stopEffect "元素傳動-火毒%player%-6"
  426. if {BUFF.火毒傳動time::%player%} isn't set:
  427. set {BUFF.火毒傳動time::%player%} to now
  428. set {BUFF.火毒傳動爆擊傷害::%player%} to "%({技能.%player%::火毒傳動}*8)%" parsed as number
  429. set {BUFF.火毒傳動魔法攻擊力::%player%} to "%({技能.%player%::火毒傳動}*25)%" parsed as number
  430. set {BUFF.火毒傳動最大血量::%player%} to "%({技能.%player%::火毒傳動}*200)%" parsed as number
  431. set {BUFF.火毒傳動魔量吸收量::%player%} to "%({技能.%player%::火毒傳動}*10)%" parsed as number
  432. add {BUFF.火毒傳動爆擊傷害::%player%} to {玩家資料.%player%::爆擊傷害}
  433. add {BUFF.火毒傳動魔法攻擊力::%player%} to {玩家資料.%player%::魔法攻擊力}
  434. add {BUFF.火毒傳動最大血量::%player%} to {玩家資料.%player%::最大血量}
  435. add {BUFF.火毒傳動魔量吸收量::%player%} to {玩家資料.%player%::魔量吸收量}
  436. send "{@Tag} &b%player% &f的 &f<&5元素傳動-火毒&f> &f使你增加了 &c%{技能.%player%::火毒傳動}*8%%% &f爆擊傷害"
  437. send "{@Tag} &b%player% &f的 &f<&5元素傳動-火毒&f> &f使你增加了 &c%{技能.%player%::火毒傳動}*25% &f魔法攻擊力"
  438. send "{@Tag} &b%player% &f的 &f<&5元素傳動-火毒&f> &f使你增加了 &c%{技能.%player%::火毒傳動}*200% &f最大血量"
  439. send "{@Tag} &b%player% &f的 &f<&5元素傳動-火毒&f> &f使你增加了 &c%{技能.%player%::火毒傳動}*10% &f魔量吸收量"
  440.  
  441. execute player command "火毒傳動效果持續檢測時間"
  442. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  443. # [ Buff 增益效果 ]
  444. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  445. #[ 元素傳動-火毒 ]
  446. on command:
  447. command is "火毒傳動效果持續檢測時間"
  448. cancel event
  449. if {BUFF.火毒傳動魔量吸收量::%player%} isn't set:
  450. stop
  451. set {_executename} to "%player%"
  452. set {_冷卻} to difference between {BUFF.火毒傳動time::%{_executename}%} and now
  453. while {_冷卻} is less than {@元素傳動-火毒.受益時間} second:
  454. set {_冷卻} to difference between {BUFF.火毒傳動time::%{_executename}%} and now
  455. wait 0.5 seconds
  456. if player is online:
  457. send "{@Tag} &c<&5元素傳動-火毒&c> &c持續時間已到" to player
  458. delete {BUFF.火毒傳動time::%{_executename}%}
  459. remove {BUFF.火毒傳動爆擊傷害::%{_executename}%} from {玩家資料.%{_executename}%::爆擊傷害}
  460. remove {BUFF.火毒傳動魔法攻擊力::%{_executename}%} from {玩家資料.%{_executename}%::魔法攻擊力}
  461. remove {BUFF.火毒傳動最大血量::%{_executename}%} from {玩家資料.%{_executename}%::最大血量}
  462. remove {BUFF.火毒傳動魔量吸收量::%{_executename}%} from {玩家資料.%{_executename}%::魔量吸收量}
  463. delete {BUFF.火毒傳動爆擊傷害::%{_executename}%}
  464. delete {BUFF.火毒傳動魔法攻擊力::%{_executename}%}
  465. delete {BUFF.火毒傳動最大血量::%{_executename}%}
  466. delete {BUFF.火毒傳動魔量吸收量::%{_executename}%}
  467. on join:
  468. if {BUFF.火毒傳動time::%player%} is set:
  469. set {_executename} to "%player%"
  470. send "{@Tag} &c<&5元素傳動-火毒&c> &c因離線而效果消失" to player
  471. delete {BUFF.火毒傳動time::%{_executename}%}
  472. remove {BUFF.火毒傳動爆擊傷害::%{_executename}%} from {玩家資料.%{_executename}%::爆擊傷害}
  473. remove {BUFF.火毒傳動魔法攻擊力::%{_executename}%} from {玩家資料.%{_executename}%::魔法攻擊力}
  474. remove {BUFF.火毒傳動最大血量::%{_executename}%} from {玩家資料.%{_executename}%::最大血量}
  475. remove {BUFF.火毒傳動魔量吸收量::%{_executename}%} from {玩家資料.%{_executename}%::魔量吸收量}
  476. delete {BUFF.火毒傳動爆擊傷害::%{_executename}%}
  477. delete {BUFF.火毒傳動魔法攻擊力::%{_executename}%}
  478. delete {BUFF.火毒傳動最大血量::%{_executename}%}
  479. delete {BUFF.火毒傳動魔量吸收量::%{_executename}%}
  480.  
  481.  
  482.  
  483. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  484. # [ ClearVariable 清除變數 ]
  485. #───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────#
  486. on any movement:
  487. {冷卻.%player%::炎靈地獄} is set:
  488. set {_冷卻} to difference between {冷卻.%player%::炎靈地獄} and now
  489. if {_冷卻} >= {@炎靈地獄.CD} second:
  490. delete {冷卻.%player%::炎靈地獄}
  491.  
  492. {冷卻.%player%::流星雨} is set:
  493. set {_冷卻} to difference between {冷卻.%player%::流星雨} and now
  494. if {_冷卻} >= {@流星雨.CD} second:
  495. delete {冷卻.%player%::流星雨}
  496.  
  497. {冷卻.%player%::劇毒麻痺} is set:
  498. set {_冷卻} to difference between {冷卻.%player%::劇毒麻痺} and now
  499. if {_冷卻} >= {@劇毒麻痺.CD} second:
  500. delete {冷卻.%player%::劇毒麻痺}
  501.  
  502. {冷卻.%player%::毒霧} is set:
  503. set {_冷卻} to difference between {冷卻.%player%::毒霧} and now
  504. if {_冷卻} >= {@毒霧.CD} second:
  505. delete {冷卻.%player%::毒霧}
  506.  
  507. {冷卻.%player%::火毒傳動} is set:
  508. set {_冷卻} to difference between {冷卻.%player%::火毒傳動} and now
  509. if {_冷卻} >= {@元素傳動-火毒.CD} second:
  510. delete {冷卻.%player%::火毒傳動}
Advertisement
Add Comment
Please, Sign In to add comment