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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 245
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:cooked_beef"
# 神器の名前 (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 3
# 神器を発動できるスロット (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/0245.skewered_meat/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0245.skewered_meat/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/0245.skewered_meat/trigger/3.main

repo_name: ProjectTSB/TheSkyBlessing

repo_language: mcfunction

mime_type: text/plain


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

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

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

# 回復
    data modify storage lib: Argument.Heal set value 30f
    function lib:heal/modifier
    function lib:heal/
    function lib:heal/reset

# 演出
    tellraw @s {"text":"─── んまいっ！","bold":true}
    particle minecraft:heart ~ ~1.3 ~ 0.25 0.25 0.25 1 7


text:
#> asset:artifact/0245.skewered_meat/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:245} run function asset:artifact/0245.skewered_meat/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:201} run function asset:artifact/0201.cowardly_soul/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 201
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:heart_of_the_sea"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"臆病者の魂","color":"dark_aqua"}'
# 神器の説明文 (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 "offhand"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onDamage"
# 神器の発動条件 (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", "Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


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

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

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


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

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

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

# 落下速度低下付与
    effect give @s minecraft:slow_falling 1 1

# vfx
    particle minecraft:nautilus ~ ~1.25 ~ 0.0 0.5 0.0 0.5 75

# ワープする
    execute in overworld run tp @s 23.5 3.0 24.5


