Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- options:
- s: &a&l[さいくつ(未定)] &f&6
- command /start:
- permission: skript.admin
- trigger:
- set {game} to true
- set {pvp} to false
- delete {allplayer::*}
- delete {players}
- broadcast "{@s} ゲームを開始します"
- command "/time set day"
- timelimit()
- set {timer} to 10
- loop all players:
- if {nojoin.%loop-player%} is "on":
- send "&cあなたは今回のゲームには参加しません" to loop-player
- else:
- add loop-player to {allplayer::*}
- add loop-player to {member::*}
- give book named "&6レシピブック" to loop-player
- give 64 bread to loop-player
- give wooden axe to loop-player
- loop {allplayer::*}:
- add 1 to {players}
- randomtp(loop-value)
- rs(loop-value)
- set loop-value's gamemode to survival
- rule(loop-value)
- function randomtp(p: player):
- set {nofall.%{_p}%} to true
- set {_xcoord} to a random number between -999 and 999
- set {_zcoord} to a random number between -999 and 999
- execute console command "/tp %{_p}% %{_zcoord}% 100 %{_xcoord}%"
- wait 5 seconds
- set {nofall.%{_p}%} to false
- every second:
- timercheck()
- function timercheck():
- if {time.%{timenum}%} is set:
- floor(unix timestamp of now) = {time.%{timenum}%} - 540:
- broadcast "{@s} 残り9分"
- set {timer} to 9
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 480:
- broadcast "{@s} 残り8分"
- set {timer} to 8
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 420:
- broadcast "{@s} 残り7分"
- set {timer} to 7
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 360:
- broadcast "{@s} 残り6分"
- set {timer} to 6
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 300:
- broadcast "{@s} 残り5分"
- set {timer} to 5
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 240:
- broadcast "{@s} 残り4分"
- set {timer} to 4
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 180:
- broadcast "{@s} 残り3分"
- set {timer} to 3
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 120:
- broadcast "{@s} 残り2分、PvPが可能になりました"
- set {pvp} to true
- set {timer} to 2
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 60:
- broadcast "{@s} 残り1分"
- set {timer} to 1
- rs(all players)
- floor(unix timestamp of now) = {time.%{timenum}%} - 30:
- broadcast "{@s} 残り30秒"
- floor(unix timestamp of now) = {time.%{timenum}%} - 10:
- broadcast "{@s} 残り10秒"
- wait 5 seconds
- broadcast "{@s} 5"
- wait 1 seconds
- broadcast "{@s} 4"
- wait 1 seconds
- broadcast "{@s} 3"
- wait 1 seconds
- broadcast "{@s} 2"
- wait 1 seconds
- broadcast "{@s} 1"
- wait 1 seconds
- broadcast "{@s} 終了!!"
- loop {allplayer::*}:
- result(loop-value)
- teleport loop-value to location at (0, 100, 0) in "world"
- wait 3 seconds
- broadcast "{@s} 結果発表!!"
- wait 1 seconds
- broadcast "&6..."
- command "/playsound ui.button.click master @a ~ ~ ~ 2 1.1 1"
- wait 1 seconds
- broadcast ".."
- command "/playsound ui.button.click master @a ~ ~ ~ 2 1.1 1"
- wait 1 seconds
- broadcast "&6."
- command "/playsound ui.button.click master @a ~ ~ ~ 2 1.1 1"
- wait 1 seconds
- execute console command "/playsound entity.player.levelup ambient @a ~ ~ ~ 1 1 1"
- result2()
- function timelimit():
- if {time.%{timenum}%} is not set:
- add 1 to {timenum}
- set {timer} to 10
- set {time.%{timenum}%} to floor(unix timestamp of now) + 600
- stop
- if {time.%{timenum}%} is set:
- delete {time.%{timenum}%}
- set {timer} to 10
- add 1 to {timenum}
- set {time.%{timenum}%} to floor(unix timestamp of now) + 600
- else:
- send "&cTime limit Error &5Unixnow%floor(unix timestamp of now)% &6%{time.%{timenum}%}%" to ops
- command /stopgame:
- permission: skript.admin
- trigger:
- broadcast "{@s} ゲームを終了しました"
- set {game} to false
- execute console command "/clear @a"
- loop {allplayer::*}:
- kill loop-value
- teleport loop-value to {lobby}
- set loop-value's gamemode to adventure
- delete {point::%loop-value%}
- set {pvp} to false
- delete {point::*}
- delete {time.%{timenum}%}
- delete {allplayer::*}
- rs(all players)
- lvup(all players)
- stop
- function result(p: player):
- set {point::%{_p}%} to 0
- add number of coal in {_p}'s inventory to {point::%{_p}%}
- add number of iron ore in {_p}'s inventory to {point::%{_p}%}
- add number of iron ingot in {_p}'s inventory * 2 to {point::%{_p}%}
- add number of gold ore in {_p}'s inventory * 2 to {point::%{_p}%}
- add number of gold ingot in {_p}'s inventory * 3 to {point::%{_p}%}
- add number of redstone in {_p}'s inventory * 1.5 to {point::%{_p}%}
- add number of lapis in {_p}'s inventory * 1.7 to {point::%{_p}%}
- add number of diamond in {_p}'s inventory * 10 to {point::%{_p}%}
- add number of emerald in {_p}'s inventory * 1919 to {point::%{_p}%}
- #Point send
- if {_p} has coal:
- add number of coal in {_p}'s inventory to {_coal.%{_p}%}
- else:
- set {_coal.%{_p}%} to 0
- if {_p} has iron ore:
- add number of iron ore in {_p}'s inventory to {_iron.ore.%{_p}%}
- else:
- set {_iron.ore.%{_p}%} to 0
- if {_p} has iron ingot:
- add number of iron ingot in {_p}'s inventory * 2 to {_iron.%{_p}%}
- else:
- set {_iron.%{_p}%} to 0
- if {_p} has gold ore:
- add number of gold ore in {_p}'s inventory * 2 to {_gold.ore.%{_p}%}
- else:
- set {_gold.ore.%{_p}%} to 0
- if {_p} has gold ingot:
- add number of gold ingot in {_p}'s inventory * 3 to {_gold.%{_p}%}
- else:
- set {_gold.%{_p}%} to 0
- if {_p} has redstone:
- add number of redstone in {_p}'s inventory * 1.5 to {_redstone.%{_p}%}
- else:
- set {_redstone.%{_p}%} to 0
- if {_p} has lapis:
- add number of lapis in {_p}'s inventory * 1.7 to {_lapis.%{_p}%}
- else:
- set {_lapis.%{_p}%} to 0
- if {_p} has diamond:
- add number of diamond in {_p}'s inventory * 10 to {_diamond.%{_p}%}
- else:
- set {_diamond.%{_p}%} to 0
- if {_p} has emerald:
- add number of emerald in {_p}'s inventory * 1919 to {_emerald.%{_p}%}
- else:
- set {_emerald.%{_p}%} to 0
- send "&7石炭のポイント &6%{_coal.%{_p}%}%" to {_p}
- send "鉄のポイント &6%{_iron.ore.%{_p}%}%" to {_p}
- send "鉄インゴットのポイント &6%{_iron.%{_p}%}%" to {_p}
- send "&e金のポイント &6%{_gold.ore.%{_p}%}%" to {_p}
- send "&e金インゴットのポイント &6%{_gold.%{_p}%}%" to {_p}
- send "&cレッドストーンのポイント &6%{_redstone.%{_p}%}%" to {_p}
- send "&9ラピスラズリのポイント &6%{_lapis.%{_p}%}%" to {_p}
- send "&bダイアモンドのポイント &6%{_diamond.%{_p}%}%" to {_p}
- send "&aエメラルドのポイント &6%{_emerald.%{_p}%}%" to {_p}
- clear {_p}'s inventory
- add {point::%{_p}%} to {xp.%{_p}%}
- function result2():
- set {_high} to 0
- loop {point::*}:
- set {_list::%loop-index%} to loop-value
- loop size of {allplayer::*} times:
- loop {_list::*}:
- loop-value-2 > {_high}
- set {_high} to loop-value-2
- set {_highplayer} to loop-index
- broadcast "&6%loop-number%位&e%{_highplayer}%&6の&a%{_high}%&6ポイント!"
- set {_high} to 0
- delete {_list::%{_highplayer}%}
- wait 6 seconds
- execute console command "/stopgame"
- stop
- on damage:
- if {nofall.%victim%} is true:
- cancel event
- if damage cause is lava:
- cancel event
- if {pvp} is false:
- cancel event
- on death of player:
- force victim to respawn
- if {game} is true:
- wait 10 tick
- randomtp(victim)
- stop
- else:
- teleport victim to {lobby}
- wait 1 seconds
- execute console command "/clear %victim%"
- on first join:
- set player's gamemode to adventure
- broadcast "&e%player%&6さんが&d初&6参加しました"
- set {xp.%player%} to 0
- set {lv.%player%} to 1
- set {kill.%player%} to 0
- set {nextlv.%player%} to 1
- teleport player to {lobby}
- add "&e%player% &6IP &a%ip of player%" to {iplog::*}
- set player tab name to "&6&l[&a&lLv%{lv.%player%}%&6&l] &f%player%"
- rs(player)
- on join:
- broadcast "&e%player%&6さんが&6参加しました"
- set player's gamemode to adventure
- clear player's inventory
- set player tab name to "&6&l[&a&lLv%{lv.%player%}%&6&l] &f%player%"
- rs(player)
- if {game} is true:
- give clock named "&6途中参加" to player
- stop
- else:
- stop
- on quit:
- remove player from {allplayer::*}
- on rightclick holding clock:
- {game} is true
- clear player's inventory
- give wooden axe to player
- give book named "&6レシピブック" to player
- give 64 bread to player
- broadcast "&e%player%さんが途中参加しました"
- set player's gamemode to survival
- add player to {allplayer::*}
- add 1 to {players}
- randomtp(player)
- rule(player)
- function lvup(p: player):
- set {_p} tab name to "&6&l[&a&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
- if {lv.%{_p}%} >= 50:
- set {_p} tab name to "&6&l[&b&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
- if {lv.%{_p}%} >= 100:
- set {_p} tab name to "&6&l[&3&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
- if {lv.%{_p}%} >= 200:
- set {_p} tab name to "&6&l[&d&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
- while {xp.%{_p}%} >= {nextlv.%{_p}%}:
- wait 2.5 tick
- play sound "entity.player.levelup" with volume 0.8 and pitch 0.7 at {_p} for {_p}
- set {nextlv.%{_p}%} to {nextlv.%{_p}%} * 1.2
- add 1 to {lv.%{_p}%}
- send "&aLvUP!! &l%{lv.%{_p}%}%Lv" to {_p}
- set {send.%{_p}%} to true
- if {send.%{_p}%} is true:
- send "&6次のレベルまで &5&l""%{nextlv.%{_p}%}%XP""" to {_p}
- set {_p} tab name to "&6&l[&a&lLv%{lv.%{_p}%}%&6&l] &f%{_p}%"
- set {send.%{_p}%} to false
- rs({_p})
- command /status [<offline player>]:
- trigger:
- if arg 1 is not set:
- send "=======&9%player% Status&f======="
- send "&6Lv:%{lv.%player%}%"
- send "&aXP:%{xp.%player%}%"
- send "&cKill:%{kill.%player%}%"
- send "&5NextLv:%{nextlv.%player%}%"
- stop
- else if arg-1 has not played before:
- send "&cそのプレイヤーはこのサーバーに参加したことがありません"
- stop
- else:
- send "=======&9%arg 1% Status&f======="
- send "&6Lv:%{lv.%arg 1%}%"
- send "&aXP:%{xp.%arg 1%}%"
- send "&cKill:%{kill.%arg 1%}%"
- send "&5NextLv:%{nextlv.%arg 1%}%"
- stop
- function rs(p: player):
- if {game} is true:
- wipe {_p}'s sidebar
- set name of sidebar of {_p} to "&5&lゲーム名募集中"
- set score "&6&lSisoPixel" in sidebar of {_p} to 1
- set score "" in sidebar of {_p} to 2
- set score "&6残り時間:&a%{timer}%分" in sidebar of {_p} to 3
- stop
- else:
- wipe {_p}'s sidebar
- set name of sidebar of {_p} to "&e&lしその鯖"
- set score "&6&lSisoPixel" in sidebar of {_p} to 1
- set score "" in sidebar of {_p} to 2
- set score "Lv: &b&l%{lv.%{_p}%}%" in sidebar of {_p} to 3
- set score "XP: &a&l%{xp.%{_p}%}%" in sidebar of {_p} to 4
- set score "Kills: &c&l%{kill.%{_p}%}%" in sidebar of {_p} to 5
- set score "&b===Your Status===" in sidebar of {_p} to 6
- set score "" in sidebar of {_p} to 7
- function rule(p: player):
- send "&6このゲームは鉱石を掘ってポイントを稼ぎ一位になるゲームです" to {_p}
- send "&6ポイントの付け方は鉱石の数×倍率です" to {_p}
- send "&7石炭 × 1" to {_p}
- send "鉄 × 1" to {_p}
- send "鉄インゴット × 2" to {_p}
- send "&e金 × 2" to {_p}
- send "&e金インゴット × 3" to {_p}
- send "&4レッドストーン × 1.5" to {_p}
- send "&9ラピスラズリ × 1.7" to {_p}
- send "&bダイアモンド × 10" to {_p}
- send "&aエメラルド × 1919" to {_p}
- send "&6&lとりあえず死なないで鉱石を掘ればいい!!" to {_p}
- on mine of diamond ore:
- broadcast "&e%player%がダイアモンドを掘りました!!"
- on rightclick holding book:
- open chest with 6 row named "&6FastPickaxe" to player
- format slot 12 of player with iron ore to be unstealable
- format slot 13 of player with iron ore to be unstealable
- format slot 14 of player with iron ore to be unstealable
- format slot 21 of player with coal to be unstealable
- format slot 23 of player with coal to be unstealable
- format slot 22 of player with stick to be unstealable
- format slot 31 of player with stick to be unstealable
- command /ea <text>:
- permission: skript.admin
- trigger:
- evaluate "%arg 1%"
- on skript load:
- register new shapeless recipe for iron pickaxe of Efficiency 2 named "&b&lFast Pickaxe" using iron ore, iron ore, iron ore, stick, stick, coal, coal, air, air
- on skript stop:
- df "world"
- command /lvup:
- trigger:
- lvup(all players)
- rs(all players)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement