Code:
options:
prefix: &6SU&eMO &8»
command /event [<text>] [<text>]:
trigger:
if arg-1 is set:
if arg-1 is "host":
if player has permission "admin":
if arg-2 is "sumo":
if {sumo.game} is not set:
set {sumo.game} to true
broadcast ""
broadcast "{@prefix} &c%player% &eis now hosting a sumo event!"
broadcast ""
else:
broadcast "{@prefix} &eThere is already an existing game."
else:
send "{@prefix} &eOur only and currently available event right now is sumo. /event host sumo"
else:
send "{@prefix} &eInsufficient Permissions"
if arg-1 is "join":
if {sumo.game} is set:
if {joined.%player%} is not set:
set {joined.%player%} to true
add 1 to {sumo.number}
add player to {allsumoplayers::*}
add player to {sumogame::*}
send "{@prefix} &eYou have successfully joined the event!"
teleport player to {spawn}
else:
send "{@prefix} &eThere are currently no games running."
if arg-1 is "setpos":
if player has permission "admin":
if arg-2 is "sumo1":
set {sumo1} to location of player
send "{@prefix} &eSuccessfully set the position to %{sumo1}%"
else if arg-2 is "sumo2":
set {sumo2} to location of player
send "{@prefix} &eSUccessfully set the position to %{sumo2}%"
else if arg-2 is "sumo":
set {sumo} to location of player
send "{@prefix} &eSUccessfully set the position to %{sumo}%"
else:
send "{@prefix} &e/event setpos sumo1/sumo2/sumo"
every second:
if {sumo.game} is set:
if {random.players} is not set:
set {random.players} to true
set {random.player} to random element out of {sumogame::*}
set {random2.player} to random element out of {sumogame::*}
set {random.player} to {_random1}
set {random2.player} to {_random2}
teleport {random.player} to {sumo1}
teleport {random2.player} to {sumo2}
set {game.%{random.player}%} to true
set {game.%{random2.player}%} to true
set {movement.%{_random1}%} to 5
set {movement.%{_random2}%} to 5
wait 1 second
reduce {movement.%{_random1}%} by 1
reduce {movement.%{_random2}%} by 1
broadcast "{@prefix} &eGAME STARTING IN 5 SECONDS"
wait 1 second
reduce {movement.%{_random1}%} by 1
reduce {movement.%{_random2}%} by 1
broadcast "{@prefix} &eGAME STARTING IN 4 SECONDS"
wait 1 second
reduce {movement.%{_random1}%} by 1
reduce {movement.%{_random2}%} by 1
broadcast "{@prefix} &eGAME STARTING IN 3 SECONDS"
wait 1 second
reduce {movement.%{_random1}%} by 1
reduce {movement.%{_random2}%} by 1
broadcast "{@prefix} &eGAME STARTING IN 2 SECONDS"
wait 1 second
reduce {movement.%{_random1}%} by 1
reduce {movement.%{_random2}%} by 1
broadcast "{@prefix} &eGAME STARTING IN 1 SECONDS"
wait 1 second
reduce {movement.%{_random1}%} by 1
reduce {movement.%{_random2}%} by 1
broadcast "{@prefix} &c&LGO!"
if {movement.%{_random1}%} = 0:
delete {movement.%{_random1}%}
if {movement.%{_random2}%} = 0:
delete {movement.%{_random2}%}
delete {random.players}
on any movement:
if {movement.%player%} is set:
cancel event
on disconnect:
if "%{random.player}%" is "%player%":
delete {random.%player%}
broadcast "{@prefix} &e%{random2.%player%}% won the round!"
if "%{random2.player}%" is "%player%":
delete {random2.%player%}
broadcast "{@prefix} &e%{random.%player%}% won the round!"
every tick:
loop all players:
if block below loop-player is water:
if {second.game} is not set:
if "%{random.player}%" is "%loop-player%":
broadcast "{@prefix} &e%{random.player}% has been eliminated!"
delete {random.player}
add {random2.player} to {list2::*}
delete {random2.player}
teleport loop-player to {sumo}
stop
if "%{random2.player}%" is "%loop-player%":
broadcast "{@prefix} &e%{random2.player}% has been eliminated!"
add {random.player} to {list2::*}
delete {random.player}
teleport loop-player to {sumo}
stop
else:
if "%{random.player}%" is "%loop-player%":
broadcast "{@prefix} &e%{random.player}% has been eliminated!"
delete {random.player}
add {random2.player} to {list3::*}
delete {random.player}
teleport loop-player to {sumo}
stop
if "%{random2.player}%" is "%loop-player%":
broadcast "{@prefix} &e%{random2.player}% has been eliminated!"
add {random.player} to {list3::*}
delete {random.player}
teleport loop-player to {sumo}
stop
every tick:
if {sumo.game} is set:
if size of {allsumoplayers::*} > 1:
if size of {sumogame::*} = 0:
if size of {list2::*} > 1:
set {second.game} to true
set {random.player} to random element out of {list::*}
set {random2.player} to random element out of {list::*}
teleport {random.player} to {sumo1}
teleport {random2.player} to {sumo2}
else:
if size of {list3::*} > 1:
set {third.game} to true
set {random.player} to random element out of {list::*}
set {random2.player} to random element out of {list::*}
teleport {random.player} to {sumo1}
teleport {random2.player} to {sumo2}
else:
broadcast "{@prefix} &e%{allsumoplayers::*}% has won the sumo!"