text:
#> asset:artifact/0564.heartland/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0564.heartland/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 564
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:leather_leggings"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '[{"text":"ハート","color":"light_purple","bold":true},{"text":"ランド","color":"green","bold":true}]'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"大地の加護を得た衣"}]','[{"text":"豊穣","color":"yellow"},{"text":"はここに。","color":"white"}]']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "legs"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "passive"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Nyaptov", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {display:{color:26112},HideFlags:64,Unbreakable:1b,Enchantments:[{id:unbreaking,lvl:3},{id:protection,lvl:5},{id:mending,lvl:1}],AttributeModifiers:[{UUID:[I;1,1,564,4],AttributeName:"generic.armor",Name:"armor",Slot:legs,Operation:0,Amount:3},{UUID:[I;1,1,564,4],AttributeName:"generic.max_health",Name:"max_health",Slot:legs,Operation:0,Amount:4}]}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0723.heavy_steel_boots/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[2] append value 723

repo_name: ProjectTSB/TheSkyBlessing

repo_language: mcfunction

mime_type: text/plain


text:
#> asset:artifact/0723.heavy_steel_boots/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:723} run function asset:artifact/0723.heavy_steel_boots/give/2.give


text:
#> asset:artifact/0723.heavy_steel_boots/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0723.heavy_steel_boots/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 723
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:iron_boots"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"重鋼の鎧","color":"gray"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"とても硬くて重い鎧","color":"gray"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "feet"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "equipping"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value "ALL"
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {Unbreakable:1b,AttributeModifiers:[{AttributeName:"generic.armor",Name:"generic.armor",Amount:3.5,Operation:0,UUID:[I;1,1,723,3],Slot:"feet"},{AttributeName:"generic.armor_toughness",Name:"generic.armor_toughness",Amount:0.5,Operation:0,UUID:[I;1,1,723,3],Slot:"feet"},{AttributeName:"generic.movement_speed",Name:"generic.movement_speed",Amount:-0.05,Operation:1,UUID:[I;1,1,723,3],Slot:"feet"},{AttributeName:"generic.knockback_resistance",Name:"generic.knockback_resistance",Amount:0.1,Operation:0,UUID:[I;1,1,723,3],Slot:"feet"}]}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0237.schrodingers_cat/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[1] append value 237


text:
#> asset:artifact/0237.schrodingers_cat/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:237} run function asset:artifact/0237.schrodingers_cat/give/2.give


text:
#> asset:artifact/0237.schrodingers_cat/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0237.schrodingers_cat/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 237
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"シュレディンガーの猫","color":"green"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"ネコの気配があるかもしれないし、"}','{"text":"ないかもしれない。"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    data modify storage asset:artifact RemainingCount set value 10
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onClick"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Nyaptov"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0237.schrodingers_cat/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0237.schrodingers_cat/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0237.schrodingers_cat/trigger/3.main


text:
#> asset:artifact/0237.schrodingers_cat/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0237.schrodingers_cat/trigger/2.check_condition

#> Private
# @private
    #declare tag CatSpawn

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く
    #ネコか魚か
        execute if predicate lib:random_pass_per/50 run tag @s add CatSpawn

    #ネコが出た場合
        execute as @s[tag=CatSpawn] run summon cat ~ ~ ~
        playsound entity.cat.ambient neutral @s[tag=CatSpawn] ~ ~ ~ 3 1
        particle heart ~ ~ ~ 1 1 1 1 100 normal @s[tag=CatSpawn]

    #ネコが出なかった場合
        execute as @s[tag=!CatSpawn] run summon cod ~ ~ ~
        playsound entity.cod.flop player @s[tag=!CatSpawn] ~ ~ ~ 3 1
        particle falling_water ~ ~ ~ 1 1 1 1 300 normal @s[tag=!CatSpawn]

    #タグ消し
        tag @s remove CatSpawn


text:
#> asset:artifact/0237.schrodingers_cat/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:context idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:237} run function asset:artifact/0237.schrodingers_cat/trigger/2.check_condition


text:
#> asset:artifact/0012.sketchy_herb/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[1] append value 12


text:
#> asset:artifact/0012.sketchy_herb/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:12} run function asset:artifact/0012.sketchy_herb/give/2.give


text:
#> asset:artifact/0012.sketchy_herb/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0012.sketchy_herb/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 12
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:dried_kelp"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"あやしいハッパ","color":"dark_green"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"不思議な草だ。とても怪しい匂いがする"}','{"text":"「キマってきた？」"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    data modify storage asset:artifact RemainingCount set value 5
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "itemUse"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Wi-ki"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0012.sketchy_herb/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0012.sketchy_herb/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0012.sketchy_herb/trigger/3.main


text:
#> asset:artifact/0012.sketchy_herb/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0012.sketchy_herb/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く

# エフェクト効果
    effect give @s minecraft:strength 60 10 true
    effect give @s minecraft:resistance 60 2 true
    effect give @s minecraft:nausea 60 0 true
    effect give @s minecraft:poison 15 3 true
    effect give @s minecraft:instant_damage 1 1 true

# 演出
    particle minecraft:smoke ~ ~ ~ 1 1 1 0.1 500 force @s
    playsound minecraft:block.honey_block.fall player @s ~ ~ ~ 1 0.1
    tellraw @a[distance=..20] [{"text":"気分が不安定になってゆく……","color":"dark_green","italic":true}]


text:
#> asset:artifact/0012.sketchy_herb/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:context idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:12} run function asset:artifact/0012.sketchy_herb/trigger/2.check_condition


text:
#> asset:artifact/0953.meteor_rain/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[4] append value 953


text:
#> asset:artifact/0953.meteor_rain/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:953} run function asset:artifact/0953.meteor_rain/give/2.give


text:
#> asset:artifact/0953.meteor_rain/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0953.meteor_rain/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 953
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"メテオレイン","color":"light_purple"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"燃え盛る流星が天から降り注ぐ！","color":"white","italic":false}','{"text":"\\"破壊の星々に願いを\\"","color":"gray","italic":false}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onClick"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.Damage set value ["2000×60"]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackType set value [Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.ElementType set value [Fire]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every"
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackRange set value 32
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 200
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    data modify storage asset:artifact SpecialCooldown set value 1800
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Urban", "Wi-ki"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0953.meteor_rain/trigger/7.cast_meteor
#
# メテオを召喚して拡散させる
#
# @within function asset:artifact/0953.meteor_rain/trigger/6.summon_meteor

#> SpreadLib
# @private
#declare tag SpreadMarker

