From b69bde85b8391c90b2eb2059e87b8581e56f3e1d Mon Sep 17 00:00:00 2001 From: RandomFridge Date: Sun, 6 Sep 2026 15:44:29 +0200 Subject: [PATCH 1/7] =?UTF-8?q?=E5=9F=BA=E6=9C=AC=E3=81=AEArtifact?= =?UTF-8?q?=E3=81=A8Effect=E3=82=92=E4=BD=9C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../give/1.trigger.mcfunction | 7 ++ .../1590.rice_cooker/give/2.give.mcfunction | 68 +++++++++++++++++++ .../1590.rice_cooker/register.mcfunction | 8 +++ .../trigger/1.trigger.mcfunction | 8 +++ .../trigger/2.check_condition.mcfunction | 20 ++++++ .../trigger/3.main.mcfunction | 18 +++++ .../trigger/charge.mcfunction | 10 +++ .../effect/0392.now_cooking/_/end.mcfunction | 7 ++ .../0392.now_cooking/_/re-given.mcfunction | 7 ++ .../0392.now_cooking/_/register.mcfunction | 7 ++ .../effect/0392.now_cooking/end/.mcfunction | 16 +++++ .../0392.now_cooking/re-given/.mcfunction | 26 +++++++ .../0392.now_cooking/register.mcfunction | 42 ++++++++++++ .../0393.launching_rice/_/register.mcfunction | 7 ++ .../0393.launching_rice/_/tick.mcfunction | 7 ++ .../0393.launching_rice/register.mcfunction | 42 ++++++++++++ .../0393.launching_rice/tick/.mcfunction | 9 +++ .../tick/damage.mcfunction | 16 +++++ .../0393.launching_rice/tick/rec.mcfunction | 24 +++++++ .../0393.launching_rice/tick/shoot.mcfunction | 24 +++++++ .../asset/tags/functions/artifact/give.json | 3 +- .../tags/functions/artifact/register.json | 3 +- .../tags/functions/artifact/using_item.json | 3 +- .../data/asset/tags/functions/effect/end.json | 3 +- .../asset/tags/functions/effect/re-given.json | 1 + .../asset/tags/functions/effect/register.json | 4 +- .../asset/tags/functions/effect/tick.json | 3 +- 27 files changed, 387 insertions(+), 6 deletions(-) create mode 100644 Asset/data/asset/functions/artifact/1590.rice_cooker/give/1.trigger.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1590.rice_cooker/register.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/1.trigger.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/charge.mcfunction create mode 100644 Asset/data/asset/functions/effect/0392.now_cooking/_/end.mcfunction create mode 100644 Asset/data/asset/functions/effect/0392.now_cooking/_/re-given.mcfunction create mode 100644 Asset/data/asset/functions/effect/0392.now_cooking/_/register.mcfunction create mode 100644 Asset/data/asset/functions/effect/0392.now_cooking/end/.mcfunction create mode 100644 Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction create mode 100644 Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction create mode 100644 Asset/data/asset/functions/effect/0393.launching_rice/_/register.mcfunction create mode 100644 Asset/data/asset/functions/effect/0393.launching_rice/_/tick.mcfunction create mode 100644 Asset/data/asset/functions/effect/0393.launching_rice/register.mcfunction create mode 100644 Asset/data/asset/functions/effect/0393.launching_rice/tick/.mcfunction create mode 100644 Asset/data/asset/functions/effect/0393.launching_rice/tick/damage.mcfunction create mode 100644 Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction create mode 100644 Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/1.trigger.mcfunction new file mode 100644 index 0000000000..0a74150365 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1590.rice_cooker/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1590} run function asset:artifact/1590.rice_cooker/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction new file mode 100644 index 0000000000..73df726042 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1590.rice_cooker/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1590.rice_cooker/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1590 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:ender_eye" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text": "炊飯器"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value [] +# 消費アイテム ({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 "5x10-40" +# 攻撃に関する情報 -攻撃タイプ (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 7.0 +# MP消費量 (int) + # data modify storage asset:artifact MPCost set value +# MP必要量 (int) (オプション) + # data modify storage asset:artifact MPRequire set value +# MP回復量 (int) + data modify storage asset:artifact MPHealWhenHit set value 1 +# 神器のクールダウン (int) (オプション) + # data modify storage asset:artifact LocalCooldown set value +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "longRange" + data modify storage asset:artifact TypeCooldown.Duration set value 70 +# グローバルクールダウン (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", "Nyaptov"] +# カスタム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/1590.rice_cooker/register.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/register.mcfunction new file mode 100644 index 0000000000..7ff5b98999 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1590.rice_cooker/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[2] append value [1590] +data modify storage asset:artifact RarityRegistryWithColor.Red[2] append value [1590] diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..84d45bdf2b --- /dev/null +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1590.rice_cooker/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:1590} run function asset:artifact/1590.rice_cooker/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..11e6e301c6 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction @@ -0,0 +1,20 @@ +#> asset:artifact/1590.rice_cooker/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1590.rice_cooker/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/mainhand +# 他にアイテム等確認する場合はここに書く +# Effect 392を確認 + data modify storage api: Argument.ID set value 392 + function api:entity/mob/effect/get/from_id + execute if data storage api: Return.Effect run function asset:artifact/1590.rice_cooker/trigger/charge +# 発射中なら発動不可 + data modify storage api: Argument.ID set value 393 + function api:entity/mob/effect/get/from_id + execute if data storage api: Return.Effect run return fail + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1590.rice_cooker/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction new file mode 100644 index 0000000000..95c7e9044c --- /dev/null +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction @@ -0,0 +1,18 @@ +#> asset:artifact/1590.rice_cooker/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1590.rice_cooker/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/mainhand + +# ここから先は神器側の効果の処理を書く + data modify storage api: Argument.ID set value 392 + #攻撃情報 + data modify storage api: Argument.FieldOverride.Damage set value 5.0f + data modify storage api: Argument.FieldOverride.AttackType set value "Physical" + data modify storage api: Argument.FieldOverride.ElementType set value "Water" + + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/charge.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/charge.mcfunction new file mode 100644 index 0000000000..a699cfa8a8 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/charge.mcfunction @@ -0,0 +1,10 @@ +#> asset:artifact/1590.rice_cooker/trigger/charge +# +# +# +# @within function asset:artifact/1590.rice_cooker/trigger/2.check_condition + +# Effect 392を上書き付与 + data modify storage api: Argument.ID set value 392 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/_/end.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/_/end.mcfunction new file mode 100644 index 0000000000..1f94227731 --- /dev/null +++ b/Asset/data/asset/functions/effect/0392.now_cooking/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0392.now_cooking/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:392} run function asset:effect/0392.now_cooking/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/_/re-given.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/_/re-given.mcfunction new file mode 100644 index 0000000000..606048767c --- /dev/null +++ b/Asset/data/asset/functions/effect/0392.now_cooking/_/re-given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0392.now_cooking/_/re-given +# +# Effectが上書きされた時に実行されるfunction +# +# @within tag/function asset:effect/re-given + +execute if data storage asset:context {id:392} run function asset:effect/0392.now_cooking/re-given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/_/register.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/_/register.mcfunction new file mode 100644 index 0000000000..5504009223 --- /dev/null +++ b/Asset/data/asset/functions/effect/0392.now_cooking/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0392.now_cooking/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:392} run function asset:effect/0392.now_cooking/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/end/.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/end/.mcfunction new file mode 100644 index 0000000000..759d4d46fa --- /dev/null +++ b/Asset/data/asset/functions/effect/0392.now_cooking/end/.mcfunction @@ -0,0 +1,16 @@ +#> asset:effect/0392.now_cooking/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0392.now_cooking/_/end + +# スタック数×10発の弾丸召喚 = Effect 393を効果時間(弾数×2 = スタック数×20)tickで付与 + data modify storage api: Argument.ID set value 393 + execute store result storage api: Argument.Duration int 20 run data get storage asset:context Stack + #攻撃情報も引き継ぐ + data modify storage api: Argument.FieldOverride.Damage set from storage asset:context this.Damage + data modify storage api: Argument.FieldOverride.AttackType set from storage asset:context this.AttackType + data modify storage api: Argument.FieldOverride.ElementType set from storage asset:context this.ElementType + + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction new file mode 100644 index 0000000000..1e8d3ebfa5 --- /dev/null +++ b/Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction @@ -0,0 +1,26 @@ +#> asset:effect/0392.now_cooking/re-given/ +# +# Effectが上書きされた時の処理 +# +# @within function asset:effect/0392.now_cooking/_/re-given + +#> Private +# @private + #declare score_holder $Charge + +# Field上書き + data modify storage asset:context this set from storage asset:context PreviousField + +# チャージ時間取得&更新 + execute store result score $Charge Temporary run data get storage asset:context this.Charge + execute store result storage asset:context this.Charge int 1 run scoreboard players add $Charge Temporary 1 + +# チャージ時間に応じてスタック更新 + execute if score $Charge Temporary matches 12 run data modify storage asset:context Stack set value 2 + + execute if score $Charge Temporary matches 24 run data modify storage asset:context Stack set value 3 + + execute if score $Charge Temporary matches 36 run data modify storage asset:context Stack set value 4 + +# リセット + scoreboard players reset $Charge Temporary diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction new file mode 100644 index 0000000000..e296be9c2d --- /dev/null +++ b/Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction @@ -0,0 +1,42 @@ +#> asset:effect/0392.now_cooking/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0392.now_cooking/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 392 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text": "はじめちょろちょろ中ぱっぱ"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value [] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 1 +# スタック (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 + +# フィールド + data modify storage asset:effect Field.Charge set value 0 + data modify storage asset:effect Field.Damage set value 0 + data modify storage asset:effect Field.AttackType set value "" + data modify storage asset:effect Field.ElementType set value "" diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/_/register.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/_/register.mcfunction new file mode 100644 index 0000000000..57ff8d2758 --- /dev/null +++ b/Asset/data/asset/functions/effect/0393.launching_rice/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0393.launching_rice/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:393} run function asset:effect/0393.launching_rice/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/_/tick.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/_/tick.mcfunction new file mode 100644 index 0000000000..9b61ae17bc --- /dev/null +++ b/Asset/data/asset/functions/effect/0393.launching_rice/_/tick.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0393.launching_rice/_/tick +# +# Effectが発動している間毎tick実行されるfunction +# +# @within tag/function asset:effect/tick + +execute if data storage asset:context {id:393} run function asset:effect/0393.launching_rice/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/register.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/register.mcfunction new file mode 100644 index 0000000000..93a9402c94 --- /dev/null +++ b/Asset/data/asset/functions/effect/0393.launching_rice/register.mcfunction @@ -0,0 +1,42 @@ +#> asset:effect/0393.launching_rice/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0393.launching_rice/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 393 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text": "赤子泣いても蓋とるな"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value [] +# 効果時間 (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 80 +# 最大スタック (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 false +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + # data modify storage asset:effect StackVisible set value + +# フィールド + data modify storage asset:effect Field.Interval set value 1 + data modify storage asset:effect Field.Damage set value 0 + data modify storage asset:effect Field.AttackType set value "" + data modify storage asset:effect Field.ElementType set value "" diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/tick/.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/tick/.mcfunction new file mode 100644 index 0000000000..45b4b88886 --- /dev/null +++ b/Asset/data/asset/functions/effect/0393.launching_rice/tick/.mcfunction @@ -0,0 +1,9 @@ +#> asset:effect/0393.launching_rice/tick/ +# +# Effectのtick処理 +# +# @within function asset:effect/0393.launching_rice/_/tick + +# 2tickごとに弾丸発射 + execute store result storage asset:context this.Interval int 0.9999999999 run data get storage asset:context this.Interval + execute if data storage asset:context this{Interval:0} run function asset:effect/0393.launching_rice/tick/shoot diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/tick/damage.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/tick/damage.mcfunction new file mode 100644 index 0000000000..4a1add9872 --- /dev/null +++ b/Asset/data/asset/functions/effect/0393.launching_rice/tick/damage.mcfunction @@ -0,0 +1,16 @@ +#> asset:effect/0393.launching_rice/tick/damage +# +# +# +# @within function asset:effect/0393.launching_rice/tick/rec + +# ダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set from storage asset:context this.AttackType + data modify storage api: Argument.ElementType set from storage asset:context this.ElementType + function api:damage/modifier + execute as @e[type=#lib:living_without_player,tag=0393.Target,distance=..2,limit=1] run function api:damage/ + function api:damage/reset + +# リセット + tag @e[type=#lib:living_without_player,tag=0393.Target,distance=..2,limit=1] remove 0393.Target diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction new file mode 100644 index 0000000000..ae1ee22011 --- /dev/null +++ b/Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction @@ -0,0 +1,24 @@ +#> asset:effect/0393.launching_rice/tick/rec +# +# +# +# @within function asset:effect/0393.launching_rice/tick/** + +#> Private +# @within function asset:effect/0393.launching_rice/tick/** + #declare tag 0393.Hit + #declare tag 0393.Target + +# 着弾検知 + execute if entity @e[type=#lib:living_without_player,tag=!Uninterferable,distance=..2] run tag @s add 0393.Hit + execute as @e[type=#lib:living_without_player,tag=!Uninterferable,distance=..2] run tag @s add 0393.Target + execute unless block ^ ^ ^0.5 #lib:no_collision/ run tag @s add 0393.Hit + +# ダメージ処理 + execute if entity @e[type=#lib:living_without_player,tag=0393.Target,distance=..2,limit=1] run function asset:effect/0393.launching_rice/tick/damage + +# 演出 + particle dust 1 1 1 0.25 ~ ~ ~ 0.0 0.0 0.0 0 1 + +# 再帰 + execute positioned ^ ^ ^0.5 if entity @s[tag=!0393.Hit,distance=..7] run function asset:effect/0393.launching_rice/tick/rec diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction new file mode 100644 index 0000000000..67176548fc --- /dev/null +++ b/Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction @@ -0,0 +1,24 @@ +#> asset:effect/0393.launching_rice/tick/shoot +# +# +# +# @within function asset:effect/0393.launching_rice/tick/ + +#> SpreadLib +# @private + #declare tag SpreadMarker + +# 前方拡散事前準備 + summon marker ~ ~ ~ {Tags:["SpreadMarker"]} + data modify storage lib: Argument.Distance set value 10.0 + data modify storage lib: Argument.Spread set value 4.63 + +# 前方拡散を実行する + execute as @e[type=marker,tag=SpreadMarker,limit=1] run function lib:forward_spreader/circle + +# 発射 + execute facing entity @e[type=marker,tag=SpreadMarker,limit=1] feet anchored eyes positioned ^ ^ ^ run function asset:effect/0393.launching_rice/tick/rec + +# リセット + tag @s remove 0393.Hit + kill @e[type=marker,tag=SpreadMarker] diff --git a/Asset/data/asset/tags/functions/artifact/give.json b/Asset/data/asset/tags/functions/artifact/give.json index fdb7a26c47..3584ac6ad2 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/1590.rice_cooker/give/1.trigger", "asset:artifact/1562.tsukimi_dango/give/1.trigger", "asset:artifact/1430.shield_of_fate/give/1.trigger", "asset:artifact/1453.frost_flake_bow/give/1.trigger", @@ -540,4 +541,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 2bba1f3f33..8d5dd057ff 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/1590.rice_cooker/register", "asset:artifact/1562.tsukimi_dango/register", "asset:artifact/1453.frost_flake_bow/register", "asset:artifact/1430.shield_of_fate/register", @@ -318,4 +319,4 @@ "asset:artifact/1027.fire_of_rebirth/register", "asset:artifact/1111.rod_o_redeem/register" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/using_item.json b/Asset/data/asset/tags/functions/artifact/using_item.json index d057af6e5f..74243a1760 100644 --- a/Asset/data/asset/tags/functions/artifact/using_item.json +++ b/Asset/data/asset/tags/functions/artifact/using_item.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1590.rice_cooker/trigger/1.trigger", "asset:artifact/1453.frost_flake_bow/using_item/1.trigger", "asset:artifact/1220.sacred_hardener/trigger/1.trigger", "asset:artifact/1269.apocalypse/using_item/1.trigger", @@ -17,4 +18,4 @@ "asset:artifact/0948.ft_139_rifle/trigger/1.trigger", "asset:artifact/0876.uni/trigger/1.trigger" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/effect/end.json b/Asset/data/asset/tags/functions/effect/end.json index c9796ea3fa..f734801398 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/0392.now_cooking/_/end", "asset:effect/0371.tsukimi/_/end", "asset:effect/0355.heart_gap/_/end", "asset:effect/0354.protection_of_courage/_/end", @@ -112,4 +113,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/re-given.json b/Asset/data/asset/tags/functions/effect/re-given.json index 1a963f5001..bcee53d0a8 100644 --- a/Asset/data/asset/tags/functions/effect/re-given.json +++ b/Asset/data/asset/tags/functions/effect/re-given.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0392.now_cooking/_/re-given", "asset:effect/0371.tsukimi/_/re-given", "asset:effect/0348.cool_feeling/_/re-given", "asset:effect/0352.kitsunebi/_/re-given", diff --git a/Asset/data/asset/tags/functions/effect/register.json b/Asset/data/asset/tags/functions/effect/register.json index 78c10d4140..3c08dcfe06 100644 --- a/Asset/data/asset/tags/functions/effect/register.json +++ b/Asset/data/asset/tags/functions/effect/register.json @@ -1,5 +1,7 @@ { "values": [ + "asset:effect/0393.launching_rice/_/register", + "asset:effect/0392.now_cooking/_/register", "asset:effect/0371.tsukimi/_/register", "asset:effect/0355.heart_gap/_/register", "asset:effect/0354.protection_of_courage/_/register", @@ -182,4 +184,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/tick.json b/Asset/data/asset/tags/functions/effect/tick.json index 90687895ee..859f737bbe 100644 --- a/Asset/data/asset/tags/functions/effect/tick.json +++ b/Asset/data/asset/tags/functions/effect/tick.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0393.launching_rice/_/tick", "asset:effect/0355.heart_gap/_/tick", "asset:effect/0348.cool_feeling/_/tick", "asset:effect/0356.dolphin_blessing/_/tick", @@ -107,4 +108,4 @@ "asset:effect/0279.poison_of_vinderre/_/tick", "asset:effect/0258.spirit_melody/_/tick" ] -} +} \ No newline at end of file From e126d2e96d36b420343c24f5851668714ecf9dee Mon Sep 17 00:00:00 2001 From: RandomFridge Date: Sun, 6 Sep 2026 15:54:56 +0200 Subject: [PATCH 2/7] =?UTF-8?q?=E6=94=BB=E6=92=83=E7=AF=84=E5=9B=B2?= =?UTF-8?q?=E3=81=AE=E8=A1=A8=E8=A8=98=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1590.rice_cooker/give/2.give.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction index 73df726042..576df3e075 100644 --- a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction @@ -39,7 +39,7 @@ # 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) data modify storage asset:artifact AttackInfo.IsRangeAttack set value "never" # 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) - data modify storage asset:artifact AttackInfo.AttackRange set value 7.0 + data modify storage asset:artifact AttackInfo.AttackRange set value "7.0" # MP消費量 (int) # data modify storage asset:artifact MPCost set value # MP必要量 (int) (オプション) From 1cccd9c9285ee45fc25b855b514dcb0f0cce310b Mon Sep 17 00:00:00 2001 From: RandomFridge Date: Sun, 6 Sep 2026 16:02:10 +0200 Subject: [PATCH 3/7] =?UTF-8?q?Lore=E9=A1=9E=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1590.rice_cooker/give/2.give.mcfunction | 2 +- .../asset/functions/effect/0392.now_cooking/register.mcfunction | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction index 576df3e075..ab4b13b28e 100644 --- a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text": "炊飯器"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value [] + data modify storage asset:artifact Lore set value ['{"text": "最大4段階のチャージをし、段階に応じた弾数の米粒を発射する。"}', '{"text": "米粒の発射中に再発動はできない。"}', '{"text": "朝はやっぱり米ですよね!", "color": "gray"}'] # 消費アイテム ({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 diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction index e296be9c2d..eec240aea3 100644 --- a/Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction +++ b/Asset/data/asset/functions/effect/0392.now_cooking/register.mcfunction @@ -11,7 +11,7 @@ # 名前 (TextComponentString) data modify storage asset:effect Name set value '{"text": "はじめちょろちょろ中ぱっぱ"}' # 説明文 (TextComponentString[]) - data modify storage asset:effect Description set value [] + data modify storage asset:effect Description set value ['{"text": "チャージ段階に応じて米粒の発射数が上昇する"}'] # 効果時間 (int) (default = API || error) data modify storage asset:effect Duration set value 1 # スタック (int) (default = API || 1) From 55c2b01c31e8a6af43d73296e84ad70e0ab57ae8 Mon Sep 17 00:00:00 2001 From: RandomFridge Date: Sun, 6 Sep 2026 17:34:29 +0200 Subject: [PATCH 4/7] =?UTF-8?q?=E6=BC=94=E5=87=BA=E3=82=92=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../artifact/1590.rice_cooker/trigger/3.main.mcfunction | 4 ++++ .../functions/effect/0392.now_cooking/re-given/.mcfunction | 5 ++++- .../effect/0393.launching_rice/tick/shoot.mcfunction | 5 ++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction index 95c7e9044c..b365aba4f6 100644 --- a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/3.main.mcfunction @@ -16,3 +16,7 @@ function api:entity/mob/effect/give function api:entity/mob/effect/reset + +# 演出 + particle poof ~ ~ ~ 0.1 0.5 0.1 0.5 25 + playsound block.fire.extinguish player @a ~ ~ ~ 0.75 0.75 diff --git a/Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction b/Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction index 1e8d3ebfa5..72829a5b7a 100644 --- a/Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction +++ b/Asset/data/asset/functions/effect/0392.now_cooking/re-given/.mcfunction @@ -15,12 +15,15 @@ execute store result score $Charge Temporary run data get storage asset:context this.Charge execute store result storage asset:context this.Charge int 1 run scoreboard players add $Charge Temporary 1 -# チャージ時間に応じてスタック更新 +# チャージ時間に応じてスタック更新&演出 execute if score $Charge Temporary matches 12 run data modify storage asset:context Stack set value 2 + execute if score $Charge Temporary matches 12 run playsound block.note_block.chime player @a ~ ~ ~ 1 0.75 execute if score $Charge Temporary matches 24 run data modify storage asset:context Stack set value 3 + execute if score $Charge Temporary matches 24 run playsound block.note_block.chime player @a ~ ~ ~ 1 1.0 execute if score $Charge Temporary matches 36 run data modify storage asset:context Stack set value 4 + execute if score $Charge Temporary matches 36 run playsound block.note_block.chime player @a ~ ~ ~ 1 1.5 # リセット scoreboard players reset $Charge Temporary diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction index 67176548fc..51e0027eb0 100644 --- a/Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction +++ b/Asset/data/asset/functions/effect/0393.launching_rice/tick/shoot.mcfunction @@ -12,13 +12,16 @@ summon marker ~ ~ ~ {Tags:["SpreadMarker"]} data modify storage lib: Argument.Distance set value 10.0 data modify storage lib: Argument.Spread set value 4.63 - # 前方拡散を実行する execute as @e[type=marker,tag=SpreadMarker,limit=1] run function lib:forward_spreader/circle # 発射 execute facing entity @e[type=marker,tag=SpreadMarker,limit=1] feet anchored eyes positioned ^ ^ ^ run function asset:effect/0393.launching_rice/tick/rec +# 演出 + playsound entity.chicken.egg player @a ~ ~ ~ 0.5 1.75 + playsound ogg:block.vault.eject1 player @a ~ ~ ~ 0.5 2.0 + # リセット tag @s remove 0393.Hit kill @e[type=marker,tag=SpreadMarker] From 84f3428550bea4c70281684379790b0018a624c0 Mon Sep 17 00:00:00 2001 From: RandomFridge Date: Sun, 6 Sep 2026 18:02:02 +0200 Subject: [PATCH 5/7] =?UTF-8?q?=E3=82=AF=E3=83=BC=E3=83=AB=E3=83=80?= =?UTF-8?q?=E3=82=A6=E3=83=B3=E7=B5=82=E4=BA=86=E6=99=82=E3=81=AB=E3=83=81?= =?UTF-8?q?=E3=83=A3=E3=83=BC=E3=82=B8=E3=81=8C=E6=9C=80=E5=88=9D=E3=81=8B?= =?UTF-8?q?=E3=82=89=E5=A7=8B=E3=81=BE=E3=81=A3=E3=81=A6=E3=81=97=E3=81=BE?= =?UTF-8?q?=E3=81=86=E5=95=8F=E9=A1=8C=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1590.rice_cooker/trigger/2.check_condition.mcfunction | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction index 11e6e301c6..5d0fd10d10 100644 --- a/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/trigger/2.check_condition.mcfunction @@ -4,17 +4,17 @@ # # @within function asset:artifact/1590.rice_cooker/trigger/1.trigger -# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く - function asset:artifact/common/check_condition/mainhand -# 他にアイテム等確認する場合はここに書く # Effect 392を確認 data modify storage api: Argument.ID set value 392 function api:entity/mob/effect/get/from_id - execute if data storage api: Return.Effect run function asset:artifact/1590.rice_cooker/trigger/charge + execute if data storage api: Return.Effect run return run function asset:artifact/1590.rice_cooker/trigger/charge # 発射中なら発動不可 data modify storage api: Argument.ID set value 393 function api:entity/mob/effect/get/from_id execute if data storage api: Return.Effect run return fail +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/mainhand + # CanUsedタグをチェックして3.main.mcfunctionを実行する execute if entity @s[tag=CanUsed] run function asset:artifact/1590.rice_cooker/trigger/3.main From 9fbf5c69f48fd5987e98498e0a97d2d02db30813 Mon Sep 17 00:00:00 2001 From: RandomFridge Date: Sun, 6 Sep 2026 19:24:29 +0200 Subject: [PATCH 6/7] =?UTF-8?q?=E6=BC=94=E5=87=BA=E3=81=AE=E8=A6=96?= =?UTF-8?q?=E8=AA=8D=E6=80=A7=E3=82=92=E6=94=B9=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/effect/0393.launching_rice/tick/rec.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction b/Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction index ae1ee22011..94375d8619 100644 --- a/Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction +++ b/Asset/data/asset/functions/effect/0393.launching_rice/tick/rec.mcfunction @@ -18,7 +18,7 @@ execute if entity @e[type=#lib:living_without_player,tag=0393.Target,distance=..2,limit=1] run function asset:effect/0393.launching_rice/tick/damage # 演出 - particle dust 1 1 1 0.25 ~ ~ ~ 0.0 0.0 0.0 0 1 + particle dust 1 1 1 0.25 ~ ~ ~ 0.01 0.01 0.01 0 3 # 再帰 execute positioned ^ ^ ^0.5 if entity @s[tag=!0393.Hit,distance=..7] run function asset:effect/0393.launching_rice/tick/rec From f2643f6379b3e3abfc2d237e77c44dc5e900e00b Mon Sep 17 00:00:00 2001 From: RandomFridge Date: Sun, 6 Sep 2026 21:28:08 +0200 Subject: [PATCH 7/7] =?UTF-8?q?Lore=E3=82=92=E5=BE=AE=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1590.rice_cooker/give/2.give.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction index ab4b13b28e..b0dfebaf37 100644 --- a/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1590.rice_cooker/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text": "炊飯器"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text": "最大4段階のチャージをし、段階に応じた弾数の米粒を発射する。"}', '{"text": "米粒の発射中に再発動はできない。"}', '{"text": "朝はやっぱり米ですよね!", "color": "gray"}'] + data modify storage asset:artifact Lore set value ['{"text": "最大4段階のチャージをし、段階に応じた数の米粒を発射する。"}', '{"text": "発射中は再発動ができない。"}', '{"text": "朝はやっぱりお米ですよね!", "color": "gray"}'] # 消費アイテム ({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