text:
#> asset:artifact/0201.cowardly_soul/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:201} run function asset:artifact/0201.cowardly_soul/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:183} run function asset:artifact/0183.answer_to_the_ultimate_question_of_life_the_universe_and_everything/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 183
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '[{"text":"4","color":"light_purple","obfuscated":true},{"text":"生命、宇宙、そして万物についての究極の疑問の答え","color":"purple","obfuscated":false},{"text":"2","color":"light_purple","obfuscated":true}]'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"750万年かけて計算した生命、宇宙、そして万物についての","color":"white","italic":false}]','[{"text":"究極の疑問の答えを自身のMPに代入する","color":"white","italic":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", "Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


text:
#> asset:artifact/0183.answer_to_the_ultimate_question_of_life_the_universe_and_everything/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0183.answer_to_the_ultimate_question_of_life_the_universe_and_everything/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/0183.answer_to_the_ultimate_question_of_life_the_universe_and_everything/trigger/3.main


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

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

# ここから先は神器側の効果の処理を書く
    #演出
    particle portal ~ ~ ~ 0 0 0 2 250 force @a
    particle reverse_portal ~ ~ ~ 0 0 0 2 250 force @a
    playsound entity.elder_guardian.death player @s ~ ~ ~ 1 0 1
    tellraw @a ["* ",{"selector": "@s"},{"text": "は "},{"text": "\"750万年かけて計算された生命、宇宙、\nそして万物についての究極の疑問の答え\"","color": "light_purple"},{"text": "を知り、"},{"text": "MPが其の解となった！"}]
    #MP変更処理
    scoreboard players set $Set Lib 42
    function lib:mp/set


text:
#> asset:artifact/0183.answer_to_the_ultimate_question_of_life_the_universe_and_everything/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:183} run function asset:artifact/0183.answer_to_the_ultimate_question_of_life_the_universe_and_everything/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:936} run function asset:artifact/0936.ideal_leggings/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 936
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:leather_leggings"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"アイディアル","color":"#E6FFF4","underlined":true}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"最も理想的な装備","color":"#FF78ED"}','{"text":"全ての耐性を持ちあらゆる状況に","color":"#FF78ED"}','{"text":"対応出来る万能な防具","color":"#FF78ED"}','{"text":"全耐性+5%","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 "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 {display:{color:16777215},HideFlags:69,Unbreakable:1b,Enchantments:[{id:"minecraft:fortune",lvl:1s}],AttributeModifiers:[{AttributeName:"generic.armor",Name:"generic.armor",Amount:7,Operation:0,UUID:[I;1,1,936,4],Slot:"legs"},{AttributeName:"generic.armor_toughness",Name:"generic.armor_toughness",Amount:2.5,Operation:0,UUID:[I;1,1,936,4],Slot:"legs"}]}

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


text:
#> asset:artifact/0936.ideal_leggings/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0936.ideal_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/0936.ideal_leggings/trigger/3.main


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

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

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

# 全耐性+5%
    data modify storage api: Argument.UUID set value [I;1,1,936,4]
    data modify storage api: Argument.Amount set value 0.05
    data modify storage api: Argument.Operation set value "multiply_base"
    function api:modifier/defense/base/add

# 演出
    playsound minecraft:block.beacon.power_select player @a ~ ~ ~ 1 2
# [ImportKey]: NobwRALgngDgpmAXGGB7ANlA5qgdmAGjAFdiBLAEyTAHYAzOgVgGYBOVxgWgCYaBDAAycALHTg1OrZgDYu06XWZ9ujBgEYAHGsJhcfALYJkgLE1AS5GAjfQAE2ojD4AnAwGck4AMapiuCEjWMibnDecPauYABufOjERuAAHkgCRFCJAL6pRI4UZMQuiNxEThAOPohJYHDo6GQwTkZqAuX2qMUQRuUe9rghSNJEAFbE+jBIBWAARnAAXmQ9ZURkTgCiVTV1SwCOxFGYAMp2gVSIdFF1C04AQtOz9pvbVVD7fIdIJ+h16QC6QA_3
# 多角形 1
    particle minecraft:end_rod ~ ~ ~ 0 0 -2 1 0
    particle minecraft:end_rod ~ ~ ~ 0.11547 0 -1.8 1 0
    particle minecraft:end_rod ~ ~ ~ 0.23094 0 -1.6 1 0
    particle minecraft:end_rod ~ ~ ~ 0.34641 0 -1.4 1 0
    particle minecraft:end_rod ~ ~ ~ 0.46188 0 -1.2 1 0
    particle minecraft:end_rod ~ ~ ~ 0.57735 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.69282 0 -0.8 1 0
    particle minecraft:end_rod ~ ~ ~ 0.80829 0 -0.6 1 0
    particle minecraft:end_rod ~ ~ ~ 0.92376 0 -0.4 1 0
    particle minecraft:end_rod ~ ~ ~ 1.03923 0 -0.2 1 0
    particle minecraft:end_rod ~ ~ ~ 1.1547 0 0 1 0
    particle minecraft:end_rod ~ ~ ~ 1.27017 0 0.2 1 0
    particle minecraft:end_rod ~ ~ ~ 1.38564 0 0.4 1 0
    particle minecraft:end_rod ~ ~ ~ 1.50111 0 0.6 1 0
    particle minecraft:end_rod ~ ~ ~ 1.61658 0 0.8 1 0
    particle minecraft:end_rod ~ ~ ~ 1.73205 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 1.61658 0 -0.8 1 0
    particle minecraft:end_rod ~ ~ ~ 1.50111 0 -0.6 1 0
    particle minecraft:end_rod ~ ~ ~ 1.38564 0 -0.4 1 0
    particle minecraft:end_rod ~ ~ ~ 1.27017 0 -0.2 1 0
    particle minecraft:end_rod ~ ~ ~ 1.1547 0 0 1 0
    particle minecraft:end_rod ~ ~ ~ 1.03923 0 0.2 1 0
    particle minecraft:end_rod ~ ~ ~ 0.92376 0 0.4 1 0
    particle minecraft:end_rod ~ ~ ~ 0.80829 0 0.6 1 0
    particle minecraft:end_rod ~ ~ ~ 0.69282 0 0.8 1 0
    particle minecraft:end_rod ~ ~ ~ 0.57735 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.46188 0 1.2 1 0
    particle minecraft:end_rod ~ ~ ~ 0.34641 0 1.4 1 0
    particle minecraft:end_rod ~ ~ ~ 0.23094 0 1.6 1 0
    particle minecraft:end_rod ~ ~ ~ 0.11547 0 1.8 1 0
    particle minecraft:end_rod ~ ~ ~ 1.73205 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 1.50111 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 1.27017 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 1.03923 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.80829 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.57735 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.34641 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.11547 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.11547 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.34641 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.57735 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.80829 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -1.03923 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -1.27017 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -1.50111 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ 0 0 2 1 0
    particle minecraft:end_rod ~ ~ ~ -0.11547 0 1.8 1 0
    particle minecraft:end_rod ~ ~ ~ -0.23094 0 1.6 1 0
    particle minecraft:end_rod ~ ~ ~ -0.34641 0 1.4 1 0
    particle minecraft:end_rod ~ ~ ~ -0.46188 0 1.2 1 0
    particle minecraft:end_rod ~ ~ ~ -0.57735 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.69282 0 0.8 1 0
    particle minecraft:end_rod ~ ~ ~ -0.80829 0 0.6 1 0
    particle minecraft:end_rod ~ ~ ~ -0.92376 0 0.4 1 0
    particle minecraft:end_rod ~ ~ ~ -1.03923 0 0.2 1 0
    particle minecraft:end_rod ~ ~ ~ -1.1547 0 0 1 0
    particle minecraft:end_rod ~ ~ ~ -1.27017 0 -0.2 1 0
    particle minecraft:end_rod ~ ~ ~ -1.38564 0 -0.4 1 0
    particle minecraft:end_rod ~ ~ ~ -1.50111 0 -0.6 1 0
    particle minecraft:end_rod ~ ~ ~ -1.61658 0 -0.8 1 0
    particle minecraft:end_rod ~ ~ ~ -1.73205 0 1 1 0
    particle minecraft:end_rod ~ ~ ~ -1.61658 0 0.8 1 0
    particle minecraft:end_rod ~ ~ ~ -1.50111 0 0.6 1 0
    particle minecraft:end_rod ~ ~ ~ -1.38564 0 0.4 1 0
    particle minecraft:end_rod ~ ~ ~ -1.27017 0 0.2 1 0
    particle minecraft:end_rod ~ ~ ~ -1.1547 0 0 1 0
    particle minecraft:end_rod ~ ~ ~ -1.03923 0 -0.2 1 0
    particle minecraft:end_rod ~ ~ ~ -0.92376 0 -0.4 1 0
    particle minecraft:end_rod ~ ~ ~ -0.80829 0 -0.6 1 0
    particle minecraft:end_rod ~ ~ ~ -0.69282 0 -0.8 1 0
    particle minecraft:end_rod ~ ~ ~ -0.57735 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.46188 0 -1.2 1 0
    particle minecraft:end_rod ~ ~ ~ -0.34641 0 -1.4 1 0
    particle minecraft:end_rod ~ ~ ~ -0.23094 0 -1.6 1 0
    particle minecraft:end_rod ~ ~ ~ -0.11547 0 -1.8 1 0
    particle minecraft:end_rod ~ ~ ~ -1.73205 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -1.50111 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -1.27017 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -1.03923 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.80829 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.57735 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.34641 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ -0.11547 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.11547 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.34641 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.57735 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 0.80829 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 1.03923 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 1.27017 0 -1 1 0
    particle minecraft:end_rod ~ ~ ~ 1.50111 0 -1 1 0


text:
#> asset:artifact/0936.ideal_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:936} run function asset:artifact/0936.ideal_leggings/trigger/2.check_condition


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

# 全耐性+5%削除
    data modify storage api: Argument.UUID set value [I;1,1,936,4]
    function api:modifier/defense/base/remove


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

execute if data storage asset:context {id:135} run function asset:artifact/0135.amrita/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 135
# 神器のベースアイテム
    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を40回復する"}']
# 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/0135.amrita/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0135.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/0135.amrita/trigger/3.main


text:
#> asset:artifact/0135.amrita/trigger/3.main
#
# 神器のメイン処理部
#
# @within function asset:artifact/0135.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回復
    scoreboard players set $Fluctuation Lib 40
    function lib:mp/fluctuation


text:
#> asset:artifact/0135.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:135} run function asset:artifact/0135.amrita/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:77} run function asset:artifact/0077.swords_of_waterfall_climbing/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 77
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '[{"text":"刀剣","color":"dark_aqua","italic":false},{"text":"『滝登り』","italic":false,"underlined":true}]'
# 神器の説明文 (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 50
# 神器を発動できるスロット (string) Wikiを参照
    data modify storage asset:artifact Slot set value "mainhand"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onAttackByMelee"
# 神器の発動条件 (TextComponentString) (オプション)
    # data modify storage asset:artifact Condition set value
# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.Damage set value [45,65]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackType set value [Physical]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.ElementType set value [Water]
# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション)
    # data modify storage asset:artifact AttackInfo.BypassResist set value
# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.IsRangeAttack set value "condition"
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackRange set value 4
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 25
# 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

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


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

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

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


text:
#> asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.1.effectclear
#
# エフェクトを消す処理
#
# @within function
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.main
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.1.effectclear
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/rejoin_process

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

# OnGround取得
    execute as @a[tag=25.EffectClear] run function api:data_get/on_ground

# 落下量を検知
    execute as @a[tag=25.EffectClear] run function asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.3.falldistance

# 落下を与える
    execute if data storage api: {OnGround:0b} run effect give @a[tag=25.EffectClear] levitation 1 130 true
    execute if data storage api: {OnGround:0b} run effect give @a[tag=25.EffectClear] slow_falling 1 10 true

# 着地時の処理
    execute if data storage api: {OnGround:1b} run effect clear @a[tag=25.EffectClear] levitation
    execute as @a[tag=25.EffectClear] if data storage api: {OnGround:1b} run attribute @s minecraft:generic.knockback_resistance modifier remove 1-0-1-0-4d00000007
    # 着地時に周囲にダメージ与える
        execute as @a[tag=25.EffectClear,tag=25.Landing] if data storage api: {OnGround:1b} at @s run function asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.3.landing_attack
    execute if data storage api: {OnGround:1b} run tag @a[tag=25.EffectClear] remove 25.EffectClear

# 着地していない場合、次tickも実行
    execute if entity @a[tag=25.EffectClear,limit=1] run schedule function asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.1.effectclear 1t replace


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

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

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

# OnGround取得
    function api:data_get/on_ground

# 攻撃当てた処理
    execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] at @s run function asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.2.attack

# 地面にいる時の処理
    execute if data storage api: {OnGround:1b} run effect give @e[tag=25.Hit,distance=..10,sort=nearest,limit=1] levitation 1 10
    execute if data storage api: {OnGround:1b} run effect give @s levitation 1 10 true

# 空中にいる時の処理
    execute if data storage api: {OnGround:0b} run data merge entity @e[tag=25.Hit,nbt={OnGround:0b},distance=..10,sort=nearest,limit=1] {Motion:[0.0,-3.5,0.0]}

# 着地後にエフェクトを消すためタグを付与
    execute if data storage api: {OnGround:0b} run tag @s add 25.EffectClear

# 落下中攻撃食らうとぶっ飛ぶので対処
    execute if data storage api: {OnGround:0b} run attribute @s minecraft:generic.knockback_resistance modifier add 1-0-1-0-4d00000007 "77waterfall" 1024 add

# タグ消去
    tag @e[tag=25.Hit] remove 25.Hit

# 着地後にエフェクトを消す処理
    schedule function asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.1.effectclear 1t replace


text:
#> asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.3.landing_attack
#
# エフェクトを消す処理
#
# @within function
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.1.effectclear

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

# タグを消しちゃう
    tag @s remove 25.Landing

# 攻撃処理
    # 与えるダメージ = 25
        data modify storage lib: Argument.Damage set value 65.f
    # 第一属性
        data modify storage lib: Argument.AttackType set value "Physical"
    # 第二属性
        data modify storage lib: Argument.ElementType set value "Water"
#ダメージ
    function lib:damage/modifier
    execute as @e[tag=Enemy,distance=..4] run function lib:damage/
# リセット
    function lib:damage/reset

# 演出
    particle minecraft:rain ~ ~ ~ 1 1 1 1 100
    particle minecraft:bubble_pop ~ ~ ~ 1 1 1 0 100
    particle minecraft:explosion ~ ~ ~ 0.2 0.2 0.2 1 10
    playsound minecraft:block.bubble_column.upwards_inside player @a ~ ~ ~ 1 2 0
    playsound minecraft:block.bubble_column.upwards_inside player @a ~ ~ ~ 1 2 0
    playsound minecraft:entity.generic.explode player @a ~ ~ ~ 1 0


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

# リログ時落下攻撃をそのまま継続
    execute if entity @s[tag=25.EffectClear] run function asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.1.effectclear


text:
#> asset:artifact/0077.swords_of_waterfall_climbing/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:77} run function asset:artifact/0077.swords_of_waterfall_climbing/trigger/2.check_condition


text:
#> asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.3.falldistance
#
# 落下量を検知
#
# @within function
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.main
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.1.effectclear

# 落下量を検知
    function api:data_get/fall_distance
    execute store result score $FallDistance Temporary run data get storage api: FallDistance
    execute if score $FallDistance Temporary matches 2.. run tag @s add 25.Landing
    scoreboard players reset $FallDistance


text:
#> asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.2.attack
#
# エフェクトを消す処理
#
# @within function
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/3.main

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

# タグ付与
    tag @s add 25.Hit

# 攻撃処理
    # 与えるダメージ = 45
        data modify storage lib: Argument.Damage set value 45f
    # 第一属性
        data modify storage lib: Argument.AttackType set value "Physical"
    # 第二属性
        data modify storage lib: Argument.ElementType set value "Water"
#ダメージ
    execute as @p[tag=this] run function lib:damage/modifier
    function lib:damage/
# リセット
    function lib:damage/reset

# 演出
    particle minecraft:rain ~ ~ ~ 0 2 0 1 100
    particle minecraft:bubble_pop ~ ~ ~ 0.1 2 0.1 0 100
    playsound minecraft:block.bubble_column.upwards_inside player @a ~ ~ ~ 1 2 0
    playsound minecraft:block.bubble_column.upwards_inside player @a ~ ~ ~ 1 2 0


text:
#> asset:artifact/0077.swords_of_waterfall_climbing/trigger/_index.d
# @private

#> tag
# @within function
#   asset:artifact/0077.swords_of_waterfall_climbing/trigger/**
    #declare tag 25.EffectClear
    #declare tag 25.Hit
    #declare tag 25.Landing
    #declare score_holder $FallDistance
    #alias uuid 1-1-77-7 1-0-1-0-4d00000007


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

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


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

execute if data storage asset:context {id:610} run function asset:artifact/0610.call_fish/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 610
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"コール:フィッシュ","color":"aqua"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"攻撃的な魚を召喚する"}','{"text":"「えーっと...なんなのこれ...」","color":"dark_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 "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 [50]
# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackType set value [Physical]
# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.ElementType set value [Water]
# 攻撃に関する情報 -防御無視 (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 10
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 60
# 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 ["Nyaptov", "Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


text:
#> asset:artifact/0610.call_fish/trigger/3.1.tick
#
#
#
# @within function
#    asset:artifact/0610.call_fish/trigger/3.main
#    asset:artifact/0610.call_fish/trigger/3.1.tick
#    asset:artifact/0610.call_fish/trigger/rejoin_process

# スコアを増やす
    scoreboard players add @e[type=cod,tag=GY.Fish] GY.FishCool 1
# スコアを減らす
    scoreboard players remove @e[type=cod,tag=GY.Fish] GY.FishTime 1

# 攻撃をさせる
    execute as @e[type=cod,tag=GY.Fish,scores={GY.FishCool=30}] at @s if entity @e[tag=Enemy,distance=..10] run function asset:artifact/0610.call_fish/trigger/3.2.attack

# スコアを戻す
    scoreboard players set @e[type=cod,tag=GY.Fish,scores={GY.FishCool=30}] GY.FishCool 0

# 殺す
    kill @e[type=cod,tag=GY.Fish,scores={GY.FishTime=0}]

# 再帰処理
    execute if entity @e[type=cod,tag=GY.Fish,limit=1] run schedule function asset:artifact/0610.call_fish/trigger/3.1.tick 1t replace


text:
#> asset:artifact/0610.call_fish/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0610.call_fish/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/0610.call_fish/trigger/3.main


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

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

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

# 演出
    execute positioned ~ ~0.5 ~ rotated ~ 0 run function asset:artifact/0610.call_fish/trigger/particle.1
    playsound minecraft:entity.puffer_fish.blow_up neutral @a ~ ~ ~ 1 1.3

# 魚召喚
    summon cod ~ ~ ~ {Invulnerable:1b,Tags:["GY.Fish","GY.First","Friend"]}

# 魚の寿命を設定する
    scoreboard players set @e[type=cod,tag=GY.First] GY.FishTime 600

# ユーザーID適応
    scoreboard players operation @e[type=cod,tag=GY.First] GY.UserID = @s UserID

# タグを消す
    tag @e[type=cod,tag=GY.First] remove GY.First

# 再帰先へ飛ばす
    execute as @e[type=cod,tag=GY.Fish,limit=1] run function asset:artifact/0610.call_fish/trigger/3.1.tick


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

#> 定義類はここに
# @within function asset:artifact/0610.call_fish/trigger/**
    scoreboard objectives add GY.FishTime dummy
    scoreboard objectives add GY.FishCool dummy
    scoreboard objectives add GY.UserID dummy


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

# 再帰処理
    execute if entity @e[type=cod,tag=GY.Fish,limit=1] run schedule function asset:artifact/0610.call_fish/trigger/3.1.tick 1t replace


text:
#> asset:artifact/0610.call_fish/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:610} run function asset:artifact/0610.call_fish/trigger/2.check_condition


text:
#> asset:artifact/0610.call_fish/trigger/particle.1
#
#
#
# @within function asset:artifact/0610.call_fish/trigger/3.main

# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgB2AhgLYLKBhigAQCMAzGATMRmQM5LgoD2AroQhIATAAYCKOILgYuYAB5JxYKEoC+BNgBM0fToloF2EVkMTK42bGhjsKtUcow8TECqLUbw0eElSYcfCIyCjAaBgBaXhhVZlYOOV4BMzEJKTdZRHBFcwJVcw0wbV19WgA6YQBWIxMMMwAWADYCS2tbe0dNF2I3dS9IWFD0LFwmYPI-cPoonhiZmLGWNlJ9bn5BEWVJaUzspTz1TWIdPSRy6rBjUyR6AA4Wqxs7M86i7t6CtQBdIA
# 円 13
particle fishing ^0 ^ ^-1 0 0 0 0 1
particle fishing ^0.30902 ^ ^-0.95106 0 0 0 0 1
particle fishing ^0.58779 ^ ^-0.80902 0 0 0 0 1
particle fishing ^0.80902 ^ ^-0.58779 0 0 0 0 1
particle fishing ^0.95106 ^ ^-0.30902 0 0 0 0 1
particle fishing ^1 ^ ^0 0 0 0 0 1
particle fishing ^0.95106 ^ ^0.30902 0 0 0 0 1
particle fishing ^0.80902 ^ ^0.58779 0 0 0 0 1
particle fishing ^0.58779 ^ ^0.80902 0 0 0 0 1
particle fishing ^0.30902 ^ ^0.95106 0 0 0 0 1
particle fishing ^0 ^ ^1 0 0 0 0 1
particle fishing ^-0.30902 ^ ^0.95106 0 0 0 0 1
particle fishing ^-0.58779 ^ ^0.80902 0 0 0 0 1
particle fishing ^-0.80902 ^ ^0.58779 0 0 0 0 1
particle fishing ^-0.95106 ^ ^0.30902 0 0 0 0 1
particle fishing ^-1 ^ ^0 0 0 0 0 1
particle fishing ^-0.95106 ^ ^-0.30902 0 0 0 0 1
particle fishing ^-0.80902 ^ ^-0.58779 0 0 0 0 1
particle fishing ^-0.58779 ^ ^-0.80902 0 0 0 0 1
particle fishing ^-0.30902 ^ ^-0.95106 0 0 0 0 1
# 円 13-copy
particle fishing ^0.89917 ^ ^-0.86832 0 0 0 0 1
particle fishing ^1.12349 ^ ^-0.54796 0 0 0 0 1
particle fishing ^1.23784 ^ ^-0.17397 0 0 0 0 1
particle fishing ^1.23101 ^ ^0.21706 0 0 0 0 1
particle fishing ^1.10368 ^ ^0.58684 0 0 0 0 1
particle fishing ^0.86832 ^ ^0.89917 0 0 0 0 1
particle fishing ^0.54796 ^ ^1.12349 0 0 0 0 1
particle fishing ^0.17397 ^ ^1.23784 0 0 0 0 1
particle fishing ^-0.21706 ^ ^1.23101 0 0 0 0 1
particle fishing ^-0.58684 ^ ^1.10368 0 0 0 0 1
particle fishing ^-0.89917 ^ ^0.86832 0 0 0 0 1
particle fishing ^-1.12349 ^ ^0.54796 0 0 0 0 1
particle fishing ^-1.23784 ^ ^0.17397 0 0 0 0 1
particle fishing ^-1.23101 ^ ^-0.21706 0 0 0 0 1
particle fishing ^-1.10368 ^ ^-0.58684 0 0 0 0 1
particle fishing ^-0.86832 ^ ^-0.89917 0 0 0 0 1
particle fishing ^-0.54796 ^ ^-1.12349 0 0 0 0 1
particle fishing ^-0.17397 ^ ^-1.23784 0 0 0 0 1
particle fishing ^0.21706 ^ ^-1.23101 0 0 0 0 1
particle fishing ^0.58684 ^ ^-1.10368 0 0 0 0 1
# 円 13-copy-copy
particle fishing ^0.92349 ^ ^-1.18202 0 0 0 0 1
particle fishing ^1.24356 ^ ^-0.83879 0 0 0 0 1
particle fishing ^1.44189 ^ ^-0.41346 0 0 0 0 1
particle fishing ^1.49909 ^ ^0.05235 0 0 0 0 1
particle fishing ^1.40954 ^ ^0.51303 0 0 0 0 1
particle fishing ^1.18202 ^ ^0.92349 0 0 0 0 1
particle fishing ^0.83879 ^ ^1.24356 0 0 0 0 1
particle fishing ^0.41346 ^ ^1.44189 0 0 0 0 1
particle fishing ^-0.05235 ^ ^1.49909 0 0 0 0 1
particle fishing ^-0.51303 ^ ^1.40954 0 0 0 0 1
particle fishing ^-0.92349 ^ ^1.18202 0 0 0 0 1
particle fishing ^-1.24356 ^ ^0.83879 0 0 0 0 1
particle fishing ^-1.44189 ^ ^0.41346 0 0 0 0 1
particle fishing ^-1.49909 ^ ^-0.05235 0 0 0 0 1
particle fishing ^-1.40954 ^ ^-0.51303 0 0 0 0 1
particle fishing ^-1.18202 ^ ^-0.92349 0 0 0 0 1
particle fishing ^-0.83879 ^ ^-1.24356 0 0 0 0 1
particle fishing ^-0.41346 ^ ^-1.44189 0 0 0 0 1
particle fishing ^0.05235 ^ ^-1.49909 0 0 0 0 1
particle fishing ^0.51303 ^ ^-1.40954 0 0 0 0 1


text:
#> asset:artifact/0610.call_fish/trigger/3.2.attack
#
#
#
# @within function asset:artifact/0610.call_fish/trigger/3.1.tick

# 自分にタグ付与
    tag @s add GY.This

# 敵の元へテレポート
    tp @s @e[tag=Enemy,sort=nearest,limit=1]

#演出
    execute at @e[tag=Enemy,sort=nearest,limit=1] run particle minecraft:block water ~ ~ ~ 0.3 0.3 0.3 10 100
    playsound entity.squid.death neutral @a ~ ~ ~ 1 2

# ダメージを与える
    # 与えるダメージ
        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 "Water"
    # 補正function
        execute as @a if score @s UserID = @e[type=cod,tag=GY.This,limit=1] GY.UserID run function lib:damage/modifier
    # 対象に
        execute as @e[tag=Enemy,sort=nearest,limit=1] run function lib:damage/

# リセット
    function lib:damage/reset
    tag @s remove GY.This


text:
#> asset:artifact/0610.call_fish/trigger/_index.d
# @private

#> tag
# @within function
#   asset:artifact/0610.call_fish/trigger/**
    #declare tag GY.Fish
    #declare tag GY.First
    #declare tag GY.This


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

execute if data storage asset:context {id:142} run function asset:artifact/0142.mystica_soma/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 142
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:potion"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"ミスティカソーマ","color":"aqua"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"HPを40%、MPを55%回復する"}']
# 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:697855,HideFlags:32}

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


text:
#> asset:artifact/0142.mystica_soma/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0142.mystica_soma/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/0142.mystica_soma/trigger/3.main


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

# 基本的な使用時の処理(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
    particle minecraft:heart ~ ~0.5 ~ 0.3 0.5 0.3 1 5 force @s
    playsound minecraft:entity.arrow.hit_player player @s ~ ~ ~ 1 1

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

# HP回復
    execute store result storage lib: Argument.Heal double 0.0040 run attribute @s generic.max_health get 100
    function lib:heal/modifier
    function lib:heal/

# リセット
    function lib:heal/reset
    data remove storage asset:temp 3Y.Temp


text:
#> asset:artifact/0142.mystica_soma/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:142} run function asset:artifact/0142.mystica_soma/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:729} run function asset:artifact/0729.bloody_pride/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 729
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"血塗られた矜持","color":"dark_red"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"かつて誇り高き戦士がつけていた花。","color":"gray","italic":"true"}]','[{"text":"今はもう","color":"gray","italic":"true"},{"text":"鮮血","color":"dark_red","italic":"true"},{"text":"に染まり、無垢だった色の面影はない。","color":"gray","italic":"true"}]','[{"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 "hotbar"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onAttackByMelee"
# 神器の発動条件 (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 5
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    data modify storage asset:artifact LocalCooldown set value 60
# グローバルクールダウン (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 true
# 扱える神 (string[]) Wikiを参照
    data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


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

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

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


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

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

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

#> Private
# @private
    #declare score_holder $Count
    #declare score_holder $MaxHP1.5Per
    #declare score_holder $HealValue

# 演出
    execute at @e[tag=Victim,distance=..6] run particle dust 0.639 0 0 1 ~ ~1.2 ~ 0.4 0.6 0.4 0 12 normal @a
    execute at @e[tag=Victim,distance=..6] run particle block redstone_block ~ ~1.2 ~ 0.4 0.6 0.4 0 10 normal @a
    execute at @e[tag=Victim,distance=..6] run playsound entity.spider.step player @a ~ ~ ~ 0.3 2 0

# ここより下は回復の処理

# 回復量は1+最大体力×0.15N (Nはホットバーにある数)

# 個数取得
    execute store result score $Count Temporary if data storage asset:context Items.hotbar[{tag:{TSB:{ID:729}}}]

# 1.5%分を取得(intの都合上100倍している)
    execute store result score $MaxHP1.5Per Temporary run attribute @s generic.max_health get 1.5

# 個数分掛け算する
    execute store result score $HealValue Temporary run scoreboard players operation $MaxHP1.5Per Temporary *= $Count Temporary

# 最低値の1のために$HealValueに100を足して、Argument.Healに代入する
    execute store result storage lib: Argument.Heal float 0.01 run scoreboard players operation $HealValue Temporary += $100 Const

# 回復の処理
    function lib:heal/modifier
    function lib:heal/
    function lib:heal/reset

# リセット
    scoreboard players reset $Count Temporary
    scoreboard players reset $HealValue Temporary
    scoreboard players reset $MaxHP1.5Per Temporary


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

# storage asset:idの%slot%に装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{hotbar:[729]} run function asset:artifact/0729.bloody_pride/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:158} run function asset:artifact/0158.mp_extractor/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 158
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '[{"text":"MP抽出装置","color":"light_purple"}]'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"MPを瓶に詰めて抽出できる"}]','[{"text":"一部は天使の取り分となることがある"}]']
# MP以外の消費物 (TextComponentString) (オプション)
    data modify storage asset:artifact CostText set value '[{"translate":"item.minecraft.glass_bottle"},{"text":" x1"}]'
