Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- on quit:
- wait 1 tick
- if {oni} is player:
- gameplayerwin()
- stop
- if {onii::*} contains player:
- remove player from {onii::*}
- stop
- if {member::*} contains player:
- remove player from {member::*}
- if varsize({member::*}) is 0:
- gameoniwin()
- command /join:
- trigger:
- if {game} is true:
- teleport the player to location (1637, 9, 1017)
- send "&c現在ゲーム進行中のため、観戦場所に移動します。"
- stop
- if {member::*} contains player:
- send "&cゲームから抜けました。"
- remove player from {member::*}
- stop
- add player to {member::*}
- send "&aゲームに参加しました。"
- if varsize({member::*}) is {minmember}:
- set {time} to 20
- loop 20 times:
- loop all players:
- set action bar of loop-player to "&cゲーム開始まで... &d%{time}%&e秒"
- wait 1 second
- remove 1 from {time}
- gamestart()
- else:
- gamewait()
- command /setminmember [<number>]:
- permission: mirage.hueoni
- aliases: /smm
- trigger:
- if arg-1 is not set:
- send "&c数字を記入してください。"
- stop
- if arg-1 is not number:
- send "&c数字を記入してください。"
- stop
- set {minmember} to arg-1
- broadcast "&aゲーム開始最低人数が&d%arg-1%人&aに更新されました。"
- command /setstagespawn:
- permission: mirage.hueoni
- aliases: /sss
- trigger:
- set {stagespawn} to location of player
- broadcast "&aステージのスポーン場所が更新されました。"
- command /setonispawn:
- permission: mirage.hueoni
- aliases: /sos
- trigger:
- set {onispawn} to location of player
- broadcast "&a鬼のスポーン場所が更新されました。"
- command /gameend:
- permission: mirage.hueoni
- trigger:
- gameplayerwin()
- function gamewait():
- varsize({member::*}) < {minmember}
- loop all players:
- set action bar of loop-player to "&aゲーム待機中... &6%varsize({member::*})%&b/&6%{minmember}%"
- wait 1 second
- gamewait()
- function gamestart():
- set {game} to true
- broadcast "&aゲームを開始します..."
- set {oni} to random element out of {member::*}
- remove {oni} from {member::*}
- broadcast "&a今回の鬼は&c%{oni}%&aです!"
- teleport {member::*} to {stagespawn}
- teleport {oni} to {onispawn}
- loop all players:
- if {oni} is loop-player:
- set loop-player's gamemode to adventure
- set loop-player's tablist name to "&c%loop-player%"
- set loop-player's chestplate to leather chestplate
- dye loop-player's chestplate red
- if {member::*} contains loop-player:
- apply speed 2 to loop-player for 8 second
- set loop-player's gamemode to adventure
- set loop-player's tablist name to "&b%loop-player%"
- set {time} to 10
- loop 10 times:
- loop all players:
- set action bar of loop-player to "&c鬼解放まで... &d%{time}%&e秒"
- wait 1 second
- remove 1 from {time}
- broadcast "&b鬼 開放!"
- countdown(5 and 0)
- command "/fill 1633 8 1011 1656 4 1011 minecraft:air 0 destroy"
- function gameoniwin():
- teleport {onii::*} to location (1641, 5, 1070) in "world"
- teleport {member::*} to location (1641, 5, 1070) in "world"
- teleport {oni} to location (1641, 5, 1070) in "world"
- broadcast "&c鬼側が勝利しました!"
- loop all players:
- set loop-player's tablist name to "&r%loop-player%"
- set loop-player's chestplate to air
- send loop-player title "&c鬼の勝利" for 3 second
- command "/fill 1633 8 1011 1656 4 1011 minecraft:stained_glass"
- delete {oni}
- delete {onii::*}
- delete {member::*}
- delete {game}
- delete {time}
- function gameplayerwin():
- teleport {onii::*} to location (1641, 5, 1070) in "world"
- teleport {member::*} to location (1641, 5, 1070) in "world"
- teleport {oni} to location (1641, 5, 1070) in "world"
- broadcast "&aプレイヤー側が勝利しました!"
- loop all players:
- set loop-player's chestplate to air
- set loop-player's tablist name to "&r%loop-player%"
- send loop-player title "&aプレイヤーの勝利" for 3 second
- command "/fill 1633 8 1011 1656 4 1011 minecraft:stained_glass"
- delete {oni}
- delete {onii::*}
- delete {member::*}
- delete {game}
- delete {time}
- function countdown(minute: number, second: number):
- while {_minute} is not 0:
- if {game} is not true:
- stop
- if {_second} is 0:
- remove 1 from {_minute}
- set {_second} to 60
- remove 1 from {_second}
- loop all players:
- set action bar of loop-player to "⦅&5&l残り時間&a&l: &e%{_minute}%&7分&e%{_second}%&7秒⦆"
- wait 1 second
- if {_minute} is 0:
- while {_second} is not 0:
- if {game} is not true:
- stop
- remove 1 from {_second}
- loop all players:
- set action bar of loop-player to "⦅&5&l残り時間&a&l: &e%{_second}%&7秒⦆"
- wait 1 second
- if {_second} is 0:
- gameplayerwin()
- on damage of player:
- if {member::*} contains attacker:
- cancel event
- stop
- if {oni} is attacker:
- if {onii::*} contains victim:
- cancel event
- stop
- if {member::*} contains victim:
- remove victim from {member::*}
- set victim's tablist name to "&c%victim%"
- set victim's chestplate to leather chestplate
- dye victim's chestplate red
- add victim to {onii::*}
- broadcast "&c%victim%&7が%attacker%&7によって感染させられた!"
- if varsize({member::*}) is 0:
- gameoniwin()
- if {onii::*} contains attacker:
- if {oni} is victim:
- cancel event
- stop
- if {onii::*} contains victim:
- cancel event
- stop
- if {member::*} contains victim:
- remove victim from {member::*}
- set victim's tablist name to "&c%victim%"
- set victim's chestplate to leather chestplate
- dye victim's chestplate red
- add victim to {onii::*}
- broadcast "&c%victim%&7が%attacker%&7によって感染させられた!"
- if varsize({member::*}) is 0:
- gameoniwin()
- function varsize(var: objects) :: number:
- set {_num} to 0
- set {_result} to 0
- while {_end} is not set:
- add 1 to {_num}
- if {_var::%{_num}%} is not set:
- set {_end} to true
- exit loop
- add 1 to {_result}
- return {_result}
Advertisement
Add Comment
Please, Sign In to add comment