# 拡散用marker召喚
    summon marker ~ ~ ~ {Tags:["SpreadMarker"]}
    data modify storage lib: Argument.Bounds set value [[32d,32d],[10d,0d],[32d,32d]]
    execute as @e[type=marker,tag=SpreadMarker,distance=..50] at @s run function lib:spread_entity/

# 拡散したマーカーの上空に召喚
    execute at @e[type=marker,tag=SpreadMarker,distance=..50] positioned ~ ~ ~ run summon armor_stand ~ ~ ~ {Marker:1b,Invisible:1b,Tags:["Friend","Projectile","QH.Meteor","QH.MeteorInit"],Passengers:[{id:"minecraft:snowball",Tags:["AllowProcessingCommonTag","AutoKillWhenDieVehicle","Uninterferable"],Item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20197}}}]}

# 自身のIDを発射体にも付与
    scoreboard players operation @e[type=armor_stand,tag=QH.MeteorInit,distance=..50] QH.UserID = @s UserID

# init処理実行
    execute as @e[type=armor_stand,tag=QH.MeteorInit,distance=..50,sort=nearest,limit=1] at @s run function asset:artifact/0953.meteor_rain/trigger/meteor/1.init

# メテオのループ処理開始
    schedule function asset:artifact/0953.meteor_rain/trigger/meteor/2.tick 1t replace

# 拡散マーカーを消す
   kill @e[type=marker,tag=SpreadMarker,distance=..50]


text:
#> asset:artifact/0953.meteor_rain/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0953.meteor_rain/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0953.meteor_rain/trigger/3.main


text:
#> asset:artifact/0953.meteor_rain/trigger/5.emitter_main
#
#
#
# @within function asset:artifact/0953.meteor_rain/trigger/4.emitter_tick

# スコア加算
    scoreboard players add @s QH.Tick 1

# メテオ降らす
    execute if score @s QH.Tick matches 10.. run function asset:artifact/0953.meteor_rain/trigger/6.summon_meteor

# ここは熱いですよ感を出す
    particle lava ~ ~ ~ 10 10 10 0 1


text:
#> asset:artifact/0953.meteor_rain/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0953.meteor_rain/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く

# サウンド
    playsound minecraft:entity.blaze.ambient player @a ~ ~ ~ 3 1.2
    playsound minecraft:entity.blaze.ambient player @a ~ ~ ~ 3 0.8
    playsound minecraft:block.respawn_anchor.deplete player @a ~ ~ ~ 3 1.5
    playsound minecraft:block.respawn_anchor.deplete player @a ~ ~ ~ 3 1.2
    playsound minecraft:entity.ghast.shoot player @a ~ ~ ~ 3 0.5

# スコアリセット
    scoreboard players set @s QH.MeteorCastedCount 0

# 一定時間メテオを降らす
    schedule function asset:artifact/0953.meteor_rain/trigger/4.emitter_tick 1t replace


text:
#> asset:artifact/0953.meteor_rain/trigger/6.summon_meteor
#
# メテオ召喚関数をまとめて実行する
#
# @within function asset:artifact/0953.meteor_rain/trigger/5.emitter_main

# サウンド
    playsound minecraft:entity.ghast.shoot player @a ~ ~ ~ 3 1

# 召喚部分
    execute positioned ~ ~40 ~ run function asset:artifact/0953.meteor_rain/trigger/7.cast_meteor
    execute positioned ~ ~40 ~ run function asset:artifact/0953.meteor_rain/trigger/7.cast_meteor
    execute positioned ~ ~40 ~ run function asset:artifact/0953.meteor_rain/trigger/7.cast_meteor

# カウントが増える
    scoreboard players add @s QH.MeteorCastedCount 1

# リセット
    scoreboard players reset @s QH.Tick


text:
#> asset:artifact/0953.meteor_rain/trigger/0.load
#
# 神器に利用するスコアボード等の初期化処理
#
# @within tag/function asset:artifact/load

#> 定義類はここに
# @within function asset:artifact/0953.meteor_rain/trigger/**
    scoreboard objectives add QH.Tick dummy
    scoreboard objectives add QH.UserID dummy
    scoreboard objectives add QH.MeteorCastedCount dummy
    scoreboard objectives add QH.Range dummy
    scoreboard objectives add QH.Speed dummy
    scoreboard objectives add QH.MoveTimesPerTick dummy


text:
#> asset:artifact/0953.meteor_rain/trigger/rejoin_process
#
# 使い方は必ずwikiを見ること
#
# @within tag/function asset:rejoin

# このfunctionをループさせる
    execute if score @s QH.Tick matches 60.. run schedule function asset:artifact/0953.meteor_rain/trigger/4.emitter_tick 1t


text:
#> asset:artifact/0953.meteor_rain/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのautoに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:953} run function asset:artifact/0953.meteor_rain/trigger/2.check_condition


text:
#> asset:artifact/0953.meteor_rain/trigger/4.emitter_tick
#
# ループ実行部分
#
# @within function
#   asset:artifact/0953.meteor_rain/trigger/3.main
#   asset:artifact/0953.meteor_rain/trigger/4.emitter_tick
#   asset:artifact/0953.meteor_rain/trigger/rejoin_process

# プレイヤーに実行させる
    execute as @a[scores={QH.MeteorCastedCount=..19}] at @s run function asset:artifact/0953.meteor_rain/trigger/5.emitter_main

# ループ
    execute if entity @p[scores={QH.MeteorCastedCount=..19}] run schedule function asset:artifact/0953.meteor_rain/trigger/4.emitter_tick 1t


text:
#> asset:artifact/0953.meteor_rain/trigger/_index.d
# @private

#> tag
# @within function asset:artifact/0953.meteor_rain/trigger/**
    #declare tag QH.Meteor
    #declare tag QH.MeteorInit


text:
#> asset:artifact/0953.meteor_rain/trigger/meteor/2.tick
#
# ループ実行部分
#
# @within function
#   asset:artifact/0953.meteor_rain/trigger/7.cast_meteor
#   asset:artifact/0953.meteor_rain/trigger/meteor/2.tick

# エンティティに実行させる
    execute as @e[type=armor_stand,tag=QH.Meteor] at @s run function asset:artifact/0953.meteor_rain/trigger/meteor/3.main

# エンティティがいればループ
    execute if entity @e[type=armor_stand,tag=QH.Meteor,limit=1] run schedule function asset:artifact/0953.meteor_rain/trigger/meteor/2.tick 1t


text:
#> asset:artifact/0953.meteor_rain/trigger/meteor/3.main
#
# メイン処理部分
#
# @within function asset:artifact/0953.meteor_rain/trigger/meteor/2.tick

# パーティクル
    particle flame ~ ~ ~ 0.2 0.2 0.2 0 2 force @a[distance=..30]