# 使用回数 (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 30
# 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/0158.mp_extractor/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0158.mp_extractor/trigger/1.trigger

#> Private
# @private
    #declare score_holder $BottleCount

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


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

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

# ここから先は神器側の効果の処理を書く
    # あげる♡
    data modify storage api: Argument.ID set value 159
    function api:artifact/give/from_id
    # 演出
    execute anchored eyes run particle falling_obsidian_tear ^ ^ ^ 0.5 0.5 0.5 0 50 force @s
    clear @s glass_bottle 1


text:
#> asset:artifact/0158.mp_extractor/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:158} run function asset:artifact/0158.mp_extractor/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:728} run function asset:artifact/0728.magatama_of_soul_eating/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 728
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"魂喰らいの勾玉","color":"dark_aqua"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"不気味な暗い青緑色をした勾玉","color":"gray","italic":"true"}','{"text":"見つめると魂が吸われているような感覚がする。","color":"gray","italic":"true"}','{"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 "hotbar"
# 神器のトリガー (string) Wikiを参照
    data modify storage asset:artifact Trigger set value "onKilledByMelee"
# 神器の発動条件 (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 20
# グローバルクールダウン (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 ["Flora", "Urban", "Nyaptov"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


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

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

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


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

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

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

#> Private
# @private
    #declare score_holder $Count
    #declare score_holder $MaxHP5Per
    #declare score_holder $MaxHP5Per2

# 演出
    particle soul ~ ~1.2 ~ 0.5 0.3 0.5 0 15 normal @a
    particle dust 0 0.5 0.5 1 ~ ~1.2 ~ 0.5 0.3 0.5 0 15 normal @a
    playsound ogg:mob.vex.idle4 player @a ~ ~ ~ 0.5 0.8
    playsound ogg:mob.vex.idle4 player @a ~ ~ ~ 0.5 0.6
    playsound ogg:mob.vex.idle4 player @a ~ ~ ~ 0.5 0.4

# 個数を取得
    execute store result score $Count Temporary if data storage asset:context Items.hotbar[{tag:{TSB:{ID:728}}}]

# 5％分を100倍で取得
    execute store result score $MaxHP5Per Temporary run attribute @s generic.max_health get 5
    scoreboard players operation $MaxHP5Per2 Temporary = $MaxHP5Per Temporary

# MaxHP5Per2を個数と掛ける
    scoreboard players operation $MaxHP5Per2 Temporary *= $Count Temporary

# 合算してArgument.Healに代入
    execute store result storage lib: Argument.Heal float 0.01 run scoreboard players operation $MaxHP5Per Temporary += $MaxHP5Per2 Temporary

# 回復処理
    function lib:heal/modifier
    function lib:heal/
    function lib:heal/reset

# リセット
    scoreboard players reset $Count Temporary
    scoreboard players reset $MaxHP10Per Temporary
    scoreboard players reset $MaxHP5Per Temporary


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

# storage asset:idの%slot%に装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する
    execute if data storage asset:context id{hotbar:[728]} run function asset:artifact/0728.magatama_of_soul_eating/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:227} run function asset:artifact/0227.onegai_muscle_4/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 227
