siso_

Untitled

May 3rd, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.21 KB | None | 0 0
  1. command /start:
  2. permission: siso
  3. trigger:
  4. set {game} to true
  5. set {timers} to "&63 minutes"
  6. broadcast "&6ゲームを開始します"
  7. wait 3 seconds
  8. timelimit()
  9. rs(all players)
  10. loop all players:
  11. if {nojoin.%loop-player%} is "on":
  12. send "&cあなたは今回のゲームには参加しません" to loop-player
  13. else:
  14. add loop-player to {allplayer::*}
  15. loop {allplayer::*}:
  16. teleport loop-value to {kitselectpoint}
  17. execute console command "/gamemode 2 %loop-value%"
  18.  
  19. command /stopgame:
  20. permission: siso
  21. trigger:
  22. broadcast "&6ゲームを終了しました"
  23. set {game} to false
  24. delete {timea0}
  25. delete {timea1}
  26. delete {timea2}
  27. delete {timea3}
  28. delete {killpoint::*}
  29. loop {allplayer::*}:
  30. teleport loop-value to {lobby}
  31. clear loop-value's inventory
  32. add 100 to loop-value's health
  33. lvup(loop-value)
  34. delete {allplayer::*}
  35. rs(all players)
  36.  
  37. on death of player:
  38. if {game} is true:
  39. add 1 to {killpoint::%attacker%}
  40. add 1 to {kill.%attacker%}
  41. add 1 to {xp.%attacker%}
  42. set death message to "&a%attacker%&6が%name of tool%&6で&c%victim%&6を倒した。"
  43. send "&c+1 Kill" to attacker
  44. force respawn player
  45. wait 5 tick
  46. set {nodamage.%player%} to true
  47. if {firstrespawn.%player%} is true:
  48. teleport player to {firstbattle}
  49. stop
  50. else:
  51. teleport player to {kitselectpoint}
  52. stop
  53. else:
  54. teleport player to {lobby}
  55. send "&cError %victim%" to ops
  56. stop
  57.  
  58. on damage of player:
  59. if {nodamage.%victim%} is true:
  60. cancel event
  61. stop
  62. set maximum damage delay of victim to 16 ticks
  63.  
  64. on drop:
  65. if player is not op:
  66. cancel event
  67.  
  68. every 3 tick:
  69. if {time.%{timenum}%} is set:
  70. floor(unix timestamp of now) = {time.%{timenum}%} - 120:
  71. if {timea0} is not set:
  72. set {timers} to "&62 minutes"
  73. set {timea0} to true
  74. rs(all players)
  75. broadcast "&6残り2分"
  76. floor(unix timestamp of now) = {time.%{timenum}%} - 60:
  77. if {timea1} is not set:
  78. set {timers} to "&61 minutes"
  79. set {timea1} to true
  80. rs(all players)
  81. broadcast "&6残り1分"
  82. floor(unix timestamp of now) = {time.%{timenum}%} - 30:
  83. if {timea2} is not set:
  84. set {timers} to "30 seconds"
  85. set {timea2} to true
  86. rs(all players)
  87. broadcast "&6残り30秒"
  88. floor(unix timestamp of now) = {time.%{timenum}%} - 10:
  89. if {timea3} is not set:
  90. set {timea3} to true
  91. countdown(10)
  92. wait 11 seconds
  93. broadcast "&6ゲームが終了しました、結果発表に移ります。"
  94. loop {allplayer::*}:
  95. set {nodamage.%loop-value%} to true
  96. wait 3 seconds
  97. result()
  98.  
  99. command /setspawn [<text>] [<number>]:
  100. permission: siso
  101. trigger:
  102. if arg 1 is "lobby":
  103. set {lobby} to location of player
  104. send "&6Lobbyを%location%にセットしました"
  105. stop
  106. if arg 1 is "kit":
  107. set {kitselectpoint} to location of player
  108. send "&6Kit選択所を%location%にセットしました"
  109. stop
  110. if arg 1 is "battle":
  111. arg 2 is set
  112. set {spawn.%arg 2%} to location of player
  113. send "&6戦場のロビー&a(%arg 2%)&6を%location%にセットしました"
  114. stop
  115. if arg 1 is "firstbattle":
  116. set {firstbattle} to location of player
  117. send "&6速攻戦線復帰の場所を%location%にセットしました"
  118. stop
  119.  
  120. on walking on emerald block:
  121. set {_spawnpoint} to random integer between 1 and 8
  122. if {_spawnpoint} is 1:
  123. teleport player to {spawn.1}
  124. if {_spawnpoint} is 2:
  125. teleport player to {spawn.2}
  126. if {_spawnpoint} is 3:
  127. teleport player to {spawn.3}
  128. if {_spawnpoint} is 4:
  129. teleport player to {spawn.4}
  130. if {_spawnpoint} is 5:
  131. teleport player to {spawn.5}
  132. if {_spawnpoint} is 6:
  133. teleport player to {spawn.6}
  134. if {_spawnpoint} is 7:
  135. teleport player to {spawn.7}
  136. if {_spawnpoint} is 8:
  137. teleport player to {spawn.8}
  138. wait 3 seconds
  139. set {nodamage.%player%} to false
  140.  
  141. on quit:
  142. if {allplayer::*} contains player:
  143. remove player from {allplayer::*}
  144. set {nodamage.%player%} to true
  145. stop
  146.  
  147. on join:
  148. broadcast "&e%player%が参加しました"
  149. command "/gamemode 2 %player%"
  150. teleport player to {lobby}
  151. set {nodamage.%player%} to true
  152.  
  153. function result():
  154. set {_high} to 0
  155. loop {killpoint::*}:
  156. set {_list::%loop-index%} to loop-value
  157. loop size of {allplayer::*} times:
  158. loop {_list::*}:
  159. loop-value-2 > {_high}
  160. set {_high} to loop-value-2
  161. set {_highplayer} to loop-index
  162. broadcast "&6%loop-number%位、&e%{_highplayer}%&6の&a%{_high}%&6ポイント!"
  163. set {_high} to 0
  164. delete {_list::%{_highplayer}%}
  165. if loop-number is 1:
  166. add 10 to {xp.%{_highplayer}%}
  167. send "&a&l優勝ボーナス +10XP" to {_highplayer}
  168. teleport {_highplayer} to {number1}
  169. if loop-number is 2:
  170. add 5 to {xp.%{_highplayer}%}
  171. send "&a二位ボーナス +5XP" to {_highplayer}
  172. teleport {_highplayer} to {number2}
  173. if loop-number is 3:
  174. add 3 to {xp.%{_highplayer}%}
  175. send "&a三位ボーナス +3XP" to {_highplayer}
  176. teleport {_highplayer} to {number3}
  177. wait 6 seconds
  178. execute console command "/stopgame"
  179. stop
  180.  
  181. function countdown(number: number):
  182. loop {_number} times:
  183. broadcast "&6%{_number}%"
  184. remove 1 from {_number}
  185. wait 1 seconds
  186.  
  187. function rs(p: player):
  188. if {game} is true:
  189. wipe {_p}'s sidebar
  190. set name of sidebar of {_p} to "&6PvP"
  191. set score "&6&lSisoPixel" in sidebar of {_p} to 1
  192. set score "" in sidebar of {_p} to 2
  193. set score "&eタイムリミット:%{timers}%" in sidebar of {_p} to 3
  194. set score "" in sidebar of {_p} to 8
  195. stop
  196. else:
  197. wipe {_p}'s sidebar
  198. set name of sidebar of {_p} to "&e&lしその鯖"
  199. set score "&6&lSisoPixel" in sidebar of {_p} to 1
  200. set score "" in sidebar of {_p} to 2
  201. set score "Lv: &b&l%{lv.%{_p}%}%" in sidebar of {_p} to 3
  202. set score "XP: &a&l%{xp.%{_p}%}%" in sidebar of {_p} to 4
  203. set score "Kills: &c&l%{kill.%{_p}%}%" in sidebar of {_p} to 5
  204. set score "&b===Your Status===" in sidebar of {_p} to 6
  205. set score "" in sidebar of {_p} to 7
  206.  
  207. function lvup(p: player):
  208. set {_p} tab name to "&6&l[&a&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
  209. if {lv.%{_p}%} >= 20:
  210. set {_p} tab name to "&6&l[&b&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
  211. if {lv.%{_p}%} >= 25:
  212. set {_p} tab name to "&6&l[&3&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
  213. if {lv.%{_p}%} >= 30:
  214. set {_p} tab name to "&6&l[&d&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
  215. while {xp.%{_p}%} >= {nextlv.%{_p}%}:
  216. wait 2.5 tick
  217. play sound "entity.player.levelup" with volume 0.8 and pitch 0.7 at {_p} for {_p}
  218. set {nextlv.%{_p}%} to {nextlv.%{_p}%} * 1.1
  219. add 1 to {lv.%{_p}%}
  220. send "&aLvUP!! &l%{lv.%{_p}%}%Lv" to {_p}
  221. set {send.%{_p}%} to true
  222. if {send.%{_p}%} is true:
  223. send "&6次のレベルまで &5&l""%{nextlv.%{_p}%}%XP""" to {_p}
  224. set {_p} tab name to "&6&l[&a&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
  225. set {send.%{_p}%} to false
  226.  
  227. function timelimit():
  228. if {time.%{timenum}%} is not set:
  229. add 1 to {timenum}
  230. set {time.%{timenum}%} to floor(unix timestamp of now) + 180
  231. if {time.%{timenum}%} is set:
  232. delete {time.%{timenum}%}
  233. add 1 to {timenum}
  234. set {time.%{timenum}%} to floor(unix timestamp of now) + 180
  235. else:
  236. send "&cTime limit Error &5Unixnow%floor(unix timestamp of now)% &6%{time.%{timenum}%}%" to ops
  237.  
  238. command /ea <text>:
  239. trigger:
  240. evaluate arg 1
Add Comment
Please, Sign In to add comment