# 追尾する
    execute facing entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..20,sort=nearest,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-700 facing entity @s eyes positioned as @s run function asset:artifact/0953.meteor_rain/trigger/meteor/4.move
    execute unless entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..20,sort=nearest,limit=1] run function asset:artifact/0953.meteor_rain/trigger/meteor/4.move


text:
#> asset:artifact/0953.meteor_rain/trigger/meteor/4.move
#
# 移動処理
#
# @within function
#   asset:artifact/0953.meteor_rain/trigger/meteor/3.main
#   asset:artifact/0953.meteor_rain/trigger/meteor/4.move

# パーティクル
    particle dust 1 0 0 1 ~ ~ ~ 0.2 0.2 0.2 0 1
    particle dust 0.2 0.2 0.2 1.5 ~ ~ ~ 0.1 0.1 0.1 0 1

# 再帰カウントが0なら弾速からセット
    execute unless entity @s[scores={QH.MoveTimesPerTick=1..,QH.Range=1..}] run scoreboard players operation @s QH.MoveTimesPerTick = @s QH.Speed

# 前進
    tp @s ^ ^ ^0.1 ~ ~

# スコア減算
    scoreboard players remove @s QH.MoveTimesPerTick 1
    scoreboard players remove @s QH.Range 1

# 壁の衝突判定
    execute unless block ~ ~ ~ #lib:no_collision run function asset:artifact/0953.meteor_rain/trigger/meteor/5.explosion

# キル
    execute if entity @s[scores={QH.Range=..0}] run function asset:artifact/0953.meteor_rain/trigger/meteor/5.explosion

# モブに接触
    execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=0,sort=nearest,limit=1] positioned ~0.5 ~0.5 ~0.5 run function asset:artifact/0953.meteor_rain/trigger/meteor/5.explosion

# 再帰
    execute if entity @s[scores={QH.MoveTimesPerTick=1..,QH.Range=1..}] at @s run function asset:artifact/0953.meteor_rain/trigger/meteor/4.move


text:
#> asset:artifact/0953.meteor_rain/trigger/meteor/1.init
#
#
#
# @within function asset:artifact/0953.meteor_rain/trigger/7.cast_meteor

#> SpreadLib
# @private
#declare tag SpreadMarker

# 前方拡散設定
    summon marker ~ ~ ~ {Tags:["SpreadMarker"]}
    data modify storage lib: Argument.Distance set value 1.0
    data modify storage lib: Argument.Spread set value 1

# 拡散する
    execute as @e[type=marker,tag=SpreadMarker,distance=..50,limit=1] rotated ~ 90 run function lib:forward_spreader/circle

# パーティクル
    particle explosion ~ ~ ~ 0 0 0 0 0 force

# マーカーの方を向く
    tp @s ~ ~ ~ facing entity @e[type=marker,tag=SpreadMarker,distance=..50,limit=1]

# タグ削除
    tag @s remove QH.MeteorInit

# 速度と飛距離
    scoreboard players set @s QH.Range 800
    scoreboard players set @s QH.Speed 16

# リセット
    kill @e[type=marker,tag=SpreadMarker,distance=..50]


text:
#> asset:artifact/0953.meteor_rain/trigger/meteor/5.explosion
#
#
#
# @within function asset:artifact/0953.meteor_rain/trigger/meteor/4.move

# 効果音
    playsound minecraft:entity.generic.explode neutral @a ~ ~ ~ 1.5 1.7
    playsound minecraft:entity.blaze.shoot neutral @a ~ ~ ~ 2 0.7

# 爆発
    particle explosion_emitter ~ ~ ~ 0 0 0 0 1 force
    particle flame ~ ~ ~ 1.5 1.5 1.5 0 20

# ダメージ
    # ダメージ設定
        # 与えるダメージ
            data modify storage lib: Argument.Damage set value 2000.0f
        # 属性
            data modify storage lib: Argument.AttackType set value "Magic"
            data modify storage lib: Argument.ElementType set value "Fire"
        # ダメージ
            execute at @a[distance=..100] if score @s QH.UserID = @p UserID as @p run function lib:damage/modifier
            execute positioned ~-0.5 ~-0.5 ~-0.5 at @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=0] as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..4] run function lib:damage/
            execute positioned ~-0.5 ~-0.5 ~-0.5 unless entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=0] positioned ~0.5 ~0.5 ~0.5 as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..4] run function lib:damage/
    # リセット
        function lib:damage/reset

# 消滅
    kill @s


text:
#> asset:artifact/0736.sailor_hat/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[4] append value 736


text:
#> asset:artifact/0736.sailor_hat/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:736} run function asset:artifact/0736.sailor_hat/give/2.give


text:
#> asset:artifact/0736.sailor_hat/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0736.sailor_hat/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 736
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:leather_helmet"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"水兵の帽子","color":"#3DFFF2"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"どこからか潮の香りと紅茶の香りがする。","color":"#A3F9FF","italic":"true"}]','[{"text":"物理攻撃+7.5% ","color":"dark_green"},{"text":"水攻撃+7.5%","color":"aqua"}]','[{"text":"移動速度+7.5% ","color":"white"},{"text":"魔法攻撃-15%","color":"dark_red"}]']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "head"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "equipping"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {HideFlags:68,display:{color:10746367},Unbreakable:1b,AttributeModifiers:[{AttributeName:"generic.armor",Name:"generic.armor",Amount:5,Operation:0,UUID:[I;1,1,736,6],Slot:"head"},{AttributeName:"generic.armor_toughness",Name:"generic.armor_toughness",Amount:2.5,Operation:0,UUID:[I;1,1,736,6],Slot:"head"}]}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0736.sailor_hat/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0736.sailor_hat/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く
    function asset:artifact/common/check_condition/head
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0736.sailor_hat/trigger/3.main


text:
#> asset:artifact/0736.sailor_hat/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0736.sailor_hat/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う
    function asset:artifact/common/use/head

# ここから先は神器側の効果の処理を書く

# vfx
    execute rotated ~ 0 positioned ~ ~1.2 ~ positioned ^ ^ ^-0.5 run function asset:artifact/0736.sailor_hat/trigger/vfx
    playsound entity.player.splash.high_speed player @a ~ ~ ~ 0.4 2 0

# 物理攻撃+7.5%
    data modify storage api: Argument.UUID set value [I;1,1,736,6]
    data modify storage api: Argument.Amount set value 0.075
    data modify storage api: Argument.Operation set value "multiply_base"
    function api:modifier/attack/physical/add