# 神器のベースアイテム
    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"},{"text":" [IV類]","color":"gold"}]'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['[{"text":"頑張る貴方は美しい！"}]','[{"text":"耐力","color":"gold"},{"text":"が30秒間上昇する","color":"white"}]','[{"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 25
# 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 ["Urban", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


text:
#> asset:artifact/0227.onegai_muscle_4/trigger/2.check_condition
#
# 神器の発動条件をチェックします
#
# @within function asset:artifact/0227.onegai_muscle_4/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/0227.onegai_muscle_4/trigger/3.main


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

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

# ここから先は神器側の効果の処理を書く
    # 体力を変更
        scoreboard players set $Set Lib 100
        function lib:score_to_health_wrapper/set
    # 効果
        effect give @s resistance 30 3 true
    # 演出
        playsound entity.player.hurt player @a ~ ~ ~ 1 1
        playsound minecraft:entity.zombie_villager.cure player @s ~ ~ ~ 1 2
        particle end_rod ~ ~1 ~ 0.5 0.5 0.5 0 30 normal @s
    #リセット
        scoreboard players reset @s Temporary


text:
#> asset:artifact/0227.onegai_muscle_4/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:227} run function asset:artifact/0227.onegai_muscle_4/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:826} run function asset:artifact/0826.infinite_potatoes/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 826
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"∞のじゃがいも袋","color":"#a24924"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"無限にじゃがいもが出てくる袋","color":"dark_aqua","bold":true,"italic":false}']
# MP以外の消費物 (TextComponentString) (オプション)
    data modify storage asset:artifact CostText set value '[{"translate":"item.minecraft.bone_meal"},{"text":" x1 (25%)"}]'
