From da9d8e1e61ab09d697f1dd3e5929dde7fc553c81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=AF=E3=81=84=E3=81=84=E3=82=8D?= Date: Thu, 28 Dec 2023 19:29:26 +0900 Subject: [PATCH] =?UTF-8?q?:sparkles:=20[=E7=A5=9E=E5=99=A8743]=20?= =?UTF-8?q?=E5=A4=95=E7=84=BC=E3=81=91=E3=81=AE=E9=A2=A8=E3=81=AE=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../give/1.trigger.mcfunction | 7 +++ .../0743.evening_wind/give/2.give.mcfunction | 59 +++++++++++++++++++ .../0743.evening_wind/register.mcfunction | 7 +++ .../trigger/1.trigger.mcfunction | 8 +++ .../trigger/2.check_condition.mcfunction | 17 ++++++ .../trigger/3.main.mcfunction | 41 +++++++++++++ .../trigger/_index.d.mcfunction | 6 ++ .../trigger/dis_equip/.mcfunction | 7 +++ .../trigger/dis_equip/main.mcfunction | 18 ++++++ .../dis_equip/remove_modifier.mcfunction | 24 ++++++++ .../tags/functions/artifact/dis_equip.json | 1 + .../asset/tags/functions/artifact/equip.json | 1 + .../asset/tags/functions/artifact/give.json | 1 + .../tags/functions/artifact/register.json | 1 + 14 files changed, 198 insertions(+) create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/give/1.trigger.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/give/2.give.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/register.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/trigger/1.trigger.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/trigger/2.check_condition.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/trigger/3.main.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/trigger/_index.d.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/main.mcfunction create mode 100644 Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/remove_modifier.mcfunction diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/give/1.trigger.mcfunction new file mode 100644 index 000000000..e5a3020a9 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0743.evening_wind/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:743} run function asset:artifact/0743.evening_wind/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/give/2.give.mcfunction new file mode 100644 index 000000000..0c4862ecc --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/give/2.give.mcfunction @@ -0,0 +1,59 @@ +#> asset:artifact/0743.evening_wind/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/0743.evening_wind/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 743 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"夕焼けの風","color":"#FF8000"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['[{"text":"火攻撃+15% ","color":"red"},{"text":"移動速度+15%","color":"white"}]','[{"text":"水攻撃-20%","color":"dark_red"}]','[{"text":"黄昏の輝きを秘めた羽。","color":"gray"}]','[{"text":"淡い茜色の光を放っている。","color":"gray"}]'] +# MP以外の消費物 (TextComponentString) (オプション) + # data modify storage asset:artifact CostText set value +# 使用回数 (int) (オプション) + # data modify storage asset:artifact RemainingCount set value +# 神器を発動できるスロット (string) Wikiを参照 + data modify storage asset:artifact Slot set value "hotbar" +# 神器のトリガー (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 150 +# MP必要量 (int) (オプション) + data modify storage asset:artifact MPRequire set value 0 +# 神器のクールダウン (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", "Nyaptov", "Rumor"] +# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション) + # data modify storage asset:artifact CustomNBT set value {} + +# 神器の入手用function + function asset:artifact/common/give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/register.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/register.mcfunction new file mode 100644 index 000000000..c70c41c82 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0743.evening_wind/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[3] append value 743 \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/1.trigger.mcfunction new file mode 100644 index 000000000..725cbb4f2 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/0743.evening_wind/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのheadに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{hotbar:[743]} run function asset:artifact/0743.evening_wind/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/2.check_condition.mcfunction new file mode 100644 index 000000000..674981d2c --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/2.check_condition.mcfunction @@ -0,0 +1,17 @@ +#> asset:artifact/0743.evening_wind/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/0743.evening_wind/trigger/1.trigger + +# ID指定する + data modify storage asset:artifact TargetID set value 743 +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/hotbar +# 他にアイテム等確認する場合はここに書く + +# 既に装備している場合はCanUsedを削除 + execute if entity @s[tag=KN.Modifier] run tag @s remove CanUsed + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/0743.evening_wind/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/3.main.mcfunction new file mode 100644 index 000000000..3bd4ccdd9 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/3.main.mcfunction @@ -0,0 +1,41 @@ +#> asset:artifact/0743.evening_wind/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/0743.evening_wind/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/hotbar + +# ここから先は神器側の効果の処理を書く + +#particle dust 1 0.373 0.373 1 +#particle dust 1 0.635 0 1 + +# 演出 + particle dust_color_transition 1 0.373 0.373 1.6 1 0.635 0 ~ ~1.3 ~ 0.9 0.6 0.9 0 60 normal @a + particle dust_color_transition 1 0.635 0 1.6 1 0.373 0.373 ~ ~1.3 ~ 0.9 0.6 0.9 0 60 normal @a + particle flame ~ ~1.3 ~ 0.9 0.6 0.9 0.12 30 normal @a + playsound block.fire.ambient player @a ~ ~ ~ 0.7 0.7 0 + playsound block.fire.ambient player @a ~ ~ ~ 0.7 0.8 0 + playsound block.fire.ambient player @a ~ ~ ~ 0.7 0.9 0 + playsound block.fire.ambient player @a ~ ~ ~ 0.7 1.1 0 + playsound block.lava.extinguish player @a ~ ~ ~ 0.5 0.9 + +# 火攻撃+15% + data modify storage api: Argument.UUID set value [I;1,1,743,7] + data modify storage api: Argument.Amount set value 0.15 + data modify storage api: Argument.Operation set value "multiply_base" + function api:modifier/attack/fire/add + +# 移動速度+15% + attribute @s generic.movement_speed modifier add 00000001-0000-0001-0000-02e700000007 "Speed" 0.15 multiply_base + +# 水攻撃-25% + data modify storage api: Argument.UUID set value [I;1,1,743,7] + data modify storage api: Argument.Amount set value -0.25 + data modify storage api: Argument.Operation set value "multiply_base" + function api:modifier/attack/water/add + +# Tag付与 + tag @s add KN.Modifier \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/_index.d.mcfunction new file mode 100644 index 000000000..180ccd791 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:artifact/0743.evening_wind/trigger/_index.d +# @private + +#> tag +# @within function asset:artifact/0743.evening_wind/trigger/** + #declare tag KN.Modifier \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/.mcfunction new file mode 100644 index 000000000..f1e0d9f02 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0743.evening_wind/trigger/dis_equip/ +# +# 装備を外した時に外した部位にのみのidが入った状態でトリガーされる +# +# @within tag/function asset:artifact/dis_equip + +execute if data storage asset:context id{hotbar:[743]} run function asset:artifact/0743.evening_wind/trigger/dis_equip/main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/main.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/main.mcfunction new file mode 100644 index 000000000..8479b51ad --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/main.mcfunction @@ -0,0 +1,18 @@ +#> asset:artifact/0743.evening_wind/trigger/dis_equip/main +# +# 装備を外した時のメイン処理 +# +# @within function asset:artifact/0743.evening_wind/trigger/dis_equip/ + +#> prv +# @private + #declare score_holder $ItemCount + +# まだ持ってるか確認する + execute store result score $ItemCount Temporary if data storage asset:context New.Items.hotbar[{tag:{TSB:{ID:743}}}] + +# なければ削除 + execute if score $ItemCount Temporary matches ..0 run function asset:artifact/0743.evening_wind/trigger/dis_equip/remove_modifier + +# リセット + scoreboard players reset $ItemCount Temporary \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/remove_modifier.mcfunction b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/remove_modifier.mcfunction new file mode 100644 index 000000000..da3f8422f --- /dev/null +++ b/Asset/data/asset/functions/artifact/0743.evening_wind/trigger/dis_equip/remove_modifier.mcfunction @@ -0,0 +1,24 @@ +#> asset:artifact/0743.evening_wind/trigger/dis_equip/remove_modifier +# +# 補正を削除 +# +# @within function asset:artifact/0743.evening_wind/trigger/dis_equip/main + +# MP消費 + scoreboard players set $Fluctuation Lib -150 + data modify storage lib: Argument.DisableLog set value true + function lib:mp/fluctuation + +# 火攻撃 + data modify storage api: Argument.UUID set value [I;1,1,743,7] + function api:modifier/attack/fire/remove + +# 移動速度 + attribute @s generic.movement_speed modifier remove 00000001-0000-0001-0000-02e700000007 + +# 水攻撃 + data modify storage api: Argument.UUID set value [I;1,1,743,7] + function api:modifier/attack/water/remove + +# Tag付与 + tag @s remove KN.Modifier \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/dis_equip.json b/Asset/data/asset/tags/functions/artifact/dis_equip.json index e6c36f293..4a87131e3 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/0743.evening_wind/trigger/dis_equip/", "asset:artifact/0740.flower_of_hazy_moon/trigger/dis_equip/", "asset:artifact/0775.jade_armor/trigger/dis_equip/", "asset:artifact/0778.jade_armor/trigger/dis_equip/", diff --git a/Asset/data/asset/tags/functions/artifact/equip.json b/Asset/data/asset/tags/functions/artifact/equip.json index 0d9d56b0c..019b21788 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/0743.evening_wind/trigger/1.trigger", "asset:artifact/0740.flower_of_hazy_moon/trigger/1.trigger", "asset:artifact/0775.jade_armor/trigger/1.trigger", "asset:artifact/0778.jade_armor/trigger/1.trigger", diff --git a/Asset/data/asset/tags/functions/artifact/give.json b/Asset/data/asset/tags/functions/artifact/give.json index a0ef33c9c..3b29eade5 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/0743.evening_wind/give/1.trigger", "asset:artifact/0740.flower_of_hazy_moon/give/1.trigger", "asset:artifact/0738.voltage_striker/give/1.trigger", "asset:artifact/0737.summer_festival_of_remembrance/give/1.trigger", diff --git a/Asset/data/asset/tags/functions/artifact/register.json b/Asset/data/asset/tags/functions/artifact/register.json index 308c7b5be..7ebf2cca6 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/0743.evening_wind/register", "asset:artifact/0740.flower_of_hazy_moon/register", "asset:artifact/0738.voltage_striker/register", "asset:artifact/0737.summer_festival_of_remembrance/register",