# 水攻撃+7.5%
    data modify storage api: Argument.UUID set value [I;1,1,736,6]
    data modify storage api: Argument.Amount set value 0.075
    data modify storage api: Argument.Operation set value "multiply_base"
    function api:modifier/attack/water/add

# 移動速度+7.5%
    attribute @s generic.movement_speed modifier add 00000001-0000-0001-0000-02e000000006 "KG.Speed" 0.075 multiply_base

# 魔法攻撃-15%
    data modify storage api: Argument.UUID set value [I;1,1,736,5]
    data modify storage api: Argument.Amount set value -0.15
    data modify storage api: Argument.Operation set value "multiply_base"
    function api:modifier/attack/magic/add


text:
#> asset:artifact/0736.sailor_hat/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのheadに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{head:736} run function asset:artifact/0736.sailor_hat/trigger/2.check_condition


text:
#> asset:artifact/0736.sailor_hat/trigger/dis_equip/main
#
# 装備を外した時のメイン処理
#
# @within function asset:artifact/0736.sailor_hat/trigger/dis_equip/

# 物理攻撃+7.5%
    data modify storage api: Argument.UUID set value [I;1,1,736,6]
    function api:modifier/attack/physical/remove

# 水攻撃+7.5%
    data modify storage api: Argument.UUID set value [I;1,1,736,6]
    function api:modifier/attack/water/remove

# 移動速度+7.5%
    attribute @s generic.movement_speed modifier remove 00000001-0000-0001-0000-02e000000006

# 魔法攻撃-15%
    data modify storage api: Argument.UUID set value [I;1,1,736,6]
    function api:modifier/attack/magic/remove


text:
#> asset:artifact/0537.all_night_boots/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[1] append value 537


text:
#> asset:artifact/0537.all_night_boots/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:537} run function asset:artifact/0537.all_night_boots/give/2.give


text:
#> asset:artifact/0537.all_night_boots/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0537.all_night_boots/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 537
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:leather_boots"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"終夜","color":"dark_purple","bold":true,"underlined":true}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"夜を崇拝する者達の正装だ。","color":"dark_purple"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "feet"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onAttackByMelee"
# 神器の発動条件 (TextComponentString) (オプション)
    data modify storage asset:artifact Condition set value '{"text":"夜の間、終夜をすべて着ている状態"}'
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.Damage set value [15]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackType set value [Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.ElementType set value [None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.IsRangeAttack set value "never"
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Nyaptov", "Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {display:{color:1050959},HideFlags:64,Enchantments:[{id:"minecraft:protection",lvl:1s},{id:"minecraft:unbreaking",lvl:2s}],AttributeModifiers:[{AttributeName:"generic.armor",Name:"generic.armor",Amount:2,Operation:0,UUID:[I;1,1,356,4],Slot:"feet"}]}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0252.void_transaction/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[3] append value 252


text:
#> asset:artifact/0252.void_transaction/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:252} run function asset:artifact/0252.void_transaction/give/2.give


text:
#> asset:artifact/0252.void_transaction/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0252.void_transaction/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 252
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '[{"text":"奈","color":"dark_purple","bold":true},{"text":"落","obfuscated":true},{"text":"との取引","obfuscated":false}]'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"絶大な力を得る代償に"}','[{"text":"奈","obfuscated":true},{"text":"落へ引きずり込まれる。","obfuscated":false}]']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    data modify storage asset:artifact RemainingCount set value 1
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onClick"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Nyaptov"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0252.void_transaction/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0252.void_transaction/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0252.void_transaction/trigger/3.main


text:
#> asset:artifact/0252.void_transaction/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0252.void_transaction/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く

# 演出
    particle minecraft:dragon_breath ~ ~0.8 ~ 0.5 0.5 0.5 0.05 50

# 使用中であれば追加演出
    execute if entity @s[scores={70.Timer=1..2400}] run tellraw @s [{"text":"［","color":"dark_purple","bold":true},{"text":"奈"},{"text":"落","obfuscated":true},{"text":"の主"},{"text":"］ "},{"text":"二","color":"dark_red","obfuscated":true},{"text":"重取引","color":"dark_red"},{"text":"とは何事だ","color":"dark_red"}]
    execute if entity @s[scores={70.Timer=1..2400}] run playsound minecraft:entity.lightning_bolt.thunder player @s ~ ~ ~ 1 1.5

# 使用中でなければ初期設定
    execute unless entity @s[scores={70.Timer=1..2400}] run function asset:artifact/0252.void_transaction/trigger/3.1.initiation

# 2分後の奈落予約
    schedule function asset:artifact/0252.void_transaction/trigger/3.2.void 1t replace


text:
#> asset:artifact/0252.void_transaction/trigger/0.load
#
# 神器に利用するスコアボード等の初期化処理
#
# @within tag/function asset:artifact/load

#> 定義類はここに
# @within function asset:artifact/0252.void_transaction/trigger/**
    scoreboard objectives add 70.Timer dummy


text:
#> asset:artifact/0252.void_transaction/trigger/rejoin_process
#
# 使い方は必ずwikiを見ること
#
# @within tag/function asset:rejoin

# 次tickにschedule予約
    execute if entity @s[scores={70.Timer=1..2400}] run function asset:artifact/0252.void_transaction/trigger/3.2.void


text:
#> asset:artifact/0252.void_transaction/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:252} run function asset:artifact/0252.void_transaction/trigger/2.check_condition


text:
#> asset:artifact/0252.void_transaction/trigger/3.1.initiation
#
# タイマーの初期設定とeffect
#
# @within function asset:artifact/0252.void_transaction/trigger/3.main

# 初期タイマーの設定
    scoreboard players set @s 70.Timer 2400

# 絶大な力
    effect give @s speed 120 3 true
    effect give @s strength 120 3 true
    effect give @s jump_boost 120 3 true
    effect give @s regeneration 120 3 true
    effect give @s fire_resistance 120 3 true
    effect give @s resistance 120 3 true
    effect give @s invisibility 120 3 true
    effect give @s night_vision 120 3 true
    effect give @s water_breathing 120 3 true
    effect give @s absorption 120 3 true
    effect give @s health_boost 120 3 true
    effect give @s slow_falling 120 3 true

# 追加演出
    playsound minecraft:entity.elder_guardian.curse player @a ~ ~ ~


text:
#> asset:artifact/0252.void_transaction/trigger/3.2.void
#
# タイマーが0になれば奈落にtp
#
# @within
#   function asset:artifact/0252.void_transaction/trigger/3.main
#   function asset:artifact/0252.void_transaction/trigger/3.2.void
#   function asset:artifact/0252.void_transaction/trigger/rejoin_process

# スコア減算
    scoreboard players remove @a[scores={70.Timer=1..2400}] 70.Timer 1

# カウントダウン
    execute as @a if entity @s[scores={70.Timer=60}] run title @s title {"text":"3","color":"dark_red","bold":true}
    execute as @a if entity @s[scores={70.Timer=60}] at @s run playsound block.ender_chest.open player @s ~ ~ ~ 1.0 0.5
    execute as @a if entity @s[scores={70.Timer=40}] run title @s title {"text":"2","color":"dark_red","bold":true}
    execute as @a if entity @s[scores={70.Timer=40}] at @s run playsound block.ender_chest.open player @s ~ ~ ~ 1.0 0.5
    execute as @a if entity @s[scores={70.Timer=20}] run title @s title {"text":"1","color":"dark_red","bold":true}
    execute as @a if entity @s[scores={70.Timer=20}] at @s run playsound block.ender_chest.open player @s ~ ~ ~ 1.0 0.5

# スコアが0になればtp
    execute as @a if entity @s[scores={70.Timer=0}] at @s run particle minecraft:dragon_breath ~ ~0.8 ~ 0.5 0.5 0.5 0.05 50
    execute as @a if entity @s[scores={70.Timer=0}] at @s run tp @s ~ -200 ~
    execute as @a if entity @s[scores={70.Timer=0}] at @s run playsound minecraft:block.end_portal.spawn player @s ~ ~ ~

# スコアが0になった時にリセットする
    scoreboard players reset @a[scores={70.Timer=0}] 70.Timer

# 次tickにschedule予約
    execute if entity @a[scores={70.Timer=1..2400},limit=1] run schedule function asset:artifact/0252.void_transaction/trigger/3.2.void 1t replace


text:
#> asset:artifact/0468.raging_demon/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[2] append value 468


text:
#> asset:artifact/0468.raging_demon/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:468} run function asset:artifact/0468.raging_demon/give/2.give


text:
#> asset:artifact/0468.raging_demon/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0468.raging_demon/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 468
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"瞬獄殺","color":"dark_red","bold":true}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"周囲10M以内の","color":"white"},{"text":"体力が30以下","color":"light_purple"},{"text":"の","color":"white"},{"text":"敵","color":"red"},{"text":"にダメージを与える","color":"white"}]','{"text":"「我こそ、拳を極めし者」","color":"dark_red"}','{"text":""}','[{"text":"軽減貫通 ","color":"white"},{"text":"20ダメージ","color":"white"}]']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "offhand"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "passive"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.Damage set value [30]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackType set value [Physical]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.ElementType set value [None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.BypassResist set value 1b
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.IsRangeAttack set value "never"
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackRange set value 20
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value "10"
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    data modify storage asset:artifact LocalCooldown set value 100
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    data modify storage asset:artifact DisableCooldownMessage set value true
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Urban", "Nyaptov", "Wi-ki"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0468.raging_demon/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0468.raging_demon/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/offhand
# 他にアイテム等確認する場合はここに書く