# 使用回数 (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 10
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    data modify storage asset:artifact LocalCooldown set value 6
# グローバルクールダウン (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 "ALL"
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


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

#> Val
# @private
#declare score_holder $ItemCount

# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く
    function asset:artifact/common/check_condition/auto
# 他にアイテム等確認する場合はここに書く
    execute store result score $ItemCount Temporary run clear @s bone_meal 0
    execute if score $ItemCount Temporary matches ..0 run tag @s remove CanUsed
    execute if score $ItemCount Temporary matches ..0 run function lib:message/artifact/dont_have_require_items
    scoreboard players reset $ItemCount Temporary
# CanUsedタグをチェックして3.main.mcfunctionを実行する
    execute if entity @s[tag=CanUsed] run function asset:artifact/0826.infinite_potatoes/trigger/3.main


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

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

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

# 演出
    playsound minecraft:item.armor.equip_leather player @a ~ ~ ~ 1 2.0
    particle minecraft:squid_ink ~ ~1 ~ 0.4 0 0.4 0.01 10 force

# じゃがいもを1つ発動者に与える
    give @s potato

# 骨粉消費
    execute if predicate lib:random_pass_per/25 run clear @s bone_meal 1


text:
#> asset:artifact/0826.infinite_potatoes/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:826} run function asset:artifact/0826.infinite_potatoes/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:16} run function asset:artifact/0016.golem_core/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 16
# 神器のベースアイテム
    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"}'
