diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/give/1.trigger.mcfunction new file mode 100644 index 0000000000..d5d31651d1 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1317.oblivious_feather/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1317} run function asset:artifact/1317.oblivious_feather/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/give/2.give.mcfunction new file mode 100644 index 0000000000..345bea6970 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/give/2.give.mcfunction @@ -0,0 +1,80 @@ +#> asset:artifact/1317.oblivious_feather/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1317.oblivious_feather/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1317 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"忘却の羽","color":"#59b05c"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"「きみがおもいだすまで","color":"gray","italic":true}','{"text":" わたしはここで死につづけるの」","color":"gray","italic":true}'] +# 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) + # data modify storage asset:artifact ConsumeItem.Item set value '{"translate":"item.minecraft.stick"}' + # data modify storage asset:artifact ConsumeItem.Count set value 1 + # data modify storage asset:artifact ConsumeItem.Extra 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 "equipping" +# 効果の最大発動回数 (int) (オプション) + data modify storage asset:artifact PartsMax set value 1 +# 効果が重複可能か否か (boolean) (オプション) + # data modify storage asset:artifact EnableDuplication set value +# 神器の発動条件 (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 150 +# MP必要量 (int) (オプション) + data modify storage asset:artifact MPRequire set value 0 +# MP回復量 (int) + # data modify storage asset:artifact MPHealWhenHit set value +# 神器のクールダウン (int) (オプション) + # data modify storage asset:artifact LocalCooldown set value +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + # data modify storage asset:artifact TypeCooldown.Type set value + # data modify storage asset:artifact TypeCooldown.Duration set value +# 第二種別クールダウン ({Type: string, Duration: int}) (オプション) + # data modify storage asset:artifact SecondaryTypeCooldown.Type set value + # data modify storage asset:artifact SecondaryTypeCooldown.Duration 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 true +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 装備時ステータス補正 ({Type: string, Amount: double, Operation: string, StackReduction?: double}[]) (オプション) + data modify storage asset:artifact Equipment.Modifiers set value [] + data modify storage asset:artifact Equipment.Modifiers append value {Type:"mp_regen",Amount:0.1d,Operation:"multiply_base"} + data modify storage asset:artifact Equipment.Modifiers append value {Type:"fall_resistance",Amount:0.2d,Operation:"multiply_base"} + data modify storage asset:artifact Equipment.Modifiers append value {Type:"receive_heal",Amount:-0.2d,Operation:"multiply_base"} +# 扱える神 (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 diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/register.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/register.mcfunction new file mode 100644 index 0000000000..056ee37568 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1317.oblivious_feather/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[3] append value [1317] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..d9e21b4b92 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1317.oblivious_feather/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのhotbarに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{hotbar:[1317]} run function asset:artifact/1317.oblivious_feather/trigger/2.check_condition diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..9c62c931ee --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/2.check_condition.mcfunction @@ -0,0 +1,17 @@ +#> asset:artifact/1317.oblivious_feather/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1317.oblivious_feather/trigger/1.trigger + +# ID指定する + data modify storage asset:artifact TargetID set value 1317 +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/hotbar +# 他にアイテム等確認する場合はここに書く + +# CanUsedでかつ、既に装備済ならCanUsedを削除 + execute if entity @s[tag=CanUsed,tag=10L.Equip] run tag @s remove CanUsed + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1317.oblivious_feather/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/3.main.mcfunction new file mode 100644 index 0000000000..bcc376a3d3 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/3.main.mcfunction @@ -0,0 +1,19 @@ +#> asset:artifact/1317.oblivious_feather/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1317.oblivious_feather/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/hotbar + +# ここから先は神器側の効果の処理を書く + +# 演出 + particle minecraft:falling_dust green_wool ~ ~1.2 ~ 1 1 1 0 15 + particle minecraft:falling_dust green_concrete ~ ~1.2 ~ 1 1 1 0 15 + execute anchored eyes positioned ^-0.1 ^ ^0.5 run particle dust 1 0 0 1 ~ ~ ~ 0 0 0 0 1 + playsound minecraft:entity.ender_dragon.flap player @a ~ ~ ~ 0.6 0.6 + +# Tag付け + tag @s add 10L.Equip diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/_index.d.mcfunction new file mode 100644 index 0000000000..e463edb734 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:artifact/1317.oblivious_feather/trigger/_index.d +# @private + +#> tag +# @within function asset:artifact/1317.oblivious_feather/trigger/** + #declare tag 10L.Equip diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/.mcfunction new file mode 100644 index 0000000000..3e018b5a6b --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1317.oblivious_feather/trigger/dis_equip/ +# +# 装備を外した時に外した部位にのみのidが入った状態でトリガーされる +# +# @within tag/function asset:artifact/dis_equip + +execute if data storage asset:context id{hotbar:[1317]} run function asset:artifact/1317.oblivious_feather/trigger/dis_equip/main diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/main.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/main.mcfunction new file mode 100644 index 0000000000..1811455b90 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/main.mcfunction @@ -0,0 +1,16 @@ +#> asset:artifact/1317.oblivious_feather/trigger/dis_equip/main +# +# 装備を外した時のメイン処理 +# +# @within function asset:artifact/1317.oblivious_feather/trigger/dis_equip/ + +#> prv +# @private + #declare score_holder $10L.ItemCount + +# まだ持ってるか確認する + execute store result score $10L.ItemCount Temporary if data storage asset:context New.Items.hotbar[{tag:{TSB:{ID:1317}}}] +# なければ削除 + execute if score $10L.ItemCount Temporary matches ..0 run function asset:artifact/1317.oblivious_feather/trigger/dis_equip/not_in_hotbar +# リセット + scoreboard players reset $10L.ItemCount Temporary diff --git a/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/not_in_hotbar.mcfunction b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/not_in_hotbar.mcfunction new file mode 100644 index 0000000000..73494f11c0 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1317.oblivious_feather/trigger/dis_equip/not_in_hotbar.mcfunction @@ -0,0 +1,13 @@ +#> asset:artifact/1317.oblivious_feather/trigger/dis_equip/not_in_hotbar +# +# +# +# @within function asset:artifact/1317.oblivious_feather/trigger/dis_equip/main + +# Tag削除 + tag @s remove 10L.Equip + +# MP消費 + data modify storage api: Argument.Fluctuation set value -150 + data modify storage api: Argument.DisableLog set value true + function api:mp/fluctuation diff --git a/Asset/data/asset/tags/functions/artifact/dis_equip.json b/Asset/data/asset/tags/functions/artifact/dis_equip.json index 7e77c5247b..93e8599709 100644 --- a/Asset/data/asset/tags/functions/artifact/dis_equip.json +++ b/Asset/data/asset/tags/functions/artifact/dis_equip.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1317.oblivious_feather/trigger/dis_equip/", "asset:artifact/1140.over_pulse_booster/dis_equip/", "asset:artifact/1138.over_pulse_bodyarmor/dis_equip/", "asset:artifact/1137.over_pulse_headgear/dis_equip/", @@ -60,4 +61,4 @@ "asset:artifact/0961.light_charm/trigger/dis_equip/", "asset:artifact/0960.heavy_charm/trigger/dis_equip/" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/equip.json b/Asset/data/asset/tags/functions/artifact/equip.json index 330be29caf..ed19872763 100644 --- a/Asset/data/asset/tags/functions/artifact/equip.json +++ b/Asset/data/asset/tags/functions/artifact/equip.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1317.oblivious_feather/trigger/1.trigger", "asset:artifact/1140.over_pulse_booster/equip/1.trigger", "asset:artifact/1139.over_pulse_legframe/equip/1.trigger", "asset:artifact/1138.over_pulse_bodyarmor/equip/1.trigger", @@ -107,4 +108,4 @@ "asset:artifact/0709.mage_robe_lower/trigger/1.trigger", "asset:artifact/0710.mage_boots/trigger/1.trigger" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/give.json b/Asset/data/asset/tags/functions/artifact/give.json index f3eb008857..5a3d99ec54 100644 --- a/Asset/data/asset/tags/functions/artifact/give.json +++ b/Asset/data/asset/tags/functions/artifact/give.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1317.oblivious_feather/give/1.trigger", "asset:artifact/1140.over_pulse_booster/give/1.trigger", "asset:artifact/1139.over_pulse_legframe/give/1.trigger", "asset:artifact/1138.over_pulse_bodyarmor/give/1.trigger", @@ -517,4 +518,4 @@ "asset:artifact/0735.collision_plate/give/1.trigger", "asset:artifact/0745.blade_of_whirlwind/give/1.trigger" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/register.json b/Asset/data/asset/tags/functions/artifact/register.json index deba166150..4032ebfcdb 100644 --- a/Asset/data/asset/tags/functions/artifact/register.json +++ b/Asset/data/asset/tags/functions/artifact/register.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1317.oblivious_feather/register", "asset:artifact/1137.over_pulse_headgear/register", "asset:artifact/1228.fatalerror/register", "asset:artifact/1273.maidchan_plush/register", @@ -295,4 +296,4 @@ "asset:artifact/1027.fire_of_rebirth/register", "asset:artifact/1111.rod_o_redeem/register" ] -} +} \ No newline at end of file