# 周囲10M以内に体力が20以下の敵がいるか確認
    execute if entity @s[tag=CanUsed] run function asset:artifact/0468.raging_demon/trigger/check_target

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0468.raging_demon/trigger/3.main


text:
#> asset:artifact/0468.raging_demon/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0468.raging_demon/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/offhand

# ここから先は神器側の効果の処理を書く

# 防御無視・補正なし・物理・無属性の30のダメージを与える
    data modify storage lib: Argument.Damage set value 30f
    data modify storage lib: Argument.AttackType set value "Physical"
    data modify storage lib: Argument.FixedDamage set value true
    function lib:damage/modifier
    execute as @e[tag=D0.Target] run function lib:damage/

# リセット
    function lib:damage/reset
    tag @e[tag=D0.Target] remove D0.Target


text:
#> asset:artifact/0468.raging_demon/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{offhand:468} run function asset:artifact/0468.raging_demon/trigger/2.check_condition


text:
#> asset:artifact/0468.raging_demon/trigger/_index.d
# @private

#> tag
# @within function
#   asset:artifact/0468.raging_demon/trigger/**
    #declare tag D0.Target


text:
#> asset:artifact/0468.raging_demon/trigger/check_target
#
# 周囲10M以内の体力が20以下の敵1体に7k.Targetタグを付与
# 対象の敵がいないときはCanUsedを削除
#
# @within function asset:artifact/0468.raging_demon/trigger/2.check_condition
#> Private
# @private
    #declare tag CanUsed

# 周囲10M以内の敵全てのHPを取得
    execute as @e[tag=Enemy,tag=!Uninterferable,distance=..10] store result score @s Temporary run data get entity @s AbsorptionAmount
# 周囲10M以内のHPが20以下のエンティティ1体を絞り込み、ターゲットタグを付与
    execute as @e[tag=Enemy,tag=!Uninterferable,scores={Temporary=..20},distance=..10,limit=1] run tag @s add D0.Target
# 対象となるターゲットがいない場合、処理を実行しない
    execute unless entity @e[tag=Enemy,tag=D0.Target,distance=..10] run tag @s remove CanUsed

# リセット
    scoreboard players reset @e[tag=Enemy,tag=!Uninterferable,distance=..10] Temporary


text:
#> asset:artifact/0644.raimei_leggings/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[3] append value 644


text:
#> asset:artifact/0644.raimei_leggings/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:644} run function asset:artifact/0644.raimei_leggings/give/2.give


text:
#> asset:artifact/0644.raimei_leggings/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0644.raimei_leggings/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 644
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:leather_leggings"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"雷鳴","color":"yellow"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"雷耐性+4%","color":"yellow"}','{"text":"セット効果で特殊な能力を得る"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "legs"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "equipping"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Nyaptov", "Wi-ki"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {HideFlags:68,display:{color:16514938},Unbreakable:1b,AttributeModifiers:[{AttributeName:"generic.armor",Name:"generic.armor",Amount:6,Operation:0,UUID:[I;1,1,644,4],Slot:"legs"},{AttributeName:"generic.armor_toughness",Name:"generic.armor_toughness",Amount:1,Operation:0,UUID:[I;1,1,644,4],Slot:"legs"},{AttributeName:"generic.movement_speed",Name:"generic.movement_speed",Amount:0.05,Operation:1,UUID:[I;1,1,644,4],Slot:"legs"}]}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0644.raimei_leggings/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0644.raimei_leggings/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く
    function asset:artifact/common/check_condition/legs
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0644.raimei_leggings/trigger/3.main


text:
#> asset:artifact/0644.raimei_leggings/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0644.raimei_leggings/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う
    function asset:artifact/common/use/legs

# ここから先は神器側の効果の処理を書く