# 神器の説明文 (TextComponentString[])
    data modify storage asset:artifact Lore set value ['{"text":"アイアンゴーレムの核となる精密機械"}','{"text":"鉄ブロックに取り付けるだけでゴーレムを製造できる。"}']
# MP以外の消費物 (TextComponentString) (オプション)
    data modify storage asset:artifact CostText set value '[{"translate":"block.minecraft.iron_block"},{"text":" x1"}]'
# 使用回数 (int) (オプション)
    data modify storage asset:artifact RemainingCount set value 30
# 神器を発動できるスロット (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", "Wi-ki", "Rumor"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


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

#> Private
# @private
    #declare score_holder $IronBlockCount

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


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

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

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

    # ゴーレム召喚
        summon minecraft:iron_golem ~ ~1 ~ {Health:75f,Attributes:[{Name:"generic.max_health",Base:75d},{Name:"generic.attack_damage",Base:15d}]}
        clear @s iron_block 1

    # 演出
        particle minecraft:enchanted_hit ~ ~ ~ 0.5 1 0.5 0.5 100 force @s
        playsound minecraft:block.anvil.destroy player @s ~ ~ ~ 1 0.9


text:
#> asset:artifact/0016.golem_core/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:16} run function asset:artifact/0016.golem_core/trigger/2.check_condition


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

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


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

