Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- options:
- owneruuid: b4c150c5-a5f0-4cdc-a68c-e47b627d6c44
- on load:
- set {pikmintypes::*} to "red", "blue", "yellow", "white", "winged", "rock" and "purple"
- on skript start:
- clear {players::*}
- delete {lastlouie}
- command /orima-:
- trigger:
- {players::*} do not contain player
- {pikmin::%UUID of player%} is set
- loop all players:
- {players::%UUID of loop-player%} is set
- add location of loop-value to {_locs::*}
- teleport player to random element out of {_locs::*}
- on join:
- if UUID of player is "{@owneruuid}":
- set {players::%UUID of player%} to player
- else:
- if player do not have compass:
- give player compass
- if {pikmin::%UUID of player%} is not set:
- set {pikmin::%UUID of player%} to random element out of {pikmintypes::*}
- if {pikmin::%UUID of player%} is "yellow":
- set max health of player to 12
- set health of player to 12
- execute console command "execute %player% ~ ~ ~ effect @s 10 1000000 2 true"
- if {pikmin::%UUID of player%} is "rock":
- set max health of player to 15
- set health of player to 15
- if {pikmin::%UUID of player%} is "purple":
- set max health of player to 20
- set health of player to 20
- if {pikmin::%UUID of player%} is "winged":
- set max health of player to 5
- set health of player to 5
- if {pikmin::%UUID of player%} is "white":
- set max health of player to 3
- set health of player to 3
- on respawn:
- add "{NoGravity:0b}" to nbt of player
- if {pikmin::%UUID of player%} is "yellow":
- wait 1 tick
- execute console command "execute %player% ~ ~ ~ effect @s 10 1000000 2 true"
- #{pikmin::%UUID of player%} is set
- #teleport player to random element out of {players::*}
- function getHighestBlock(loc: location) :: block:
- loop 256 times:
- set {_loopheight} to loop-number - 1
- block at location x-coordinate of {_loc}, {_loopheight}, z-coordinate of {_loc} in world "%{_loc}'s world%" is not air
- set {_block} to block at location x-coordinate of {_loc}, {_loopheight}, z-coordinate of {_loc} in world "%{_loc}'s world%"
- set {_blocks::%{_loopheight}%} to block at location x-coordinate of {_loc}, {_loopheight}, z-coordinate of {_loc} in world "%{_loc}'s world%"
- set {_highheight} to -1
- loop {_blocks::*}:
- loop-index parsed as integer > {_highheight}
- set {_highheight} to loop-index parsed as integer
- set {_returnvalue} to loop-value
- return {_returnvalue}
- on drop:
- player's gamemode is survival or adventure
- id of event-item is 345
- cancel event
- on inventory click:
- player's gamemode is survival or adventure
- if "%click type%" contain "drop key":
- id of clicked item is 345
- cancel event
- if "%click type%" contain "mouse button with shift":
- player's current inventory is not inventory of player
- "%player's current inventory%" is not "%player's inventory%"
- id of clicked item is 345
- cancel event
- if click type is right mouse button or left mouse button:
- clicked inventory is not player's inventory
- id of clicked item is 345
- cancel event
- if click type is number key:
- clicked inventory is not player's inventory
- set {_item} to slot click type number of player's inventory
- id of {_item} is 345
- cancel event
- every tick:
- loop all players:
- if {pikmin::%UUID of loop-player%} is not set:
- set playerlist name of loop-player to "&7%loop-player%"
- set display name of loop-player to "&7%loop-player%"
- nametag of loop-player is not "&7%loop-player%"
- set nametag of loop-player to "&7%loop-player%"
- else if {pikmin::%UUID of loop-player%} is set:
- if {pikmin::%UUID of loop-player%} is not "blue":
- if id of block at location of loop-player is 9 or 8:
- damage loop-player by 0.5
- else if id of block at location 1 meter above location of loop-player is 9 or 8:
- damage loop-player by 0.5
- switch {pikmin::%UUID of loop-player%}:
- case "red":
- set playerlist name of loop-player to "&c%loop-player%&r"
- set display name of loop-player to "&c%loop-player%&r"
- nametag of loop-player is not "&c%loop-player%&r"
- set nametag of loop-player to "&c%loop-player%&r"
- case "blue":
- set playerlist name of loop-player to "&9%loop-player%&r"
- set display name of loop-player to "&9%loop-player%&r"
- nametag of loop-player is not "&9%loop-player%&r"
- set nametag of loop-player to "&9%loop-player%&r"
- case "yellow":
- set playerlist name of loop-player to "&e%loop-player%&r"
- set display name of loop-player to "&e%loop-player%&r"
- nametag of loop-player is not "&e%loop-player%&r"
- set nametag of loop-player to "&e%loop-player%&r"
- case "rock":
- set playerlist name of loop-player to "&8%loop-player%&r"
- set display name of loop-player to "&8%loop-player%&r"
- nametag of loop-player is not "&8%loop-player%&r"
- set nametag of loop-player to "&8%loop-player%&r"
- case "purple":
- set playerlist name of loop-player to "&5%loop-player%&r"
- set display name of loop-player to "&5%loop-player%&r"
- nametag of loop-player is not "&5%loop-player%&r"
- set nametag of loop-player to "&5%loop-player%&r"
- case "winged":
- set playerlist name of loop-player to "&d%loop-player%&r"
- set display name of loop-player to "&d%loop-player%&r"
- nametag of loop-player is not "&d%loop-player%&r"
- set nametag of loop-player to "&d%loop-player%&r"
- case "white":
- set playerlist name of loop-player to "&f%loop-player%&r"
- set display name of loop-player to "&f%loop-player%&r"
- nametag of loop-player is not "&f%loop-player%&r"
- set nametag of loop-player to "&f%loop-player%&r"
- loop all players:
- {players::%UUID of loop-player-2%} is set
- if {_shortdistance} is not set:
- set {_player} to loop-player-2
- set {_shortdistance} to distance between loop-player-1 and loop-player-2
- else if {_shortdistance} is set:
- {_shortdistance} > distance between loop-player-1 and loop-player-2
- set {_player} to loop-player-2
- set {_shortdistance} to distance between loop-player-1 and loop-player-2
- set compass target of loop-player to {_player}
- if loop-player's tool is compass:
- send action bar from "&b&lDistance: &7%distance between loop-player and {_player}%" to loop-player
- distance between loop-player and {_player} > 30
- damage loop-player by 0.5
- if {pikmin::%UUID of loop-player%} is "red":
- execute console command "execute %loop-player% ~ ~ ~ effect @s 12 1000000 0 true"
- execute console command "execute %loop-player% ~ ~ ~ effect @s 5 1000000 0 true"
- loop-player's gamemode is survival or adventure
- if loop-player's world is "world":
- "world"'s weather is rain or thunder
- set {_highestblock} to getHighestBlock(location of loop-player)
- y-coordinate of {_highestblock} <= y-coordinate of loop-player+1
- damage loop-player by 0.5
- else if {pikmin::%UUID of loop-player%} is "blue":
- execute console command "execute %loop-player% ~ ~ ~ effect @s 13 1000000 0 true"
- execute console command "execute %loop-player% ~ ~ ~ effect @s 3 1000000 0 true"
- else if {pikmin::%UUID of loop-player%} is "yellow":
- loop-player's gamemode is survival or adventure
- if loop-player's world is "world":
- "world"'s weather is rain or thunder
- set {_highestblock} to getHighestBlock(location of loop-player)
- y-coordinate of {_highestblock} <= y-coordinate of loop-player+1
- damage loop-player by 0.5
- else if {pikmin::%UUID of loop-player%} is "rock":
- execute console command "execute %loop-player% ~ ~ ~ effect @s 2 1000000 0 true"
- execute console command "execute %loop-player% ~ ~ ~ effect @s 11 1000000 0 true"
- else if {pikmin::%UUID of loop-player%} is "purple":
- execute console command "execute %loop-player% ~ ~ ~ effect @s 8 1000000 128 true"
- else if {pikmin::%UUID of loop-player%} is "winged":
- execute console command "execute %loop-player% ~ ~ ~ effect @s 8 1000000 2 true"
- else if {pikmin::%UUID of loop-player%} is "white":
- execute console command "execute %loop-player% ~ ~ ~ effect @s 1 1000000 2 true"
- execute console command "execute %loop-player% ~ ~ ~ effect @s 5 1000000 127 true"
- delete {_shortdistance}
- delete {_player}
- on sneak toggle:
- {pikmin::%UUID of player%} is "winged"
- if player is not sneaking:
- set velocity of player to new vector from x of velocity of player, 0, z of velocity of player
- add "{NoGravity:1b}" to nbt of player
- else if player is sneaking:
- add "{NoGravity:0b}" to nbt of player
- on damage of player:
- if {pikmin::%UUID of victim%} is "blue":
- damage cause is entity explosion or block explosion
- set damage to 2147483647
- if {pikmin::%UUID of victim%} is "yellow":
- damage was caused by lightning
- cancel event
- if {pikmin::%UUID of victim%} is "winged":
- damage was caused by fall
- cancel event
- on quit:
- if UUID of player is "{@owneruuid}":
- wait 1 tick
- set {_allplayers::*} to all players
- if {lastlouie} is set:
- remove {lastlouie} from {_allplayers::*}
- set {_player} to random element out of {_allplayers::*}
- set {lastlouie} to {_player}
- set {_uuid} to UUID of {_player}
- set {players::%{_uuid}%} to {_player}
- set {afktime::%{_uuid}%} to 3600
- delete {pikmin::%{_uuid}%}
- execute console command "execute %{_player}% ~ ~ ~ effect @s clear"
- set max health of {_player} to 10
- add "{NoGravity:0b}" to nbt of {_player}
- broadcast "&b&l%{_player}%さんがルーイになりました"
- else if {players::%UUID of player%} is set:
- wait 1 tick
- delete {players::%UUID of player%}
- delete {afktime::%UUID of player%}
- set {_allplayers::*} to all players
- if {lastlouie} is set:
- remove {lastlouie} from {_allplayers::*}
- set {_player} to random element out of {_allplayers::*}
- set {lastlouie} to {_player}
- set {_uuid} to UUID of {_player}
- set {players::%{_uuid}%} to {_player}
- set {afktime::%{_uuid}%} to 3600
- delete {pikmin::%{_uuid}%}
- execute console command "execute %{_player}% ~ ~ ~ effect @s clear"
- set max health of {_player} to 10
- add "{NoGravity:0b}" to nbt of {_player}
- remove compass from {_player}'s inventory
- broadcast "&b&l%{_player}%さんがルーイになりました"
- on join:
- UUID of player is "{@owneruuid}"
- loop {players::*}:
- loop-index is not UUID of player
- delete {players::%loop-index%}
- delete {afktime::%loop-index%}
- set {pikmin::%loop-index%} to random element out of {pikmintypes::*}
- if player do not have compass:
- give player compass
- if {pikmin::%loop-index%} is "yellow":
- set max health of loop-value to 12
- set health of loop-value to 12
- execute console command "execute %loop-index% ~ ~ ~ effect @s 10 1000000 2 true"
- if {pikmin::%loop-index%} is "rock":
- set max health of loop-value to 15
- set health of loop-value to 15
- if {pikmin::%loop-index%} is "purple":
- set max health of loop-value to 20
- set health of loop-value to 20
- if {pikmin::%loop-index%} is "winged":
- set max health of loop-value to 5
- set health of loop-value to 5
- if {pikmin::%loop-index%} is "white":
- set max health of loop-value to 3
- set health of loop-value to 3
- on any movement:
- {players::%UUID of player%} is set
- set {afktime::%UUID of player%} to 3600
- every tick:
- set {_bool} to false
- loop all players:
- {players::%UUID of loop-player%} is set
- if {afktime::%UUID of loop-player%} >= 1:
- set {_bool} to true
- remove 1 from {afktime::%UUID of loop-player%}
- if {afktime::%UUID of loop-player%} <= 0:
- UUID of loop-player is not "{@owneruuid}"
- delete {players::%UUID of loop-player%}
- delete {afktime::%UUID of loop-player%}
- set {pikmin::%UUID of loop-player%} to random element out of {pikmintypes::*}
- if {pikmin::%UUID of loop-player%} is "yellow":
- set max health of loop-player to 12
- set health of loop-player to 12
- execute console command "execute %loop-player% ~ ~ ~ effect @s 10 1000000 2 true"
- if {pikmin::%UUID of loop-player%} is "rock":
- set max health of loop-player to 15
- set health of loop-player to 15
- if {pikmin::%UUID of loop-player%} is "purple":
- set max health of loop-player to 20
- set health of loop-player to 20
- if {pikmin::%UUID of loop-player%} is "winged":
- set max health of loop-player to 5
- set health of loop-player to 5
- if {pikmin::%UUID of loop-player%} is "white":
- set max health of loop-player to 3
- set health of loop-player to 3
- {_bool} is false
- set {_allplayers::*} to all players
- if {lastlouie} is set:
- remove {lastlouie} from {_allplayers::*}
- set {_player} to random element out of {_allplayers::*}
- set {lastlouie} to {_player}
- set {_uuid} to UUID of {_player}
- set {players::%{_uuid}%} to {_player}
- set {afktime::%{_uuid}%} to 3600
- delete {pikmin::%{_uuid}%}
- execute console command "execute %{_player}% ~ ~ ~ effect @s clear"
- set max health of {_player} to 10
- add "{NoGravity:0b}" to nbt of {_player}
- remove compass from {_player}'s inventory
- broadcast "&b&l%{_player}%さんがルーイになりました"
- on rightclick on player:
- if {pikmin::%UUID of player%} is not set:
- passenger of player is not set
- {pikmin::%UUID of clicked entity%} is set
- make clicked entity ride player
- if {pikmin::%UUID of player%} is set:
- passenger of clicked entity is not set
- {pikmin::%UUID of clicked entity%} is not set
- make player ride clicked entity
- on damage of player:
- attacker is a player
- damage was caused by attack
- passenger of attacker is victim
- make victim dismount
- cancel event
- wait 1 tick
- push victim in direction of attacker with speed 1
- function getEntityFromUUID(uuid: text) :: entity:
- loop all entities:
- if UUID of loop-entity is "%{_uuid}%":
- return loop-entity
- stop loop
- function getTagValues(e: entity) :: strings:
- set {_tagnbt} to "%tag ""Tags"" of nbt of {_e}%"
- replace "[""" and """]" in {_tagnbt} with ""
- return split {_tagnbt} by ""","""
- function removePrefix(str1: string, str2: string) :: string:
- first length of {_str2} characters of {_str1} is {_str2}
- return last length of {_str1} - length of {_str2} characters of {_str1}
- function getOwnerTag(e: entity) :: player:
- set {_tagnbt} to "%tag ""Tags"" of nbt of {_e}%"
- replace "[""" and """]" in {_tagnbt} with ""
- set {_tags::*} to split {_tagnbt} by ""","""
- loop {_tags::*}:
- first 6 characters of loop-value is "owner:"
- set {_ownernamelength} to length of loop-value-6
- set {_owner} to last {_ownernamelength} characters of loop-value parsed as player
- {_owner} is set
- return {_owner}
- stop loop
- on leftclick:
- {pikmin::%UUID of player%} is "rock"
- id of player's tool is 1 or 4
- cancel event
- shoot a armor stand from location 1 meter forwards location of player's head with speed 1.5
- add "{Invisible:1b,Small:1b,DisabledSlots:2039583}" to nbt of last shot armor stand
- spawn undroppable falling block of type of player's tool at last shot armor stand
- make last spawned falling block ride last shot armor stand
- add "{Tags:[""throwingstone"",""id:%id of player's tool%"",""data:%durability of player' tool%"",""owner:%player%""],NoGravity:1b}" to nbt of last spawned falling block
- player's gamemode is survival or adventure
- set {_item} to player's tool
- set item amount of {_item} to 1
- remove {_item} from player's tool
- on dismount:
- event-entity is falling block
- set {_tags::*} to getTagValues(event-entity)
- {_tags::*} contain "throwingstone"
- getEntityFromUUID(UUID of vehicle of event-entity) is set
- make event-entity ride vehicle of event-entity
- every tick:
- loop all armor stands:
- set {_tags::*} to getTagValues(passenger of loop-entity)
- {_tags::*} contain "throwingstone"
- set {_passenger::*} to passenger of loop-entity
- add "{Time:1}" to nbt of {_passenger::1}
- if loop-entity is on ground:
- loop 5 times:
- play sound "block.stone.break" to all players at loop-entity with volume 1.5 pitch 0.85
- loop {_tags::*}:
- if removePrefix(loop-value-2, "id:") parsed as integer is set:
- set {_id} to removePrefix(loop-value-2, "id:") parsed as integer
- if removePrefix(loop-value-2, "data:") parsed as integer is set:
- set {_data} to removePrefix(loop-value-2, "data:") parsed as integer
- execute console command "execute %UUID of loop-entity% ~ ~ ~ particle blockcrack ~ ~0.5 ~ 0.3 0.3 0.3 1 100 force @a %{_data}*4096+{_id}%"
- loop entities in radius 1 around loop-entity:
- loop-entity-2 is not getOwnerTag(passenger of loop-entity-1)
- loop-entity-2 is a living entity
- loop-entity-2 is not armor stand
- make getOwnerTag(passenger of loop-entity-1) damage loop-entity-2 by 5
- kill passenger of loop-entity
- kill loop-entity
- loop entities in radius 1 around loop-entity:
- loop-entity-2 is not getOwnerTag(passenger of loop-entity-1)
- loop-entity-2 is a living entity
- loop-entity-2 is not armor stand
- make getOwnerTag(passenger of loop-entity-1) damage loop-entity-2 by 5
- set {_flag} to 1
- {_flag} is 1
- loop 5 times:
- play sound "block.stone.break" to all players at loop-entity with volume 1.5 pitch 0.85
- loop {_tags::*}:
- if removePrefix(loop-value-2, "id:") parsed as integer is set:
- set {_id} to removePrefix(loop-value-2, "id:") parsed as integer
- if removePrefix(loop-value-2, "data:") parsed as integer is set:
- set {_data} to removePrefix(loop-value-2, "data:") parsed as integer
- execute console command "execute %UUID of loop-entity% ~ ~ ~ particle blockcrack ~ ~0.5 ~ 0.3 0.3 0.3 1 100 force @a %{_data}*4096+{_id}%"
- kill passenger of loop-entity
- kill loop-entity
Advertisement
Add Comment
Please, Sign In to add comment