# 演出
    playsound minecraft:block.respawn_anchor.charge player @s ~ ~ ~ 1 2

# 引数の設定
    # UUID
        data modify storage api: Argument.UUID set value [I;1,1,644,4]
    # 補正値
        data modify storage api: Argument.Amount set value 0.04
    # 補正方法
        data modify storage api: Argument.Operation set value "multiply_base"
# 補正の追加
    function api:modifier/defense/thunder/add

#セット効果用のファンクション実行（実行はチェストプレートの方へ）
    execute if data storage asset:context id.all{head:642,chest:643,legs:644,feet:645} run function asset:artifact/0643.raimei_chestplate/trigger/3.1.armorfullset


text:
#> asset:artifact/0644.raimei_leggings/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのlegsに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{legs:644} run function asset:artifact/0644.raimei_leggings/trigger/2.check_condition


text:
#> asset:artifact/0644.raimei_leggings/trigger/dis_equip/main
#
# 装備を外した時のメイン処理
#
# @within function asset:artifact/0644.raimei_leggings/trigger/dis_equip/

#> Private
# @private
    #declare tag HV.Full

# タグを消す(チェストプレート側で実行)
    execute if entity @s[tag=HV.Full] run function asset:artifact/0643.raimei_chestplate/trigger/3.3.tag_delete

# 引数の設定
    # UUID
    data modify storage api: Argument.UUID set value [I;1,1,644,4]
# 補正の削除
    function api:modifier/defense/thunder/remove


text:
#> asset:artifact/0185.increased_cookie/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:185} run function asset:artifact/0185.increased_cookie/give/2.give


text:
#> asset:artifact/0185.increased_cookie/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0185.increased_cookie/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 185
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:cookie"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '[{"text":"増えたクッキー","color":"gold"}]'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"ちょっと不思議なだけの平凡なクッキー"}]']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    data modify storage asset:artifact RemainingCount set value 1
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "itemUse"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value "ALL"
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0185.increased_cookie/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0185.increased_cookie/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0185.increased_cookie/trigger/3.main


text:
#> asset:artifact/0185.increased_cookie/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0185.increased_cookie/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く
    scoreboard players set $Fluctuation Lib 1
    function lib:mp/fluctuation


text:
#> asset:artifact/0185.increased_cookie/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:context idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:185} run function asset:artifact/0185.increased_cookie/trigger/2.check_condition


text:
#> asset:artifact/0046.ritual_wand/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[2] append value 46


text:
#> asset:artifact/0046.ritual_wand/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:46} run function asset:artifact/0046.ritual_wand/give/2.give