execute if data storage asset:context {id:985} run function asset:artifact/0985.ark_of_the_sanctuary/give/2.give


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

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

# 神器のID (int) スプレッドシートの値を入れる
    data modify storage asset:artifact ID set value 985
# 神器のベースアイテム
    data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick"
# 神器の名前 (TextComponentString)
    data modify storage asset:artifact Name set value '{"text":"Ark of the Sanctuary","color":"gold","bold":true,"underlined":true}'
# 神器の説明文 (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 [80,250]
# 攻撃に関する情報 -攻撃タイプ (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 "every"
# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション)
    data modify storage asset:artifact AttackInfo.AttackRange set value 4
# MP消費量 (int)
    data modify storage asset:artifact MPCost set value 15
# MP必要量 (int) (オプション)
    # data modify storage asset:artifact MPRequire set value
# 神器のクールダウン (int) (オプション)
    data modify storage asset:artifact LocalCooldown set value 8
# グローバルクールダウン (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", "Wi-ki", "Nyaptov"]
# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション)
    # data modify storage asset:artifact CustomNBT set value {}

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


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

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

# コマンド実行中（Timeをもっている）なら実行できない
    execute if score @s RD.Time matches 1.. run tag @s remove CanUsed

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


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/slash
#
#
#
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/**

# 演出
    playsound item.trident.throw player @a ~ ~ ~ 1 0.6
    playsound minecraft:entity.glow_squid.squirt player @a ~ ~ ~ 1 2

# ダメージ
    # 与えるダメージ
        data modify storage lib: Argument.Damage set value 220.0f
    # 魔法属性
        data modify storage lib: Argument.AttackType set value "Magic"
    # 無属性
        data modify storage lib: Argument.ElementType set value "None"
    # ダメージ
        function lib:damage/modifier
        execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..4] positioned ^ ^ ^3 run function lib:damage/
# リセット
    function lib:damage/reset


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

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

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

# スコアを戻す
    scoreboard players set @s RD.Time 1

# 待機時間内でもう一度発動した場合に新しい行動を取るように、ターンを上げる
    scoreboard players add @s RD.Turn 1

# デバッグ、Trun固定
    #scoreboard players set @s RD.Turn 1

# 待機時間を設定する
    scoreboard players set @s RD.WaitingTime 25

# スケジュールで実行させる
    schedule function asset:artifact/0985.ark_of_the_sanctuary/trigger/schedule_loop 1t replace


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/schedule_loop
#
# 常に実行されている
#
# @within function
#   asset:artifact/0985.ark_of_the_sanctuary/trigger/3.main
#   asset:artifact/0985.ark_of_the_sanctuary/trigger/schedule_loop
#   asset:artifact/0985.ark_of_the_sanctuary/trigger/rejoin_process

# Timeがある状態ならスキルを発動している
    execute as @a[scores={RD.Time=1..}] at @s run function asset:artifact/0985.ark_of_the_sanctuary/trigger/skill/skill_active
# WaitTimeをへらす
    scoreboard players remove @a[scores={RD.WaitingTime=1..}] RD.WaitingTime 1

# WaitTimeがなくなったらresetを実行する
    execute if entity @a[scores={RD.WaitingTime=0},limit=1] as @a[scores={RD.WaitingTime=0}] at @s run function asset:artifact/0985.ark_of_the_sanctuary/trigger/reset
# ループさせる
    execute if entity @a[scores={RD.WaitingTime=1..},limit=1] run schedule function asset:artifact/0985.ark_of_the_sanctuary/trigger/schedule_loop 1t replace


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

#> 定義類はここに
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/**
    scoreboard objectives add RD.Time dummy
    scoreboard objectives add RD.WaitingTime dummy
    scoreboard objectives add RD.Turn dummy
    scoreboard objectives add RD.SwordTime dummy
    scoreboard objectives add RD.SwordUserID dummy


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/rejoin_process
#
# 使い方は必ずwikiを見ること
#
# @within tag/function asset:rejoin
# ループ
    execute if entity @a[scores={RD.WaitingTime=1..},limit=1] run schedule function asset:artifact/0985.ark_of_the_sanctuary/trigger/schedule_loop 1t replace


text:
#> asset:artifact/0985.ark_of_the_sanctuary/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:985} run function asset:artifact/0985.ark_of_the_sanctuary/trigger/2.check_condition


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/_index.d
# @private

#> tag
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/**
    #declare tag RD.SlashSweep
    #declare tag RD.SlashInit
    #declare tag RD.Sword


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/reset
#
# リセットする。
#
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/**

# スコアを戻す
    scoreboard players reset @s RD.Time
    scoreboard players reset @s RD.Turn
    scoreboard players reset @s RD.WaitingTime

# ちょっとした演出
    playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 2
    playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 2
    playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 2
    playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 2
    playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 2


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/damage
#
#
#
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/sword

#> private
# @private
    #declare tag RD.This

# 自身にタグ
    tag @s add RD.This

# ダメージを与える
    # 与えるダメージ
        data modify storage lib: Argument.Damage set value 200f
    # 属性
        data modify storage lib: Argument.AttackType set value "Magic"
        data modify storage lib: Argument.ElementType set value "None"
    # 補正function
        execute as @a if score @s UserID = @e[type=armor_stand,tag=RD.This,distance=..50,limit=1] RD.SwordUserID run function lib:damage/modifier
    # 対象に
        execute as @e[type=#lib:living,tag=Enemy,distance=..4] run function lib:damage/
# リセット
    function lib:damage/reset
    tag @s remove RD.This


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/schedule
#
#
#
# @within function
#       asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/sword_summon
#       asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/schedule
#       asset:artifact/0985.ark_of_the_sanctuary/trigger/rejoin_process

# エンティティに実行させる
    execute as @e[type=armor_stand,tag=RD.Sword] at @s run function asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/sword

# エンティティがいればループ
    execute if entity @e[type=armor_stand,tag=RD.Sword,limit=1] run schedule function asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/schedule 1t


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/sword
#
#
#
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/schedule

#> private
# @private
    #declare score_holder $2tInterval

# スコア加算
    scoreboard players add @s RD.SwordTime 1

# 少し遅らせて表示
    item replace entity @s[scores={RD.SwordTime=2}] armor.head with potion{CustomModelData:20245}

# 2tickおきに実行するやつ
# 実行時間を移す
    scoreboard players operation $2tInterval Temporary = @s RD.SwordTime
# 2tickおきに実行
    scoreboard players operation $2tInterval Temporary %= $2 Const
    execute if score $2tInterval Temporary matches 0 run function asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/damage
# リセット
    scoreboard players reset $2tInterval Temporary

# 移動
    execute if score @s RD.SwordTime matches 1..3 run tp ^ ^ ^2
    execute if score @s RD.SwordTime matches 3..6 run tp ^ ^ ^1
    execute if score @s RD.SwordTime matches 6.. run tp ^ ^ ^0.5

# キル
    kill @s[scores={RD.SwordTime=20..}]


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/sword_summon
#
#
#
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/skill/skill?

#> Private
# @private
    #declare tag RD.SwordInit

# 斬撃
    summon armor_stand ^ ^ ^-1 {Tags:["RD.Sword","RD.SwordInit","Object"],NoGravity:1b,Invisible:1b,Pose:{Head:[0.1f,0.0f,0.1f]},DisabledSlots:4144959}

# ユーザーID適応
    scoreboard players operation @e[type=armor_stand,tag=RD.SwordInit] RD.SwordUserID = @s UserID

# 演出
    playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2

# tpと向き調整
    tp @e[type=armor_stand,tag=RD.SwordInit,distance=..10,sort=nearest,limit=1] @s
    data modify entity @e[type=armor_stand,tag=RD.SwordInit,distance=..10,sort=nearest,limit=1] Pose.Head[0] set from entity @s Rotation[1]

# リセット
    tag @e[type=armor_stand,tag=RD.SwordInit,distance=..10,sort=nearest,limit=1] remove RD.SwordInit

# スケジュール開始
    schedule function asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/schedule 1t


text:
#> asset:artifact/0985.ark_of_the_sanctuary/trigger/skill/skill4
#
#
#
# @within function asset:artifact/0985.ark_of_the_sanctuary/trigger/skill/skill_active

# スコアを増やす
    execute if score @s RD.Time matches 1.. run scoreboard players add @s RD.Time 1

# 剣を振る
    execute if score @s RD.Time matches 2 anchored eyes positioned ~ ~ ~ run function asset:artifact/0985.ark_of_the_sanctuary/trigger/slash/slash2
    execute if score @s RD.Time matches 2 run function asset:artifact/0985.ark_of_the_sanctuary/trigger/slash

# 飛ぶ剣を召喚する
    execute if score @s RD.Time matches 2 run function asset:artifact/0985.ark_of_the_sanctuary/trigger/sword/sword_summon
# スコアを消す
    execute if score @s RD.Time matches 10 run function asset:artifact/0985.ark_of_the_sanctuary/trigger/reset