diff --git a/Asset/data/asset/functions/artifact/1582.demons_splatter/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1582.demons_splatter/give/1.trigger.mcfunction new file mode 100644 index 0000000000..257bc7645e --- /dev/null +++ b/Asset/data/asset/functions/artifact/1582.demons_splatter/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1582.demons_splatter/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1582} run function asset:artifact/1582.demons_splatter/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1582.demons_splatter/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1582.demons_splatter/give/2.give.mcfunction new file mode 100644 index 0000000000..f1758124be --- /dev/null +++ b/Asset/data/asset/functions/artifact/1582.demons_splatter/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1582.demons_splatter/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1582.demons_splatter/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1582 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"鬼神の返り血","color":"#8A0714"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"鬼神の怨嗟のこもった返り血","color":"white"}','{"text":"使用者に生命力と引き換えに圧倒的な力を与える","color":"white"}','[{"text":"攻撃+250%","color":"green"},{"text":"と","color":"white"},{"text":"最大体力-99.9%","color":"red"},{"text":"を30秒間得る","color":"white"}]'] +# 消費アイテム ({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 "mainhand" +# 神器のトリガー (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 +# MP回復量 (int) + #data modify storage asset:artifact MPHealWhenHit set value +# 神器のクールダウン (int) (オプション) + data modify storage asset:artifact LocalCooldown set value 600 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + # data modify storage asset:artifact TypeCooldown.Type set value + # data modify storage asset:artifact TypeCooldown.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 +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound 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 diff --git a/Asset/data/asset/functions/artifact/1582.demons_splatter/register.mcfunction b/Asset/data/asset/functions/artifact/1582.demons_splatter/register.mcfunction new file mode 100644 index 0000000000..ed9bc8b682 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1582.demons_splatter/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1582.demons_splatter/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[4] append value [1582] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..efd86acfae --- /dev/null +++ b/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1582.demons_splatter/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのmainhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{mainhand:1582} run function asset:artifact/1582.demons_splatter/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..01f61858dd --- /dev/null +++ b/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/1582.demons_splatter/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1582.demons_splatter/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/mainhand +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1582.demons_splatter/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/3.main.mcfunction new file mode 100644 index 0000000000..f2288a2876 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1582.demons_splatter/trigger/3.main.mcfunction @@ -0,0 +1,26 @@ +#> asset:artifact/1582.demons_splatter/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1582.demons_splatter/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/mainhand + +# ここから先は神器側の効果の処理を書く +# --- 【効果音(おどろおどろしい呪いの音)】 --- + playsound minecraft:entity.zombie_villager.converted player @a ~ ~ ~ 1.0 0.6 + playsound minecraft:entity.warden.heartbeat player @a ~ ~ ~ 2.0 0.8 + particle minecraft:dust 0.3 0.0 0.0 2.0 ~ ~1 ~ 0.5 1.0 0.5 0 40 normal + particle minecraft:large_smoke ~ ~1 ~ 0.4 1.0 0.4 0.02 20 normal + particle minecraft:block minecraft:redstone_block ~ ~1 ~ 0.5 0.8 0.5 0.1 30 normal + playsound minecraft:entity.ravager.roar player @a ~ ~ ~ 2.0 0.6 +# 効果付与 + data modify storage api: Argument.ID set value 376 + data modify storage api: Argument.Duration set value 600 + #data modify storage api: Argument.Stack set value <スタック数> # オプション + #data modify storage api: Argument.DurationOperation set value "replace" # オプション + #data modify storage api: Argument.StackOperation set value "replace" # オプション + data modify storage api: Argument.FieldOverride.Amount set value 2.5d + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/_/end.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/_/end.mcfunction new file mode 100644 index 0000000000..2ee68e6c6f --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0376.demons_blood/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:376} run function asset:effect/0376.demons_blood/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/_/given.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/_/given.mcfunction new file mode 100644 index 0000000000..569f87b5ef --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0376.demons_blood/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:376} run function asset:effect/0376.demons_blood/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/_/register.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/_/register.mcfunction new file mode 100644 index 0000000000..2db5a9b187 --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0376.demons_blood/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:376} run function asset:effect/0376.demons_blood/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/_/remove.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/_/remove.mcfunction new file mode 100644 index 0000000000..65cac72f8d --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0376.demons_blood/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:376} run function asset:effect/0376.demons_blood/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/end/.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/end/.mcfunction new file mode 100644 index 0000000000..e5585007b9 --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0376.demons_blood/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0376.demons_blood/_/end + +# 補正削除 + function asset:effect/0376.demons_blood/modify/remove diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/given/.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/given/.mcfunction new file mode 100644 index 0000000000..45eab8f837 --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0376.demons_blood/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0376.demons_blood/_/given + +# 補正付与 + function asset:effect/0376.demons_blood/modify/add diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/modify/add.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/modify/add.mcfunction new file mode 100644 index 0000000000..6dfb6c90b8 --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/modify/add.mcfunction @@ -0,0 +1,14 @@ +#> asset:effect/0376.demons_blood/modify/add +# +# +# +# @within function asset:effect/0376.demons_blood/given/ + +# 攻撃バフ + data modify storage api: Argument.UUID set value [I;1,3,376,0] + data modify storage api: Argument.UUID set from storage asset:context this.UUID + data modify storage api: Argument.Amount set from storage asset:context this.Amount + data modify storage api: Argument.Operation set value "multiply_base" + function api:modifier/attack/base/add +# 最大体力-999% + attribute @s minecraft:generic.max_health modifier add f47ac10b-58cc-4372-a567-0e02b2c3d479 "17Y.Health" -0.999 multiply diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/modify/remove.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/modify/remove.mcfunction new file mode 100644 index 0000000000..fe95410a21 --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/modify/remove.mcfunction @@ -0,0 +1,13 @@ +#> asset:effect/0376.demons_blood/modify/remove +# +# +# +# @within function +# asset:effect/0376.demons_blood/end/ +# asset:effect/0376.demons_blood/remove/ + +# 攻撃バフ削除 + data modify storage api: Argument.UUID set value [I;1,3,376,0] + function api:modifier/attack/base/remove +# 最大Hpをもとに + attribute @s minecraft:generic.max_health modifier remove f47ac10b-58cc-4372-a567-0e02b2c3d479 diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/register.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/register.mcfunction new file mode 100644 index 0000000000..39b2fb13d8 --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0376.demons_blood/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0376.demons_blood/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 376 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"鬼神の血の呪い","color":"#8A0714"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"鬼神の血をその身に纏い、生命力を犠牲に圧倒的な力を得る","color":"white"}','{"text":"攻撃+250%","color":"green"}','{"text":"最大体力-99.9%","color":"red"}'] +# 効果時間 (int) (default = API || error) + #data modify storage asset:effect Duration set value +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + # data modify storage asset:effect MaxStack set value +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0376.demons_blood/remove/.mcfunction b/Asset/data/asset/functions/effect/0376.demons_blood/remove/.mcfunction new file mode 100644 index 0000000000..d0c87b6537 --- /dev/null +++ b/Asset/data/asset/functions/effect/0376.demons_blood/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0376.demons_blood/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0376.demons_blood/_/remove + +# 補正削除 + function asset:effect/0376.demons_blood/modify/remove diff --git a/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json b/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json index 8b0fecd8b5..7e65366f3c 100644 --- a/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json +++ b/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1582.demons_splatter/trigger/1.trigger", "asset:artifact/1332.bebebeam/trigger/1.trigger", "asset:artifact/1306.will_o_wisp/trigger/1.trigger", "asset:artifact/1144.cradle_of_azure_moon/trigger/1.trigger", @@ -177,4 +178,4 @@ "asset:artifact/2001.staff_of_the_willless/trigger/1.trigger", "asset:artifact/0019.scripture/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 5193ff71b2..f864a8dc9c 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/1582.demons_splatter/give/1.trigger", "asset:artifact/1430.shield_of_fate/give/1.trigger", "asset:artifact/1453.frost_flake_bow/give/1.trigger", "asset:artifact/1534.drop_in_the_bucket/give/1.trigger", diff --git a/Asset/data/asset/tags/functions/artifact/register.json b/Asset/data/asset/tags/functions/artifact/register.json index 7dccc18155..1a12a3304c 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/1582.demons_splatter/register", "asset:artifact/1453.frost_flake_bow/register", "asset:artifact/1430.shield_of_fate/register", "asset:artifact/1534.drop_in_the_bucket/register", diff --git a/Asset/data/asset/tags/functions/effect/end.json b/Asset/data/asset/tags/functions/effect/end.json index b89f262d93..8f5990ed0c 100644 --- a/Asset/data/asset/tags/functions/effect/end.json +++ b/Asset/data/asset/tags/functions/effect/end.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0376.demons_blood/_/end", "asset:effect/0355.heart_gap/_/end", "asset:effect/0354.protection_of_courage/_/end", "asset:effect/0348.cool_feeling/_/end", @@ -111,4 +112,4 @@ "asset:effect/0007.defense_base_debuff/_/end", "asset:effect/0258.spirit_melody/_/end" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/effect/given.json b/Asset/data/asset/tags/functions/effect/given.json index aa7d04f807..77619ecd32 100644 --- a/Asset/data/asset/tags/functions/effect/given.json +++ b/Asset/data/asset/tags/functions/effect/given.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0376.demons_blood/_/given", "asset:effect/0355.heart_gap/_/given", "asset:effect/0354.protection_of_courage/_/given", "asset:effect/0348.cool_feeling/_/given", @@ -105,4 +106,4 @@ "asset:effect/0007.defense_base_debuff/_/given", "asset:effect/0258.spirit_melody/_/given" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/effect/register.json b/Asset/data/asset/tags/functions/effect/register.json index b1c67d7c75..857cd00a47 100644 --- a/Asset/data/asset/tags/functions/effect/register.json +++ b/Asset/data/asset/tags/functions/effect/register.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0376.demons_blood/_/register", "asset:effect/0355.heart_gap/_/register", "asset:effect/0354.protection_of_courage/_/register", "asset:effect/0348.cool_feeling/_/register", @@ -181,4 +182,4 @@ "asset:effect/0007.defense_base_debuff/_/register", "asset:effect/0258.spirit_melody/_/register" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/effect/remove.json b/Asset/data/asset/tags/functions/effect/remove.json index 1ca0cbc881..80e3e14258 100644 --- a/Asset/data/asset/tags/functions/effect/remove.json +++ b/Asset/data/asset/tags/functions/effect/remove.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0376.demons_blood/_/remove", "asset:effect/0355.heart_gap/_/remove", "asset:effect/0354.protection_of_courage/_/remove", "asset:effect/0348.cool_feeling/_/remove", @@ -119,4 +120,4 @@ "asset:effect/0007.defense_base_debuff/_/remove", "asset:effect/0258.spirit_melody/_/remove" ] -} +} \ No newline at end of file