text:
#> asset:artifact/0046.ritual_wand/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0046.ritual_wand/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 46
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"祭祀の杖","color":"red"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"天候を変化させる杖"}','{"text":"雨乞いの儀式にも使われる。"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onClick"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 20
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0046.ritual_wand/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0046.ritual_wand/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0046.ritual_wand/trigger/3.main


text:
#> asset:artifact/0046.ritual_wand/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0046.ritual_wand/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く

# 現在の天気から切り替える天気を取得する
    execute if predicate lib:weather/is_sunny run scoreboard players set @s Temporary 0
    execute if predicate lib:weather/is_raining run scoreboard players set @s Temporary 1
    execute if predicate lib:weather/is_thundering run scoreboard players set @s Temporary 2
# 晴れの時25%の確率で雷雨に切り替え
    execute if predicate lib:weather/is_sunny if predicate lib:random_pass_per/25 run scoreboard players set @s Temporary 3

# 演出
    particle minecraft:campfire_cosy_smoke ~ ~ ~ 0 5 0 0.1 100 force @a[distance=..30]
    playsound minecraft:entity.creeper.death player @s ~ ~ ~ 20 0.2

# 天気を切り替える
    execute if score @s Temporary matches 0 run weather rain
    execute if score @s Temporary matches 0 run tellraw @s {"text":"天気が雨に切り替わった"}
    execute if score @s Temporary matches 1..2 run weather clear
    execute if score @s Temporary matches 1..2 run tellraw @s {"text":"天気が晴れに切り替わった"}
    execute if score @s Temporary matches 3 run weather thunder
    execute if score @s Temporary matches 3 run tellraw @s {"text":"天気が雷雨に切り替わった"}

scoreboard players reset @s Temporary


text:
#> asset:artifact/0046.ritual_wand/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/*

# storage asset:context idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:46} run function asset:artifact/0046.ritual_wand/trigger/2.check_condition


text:
#> asset:artifact/0905.book_of_metastasis/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[3] append value 905


text:
#> asset:artifact/0905.book_of_metastasis/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:905} run function asset:artifact/0905.book_of_metastasis/give/2.give


text:
#> asset:artifact/0905.book_of_metastasis/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0905.book_of_metastasis/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 905
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"転移の書","color":"light_purple"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"自分を転移させる弾を発射する"}','{"text":"発動中にもう一度神器を使うと転移できる"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onClick"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 50
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    data modify storage asset:artifact LocalCooldown set value 90
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    data modify storage asset:artifact DisableCooldownMessage set value true
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0905.book_of_metastasis/trigger/4.schedule
#
#
#
# @within function
#        asset:artifact/0905.book_of_metastasis/trigger/3.main
#        asset:artifact/0905.book_of_metastasis/trigger/4.schedule
#        asset:artifact/0905.book_of_metastasis/trigger/rejoin_process

# 火の玉が実行する処理
    execute as @e[type=area_effect_cloud,tag=P5.Bullet] at @s run function asset:artifact/0905.book_of_metastasis/trigger/5.bullet
    execute as @e[type=area_effect_cloud,tag=P5.Bullet] at @s run function asset:artifact/0905.book_of_metastasis/trigger/5.bullet

# Scheduleループ
    execute if entity @e[type=area_effect_cloud,tag=P5.Bullet,limit=1] run schedule function asset:artifact/0905.book_of_metastasis/trigger/4.schedule 1t replace


text:
#> asset:artifact/0905.book_of_metastasis/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0905.book_of_metastasis/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# 既に発動している場合、テレポートはここで発動してしまう(MP消費したくないし)
    execute if entity @s[tag=CanUsed] as @e[type=area_effect_cloud,tag=P5.Bullet,distance=..150] if score @s P5.UserID = @p[tag=this] UserID run tag @s remove CanUsed
    execute as @e[type=area_effect_cloud,tag=P5.Bullet,distance=..150] if score @s P5.UserID = @p[tag=this] UserID at @s run function asset:artifact/0905.book_of_metastasis/trigger/teleport
# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0905.book_of_metastasis/trigger/3.main


text:
#> asset:artifact/0905.book_of_metastasis/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0905.book_of_metastasis/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く

# 弾を飛ばす

# 演出
    playsound entity.blaze.shoot player @a ~ ~ ~ 1 1
    playsound ogg:entity.squid.squirt2 player @a ~ ~ ~ 1 2
    playsound block.respawn_anchor.set_spawn player @a ~ ~ ~ 1 1.5

# 弾を召喚
    summon area_effect_cloud ~ ~ ~ {Particle:"block air",Duration:50,Tags:["P5.First","P5.Bullet","Projectile"]}
    execute anchored eyes positioned ^ ^ ^ run tp @e[type=area_effect_cloud,tag=P5.First] ~ ~ ~ facing ^ ^ ^10
# ユーザーID適応
    scoreboard players operation @e[type=area_effect_cloud,tag=P5.First] P5.UserID = @s UserID
# タグを消す
    tag @e[type=area_effect_cloud,tag=P5.First] remove P5.First

# Scheduleループ
    schedule function asset:artifact/0905.book_of_metastasis/trigger/4.schedule 1t replace


text:
#> asset:artifact/0905.book_of_metastasis/trigger/0.load
#
# 神器に利用するスコアボード等の初期化処理
#
# @within tag/function asset:artifact/load

#> 定義類はここに
# @within function asset:artifact/0905.book_of_metastasis/trigger/**
    scoreboard objectives add P5.UserID dummy


text:
#> asset:artifact/0905.book_of_metastasis/trigger/rejoin_process
#
# 使い方は必ずwikiを見ること
#
# @within tag/function asset:rejoin

# Scheduleループ
    execute if entity @e[type=area_effect_cloud,tag=P5.Bullet,limit=1] run schedule function asset:artifact/0905.book_of_metastasis/trigger/4.schedule 1t replace


text:
#> asset:artifact/0905.book_of_metastasis/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのautoに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:905} run function asset:artifact/0905.book_of_metastasis/trigger/2.check_condition


text:
#> asset:artifact/0905.book_of_metastasis/trigger/_index.d
# @private

#> tag
# @within function asset:artifact/0905.book_of_metastasis/trigger/**
    #declare tag P5.Bullet
    #declare tag P5.First


text:
#> asset:artifact/0905.book_of_metastasis/trigger/5.bullet
#
#
#
# @within function asset:artifact/0905.book_of_metastasis/trigger/4.schedule
#> Private
# @private
    #declare score_holder $isBanTPArea
    #declare tag P5.Landing

# 着弾検知
    execute unless entity @s[tag=P5.Landing] unless block ^ ^ ^0.5 #lib:no_collision run tag @s add P5.Landing

# 演出
    particle minecraft:scrape ~ ~ ~ 0.1 0.1 0.1 0 1 force
    particle minecraft:electric_spark ~ ~ ~ 0.1 0.1 0.1 0 4 force

# 進ませる
    tp @s[tag=!P5.Landing] ^ ^ ^0.5 ~ ~

# TPBANエリアにいった場合
    execute at @s store result score $isBanTPArea Temporary if predicate lib:is_ban_tp_area
    execute if score $isBanTPArea Temporary matches 1 at @s run particle smoke ~ ~ ~ 0 0 0 0.1 30
    execute if score $isBanTPArea Temporary matches 1 run kill @s
    scoreboard players reset $isBanTPArea Temporary


text:
#> asset:artifact/0905.book_of_metastasis/trigger/teleport
#
#
#
# @within function asset:artifact/0905.book_of_metastasis/trigger/2.check_condition

# テレポートする
    tp @p[tag=this] ~ ~ ~

# 演出
    playsound block.respawn_anchor.deplete player @a ~ ~ ~ 1 1.5
    playsound ogg:entity.glow_squid.squirt3 player @a ~ ~ ~ 1 1.3
# 自害
    kill @s


text:
#> asset:artifact/0189.crystal_rod/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[2] append value 189


text:
#> asset:artifact/0189.crystal_rod/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:189} run function asset:artifact/0189.crystal_rod/give/2.give


text:
#> asset:artifact/0189.crystal_rod/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0189.crystal_rod/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 189
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"クリスタルロッド","color":"white","bold":true}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"透明度の高いクリスタルが使用された杖。","color":"white"}','{"text":"周囲のプレイヤーのバフ・デバフをかき消す。","color":"white"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onClick"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 40
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Nyaptov", "Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0189.crystal_rod/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0189.crystal_rod/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0189.crystal_rod/trigger/3.main


text:
#> asset:artifact/0189.crystal_rod/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0189.crystal_rod/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く
# サウンドとパーティクル
    execute at @a[distance=..15] run particle minecraft:end_rod ~ ~1 ~ 0.3 0.5 0.3 0 3 force @a[distance=..30]
    execute at @a[distance=..15] run particle minecraft:firework ~ ~1 ~ 0.3 0.5 0.3 0 3 force @a[distance=..30]
    playsound minecraft:entity.arrow.hit_player player @a[distance=..15] ~ ~ ~ 2 1
    playsound minecraft:entity.ender_eye.death player @a ~ ~ ~ 2 1.5
    playsound minecraft:block.end_portal_frame.fill player @a ~ ~ ~ 2 2

# 効果
    effect clear @a[distance=..15]


text:
#> asset:artifact/0189.crystal_rod/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:189} run function asset:artifact/0189.crystal_rod/trigger/2.check_condition


text:
#> asset:artifact/0073.suzuran_charm/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[1] append value 73


text:
#> asset:artifact/0073.suzuran_charm/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:73} run function asset:artifact/0073.suzuran_charm/give/2.give


text:
#> asset:artifact/0073.suzuran_charm/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0073.suzuran_charm/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 73
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:iron_axe"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"スズランチャーム","color":"white","bold":true}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"儚い花の香りを宿した大斧"}','{"text":"ひとたび敵に振るえば、付いた傷跡に猛毒がしみこむ。"}']
# MP以外の消費物 (TextComponentString) (オプション)
    data modify storage asset:artifact CostText set value '[{"translate":"block.minecraft.lily_of_the_valley"},{"text":" x1"}]'
# 使用回数 (int) (オプション)
    data modify storage asset:artifact RemainingCount set value 100
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "mainhand"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onAttack"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.Damage set value [50]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackType set value [Physical]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.ElementType set value [None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.IsRangeAttack set value "never"
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    data modify storage asset:artifact LocalCooldown set value 20
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Nyaptov", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {HideFlags:6,AttributeModifiers:[{AttributeName:"generic.attack_damage",Name:"generic.attack_damage",Amount:0,Operation:0,UUID:[I;1,1,73,1],Slot:"mainhand"},{AttributeName:"generic.attack_speed",Name:"generic.attack_speed",Amount:100,Operation:0,UUID:[I;1,1,73,1]}]}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0073.suzuran_charm/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0073.suzuran_charm/trigger/1.trigger

#> Private
# @private
    #declare score_holder $SuzuranCount

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/mainhand
# 他にアイテム等確認する場合はここに書く
    # スズランを持ってるかチェック
        execute store result score $SuzuranCount Temporary run clear @s lily_of_the_valley 0
        execute if score $SuzuranCount Temporary matches 0 run tag @s remove CanUsed
        execute if score $SuzuranCount Temporary matches 0 run function lib:message/artifact/dont_have_require_items
        scoreboard players reset $SuzuranCount Temporary
# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0073.suzuran_charm/trigger/3.main


text:
#> asset:artifact/0073.suzuran_charm/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0073.suzuran_charm/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/mainhand

# ここから先は神器側の効果の処理を書く

# 物理無属性ダメージ:50
    data modify storage lib: Argument.Damage set value 50.0f
    data modify storage lib: Argument.AttackType set value "Physical"
    data modify storage lib: Argument.ElementType set value "None"
    function lib:damage/modifier
    execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function lib:damage/
# リセット
    function lib:damage/reset

# 敵に衰弱を付与
    execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run effect give @s wither 1000000 4 false

# 演出
    execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run particle minecraft:smoke ~ ~ ~ 1 1 1 0.0001 500 normal @a[distance=..30]
    playsound minecraft:entity.splash_potion.break player @a[distance=..30] ~ ~ ~ 1 0.5

# スズラン減少
    clear @s lily_of_the_valley 1


text:
#> asset:artifact/0073.suzuran_charm/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{mainhand:73} run function asset:artifact/0073.suzuran_charm/trigger/2.check_condition


text:
#> asset:artifact/0137.aure_amrita/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:137} run function asset:artifact/0137.aure_amrita/give/2.give


text:
#> asset:artifact/0137.aure_amrita/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0137.aure_amrita/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 137
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:potion"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"アウレアムリタ","color":"yellow"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"MPを45%回復する"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    data modify storage asset:artifact RemainingCount set value 1
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "auto"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "itemUse"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value "ALL"
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {CustomPotionColor:16318239,HideFlags:32}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0137.aure_amrita/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0137.aure_amrita/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0137.aure_amrita/trigger/3.main


text:
#> asset:artifact/0137.aure_amrita/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0137.aure_amrita/trigger/2.check_condition

#> private
# @private
    #declare score_holder $Fluctuation

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね
    function asset:artifact/common/use/auto

# ここから先は神器側の効果の処理を書く

# 演出
    particle minecraft:composter ~ ~1 ~ 0.5 0.5 0.5 1 20 force @s
    playsound minecraft:entity.arrow.hit_player player @s ~ ~ ~ 1 1

# MP回復
    execute store result storage asset:temp 3T.Temp double 0.45 run function lib:mp/get_max
    execute store result score $Fluctuation Lib run data get storage asset:temp 3T.Temp
    function lib:mp/fluctuation

# リセット
    data remove storage asset:temp 3T.Temp


text:
#> asset:artifact/0137.aure_amrita/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:context idのauto/feet/legs/chest/head/mainhand/offhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{auto:137} run function asset:artifact/0137.aure_amrita/trigger/2.check_condition


text:
#> asset:artifact/0860.angel_wing/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[4] append value 860


text:
#> asset:artifact/0860.angel_wing/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:860} run function asset:artifact/0860.angel_wing/give/2.give


text:
#> asset:artifact/0860.angel_wing/give/2.give
#
# 神器の作成部 ここでID等を定義する
#
# @user
# @within function asset:artifact/0860.angel_wing/give/1.trigger

# 神器の説明や消費MPなどをここで設定する。
# 最後にasset:artifact/common/giveを実行することで入手可能。

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 860
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:elytra"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"えんじぇるうぃんぐ","color":"#FFFFFF"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"まだ未熟な羽のため、飛べないが、跳ぶことはできる","color":"white"}']
# MP以外の消費物 (TextComponentString) (オプション)
    # data modify storage asset:artifact CostText set value
# 使用回数 (int) (オプション)
    # data modify storage asset:artifact RemainingCount set value
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "chest"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "passive"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.Damage set value [0,0]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.IsRangeAttack set value
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.AttackRange set value
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 0
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    # data modify storage asset:artifact LocalCooldown set value
# グローバルクールダウン (int) (オプション)
    # data modify storage asset:artifact SpecialCooldown set value
# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableCooldownMessage set value
# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション)
    # data modify storage asset:artifact DisableMPMessage set value
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Nyaptov", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    data modify storage asset:artifact CustomNBT set value {HideFlags:4,Unbreakable:1b,Damage:432,Enchantments:[{}],AttributeModifiers:[{AttributeName:"generic.armor",Name:"generic.armor",Amount:7,Operation:0,UUID:[I;-841939162,-2040575447,-1620123908,-865268967],Slot:"chest"},{AttributeName:"generic.armor_toughness",Name:"generic.armor_toughness",Amount:2,Operation:0,UUID:[I;-1577191449,583288319,-1475995532,-1239126169],Slot:"chest"}]}

# 神器の入手用function
    function asset:artifact/common/give


text:
#> asset:artifact/0860.angel_wing/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0860.angel_wing/trigger/1.trigger

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く
    function asset:artifact/common/check_condition/chest
# 他にアイテム等確認する場合はここに書く

# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0860.angel_wing/trigger/3.main


text:
#> asset:artifact/0860.angel_wing/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0860.angel_wing/trigger/2.check_condition

# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う
    function asset:artifact/common/use/chest

# ここから先は神器側の効果の処理を書く
    effect give @s minecraft:jump_boost 2 2 true
    effect give @s minecraft:speed 2 1 true


text:
#> asset:artifact/0860.angel_wing/trigger/1.trigger
#
# 指定したイベントタイミングで実行されるfunction
#
# @within tag/function asset:artifact/**

# storage asset:idのchestに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{chest:860} run function asset:artifact/0860.angel_wing/trigger/2.check_condition


text:
#> asset:artifact/0634.elec_leggings/register
#
# 神器プールへの登録処理
#
# @within tag/function asset:artifact/register

data modify storage asset:artifact RarityRegistry[2] append value 634


text:
#> asset:artifact/0634.elec_leggings/give/1.trigger
#
# 神器の取得処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:artifact/give

execute if data storage asset:context {id:634} run function asset:artifact/0634.elec_leggings/give/2.give