From eaab5adb8d4e6e22f30aa01b534236df63d350da Mon Sep 17 00:00:00 2001 From: Lapis-LJA <87566955+Lapis-LJA@users.noreply.github.com> Date: Sun, 23 Nov 2025 17:31:34 +0900 Subject: [PATCH 01/34] =?UTF-8?q?=E3=81=A8=E3=82=8A=E3=81=82=E3=81=88?= =?UTF-8?q?=E3=81=9A=E5=9F=BA=E7=A4=8E=E3=81=BE=E3=81=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../give/1.trigger.mcfunction | 7 ++ .../1320.flare_bloom/give/2.give.mcfunction | 68 +++++++++++++++++++ .../1320.flare_bloom/register.mcfunction | 7 ++ .../trigger/1.trigger.mcfunction | 8 +++ .../trigger/2.check_condition.mcfunction | 12 ++++ .../trigger/3.main.mcfunction | 16 +++++ .../1153.flame_butterfly/_index.d.mcfunction | 6 ++ .../1153.flame_butterfly/register.mcfunction | 20 ++++++ .../1153.flame_butterfly/summon/.mcfunction | 11 +++ .../1153.flame_butterfly/summon/m.mcfunction | 7 ++ .../1153.flame_butterfly/tick/.mcfunction | 29 ++++++++ .../1153.flame_butterfly/tick/kill.mcfunction | 9 +++ .../1153.flame_butterfly/tick/move.mcfunction | 26 +++++++ .../1153.flame_butterfly/tick/vfx.mcfunction | 10 +++ .../object/alias/1153/register.mcfunction | 8 +++ .../object/alias/1153/summon.mcfunction | 8 +++ .../object/alias/1153/tick.mcfunction | 8 +++ .../artifact/click.carrot_on_a_stick.json | 6 +- .../asset/tags/functions/artifact/give.json | 3 +- .../tags/functions/artifact/register.json | 3 +- 20 files changed, 266 insertions(+), 6 deletions(-) create mode 100644 Asset/data/asset/functions/artifact/1320.flare_bloom/give/1.trigger.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1320.flare_bloom/register.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/1.trigger.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/2.check_condition.mcfunction create mode 100644 Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/summon/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/summon/m.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction create mode 100644 Asset/data/asset/functions/object/alias/1153/register.mcfunction create mode 100644 Asset/data/asset/functions/object/alias/1153/summon.mcfunction create mode 100644 Asset/data/asset/functions/object/alias/1153/tick.mcfunction diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/1.trigger.mcfunction new file mode 100644 index 00000000000..5cf33df938a --- /dev/null +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1320.flare_bloom/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1320} run function asset:artifact/1320.flare_bloom/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction new file mode 100644 index 00000000000..8adfc6b4d25 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1320.flare_bloom/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1320.flare_bloom/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1320 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"フレアブルーム","color":"red"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%以下の時、ダメージが1.5倍になる","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] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [Fire] +# 攻撃に関する情報 -防御無視 (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 "3.5" +# MP消費量 (int) + data modify storage asset:artifact MPCost set value 100 +# 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 +# 種別クールダウン ({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 ["Urban", "Nyaptov", "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/1320.flare_bloom/register.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/register.mcfunction new file mode 100644 index 00000000000..4fd1f4c2911 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1320.flare_bloom/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[4] append value [1320] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/1.trigger.mcfunction new file mode 100644 index 00000000000..bdf7ff14a87 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1320.flare_bloom/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:1320} run function asset:artifact/1320.flare_bloom/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/2.check_condition.mcfunction new file mode 100644 index 00000000000..c5fc88a1dbe --- /dev/null +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/1320.flare_bloom/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1320.flare_bloom/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/1320.flare_bloom/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction new file mode 100644 index 00000000000..1379bc1e69d --- /dev/null +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction @@ -0,0 +1,16 @@ +#> asset:artifact/1320.flare_bloom/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1320.flare_bloom/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/mainhand + +# ここから先は神器側の効果の処理を書く + +# Object召喚 + data modify storage api: Argument.ID set value 1153 + data modify storage api: Argument.FieldOverride.Damage set value 1000 + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + execute anchored eyes rotated ~ 0 positioned ^ ^-1 ^1.5 run function api:object/summon diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction new file mode 100644 index 00000000000..f17ccb731c2 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:object/1153.flame_butterfly/_index.d +# @private + +#> tag +# @within function asset:object/1153.flame_butterfly/** + #declare tag 1153.Owner diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction new file mode 100644 index 00000000000..a11e88e6474 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1153.flame_butterfly/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1153/register + +# 継承(オプション) + # data modify storage asset:object Extends append value + # function asset:object/extends +# 他のObjectに継承されることを許可するか (boolean) (オプション) + # data modify storage asset:object ExtendsSafe set value +# 継承されることを前提とした、抽象的なObjectであるかどうか(boolean) + data modify storage asset:object IsAbstract set value false +# Tickするかどうか(boolean) (オプション) + # data modify storage asset:object IsTicking set value + +# ID (int) + data modify storage asset:object ID set value 1153 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/summon/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/summon/.mcfunction new file mode 100644 index 00000000000..fda10b5c56f --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/summon/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1153.flame_butterfly/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1153/summon + +# 元となるEntityを召喚する + execute as 0-0-0-0-0 in minecraft:overworld positioned as @s run tp @s ~ ~ ~ ~ 0 + data modify storage asset:temp Args.Rotation set from entity 0-0-0-0-0 Rotation + function asset:object/1153.flame_butterfly/summon/m with storage asset:temp Args + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/summon/m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/summon/m.mcfunction new file mode 100644 index 00000000000..b7baf022792 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/summon/m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1153.flame_butterfly/summon/m +# +# +# +# @within function asset:object/1153.flame_butterfly/summon/ + +$summon armor_stand ~ ~ ~ {Tags:["ObjectInit","Friend"],Rotation:$(Rotation),Marker:1b,Invisible:1b,Passengers:[{id:"minecraft:item_display",Rotation:[90f,0f],Tags:["ProcessCommonTag","AutoKillWhenDieVehicle"],teleport_duration:1,brightness:{sky:10,block:10},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20584}},transformation:{left_rotation:[0.1987f,0f,0f,-0.9801f],right_rotation:[0f,0f,0f,1f],scale:[1f,1f,1f],translation:[0f,-0.5f,0f]}}]} diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction new file mode 100644 index 00000000000..76e0e9dc5a3 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction @@ -0,0 +1,29 @@ +#> asset:object/1153.flame_butterfly/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1153/tick + +#> Private +# @private + #declare score_holder $UserID + +# 演出 + function asset:object/1153.flame_butterfly/tick/vfx + +# OwnerにTag付与 + execute store result score $UserID Temporary run data get storage asset:context this.UserID + execute as @a if score @s UserID = $UserID Temporary run tag @s add 1153.Owner + scoreboard players reset $UserID Temporary + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 移動 + function asset:object/1153.flame_butterfly/tick/move + +# リセット + tag @p[tag=1153.Owner] remove 1153.Owner + +# 消滅処理 + execute if score @s General.Object.Tick matches 200.. run function asset:object/1153.flame_butterfly/tick/kill diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction new file mode 100644 index 00000000000..c3c4d4d7f5b --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1153.flame_butterfly/tick/kill +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/ + +# + execute on passengers run kill @s + kill @s diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move.mcfunction new file mode 100644 index 00000000000..a4ccaa2edbc --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move.mcfunction @@ -0,0 +1,26 @@ +#> asset:object/1153.flame_butterfly/tick/move +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/ + +#> Private +# @private + #declare tag 1153.TempMarker + +# Ownerの位置基準でMarkerを召喚し、そこへ追尾する感じで移動する + +# 召喚 + execute as @p[tag=1153.Owner] at @s rotated ~ 0 anchored eyes positioned ^-1.8 ^ ^1.1 run summon marker ~ ~ ~ {Tags:["1153.TempMarker"]} + +# 追尾 近い場合は移動をキャンセル + execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ^ ^ ^0.15 ~ ~ + +# マーカーが近い場合は、自身の向きをOwnerに合わせる + execute if entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] rotated as @p[tag=1153.Owner] run tp @s ~ ~ ~ ~ ~ + +# 蝶の向きを調整 + execute at @s on passengers run tp @s ~ ~ ~ ~ 0 + +# リセット + execute at @p[tag=1153.Owner] run kill @e[type=marker,tag=1153.TempMarker,distance=..5] diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction new file mode 100644 index 00000000000..95003f4cf8a --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1153.flame_butterfly/tick/vfx +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/ + +# 演出 + execute if predicate lib:random_pass_per/30 run particle dust 1 0.4 0 0.7 ~ ~ ~ 0.3 0.3 0.3 0 1 normal @a + execute if predicate lib:random_pass_per/8 run particle flame ~ ~ ~ 0.3 0.3 0.3 0 1 normal @a + execute if predicate lib:random_pass_per/5 run particle dripping_lava ~ ~ ~ 0.3 0 0.3 0 1 normal @a diff --git a/Asset/data/asset/functions/object/alias/1153/register.mcfunction b/Asset/data/asset/functions/object/alias/1153/register.mcfunction new file mode 100644 index 00000000000..7c58cdc46ac --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1153/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1153/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1153.flame_butterfly/register diff --git a/Asset/data/asset/functions/object/alias/1153/summon.mcfunction b/Asset/data/asset/functions/object/alias/1153/summon.mcfunction new file mode 100644 index 00000000000..c4245e02773 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1153/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1153/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1153.flame_butterfly/summon/ diff --git a/Asset/data/asset/functions/object/alias/1153/tick.mcfunction b/Asset/data/asset/functions/object/alias/1153/tick.mcfunction new file mode 100644 index 00000000000..7feae7baee3 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1153/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1153/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1153.flame_butterfly/tick/ 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 5864dbd3668..8b236cb44a9 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/1320.flare_bloom/trigger/1.trigger", "asset:artifact/0005.musket_matchlock/trigger/1.trigger", "asset:artifact/0017.harmful_books/trigger/1.trigger", "asset:artifact/0075.whirlpool_wand/trigger/1.trigger", @@ -90,7 +91,6 @@ "asset:artifact/1265.thunder_ray/trigger/1.trigger", "asset:artifact/1270.raging_passion_pickaxe/trigger/1.trigger", "asset:artifact/1272.big_water_launcher/trigger/1.trigger", - "asset:artifact/0001.book_of_all-seeing/trigger/1.trigger", "asset:artifact/0002.blessing/trigger/1.trigger", "asset:artifact/0007.nitrogen_fixater/trigger/1.trigger", @@ -175,8 +175,6 @@ "asset:artifact/1284.quiver/trigger/1.trigger", "asset:artifact/1285.torch_bag/trigger/1.trigger", "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 f3eb0088574..7bb2b444822 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/1320.flare_bloom/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 deba1661508..7afa294e984 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/1320.flare_bloom/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 From 6e3001dacbb264569626731cc892970a9089f5af Mon Sep 17 00:00:00 2001 From: Lapis-LJA <87566955+Lapis-LJA@users.noreply.github.com> Date: Sat, 6 Dec 2025 14:09:22 +0900 Subject: [PATCH 02/34] =?UTF-8?q?=E3=82=BF=E3=83=BC=E3=82=B2=E3=83=83?= =?UTF-8?q?=E3=83=88=E3=82=92=E8=BF=BD=E5=B0=BE=E3=81=99=E3=82=8B=E3=81=A8?= =?UTF-8?q?=E3=81=93=E3=82=8D=E3=81=BE=E3=81=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../predicate/near_enemy.mcfunction | 11 ++++++ .../1153.flame_butterfly/register.mcfunction | 3 +- .../1153.flame_butterfly/tick/.mcfunction | 7 ++-- .../tick/move/.mcfunction | 16 +++++++++ .../tick/move/chase_enemy.m.mcfunction | 24 +++++++++++++ .../no_enemy.mcfunction} | 16 ++++----- .../tick/move/search_target/.mcfunction | 15 ++++++++ .../move/search_target/recursive.mcfunction | 16 +++++++++ .../move/search_target/success.mcfunction | 10 ++++++ .../tick/move/with_collision.m.mcfunction | 14 ++++++++ .../1154.flame_explode/register.mcfunction | 20 +++++++++++ .../1154.flame_explode/summon/.mcfunction | 8 +++++ .../summon/debug.mcfunction | 10 ++++++ .../1154.flame_explode/tick/.mcfunction | 16 +++++++++ .../tick/explode.mcfunction | 11 ++++++ .../1154.flame_explode/tick/vfx/1.mcfunction | 26 ++++++++++++++ .../1154.flame_explode/tick/vfx/2.mcfunction | 36 +++++++++++++++++++ .../object/alias/1154/register.mcfunction | 8 +++++ .../object/alias/1154/summon.mcfunction | 8 +++++ .../object/alias/1154/tick.mcfunction | 8 +++++ 20 files changed, 272 insertions(+), 11 deletions(-) create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_enemy.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy.m.mcfunction rename Asset/data/asset/functions/object/1153.flame_butterfly/tick/{move.mcfunction => move/no_enemy.mcfunction} (51%) create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/recursive.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction create mode 100644 Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction create mode 100644 Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction create mode 100644 Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction create mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction create mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction create mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction create mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction create mode 100644 Asset/data/asset/functions/object/alias/1154/register.mcfunction create mode 100644 Asset/data/asset/functions/object/alias/1154/summon.mcfunction create mode 100644 Asset/data/asset/functions/object/alias/1154/tick.mcfunction diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_enemy.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_enemy.mcfunction new file mode 100644 index 00000000000..1e26e2d6e45 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_enemy.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1153.flame_butterfly/predicate/near_enemy +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/** + +# Ownerの周囲に敵が周囲にいないなら失敗 + execute at @p[tag=1153.Owner] unless entity @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10] run return 0 + +# 成功 + return 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction index a11e88e6474..579d1748e59 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction @@ -17,4 +17,5 @@ # ID (int) data modify storage asset:object ID set value 1153 # フィールド(オプション) - # data modify storage asset:object Field.myValue set value + data modify storage asset:object Field.ChaseSpeed set value 0.4 + data modify storage asset:object Field.SearchInterval set value 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction index 76e0e9dc5a3..42c495d9a0a 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction @@ -20,10 +20,13 @@ scoreboard players add @s General.Object.Tick 1 # 移動 - function asset:object/1153.flame_butterfly/tick/move + function asset:object/1153.flame_butterfly/tick/move/ + +# 蝶の向きを調整 + execute at @s on passengers run tp @s ~ ~ ~ ~ 0 # リセット tag @p[tag=1153.Owner] remove 1153.Owner # 消滅処理 - execute if score @s General.Object.Tick matches 200.. run function asset:object/1153.flame_butterfly/tick/kill + execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flame_butterfly/tick/kill diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction new file mode 100644 index 00000000000..aa29d2e8dce --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction @@ -0,0 +1,16 @@ +#> asset:object/1153.flame_butterfly/tick/move/ +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/ + +# 敵が近くにいなければOwnerの方へ移動 + execute unless function asset:object/1153.flame_butterfly/predicate/near_enemy run return run function asset:object/1153.flame_butterfly/tick/move/no_enemy + +# unless functionでreturnしているので、ここからの判定にif functionは多分要らない + +# TargetMobUUIDが設定されてなければ、ターゲットしうる敵がいるか探す + execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/search_target/ + +# TargetMobUUIDがあれば追尾する + execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/chase_enemy.m with storage asset:context this diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy.m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy.m.mcfunction new file mode 100644 index 00000000000..1cdb6e548f6 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy.m.mcfunction @@ -0,0 +1,24 @@ +#> asset:object/1153.flame_butterfly/tick/move/chase_enemy.m +# +# @input args: +# TargetMobUUID : int +# ChaseSpeed : float +# @within function asset:object/1153.flame_butterfly/tick/move/ + +# 対象の方へ向きだけ追尾する + $execute facing entity @e[type=#lib:living_without_player,scores={MobUUID=$(TargetMobUUID)},distance=..20,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ + +# 前方がブロックに埋まっているか? + $execute at @s if block ^ ^ ^$(ChaseSpeed) #lib:no_collision/ run data modify storage asset:temp 1153.Success set value true + +# 前方が埋まっていなければ、そのまま進む + $execute if data storage asset:temp 1153{Success:true} at @s run tp @s ^ ^ ^$(ChaseSpeed) + +# 前方が埋まっていれば、ブロック衝突を考慮して進む +# Speedの半分を引数とする + $execute unless data storage asset:temp 1153{Success:true} run data modify storage asset:temp 1153.Speed set value $(ChaseSpeed) + execute unless data storage asset:temp 1153{Success:true} store result storage asset:temp 1153.Speed float 0.005 run data get storage asset:temp 1061.Speed 100 + $execute unless data storage asset:temp 1153{Success:true} at @s run function asset:object/1153.flame_butterfly/tick/move/with_collision.m {Speed:$(ChaseSpeed)} + +# リセット + data remove storage asset:temp 1153 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction similarity index 51% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move.mcfunction rename to Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction index a4ccaa2edbc..0b8a8d793a8 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move +#> asset:object/1153.flame_butterfly/tick/move/no_enemy # # # -# @within function asset:object/1153.flame_butterfly/tick/ +# @within function asset:object/1153.flame_butterfly/tick/move/ #> Private # @private @@ -10,17 +10,17 @@ # Ownerの位置基準でMarkerを召喚し、そこへ追尾する感じで移動する +# 普段はプレイヤーの近くで飛んでいる +# 壁越しではない敵を検知するとそっちに追尾して飛んでいき、爆発して範囲攻撃 + # 召喚 execute as @p[tag=1153.Owner] at @s rotated ~ 0 anchored eyes positioned ^-1.8 ^ ^1.1 run summon marker ~ ~ ~ {Tags:["1153.TempMarker"]} # 追尾 近い場合は移動をキャンセル - execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ^ ^ ^0.15 ~ ~ - -# マーカーが近い場合は、自身の向きをOwnerに合わせる - execute if entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] rotated as @p[tag=1153.Owner] run tp @s ~ ~ ~ ~ ~ + execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ^ ^ ^0.3 ~ ~ -# 蝶の向きを調整 - execute at @s on passengers run tp @s ~ ~ ~ ~ 0 +# マーカーが近い場合は、自身の向きを少しずつOwnerに合わせる + execute if entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] rotated as @p[tag=1153.Owner] positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^10 facing entity @s feet positioned as @s positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^1 facing entity @s feet positioned as @s positioned ^ ^ ^-0.05 rotated as @s positioned ^ ^ ^-1 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ # リセット execute at @p[tag=1153.Owner] run kill @e[type=marker,tag=1153.TempMarker,distance=..5] diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction new file mode 100644 index 00000000000..bbffe9d5ba9 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction @@ -0,0 +1,15 @@ +#> asset:object/1153.flame_butterfly/tick/move/search_target/ +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/ + +# 状況によっては毎tick大量の再帰をしてしまうため、数tickに1回のみ判定する + execute store result storage asset:context this.SearchInterval int 0.9999999999 run data get storage asset:context this.SearchInterval + execute unless data storage asset:context this{SearchInterval:0} run return fail + data modify storage asset:context this.SearchInterval set value 3 + +# 壁を貫通してない近くの敵を探す + execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flame_butterfly/tick/move/search_target/recursive + +# say SearchTarget diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/recursive.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/recursive.mcfunction new file mode 100644 index 00000000000..141bb828bb2 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/recursive.mcfunction @@ -0,0 +1,16 @@ +#> asset:object/1153.flame_butterfly/tick/move/search_target/recursive +# +# +# +# @within function +# asset:object/1153.flame_butterfly/tick/move/search_target/ +# asset:object/1153.flame_butterfly/tick/move/search_target/recursive + +# 既にTargetMobUUIDが設定されていればreturn + execute if data storage asset:context this.TargetMobUUID run return fail + +# 自身が近くにいたら成功してreturn + execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @s[dx=0] run return run function asset:object/1153.flame_butterfly/tick/move/search_target/success + +# 再帰 + execute positioned ^ ^ ^0.5 if block ~ ~ ~ #lib:no_collision/ run function asset:object/1153.flame_butterfly/tick/move/search_target/recursive diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction new file mode 100644 index 00000000000..c1a370ca05b --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1153.flame_butterfly/tick/move/search_target/success +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/search_target/recursive + +# 自身のMobUUIDをフィールドに突っ込む + execute store result storage asset:context this.TargetMobUUID int 1 run scoreboard players get @s MobUUID + +# diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction new file mode 100644 index 00000000000..1fc62be262d --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/1153.flame_butterfly/tick/move/with_collision.m +# +# @input args: +# Speed : float 移動量の半分 +# @within function asset:object/1153.flame_butterfly/tick/move/collision/calc_half.m + +# x + $execute positioned 0.0 0.0 0.0 positioned ^ ^ ^-1 positioned 0.0 ~ ~ positioned ^ ^ ^0.5 facing 0.0 0.0 0.0 positioned as @s positioned ^ ^ ^-$(Speed) rotated as @s positioned ^ ^ ^$(Speed) if block ~ ~ ~ #lib:no_collision/ run tp @s ~ ~ ~ + +# y + $execute positioned ^ ^ ^$(Speed) rotated ~180 ~ positioned ^ ^ ^$(Speed) if block ~ ~ ~ #lib:no_collision/ run tp @s ~ ~ ~ + +# z + $execute positioned 0.0 0.0 0.0 positioned ^ ^ ^-1 positioned ~ ~ 0.0 positioned ^ ^ ^0.5 facing 0.0 0.0 0.0 positioned as @s positioned ^ ^ ^-$(Speed) rotated as @s positioned ^ ^ ^$(Speed) if block ~ ~ ~ #lib:no_collision/ run tp @s ~ ~ ~ diff --git a/Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction new file mode 100644 index 00000000000..b1d0f05d14b --- /dev/null +++ b/Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1154.flame_explode/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1154/register + +# 継承(オプション) + # data modify storage asset:object Extends append value + # function asset:object/extends +# 他のObjectに継承されることを許可するか (boolean) (オプション) + # data modify storage asset:object ExtendsSafe set value +# 継承されることを前提とした、抽象的なObjectであるかどうか(boolean) + data modify storage asset:object IsAbstract set value false +# Tickするかどうか(boolean) (オプション) + # data modify storage asset:object IsTicking set value + +# ID (int) + data modify storage asset:object ID set value 1154 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction new file mode 100644 index 00000000000..83baf27dc22 --- /dev/null +++ b/Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1154.flame_explode/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1154/summon + +# 元となるEntityを召喚する + summon marker ~ ~ ~ {Tags:["ObjectInit"]} diff --git a/Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction new file mode 100644 index 00000000000..2e39620720a --- /dev/null +++ b/Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1154.flame_explode/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1154 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction new file mode 100644 index 00000000000..7f8f36c1fc4 --- /dev/null +++ b/Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction @@ -0,0 +1,16 @@ +#> asset:object/1154.flame_explode/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1154/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# + execute if score @s General.Object.Tick matches 1 run function asset:object/1154.flame_explode/tick/vfx/1 + + execute if score @s General.Object.Tick matches 4 run function asset:object/1154.flame_explode/tick/explode + +# 消滅処理 + kill @s[scores={General.Object.Tick=10..}] diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction new file mode 100644 index 00000000000..b1aa75f29c3 --- /dev/null +++ b/Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1154.flame_explode/tick/explode +# +# +# +# @within function asset:object/1154.flame_explode/tick/ + +execute rotated ~90 25 run function asset:object/1154.flame_explode/tick/vfx/2 +execute rotated ~90 -25 run function asset:object/1154.flame_explode/tick/vfx/2 + +playsound entity.blaze.shoot neutral @a ~ ~ ~ 0.7 0.8 +playsound block.fire.ambient neutral @a ~ ~ ~ 0.7 0.8 diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction new file mode 100644 index 00000000000..1184e88ace7 --- /dev/null +++ b/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction @@ -0,0 +1,26 @@ +#> asset:object/1154.flame_explode/tick/vfx/1 +# +# +# +# @within function asset:object/1154.flame_explode/tick/ + +particle flame ^2 ^ ^0 ^-20000000 ^ ^0 0.00000001 0 +particle flame ^1.9021 ^ ^0.618 ^-19021000 ^ ^-6180000 0.00000001 0 +particle flame ^1.618 ^ ^1.1755 ^-16180000. ^ ^-11755000 0.00000001 0 +particle flame ^1.1755 ^ ^1.618 ^-11755000 ^ ^-16180000. 0.00000001 0 +particle flame ^0.618 ^ ^1.9021 ^-6180000 ^ ^-19021000 0.00000001 0 +particle flame ^0 ^ ^2 ^0 ^ ^-20000000 0.00000001 0 +particle flame ^-0.618 ^ ^1.9021 ^6180000 ^ ^-19021000 0.00000001 0 +particle flame ^-1.1755 ^ ^1.618 ^11755000 ^ ^-16180000. 0.00000001 0 +particle flame ^-1.618 ^ ^1.1755 ^16180000. ^ ^-11755000 0.00000001 0 +particle flame ^-1.9021 ^ ^0.618 ^19021000 ^ ^-6180000 0.00000001 0 +particle flame ^-2 ^ ^0 ^20000000 ^ ^0 0.00000001 0 +particle flame ^-1.9021 ^ ^-0.618 ^19021000 ^ ^6180000 0.00000001 0 +particle flame ^-1.618 ^ ^-1.1755 ^16180000. ^ ^11755000 0.00000001 0 +particle flame ^-1.1755 ^ ^-1.618 ^11755000 ^ ^16180000. 0.00000001 0 +particle flame ^-0.618 ^ ^-1.9021 ^6180000 ^ ^19021000 0.00000001 0 +particle flame ^0 ^ ^-2 ^0 ^ ^20000000 0.00000001 0 +particle flame ^0.618 ^ ^-1.9021 ^-6180000 ^ ^19021000 0.00000001 0 +particle flame ^1.1755 ^ ^-1.618 ^-11755000 ^ ^16180000. 0.00000001 0 +particle flame ^1.618 ^ ^-1.1755 ^-16180000. ^ ^11755000 0.00000001 0 +particle flame ^1.9021 ^ ^-0.618 ^-19021000 ^ ^6180000 0.00000001 0 diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction new file mode 100644 index 00000000000..cd50fc28fb0 --- /dev/null +++ b/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction @@ -0,0 +1,36 @@ +#> asset:object/1154.flame_explode/tick/vfx/2 +# +# +# +# @within function asset:object/1154.flame_explode/tick/explode + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkqgBxwBmAhgJwDsNAtDQEYdOsAslABl6sGANhQpWEjjUoBGSqQCsQ-GAB2dALYJkgMMUABHLAEYdDNoDOScCgD2hdRCQAmSgRRwncDDbAA3OmxCXXAADyQBAihIgF9YggtSNEJrRDkBTKyCSwhzZ0QosDhsbDQYS10Moow7PIhdIrRLAFFS8sqWgEdCIOwoAGUzT3JEemxK+IBdIA_3 +# 円 1 +particle flame ~ ~ ~ ^0 ^ ^-1000000 0.00000024 0 +particle flame ~ ~ ~ ^222520.93396 ^ ^-974927.91218 0.00000024 0 +particle flame ~ ~ ~ ^433883.73912 ^ ^-900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^623489.80186 ^ ^-781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^781831.48247 ^ ^-623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^900968.8679 ^ ^-433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^974927.91218 ^ ^-222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^1000000 ^ ^0 0.00000024 0 +particle flame ~ ~ ~ ^974927.91218 ^ ^222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^900968.8679 ^ ^433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^781831.48247 ^ ^623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^623489.80186 ^ ^781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^433883.73912 ^ ^900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^222520.93396 ^ ^974927.91218 0.00000024 0 +particle flame ~ ~ ~ ^0 ^ ^1000000 0.00000024 0 +particle flame ~ ~ ~ ^-222520.93396 ^ ^974927.91218 0.00000024 0 +particle flame ~ ~ ~ ^-433883.73912 ^ ^900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^-623489.80186 ^ ^781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^-781831.48247 ^ ^623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^-900968.8679 ^ ^433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^-974927.91218 ^ ^222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^-1000000 ^ ^0 0.00000024 0 +particle flame ~ ~ ~ ^-974927.91218 ^ ^-222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^-900968.8679 ^ ^-433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^-781831.48247 ^ ^-623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^-623489.80186 ^ ^-781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^-433883.73912 ^ ^-900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^-222520.93396 ^ ^-974927.91218 0.00000024 0 diff --git a/Asset/data/asset/functions/object/alias/1154/register.mcfunction b/Asset/data/asset/functions/object/alias/1154/register.mcfunction new file mode 100644 index 00000000000..1c9a0b51768 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1154/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1154/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1154.flame_explode/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1154/summon.mcfunction b/Asset/data/asset/functions/object/alias/1154/summon.mcfunction new file mode 100644 index 00000000000..6c38fee99fc --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1154/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1154/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1154.flame_explode/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1154/tick.mcfunction b/Asset/data/asset/functions/object/alias/1154/tick.mcfunction new file mode 100644 index 00000000000..fb92c541674 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1154/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1154/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1154.flame_explode/tick/ \ No newline at end of file From a3ad502e8bb677656edb9d6e1ac49c0702e3536b Mon Sep 17 00:00:00 2001 From: Lapis-LJA <87566955+Lapis-LJA@users.noreply.github.com> Date: Sun, 7 Dec 2025 14:30:12 +0900 Subject: [PATCH 03/34] =?UTF-8?q?=E5=90=91=E3=81=8D=E5=90=88=E3=82=8F?= =?UTF-8?q?=E3=81=9B=E3=81=AE=E9=80=9F=E5=BA=A6=E3=82=92=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../object/1153.flame_butterfly/tick/move/no_enemy.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction index 0b8a8d793a8..77dba3331d8 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction @@ -20,7 +20,7 @@ execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ^ ^ ^0.3 ~ ~ # マーカーが近い場合は、自身の向きを少しずつOwnerに合わせる - execute if entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] rotated as @p[tag=1153.Owner] positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^10 facing entity @s feet positioned as @s positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^1 facing entity @s feet positioned as @s positioned ^ ^ ^-0.05 rotated as @s positioned ^ ^ ^-1 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ + execute if entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] rotated as @p[tag=1153.Owner] positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^10 facing entity @s feet positioned as @s positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^1 facing entity @s feet positioned as @s positioned ^ ^ ^-0.1 rotated as @s positioned ^ ^ ^-1 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ # リセット execute at @p[tag=1153.Owner] run kill @e[type=marker,tag=1153.TempMarker,distance=..5] From fd4bbc2d62350ea2041bf340f0fea869dc3d6607 Mon Sep 17 00:00:00 2001 From: Lapis-LJA <87566955+Lapis-LJA@users.noreply.github.com> Date: Thu, 18 Dec 2025 04:05:19 +0900 Subject: [PATCH 04/34] =?UTF-8?q?=E6=94=BB=E6=92=83=E3=81=AE=E5=AE=9F?= =?UTF-8?q?=E8=A3=85=E3=81=BE=E3=81=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trigger/3.main.mcfunction | 5 ++- .../1153.flame_butterfly/init/.mcfunction | 8 ++++ .../predicate/near_owner.mcfunction | 11 ++++++ .../1153.flame_butterfly/register.mcfunction | 19 ++++++++- .../1153.flame_butterfly/tick/.mcfunction | 3 ++ .../tick/move/.mcfunction | 16 +++++--- .../tick/move/attack/.mcfunction | 19 +++++++++ .../tick/move/attack/attack.mcfunction | 39 +++++++++++++++++++ .../tick/move/attack/vfx/1.mcfunction | 26 +++++++++++++ .../tick/move/attack/vfx/2.mcfunction | 36 +++++++++++++++++ .../chase.m.mcfunction} | 4 +- .../tick/move/chase_enemy/m.mcfunction | 25 ++++++++++++ .../chase_enemy/set_attack_mode.mcfunction | 11 ++++++ .../tick/move/common/reset.mcfunction | 9 +++++ .../tick/move/search_target/.mcfunction | 6 +-- .../move/search_target/success.mcfunction | 3 +- ...o_enemy.mcfunction => to_owner.mcfunction} | 5 +-- .../tick/move/with_collision.m.mcfunction | 2 +- .../object/alias/1153/init.mcfunction | 8 ++++ 19 files changed, 236 insertions(+), 19 deletions(-) create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_owner.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/attack.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/1.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/2.mcfunction rename Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/{chase_enemy.m.mcfunction => chase_enemy/chase.m.mcfunction} (90%) create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction rename Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/{no_enemy.mcfunction => to_owner.mcfunction} (85%) create mode 100644 Asset/data/asset/functions/object/alias/1153/init.mcfunction diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction index 1379bc1e69d..1bd0b8b8a3f 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction @@ -9,8 +9,11 @@ # ここから先は神器側の効果の処理を書く +# ダメージ設定 + data modify storage api: Argument.FieldOverride.Damage.Default set value 500 + execute store result storage api: Argument.FieldOverride.Damage.LowHealthPer float 1.5 run data get storage api: Argument.FieldOverride.Damage.Default + # Object召喚 data modify storage api: Argument.ID set value 1153 - data modify storage api: Argument.FieldOverride.Damage set value 1000 execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID execute anchored eyes rotated ~ 0 positioned ^ ^-1 ^1.5 run function api:object/summon diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction new file mode 100644 index 00000000000..a4a935a973e --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1153.flame_butterfly/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1153/init + +# AttackDelay初期化 + data modify storage asset:context this.Attack._ set from storage asset:context this.Attack.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_owner.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_owner.mcfunction new file mode 100644 index 00000000000..6c8e1759f54 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_owner.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1153.flame_butterfly/predicate/near_owner +# +# +# +# @within function asset:object/1153.flame_butterfly/** + +# Ownerが近くにいないなら失敗 + execute unless entity @p[tag=1153.Owner,distance=..10] run return 0 + +# 成功 + return 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction index 579d1748e59..cf818375316 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction @@ -17,5 +17,22 @@ # ID (int) data modify storage asset:object ID set value 1153 # フィールド(オプション) + +# 移動速度 data modify storage asset:object Field.ChaseSpeed set value 0.4 - data modify storage asset:object Field.SearchInterval set value 0 + +# 負荷軽減用のインターバル + data modify storage asset:object Field.SearchInterval._ set value 0 + data modify storage asset:object Field.SearchInterval.Max set value 3 + +# 最大追跡時間 + data modify storage asset:object Field.ChaseTick._ set value 0 + data modify storage asset:object Field.ChaseTick.Max set value 60 + +# 攻撃発生までのディレイ + data modify storage asset:object Field.AttackDelay._ set value 0 + data modify storage asset:object Field.AttackDelay.Max set value 5 + +# 攻撃のクールダウン + data modify storage asset:object Field.AttackCD._ set value 0 + data modify storage asset:object Field.AttackCD.Max set value 20 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction index 42c495d9a0a..b0613ade915 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction @@ -16,6 +16,9 @@ execute as @a if score @s UserID = $UserID Temporary run tag @s add 1153.Owner scoreboard players reset $UserID Temporary +# 攻撃のCD + execute store result storage asset:context this.AttackCD._ int 0.9999999999 run data get storage asset:context this.AttackCD._ + # Tick加算 scoreboard players add @s General.Object.Tick 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction index aa29d2e8dce..41bcfd6f53a 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction @@ -4,13 +4,17 @@ # # @within function asset:object/1153.flame_butterfly/tick/ -# 敵が近くにいなければOwnerの方へ移動 - execute unless function asset:object/1153.flame_butterfly/predicate/near_enemy run return run function asset:object/1153.flame_butterfly/tick/move/no_enemy - -# unless functionでreturnしているので、ここからの判定にif functionは多分要らない +# ターゲットがいるかどうかチェックする +# ターゲットにできる敵がOwnerの周囲にいなければOwnerを追尾する # TargetMobUUIDが設定されてなければ、ターゲットしうる敵がいるか探す - execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/search_target/ + execute unless data storage asset:context this.TargetMobUUID if function asset:object/1153.flame_butterfly/predicate/near_enemy run function asset:object/1153.flame_butterfly/tick/move/search_target/ + +# TargetMobUUIDがあるかつOwnerが周囲にいなければTargetMobUUIDを削除 + execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flame_butterfly/predicate/near_owner run function asset:object/1153.flame_butterfly/tick/move/common/reset # TargetMobUUIDがあれば追尾する - execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/chase_enemy.m with storage asset:context this + execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m with storage asset:context this + +# ターゲットがいなければOwnerの方へ移動 + execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/to_owner diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction new file mode 100644 index 00000000000..7fadc156ba6 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction @@ -0,0 +1,19 @@ +#> asset:object/1153.flame_butterfly/tick/move/attack/ +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m + + # tellraw @a {"storage":"asset:context","nbt":"this"} + +# 発生までのディレイ + execute store result storage asset:context this.AttackDelay._ int 0.9999999999 run data get storage asset:context this.AttackDelay._ + +# 演出 + # execute if data storage asset:context this.AttackDelay{_:4} run function asset:object/1153.flame_butterfly/tick/move/attack/vfx/1 + +# 攻撃 + execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/move/attack/attack + # execute if data storage asset:context this.AttackDelay{_:0} run data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max + # execute if data storage asset:context this.AttackDelay{_:0} run data modify storage asset:context this.AttackDelay._ set from storage asset:context this.AttackDelay.Max + #execute if data storage asset:context this.AttackCD{_:0} run function asset:object/1153.flame_butterfly/tick/move/attack/attack diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/attack.mcfunction new file mode 100644 index 00000000000..fe72042fc48 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/attack.mcfunction @@ -0,0 +1,39 @@ +#> asset:object/1153.flame_butterfly/tick/move/attack/attack +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/attack/ + +#> Private +# @private + #declare tag Target + #declare score_holder $UserID + #declare score_holder $HealthPer + +# 演出 + execute rotated ~90 25 run function asset:object/1153.flame_butterfly/tick/move/attack/vfx/2 + execute rotated ~90 -25 run function asset:object/1153.flame_butterfly/tick/move/attack/vfx/2 + +# 自身の体力割合を取得 + execute as @p[tag=1153.Owner] run function api:entity/player/get_health_per + execute store result score $HealthPer Temporary run data get storage api: Return.HealthPer 100 + +# 対象選定 + tag @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..3.5] add Target + execute positioned ~-2 ~-2 ~-2 run tag @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] add Target + +# ダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage.Default + execute unless score $HealthPer Temporary matches 50.. run data modify storage api: Argument.Damage set from storage asset:context this.Damage.LowHealthPer + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" + execute as @p[tag=1153.Owner] run function api:damage/modifier + execute as @e[type=#lib:living_without_player,tag=Target,distance=..10] run function api:damage/ + function api:damage/reset + +# リセット + scoreboard players reset $UserID Temporary + scoreboard players reset $HealthPer Temporary + tag @e[type=#lib:living_without_player,tag=Target,distance=..10] remove Target + data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max + function asset:object/1153.flame_butterfly/tick/move/common/reset diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/1.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/1.mcfunction new file mode 100644 index 00000000000..7f4f88ac58e --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/1.mcfunction @@ -0,0 +1,26 @@ +#> asset:object/1153.flame_butterfly/tick/move/attack/vfx/1 +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/attack/ + +particle flame ^2 ^ ^0 ^-20000000 ^ ^0 0.00000001 0 +particle flame ^1.9021 ^ ^0.618 ^-19021000 ^ ^-6180000 0.00000001 0 +particle flame ^1.618 ^ ^1.1755 ^-16180000. ^ ^-11755000 0.00000001 0 +particle flame ^1.1755 ^ ^1.618 ^-11755000 ^ ^-16180000. 0.00000001 0 +particle flame ^0.618 ^ ^1.9021 ^-6180000 ^ ^-19021000 0.00000001 0 +particle flame ^0 ^ ^2 ^0 ^ ^-20000000 0.00000001 0 +particle flame ^-0.618 ^ ^1.9021 ^6180000 ^ ^-19021000 0.00000001 0 +particle flame ^-1.1755 ^ ^1.618 ^11755000 ^ ^-16180000. 0.00000001 0 +particle flame ^-1.618 ^ ^1.1755 ^16180000. ^ ^-11755000 0.00000001 0 +particle flame ^-1.9021 ^ ^0.618 ^19021000 ^ ^-6180000 0.00000001 0 +particle flame ^-2 ^ ^0 ^20000000 ^ ^0 0.00000001 0 +particle flame ^-1.9021 ^ ^-0.618 ^19021000 ^ ^6180000 0.00000001 0 +particle flame ^-1.618 ^ ^-1.1755 ^16180000. ^ ^11755000 0.00000001 0 +particle flame ^-1.1755 ^ ^-1.618 ^11755000 ^ ^16180000. 0.00000001 0 +particle flame ^-0.618 ^ ^-1.9021 ^6180000 ^ ^19021000 0.00000001 0 +particle flame ^0 ^ ^-2 ^0 ^ ^20000000 0.00000001 0 +particle flame ^0.618 ^ ^-1.9021 ^-6180000 ^ ^19021000 0.00000001 0 +particle flame ^1.1755 ^ ^-1.618 ^-11755000 ^ ^16180000. 0.00000001 0 +particle flame ^1.618 ^ ^-1.1755 ^-16180000. ^ ^11755000 0.00000001 0 +particle flame ^1.9021 ^ ^-0.618 ^-19021000 ^ ^6180000 0.00000001 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/2.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/2.mcfunction new file mode 100644 index 00000000000..5ab378c8d8f --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/2.mcfunction @@ -0,0 +1,36 @@ +#> asset:object/1153.flame_butterfly/tick/move/attack/vfx/2 +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/attack/attack + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkqgBxwBmAhgJwDsNAtDQEYdOsAslABl6sGANhQpWEjjUoBGSqQCsQ-GAB2dALYJkgMMUABHLAEYdDNoDOScCgD2hdRCQAmSgRRwncDDbAA3OmxCXXAADyQBAihIgF9YggtSNEJrRDkBTKyCSwhzZ0QosDhsbDQYS10Moow7PIhdIrRLAFFS8sqWgEdCIOwoAGUzT3JEemxK+IBdIA_3 +# 円 1 +particle flame ~ ~ ~ ^0 ^ ^-1000000 0.00000024 0 +particle flame ~ ~ ~ ^222520.93396 ^ ^-974927.91218 0.00000024 0 +particle flame ~ ~ ~ ^433883.73912 ^ ^-900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^623489.80186 ^ ^-781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^781831.48247 ^ ^-623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^900968.8679 ^ ^-433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^974927.91218 ^ ^-222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^1000000 ^ ^0 0.00000024 0 +particle flame ~ ~ ~ ^974927.91218 ^ ^222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^900968.8679 ^ ^433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^781831.48247 ^ ^623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^623489.80186 ^ ^781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^433883.73912 ^ ^900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^222520.93396 ^ ^974927.91218 0.00000024 0 +particle flame ~ ~ ~ ^0 ^ ^1000000 0.00000024 0 +particle flame ~ ~ ~ ^-222520.93396 ^ ^974927.91218 0.00000024 0 +particle flame ~ ~ ~ ^-433883.73912 ^ ^900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^-623489.80186 ^ ^781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^-781831.48247 ^ ^623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^-900968.8679 ^ ^433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^-974927.91218 ^ ^222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^-1000000 ^ ^0 0.00000024 0 +particle flame ~ ~ ~ ^-974927.91218 ^ ^-222520.93396 0.00000024 0 +particle flame ~ ~ ~ ^-900968.8679 ^ ^-433883.73912 0.00000024 0 +particle flame ~ ~ ~ ^-781831.48247 ^ ^-623489.80186 0.00000024 0 +particle flame ~ ~ ~ ^-623489.80186 ^ ^-781831.48247 0.00000024 0 +particle flame ~ ~ ~ ^-433883.73912 ^ ^-900968.8679 0.00000024 0 +particle flame ~ ~ ~ ^-222520.93396 ^ ^-974927.91218 0.00000024 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy.m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction similarity index 90% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy.m.mcfunction rename to Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction index 1cdb6e548f6..50b1b16538a 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy.m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction @@ -1,9 +1,9 @@ -#> asset:object/1153.flame_butterfly/tick/move/chase_enemy.m +#> asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m # # @input args: # TargetMobUUID : int # ChaseSpeed : float -# @within function asset:object/1153.flame_butterfly/tick/move/ +# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m # 対象の方へ向きだけ追尾する $execute facing entity @e[type=#lib:living_without_player,scores={MobUUID=$(TargetMobUUID)},distance=..20,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction new file mode 100644 index 00000000000..46468c4a291 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction @@ -0,0 +1,25 @@ +#> asset:object/1153.flame_butterfly/tick/move/chase_enemy/m +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/ + +# ChaseTickが0になるまで敵を追跡する +# - 0になったらその敵への追跡を諦める +# - 0になる前に接触すれば攻撃する + +# 追跡時間のデクリメント + execute store result storage asset:context this.ChaseTick._ int 0.9999999999 run data get storage asset:context this.ChaseTick._ + +# 追跡時間が0になったらリセットする + execute if data storage asset:context this.ChaseTick{_:0} run return run function asset:object/1153.flame_butterfly/tick/move/common/reset + +# 攻撃前のディレイがないなら追跡 + execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m with storage asset:context this + +# ターゲットが近くにいれば攻撃モードになる + $execute if data storage asset:context this.AttackCD{_:0} at @s positioned ~-1.2 ~-1.2 ~-1.2 if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},dx=1.4,dy=1.4,dz=1.4] run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode + +# 攻撃モードなら攻撃処理 + execute if data storage asset:context this{IsAttackMode:true} run function asset:object/1153.flame_butterfly/tick/move/attack/ + execute if data storage asset:context this{IsAttackMode:true} run data modify storage asset:context this.ChaseTick._ set from storage asset:context this.ChaseTick.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction new file mode 100644 index 00000000000..d6479bdf3bf --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m + +# 攻撃モード + data modify storage asset:context this.IsAttackMode set value true + +# 攻撃前のディレイ設定 + data modify storage asset:context this.AttackDelay._ set from storage asset:context this.AttackDelay.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction new file mode 100644 index 00000000000..02499f4e9a7 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1153.flame_butterfly/tick/move/common/reset +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/** + +# TargetMobUUIDを消す + data remove storage asset:context this.TargetMobUUID + data modify storage asset:context this.IsAttackMode set value false diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction index bbffe9d5ba9..e4a53799cb9 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction @@ -5,9 +5,9 @@ # @within function asset:object/1153.flame_butterfly/tick/move/ # 状況によっては毎tick大量の再帰をしてしまうため、数tickに1回のみ判定する - execute store result storage asset:context this.SearchInterval int 0.9999999999 run data get storage asset:context this.SearchInterval - execute unless data storage asset:context this{SearchInterval:0} run return fail - data modify storage asset:context this.SearchInterval set value 3 + execute store result storage asset:context this.SearchInterval._ int 0.9999999999 run data get storage asset:context this.SearchInterval._ + execute unless data storage asset:context this.SearchInterval{_:0} run return fail + data modify storage asset:context this.SearchInterval._ set from storage asset:context this.SearchInterval.Max # 壁を貫通してない近くの敵を探す execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flame_butterfly/tick/move/search_target/recursive diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction index c1a370ca05b..665c242abdb 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction @@ -7,4 +7,5 @@ # 自身のMobUUIDをフィールドに突っ込む execute store result storage asset:context this.TargetMobUUID int 1 run scoreboard players get @s MobUUID -# +# 追跡時間初期化 + data modify storage asset:context this.ChaseTick._ set from storage asset:context this.ChaseTick.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction similarity index 85% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction rename to Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction index 77dba3331d8..718fa268c5b 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/no_enemy.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction @@ -1,4 +1,4 @@ -#> asset:object/1153.flame_butterfly/tick/move/no_enemy +#> asset:object/1153.flame_butterfly/tick/move/to_owner # # # @@ -10,9 +10,6 @@ # Ownerの位置基準でMarkerを召喚し、そこへ追尾する感じで移動する -# 普段はプレイヤーの近くで飛んでいる -# 壁越しではない敵を検知するとそっちに追尾して飛んでいき、爆発して範囲攻撃 - # 召喚 execute as @p[tag=1153.Owner] at @s rotated ~ 0 anchored eyes positioned ^-1.8 ^ ^1.1 run summon marker ~ ~ ~ {Tags:["1153.TempMarker"]} diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction index 1fc62be262d..64ebdc4a41c 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction @@ -2,7 +2,7 @@ # # @input args: # Speed : float 移動量の半分 -# @within function asset:object/1153.flame_butterfly/tick/move/collision/calc_half.m +# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/move/chase_enemy/ # x $execute positioned 0.0 0.0 0.0 positioned ^ ^ ^-1 positioned 0.0 ~ ~ positioned ^ ^ ^0.5 facing 0.0 0.0 0.0 positioned as @s positioned ^ ^ ^-$(Speed) rotated as @s positioned ^ ^ ^$(Speed) if block ~ ~ ~ #lib:no_collision/ run tp @s ~ ~ ~ diff --git a/Asset/data/asset/functions/object/alias/1153/init.mcfunction b/Asset/data/asset/functions/object/alias/1153/init.mcfunction new file mode 100644 index 00000000000..a5d6532d83f --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1153/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1153/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1153.flame_butterfly/init/ \ No newline at end of file From 5457b8507b673589aa97ffa65e79dda6c4e65ccf Mon Sep 17 00:00:00 2001 From: Lapis-LJA <87566955+Lapis-LJA@users.noreply.github.com> Date: Thu, 18 Dec 2025 14:19:58 +0900 Subject: [PATCH 05/34] =?UTF-8?q?=E9=80=94=E4=B8=AD=E7=B5=8C=E9=81=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1153.flame_butterfly/init/.mcfunction | 2 +- .../1153.flame_butterfly/register.mcfunction | 4 ++-- .../1153.flame_butterfly/tick/.mcfunction | 2 +- .../tick/attack/.mcfunction | 13 +++++++++++++ .../tick/{move => }/attack/attack.mcfunction | 10 +++++----- .../{move => attack}/attack/vfx/1.mcfunction | 4 ++-- .../{move => attack}/attack/vfx/2.mcfunction | 4 ++-- .../tick/attack/cooldown/.mcfunction | 7 +++++++ .../tick/attack/cooldown/reset.mcfunction | 8 ++++++++ .../tick/move/attack/.mcfunction | 19 ------------------- .../tick/move/chase_enemy/m.mcfunction | 7 +++++-- .../chase_enemy/set_attack_mode.mcfunction | 2 ++ .../tick/move/common/reset.mcfunction | 2 +- 13 files changed, 49 insertions(+), 35 deletions(-) create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction rename Asset/data/asset/functions/object/1153.flame_butterfly/tick/{move => }/attack/attack.mcfunction (83%) rename Asset/data/asset/functions/object/1153.flame_butterfly/tick/{move => attack}/attack/vfx/1.mcfunction (90%) rename Asset/data/asset/functions/object/1153.flame_butterfly/tick/{move => attack}/attack/vfx/2.mcfunction (93%) create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/reset.mcfunction delete mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction index a4a935a973e..6f9e73b8289 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction @@ -5,4 +5,4 @@ # @within asset:object/alias/1153/init # AttackDelay初期化 - data modify storage asset:context this.Attack._ set from storage asset:context this.Attack.Max + # data modify storage asset:context this.AttackDelay._ set from storage asset:context this.AttackDelay.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction index cf818375316..2c4c8b8c127 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction @@ -31,8 +31,8 @@ # 攻撃発生までのディレイ data modify storage asset:object Field.AttackDelay._ set value 0 - data modify storage asset:object Field.AttackDelay.Max set value 5 + data modify storage asset:object Field.AttackDelay.Max set value 8 # 攻撃のクールダウン data modify storage asset:object Field.AttackCD._ set value 0 - data modify storage asset:object Field.AttackCD.Max set value 20 + data modify storage asset:object Field.AttackCD.Max set value 25 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction index b0613ade915..e1cdbd8a231 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction @@ -17,7 +17,7 @@ scoreboard players reset $UserID Temporary # 攻撃のCD - execute store result storage asset:context this.AttackCD._ int 0.9999999999 run data get storage asset:context this.AttackCD._ + function asset:object/1153.flame_butterfly/tick/attack/cooldown/ # Tick加算 scoreboard players add @s General.Object.Tick 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction new file mode 100644 index 00000000000..89154e375b5 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction @@ -0,0 +1,13 @@ +#> asset:object/1153.flame_butterfly/tick/attack/ +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m + +# 発生までのディレイ + execute store result storage asset:context this.AttackDelay._ int 0.9999999999 run data get storage asset:context this.AttackDelay._ + +# 攻撃 + execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/attack/attack + +say a diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction similarity index 83% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/attack.mcfunction rename to Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction index fe72042fc48..b2cb62ad02f 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/attack.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/attack/attack +#> asset:object/1153.flame_butterfly/tick/attack/attack # # # -# @within function asset:object/1153.flame_butterfly/tick/move/attack/ +# @within function asset:object/1153.flame_butterfly/tick/attack/ #> Private # @private @@ -11,8 +11,8 @@ #declare score_holder $HealthPer # 演出 - execute rotated ~90 25 run function asset:object/1153.flame_butterfly/tick/move/attack/vfx/2 - execute rotated ~90 -25 run function asset:object/1153.flame_butterfly/tick/move/attack/vfx/2 + execute rotated ~90 25 run function asset:object/1153.flame_butterfly/tick/attack/attack/vfx/2 + execute rotated ~90 -25 run function asset:object/1153.flame_butterfly/tick/attack/attack/vfx/2 # 自身の体力割合を取得 execute as @p[tag=1153.Owner] run function api:entity/player/get_health_per @@ -35,5 +35,5 @@ scoreboard players reset $UserID Temporary scoreboard players reset $HealthPer Temporary tag @e[type=#lib:living_without_player,tag=Target,distance=..10] remove Target - data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max + function asset:object/1153.flame_butterfly/tick/attack/cooldown/reset function asset:object/1153.flame_butterfly/tick/move/common/reset diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/1.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/1.mcfunction similarity index 90% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/1.mcfunction rename to Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/1.mcfunction index 7f4f88ac58e..4cda6f14927 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/1.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/1.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/attack/vfx/1 +#> asset:object/1153.flame_butterfly/tick/attack/attack/vfx/1 # # # -# @within function asset:object/1153.flame_butterfly/tick/move/attack/ +# @within function asset:object/1153.flame_butterfly/tick/attack/attack/ particle flame ^2 ^ ^0 ^-20000000 ^ ^0 0.00000001 0 particle flame ^1.9021 ^ ^0.618 ^-19021000 ^ ^-6180000 0.00000001 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/2.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/2.mcfunction similarity index 93% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/2.mcfunction rename to Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/2.mcfunction index 5ab378c8d8f..54b0e25c9ed 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/vfx/2.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/2.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/attack/vfx/2 +#> asset:object/1153.flame_butterfly/tick/attack/attack/vfx/2 # # # -# @within function asset:object/1153.flame_butterfly/tick/move/attack/attack +# @within function asset:object/1153.flame_butterfly/tick/attack/attack # [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkqgBxwBmAhgJwDsNAtDQEYdOsAslABl6sGANhQpWEjjUoBGSqQCsQ-GAB2dALYJkgMMUABHLAEYdDNoDOScCgD2hdRCQAmSgRRwncDDbAA3OmxCXXAADyQBAihIgF9YggtSNEJrRDkBTKyCSwhzZ0QosDhsbDQYS10Moow7PIhdIrRLAFFS8sqWgEdCIOwoAGUzT3JEemxK+IBdIA_3 # 円 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/.mcfunction new file mode 100644 index 00000000000..744d6dd0dee --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1153.flame_butterfly/tick/attack/cooldown/ +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/ + + execute store result storage asset:context this.AttackCD._ int 0.9999999999 run data get storage asset:context this.AttackCD._ diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/reset.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/reset.mcfunction new file mode 100644 index 00000000000..afe2eeff541 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/reset.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1153.flame_butterfly/tick/attack/cooldown/reset +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/attack/attack + +# 初期化 + data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction deleted file mode 100644 index 7fadc156ba6..00000000000 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/attack/.mcfunction +++ /dev/null @@ -1,19 +0,0 @@ -#> asset:object/1153.flame_butterfly/tick/move/attack/ -# -# -# -# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m - - # tellraw @a {"storage":"asset:context","nbt":"this"} - -# 発生までのディレイ - execute store result storage asset:context this.AttackDelay._ int 0.9999999999 run data get storage asset:context this.AttackDelay._ - -# 演出 - # execute if data storage asset:context this.AttackDelay{_:4} run function asset:object/1153.flame_butterfly/tick/move/attack/vfx/1 - -# 攻撃 - execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/move/attack/attack - # execute if data storage asset:context this.AttackDelay{_:0} run data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max - # execute if data storage asset:context this.AttackDelay{_:0} run data modify storage asset:context this.AttackDelay._ set from storage asset:context this.AttackDelay.Max - #execute if data storage asset:context this.AttackCD{_:0} run function asset:object/1153.flame_butterfly/tick/move/attack/attack diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction index 46468c4a291..956f03502a8 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction @@ -8,6 +8,9 @@ # - 0になったらその敵への追跡を諦める # - 0になる前に接触すれば攻撃する + tellraw @a {"storage":"asset:context","nbt":"this.IsAttackMode"} + tellraw @a {"storage":"asset:context","nbt":"this.TargetMobUUID"} + # 追跡時間のデクリメント execute store result storage asset:context this.ChaseTick._ int 0.9999999999 run data get storage asset:context this.ChaseTick._ @@ -18,8 +21,8 @@ execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m with storage asset:context this # ターゲットが近くにいれば攻撃モードになる - $execute if data storage asset:context this.AttackCD{_:0} at @s positioned ~-1.2 ~-1.2 ~-1.2 if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},dx=1.4,dy=1.4,dz=1.4] run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode + $execute unless data storage asset:context this{IsAttackMode:true} if data storage asset:context this.AttackCD{_:0} at @s positioned ~-1.2 ~-1.2 ~-1.2 if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},dx=1.4,dy=1.4,dz=1.4] run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode # 攻撃モードなら攻撃処理 - execute if data storage asset:context this{IsAttackMode:true} run function asset:object/1153.flame_butterfly/tick/move/attack/ + execute if data storage asset:context this{IsAttackMode:true} run function asset:object/1153.flame_butterfly/tick/attack/ execute if data storage asset:context this{IsAttackMode:true} run data modify storage asset:context this.ChaseTick._ set from storage asset:context this.ChaseTick.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction index d6479bdf3bf..bfbecc6b668 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction @@ -9,3 +9,5 @@ # 攻撃前のディレイ設定 data modify storage asset:context this.AttackDelay._ set from storage asset:context this.AttackDelay.Max + +say b diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction index 02499f4e9a7..9ba693756df 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction @@ -2,7 +2,7 @@ # # # -# @within function asset:object/1153.flame_butterfly/tick/move/** +# @within function asset:object/1153.flame_butterfly/tick/** # TargetMobUUIDを消す data remove storage asset:context this.TargetMobUUID From 2f6d8dbf2cad19ded48c2f42dc0602c7559f1d3e Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 17:14:39 +0900 Subject: [PATCH 06/34] =?UTF-8?q?=E7=89=B9=E5=AE=9A=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E4=B8=8B=E3=81=A7=E5=81=9C=E6=AD=A2=E3=81=97=E3=81=A6=E3=81=97?= =?UTF-8?q?=E3=81=BE=E3=81=86=E3=83=90=E3=82=B0=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../near_target/neutral_near/.mcfunction | 10 ++++++++++ .../near_target/neutral_near/m.mcfunction | 9 +++++++++ .../predicate/near_target/very_near/.mcfunction | 10 ++++++++++ .../predicate/near_target/very_near/m.mcfunction | 9 +++++++++ .../1153.flame_butterfly/register.mcfunction | 5 ++++- .../object/1153.flame_butterfly/tick/.mcfunction | 5 ++++- .../1153.flame_butterfly/tick/attack/.mcfunction | 2 -- .../tick/attack/attack.mcfunction | 11 +++-------- .../1153.flame_butterfly/tick/move/.mcfunction | 13 +++++++++---- .../tick/move/chase_enemy/chase.m.mcfunction | 2 +- .../tick/move/chase_enemy/m.mcfunction | 15 +++++++-------- .../move/chase_enemy/set_attack_mode.mcfunction | 2 -- .../tick/move/common/reset.mcfunction | 4 +++- .../tick/move/search_target/.mcfunction | 2 -- .../tick/move/to_owner.mcfunction | 2 +- .../tick/move/with_collision.m.mcfunction | 2 +- 16 files changed, 71 insertions(+), 32 deletions(-) create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/m.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/m.mcfunction diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/.mcfunction new file mode 100644 index 00000000000..4e2259e33b9 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/ +# +# +# +# @within function asset:object/1153.flame_butterfly/tick/** + +execute store result storage asset:context this.Success int 1 run function asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/m with storage asset:context this + +execute if data storage asset:context this{Success:1} run return 1 +execute if data storage asset:context this{Success:0} run return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/m.mcfunction new file mode 100644 index 00000000000..d7e71bc8c76 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/m.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/m +# +# +# +# @within function asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/ + +$execute if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},distance=..10] run return 1 + +return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/.mcfunction new file mode 100644 index 00000000000..f5dee513653 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1153.flame_butterfly/predicate/near_target/very_near/ +# +# +# +# @within function asset:object/1153.flame_butterfly/** + +execute store result storage asset:context this.Success int 1 run function asset:object/1153.flame_butterfly/predicate/near_target/very_near/m with storage asset:context this + +execute if data storage asset:context this{Success:1} run return 1 +execute if data storage asset:context this{Success:0} run return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/m.mcfunction new file mode 100644 index 00000000000..7773082621d --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/m.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1153.flame_butterfly/predicate/near_target/very_near/m +# +# +# +# @within function asset:object/1153.flame_butterfly/predicate/near_target/very_near/ + +$execute positioned ~-1.2 ~-1.2 ~-1.2 if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},dx=1.4,dy=1.4,dz=1.4] run return 1 + +return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction index 2c4c8b8c127..c9f55c22384 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction @@ -19,7 +19,7 @@ # フィールド(オプション) # 移動速度 - data modify storage asset:object Field.ChaseSpeed set value 0.4 + data modify storage asset:object Field.ChaseSpeed set value 0.6 # 負荷軽減用のインターバル data modify storage asset:object Field.SearchInterval._ set value 0 @@ -36,3 +36,6 @@ # 攻撃のクールダウン data modify storage asset:object Field.AttackCD._ set value 0 data modify storage asset:object Field.AttackCD.Max set value 25 + +# 攻撃モードか? + data modify storage asset:object Field.IsAttackMode set value false diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction index e1cdbd8a231..6fa4c30c826 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction @@ -16,6 +16,9 @@ execute as @a if score @s UserID = $UserID Temporary run tag @s add 1153.Owner scoreboard players reset $UserID Temporary +# debug Ownerがいないなら消滅 + execute unless entity @p[tag=1153.Owner] run function asset:object/1153.flame_butterfly/tick/kill + # 攻撃のCD function asset:object/1153.flame_butterfly/tick/attack/cooldown/ @@ -32,4 +35,4 @@ tag @p[tag=1153.Owner] remove 1153.Owner # 消滅処理 - execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flame_butterfly/tick/kill + #execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flame_butterfly/tick/kill diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction index 89154e375b5..e7d51165090 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction @@ -9,5 +9,3 @@ # 攻撃 execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/attack/attack - -say a diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction index b2cb62ad02f..9a7fe306a91 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction @@ -6,7 +6,6 @@ #> Private # @private - #declare tag Target #declare score_holder $UserID #declare score_holder $HealthPer @@ -18,22 +17,18 @@ execute as @p[tag=1153.Owner] run function api:entity/player/get_health_per execute store result score $HealthPer Temporary run data get storage api: Return.HealthPer 100 -# 対象選定 - tag @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..3.5] add Target - execute positioned ~-2 ~-2 ~-2 run tag @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] add Target - # ダメージ data modify storage api: Argument.Damage set from storage asset:context this.Damage.Default execute unless score $HealthPer Temporary matches 50.. run data modify storage api: Argument.Damage set from storage asset:context this.Damage.LowHealthPer data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "Fire" execute as @p[tag=1153.Owner] run function api:damage/modifier - execute as @e[type=#lib:living_without_player,tag=Target,distance=..10] run function api:damage/ + execute positioned ~-2 ~-2 ~-2 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] run function api:damage/ function api:damage/reset # リセット scoreboard players reset $UserID Temporary scoreboard players reset $HealthPer Temporary - tag @e[type=#lib:living_without_player,tag=Target,distance=..10] remove Target function asset:object/1153.flame_butterfly/tick/attack/cooldown/reset - function asset:object/1153.flame_butterfly/tick/move/common/reset + # function asset:object/1153.flame_butterfly/tick/move/common/reset + data modify storage asset:context this.IsAttackMode set value false diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction index 41bcfd6f53a..fbeddf7fe44 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction @@ -7,14 +7,19 @@ # ターゲットがいるかどうかチェックする # ターゲットにできる敵がOwnerの周囲にいなければOwnerを追尾する -# TargetMobUUIDが設定されてなければ、ターゲットしうる敵がいるか探す +# TargetMobUUIDがない && Ownerの近くに敵がいればTargetMobUUIDを設定 execute unless data storage asset:context this.TargetMobUUID if function asset:object/1153.flame_butterfly/predicate/near_enemy run function asset:object/1153.flame_butterfly/tick/move/search_target/ -# TargetMobUUIDがあるかつOwnerが周囲にいなければTargetMobUUIDを削除 +# TargetMobUUIDがある && Ownerが周囲にいない ならTargetMobUUIDを削除 execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flame_butterfly/predicate/near_owner run function asset:object/1153.flame_butterfly/tick/move/common/reset -# TargetMobUUIDがあれば追尾する +# TargetMobUUIDがある && Ownerの周囲にTargetがいない ならTargetMobUUIDを削除 + execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/ run function asset:object/1153.flame_butterfly/tick/move/common/reset + +# tellraw @a {"storage":"asset:context","nbt":"this.TargetMobUUID"} + +# TargetMobUUIDがあれば対象へ追尾する execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m with storage asset:context this -# ターゲットがいなければOwnerの方へ移動 +# TargetMobUUIDがなければOwnerの方へ移動 execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/to_owner diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction index 50b1b16538a..2eaefcef103 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction @@ -18,7 +18,7 @@ # Speedの半分を引数とする $execute unless data storage asset:temp 1153{Success:true} run data modify storage asset:temp 1153.Speed set value $(ChaseSpeed) execute unless data storage asset:temp 1153{Success:true} store result storage asset:temp 1153.Speed float 0.005 run data get storage asset:temp 1061.Speed 100 - $execute unless data storage asset:temp 1153{Success:true} at @s run function asset:object/1153.flame_butterfly/tick/move/with_collision.m {Speed:$(ChaseSpeed)} + execute unless data storage asset:temp 1153{Success:true} at @s run function asset:object/1153.flame_butterfly/tick/move/with_collision.m with storage asset:temp 1153 # リセット data remove storage asset:temp 1153 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction index 956f03502a8..3d0559c820c 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction @@ -8,20 +8,19 @@ # - 0になったらその敵への追跡を諦める # - 0になる前に接触すれば攻撃する - tellraw @a {"storage":"asset:context","nbt":"this.IsAttackMode"} - tellraw @a {"storage":"asset:context","nbt":"this.TargetMobUUID"} + #tellraw @a {"storage":"asset:context","nbt":"this.IsAttackMode"} + #tellraw @a {"storage":"asset:context","nbt":"this.TargetMobUUID"} + tellraw @a {"storage":"asset:context","nbt":"this.AttackDelay"} -# 追跡時間のデクリメント +# 追跡時間 execute store result storage asset:context this.ChaseTick._ int 0.9999999999 run data get storage asset:context this.ChaseTick._ - -# 追跡時間が0になったらリセットする execute if data storage asset:context this.ChaseTick{_:0} run return run function asset:object/1153.flame_butterfly/tick/move/common/reset -# 攻撃前のディレイがないなら追跡 - execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m with storage asset:context this +# 攻撃前のディレイがない && 対象が近くにいないなら追跡 + execute if data storage asset:context this.AttackDelay{_:0} unless function asset:object/1153.flame_butterfly/predicate/near_target/very_near/ run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m with storage asset:context this # ターゲットが近くにいれば攻撃モードになる - $execute unless data storage asset:context this{IsAttackMode:true} if data storage asset:context this.AttackCD{_:0} at @s positioned ~-1.2 ~-1.2 ~-1.2 if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},dx=1.4,dy=1.4,dz=1.4] run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode + execute if data storage asset:context this{IsAttackMode:false} if data storage asset:context this.AttackCD{_:0} if function asset:object/1153.flame_butterfly/predicate/near_target/very_near/ run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode # 攻撃モードなら攻撃処理 execute if data storage asset:context this{IsAttackMode:true} run function asset:object/1153.flame_butterfly/tick/attack/ diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction index bfbecc6b668..d6479bdf3bf 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction @@ -9,5 +9,3 @@ # 攻撃前のディレイ設定 data modify storage asset:context this.AttackDelay._ set from storage asset:context this.AttackDelay.Max - -say b diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction index 9ba693756df..42136eabd5f 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction @@ -4,6 +4,8 @@ # # @within function asset:object/1153.flame_butterfly/tick/** -# TargetMobUUIDを消す +# TargetMobUUIDとIsAttackModeをリセットする data remove storage asset:context this.TargetMobUUID data modify storage asset:context this.IsAttackMode set value false + data modify storage asset:context this.AttackDelay._ set value 0 + #data modify storage asset:context this.ChaseTick._ set from storage asset:context this.ChaseTick.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction index e4a53799cb9..fc352f16b5e 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction @@ -11,5 +11,3 @@ # 壁を貫通してない近くの敵を探す execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flame_butterfly/tick/move/search_target/recursive - -# say SearchTarget diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction index 718fa268c5b..8e7c0aed99c 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction @@ -13,7 +13,7 @@ # 召喚 execute as @p[tag=1153.Owner] at @s rotated ~ 0 anchored eyes positioned ^-1.8 ^ ^1.1 run summon marker ~ ~ ~ {Tags:["1153.TempMarker"]} -# 追尾 近い場合は移動をキャンセル +# マーカーに近くなければ追尾する execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ^ ^ ^0.3 ~ ~ # マーカーが近い場合は、自身の向きを少しずつOwnerに合わせる diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction index 64ebdc4a41c..f9fb6f08fea 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction @@ -2,7 +2,7 @@ # # @input args: # Speed : float 移動量の半分 -# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/move/chase_enemy/ +# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m # x $execute positioned 0.0 0.0 0.0 positioned ^ ^ ^-1 positioned 0.0 ~ ~ positioned ^ ^ ^0.5 facing 0.0 0.0 0.0 positioned as @s positioned ^ ^ ^-$(Speed) rotated as @s positioned ^ ^ ^$(Speed) if block ~ ~ ~ #lib:no_collision/ run tp @s ~ ~ ~ From 45456fe2a7860f8be09d9abaed793d0212b7fdf8 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 17:16:29 +0900 Subject: [PATCH 07/34] =?UTF-8?q?=E3=82=B3=E3=83=A1=E3=83=B3=E3=83=88?= =?UTF-8?q?=E3=82=92=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/object/1153.flame_butterfly/tick/.mcfunction | 5 +---- .../1153.flame_butterfly/tick/attack/attack.mcfunction | 1 - .../object/1153.flame_butterfly/tick/move/.mcfunction | 1 - .../1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction | 4 ---- .../1153.flame_butterfly/tick/move/common/reset.mcfunction | 3 +-- 5 files changed, 2 insertions(+), 12 deletions(-) diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction index 6fa4c30c826..e1cdbd8a231 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction @@ -16,9 +16,6 @@ execute as @a if score @s UserID = $UserID Temporary run tag @s add 1153.Owner scoreboard players reset $UserID Temporary -# debug Ownerがいないなら消滅 - execute unless entity @p[tag=1153.Owner] run function asset:object/1153.flame_butterfly/tick/kill - # 攻撃のCD function asset:object/1153.flame_butterfly/tick/attack/cooldown/ @@ -35,4 +32,4 @@ tag @p[tag=1153.Owner] remove 1153.Owner # 消滅処理 - #execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flame_butterfly/tick/kill + execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flame_butterfly/tick/kill diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction index 9a7fe306a91..4a2f67ab50e 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction @@ -30,5 +30,4 @@ scoreboard players reset $UserID Temporary scoreboard players reset $HealthPer Temporary function asset:object/1153.flame_butterfly/tick/attack/cooldown/reset - # function asset:object/1153.flame_butterfly/tick/move/common/reset data modify storage asset:context this.IsAttackMode set value false diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction index fbeddf7fe44..6f36b70c980 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction @@ -16,7 +16,6 @@ # TargetMobUUIDがある && Ownerの周囲にTargetがいない ならTargetMobUUIDを削除 execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/ run function asset:object/1153.flame_butterfly/tick/move/common/reset -# tellraw @a {"storage":"asset:context","nbt":"this.TargetMobUUID"} # TargetMobUUIDがあれば対象へ追尾する execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m with storage asset:context this diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction index 3d0559c820c..6985aed34f8 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction @@ -8,10 +8,6 @@ # - 0になったらその敵への追跡を諦める # - 0になる前に接触すれば攻撃する - #tellraw @a {"storage":"asset:context","nbt":"this.IsAttackMode"} - #tellraw @a {"storage":"asset:context","nbt":"this.TargetMobUUID"} - tellraw @a {"storage":"asset:context","nbt":"this.AttackDelay"} - # 追跡時間 execute store result storage asset:context this.ChaseTick._ int 0.9999999999 run data get storage asset:context this.ChaseTick._ execute if data storage asset:context this.ChaseTick{_:0} run return run function asset:object/1153.flame_butterfly/tick/move/common/reset diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction index 42136eabd5f..b1c096ed5d6 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction @@ -4,8 +4,7 @@ # # @within function asset:object/1153.flame_butterfly/tick/** -# TargetMobUUIDとIsAttackModeをリセットする +# 諸々をリセット data remove storage asset:context this.TargetMobUUID data modify storage asset:context this.IsAttackMode set value false data modify storage asset:context this.AttackDelay._ set value 0 - #data modify storage asset:context this.ChaseTick._ set from storage asset:context this.ChaseTick.Max From 851473c19523e6c43e5c23528934c455ece4738e Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 17:23:10 +0900 Subject: [PATCH 08/34] =?UTF-8?q?=E6=9C=AA=E4=BD=BF=E7=94=A8Object?= =?UTF-8?q?=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1154.flame_explode/register.mcfunction | 20 ----------- .../1154.flame_explode/summon/.mcfunction | 8 ----- .../summon/debug.mcfunction | 10 ------ .../1154.flame_explode/tick/.mcfunction | 16 --------- .../tick/explode.mcfunction | 11 ------ .../1154.flame_explode/tick/vfx/1.mcfunction | 26 -------------- .../1154.flame_explode/tick/vfx/2.mcfunction | 36 ------------------- .../object/alias/1154/register.mcfunction | 8 ----- .../object/alias/1154/summon.mcfunction | 8 ----- .../object/alias/1154/tick.mcfunction | 8 ----- 10 files changed, 151 deletions(-) delete mode 100644 Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction delete mode 100644 Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction delete mode 100644 Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction delete mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction delete mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction delete mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction delete mode 100644 Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction delete mode 100644 Asset/data/asset/functions/object/alias/1154/register.mcfunction delete mode 100644 Asset/data/asset/functions/object/alias/1154/summon.mcfunction delete mode 100644 Asset/data/asset/functions/object/alias/1154/tick.mcfunction diff --git a/Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction deleted file mode 100644 index b1d0f05d14b..00000000000 --- a/Asset/data/asset/functions/object/1154.flame_explode/register.mcfunction +++ /dev/null @@ -1,20 +0,0 @@ -#> asset:object/1154.flame_explode/register -# -# Objectのデータを指定 -# -# @within function asset:object/alias/1154/register - -# 継承(オプション) - # data modify storage asset:object Extends append value - # function asset:object/extends -# 他のObjectに継承されることを許可するか (boolean) (オプション) - # data modify storage asset:object ExtendsSafe set value -# 継承されることを前提とした、抽象的なObjectであるかどうか(boolean) - data modify storage asset:object IsAbstract set value false -# Tickするかどうか(boolean) (オプション) - # data modify storage asset:object IsTicking set value - -# ID (int) - data modify storage asset:object ID set value 1154 -# フィールド(オプション) - # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction deleted file mode 100644 index 83baf27dc22..00000000000 --- a/Asset/data/asset/functions/object/1154.flame_explode/summon/.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:object/1154.flame_explode/summon/ -# -# Object召喚処理の呼び出し時に実行されるfunction -# -# @within asset:object/alias/1154/summon - -# 元となるEntityを召喚する - summon marker ~ ~ ~ {Tags:["ObjectInit"]} diff --git a/Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction deleted file mode 100644 index 2e39620720a..00000000000 --- a/Asset/data/asset/functions/object/1154.flame_explode/summon/debug.mcfunction +++ /dev/null @@ -1,10 +0,0 @@ -#> asset:object/1154.flame_explode/summon/debug -# -# 動作チェック用の召喚処理 使い終わったら消してもいいかも -# -# @user -# @private - -# 召喚 - data modify storage api: Argument.ID set value 1154 - function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction deleted file mode 100644 index 7f8f36c1fc4..00000000000 --- a/Asset/data/asset/functions/object/1154.flame_explode/tick/.mcfunction +++ /dev/null @@ -1,16 +0,0 @@ -#> asset:object/1154.flame_explode/tick/ -# -# Objectのtick時の処理 -# -# @within asset:object/alias/1154/tick - -# Tick加算 - scoreboard players add @s General.Object.Tick 1 - -# - execute if score @s General.Object.Tick matches 1 run function asset:object/1154.flame_explode/tick/vfx/1 - - execute if score @s General.Object.Tick matches 4 run function asset:object/1154.flame_explode/tick/explode - -# 消滅処理 - kill @s[scores={General.Object.Tick=10..}] diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction deleted file mode 100644 index b1aa75f29c3..00000000000 --- a/Asset/data/asset/functions/object/1154.flame_explode/tick/explode.mcfunction +++ /dev/null @@ -1,11 +0,0 @@ -#> asset:object/1154.flame_explode/tick/explode -# -# -# -# @within function asset:object/1154.flame_explode/tick/ - -execute rotated ~90 25 run function asset:object/1154.flame_explode/tick/vfx/2 -execute rotated ~90 -25 run function asset:object/1154.flame_explode/tick/vfx/2 - -playsound entity.blaze.shoot neutral @a ~ ~ ~ 0.7 0.8 -playsound block.fire.ambient neutral @a ~ ~ ~ 0.7 0.8 diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction deleted file mode 100644 index 1184e88ace7..00000000000 --- a/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/1.mcfunction +++ /dev/null @@ -1,26 +0,0 @@ -#> asset:object/1154.flame_explode/tick/vfx/1 -# -# -# -# @within function asset:object/1154.flame_explode/tick/ - -particle flame ^2 ^ ^0 ^-20000000 ^ ^0 0.00000001 0 -particle flame ^1.9021 ^ ^0.618 ^-19021000 ^ ^-6180000 0.00000001 0 -particle flame ^1.618 ^ ^1.1755 ^-16180000. ^ ^-11755000 0.00000001 0 -particle flame ^1.1755 ^ ^1.618 ^-11755000 ^ ^-16180000. 0.00000001 0 -particle flame ^0.618 ^ ^1.9021 ^-6180000 ^ ^-19021000 0.00000001 0 -particle flame ^0 ^ ^2 ^0 ^ ^-20000000 0.00000001 0 -particle flame ^-0.618 ^ ^1.9021 ^6180000 ^ ^-19021000 0.00000001 0 -particle flame ^-1.1755 ^ ^1.618 ^11755000 ^ ^-16180000. 0.00000001 0 -particle flame ^-1.618 ^ ^1.1755 ^16180000. ^ ^-11755000 0.00000001 0 -particle flame ^-1.9021 ^ ^0.618 ^19021000 ^ ^-6180000 0.00000001 0 -particle flame ^-2 ^ ^0 ^20000000 ^ ^0 0.00000001 0 -particle flame ^-1.9021 ^ ^-0.618 ^19021000 ^ ^6180000 0.00000001 0 -particle flame ^-1.618 ^ ^-1.1755 ^16180000. ^ ^11755000 0.00000001 0 -particle flame ^-1.1755 ^ ^-1.618 ^11755000 ^ ^16180000. 0.00000001 0 -particle flame ^-0.618 ^ ^-1.9021 ^6180000 ^ ^19021000 0.00000001 0 -particle flame ^0 ^ ^-2 ^0 ^ ^20000000 0.00000001 0 -particle flame ^0.618 ^ ^-1.9021 ^-6180000 ^ ^19021000 0.00000001 0 -particle flame ^1.1755 ^ ^-1.618 ^-11755000 ^ ^16180000. 0.00000001 0 -particle flame ^1.618 ^ ^-1.1755 ^-16180000. ^ ^11755000 0.00000001 0 -particle flame ^1.9021 ^ ^-0.618 ^-19021000 ^ ^6180000 0.00000001 0 diff --git a/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction b/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction deleted file mode 100644 index cd50fc28fb0..00000000000 --- a/Asset/data/asset/functions/object/1154.flame_explode/tick/vfx/2.mcfunction +++ /dev/null @@ -1,36 +0,0 @@ -#> asset:object/1154.flame_explode/tick/vfx/2 -# -# -# -# @within function asset:object/1154.flame_explode/tick/explode - -# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkqgBxwBmAhgJwDsNAtDQEYdOsAslABl6sGANhQpWEjjUoBGSqQCsQ-GAB2dALYJkgMMUABHLAEYdDNoDOScCgD2hdRCQAmSgRRwncDDbAA3OmxCXXAADyQBAihIgF9YggtSNEJrRDkBTKyCSwhzZ0QosDhsbDQYS10Moow7PIhdIrRLAFFS8sqWgEdCIOwoAGUzT3JEemxK+IBdIA_3 -# 円 1 -particle flame ~ ~ ~ ^0 ^ ^-1000000 0.00000024 0 -particle flame ~ ~ ~ ^222520.93396 ^ ^-974927.91218 0.00000024 0 -particle flame ~ ~ ~ ^433883.73912 ^ ^-900968.8679 0.00000024 0 -particle flame ~ ~ ~ ^623489.80186 ^ ^-781831.48247 0.00000024 0 -particle flame ~ ~ ~ ^781831.48247 ^ ^-623489.80186 0.00000024 0 -particle flame ~ ~ ~ ^900968.8679 ^ ^-433883.73912 0.00000024 0 -particle flame ~ ~ ~ ^974927.91218 ^ ^-222520.93396 0.00000024 0 -particle flame ~ ~ ~ ^1000000 ^ ^0 0.00000024 0 -particle flame ~ ~ ~ ^974927.91218 ^ ^222520.93396 0.00000024 0 -particle flame ~ ~ ~ ^900968.8679 ^ ^433883.73912 0.00000024 0 -particle flame ~ ~ ~ ^781831.48247 ^ ^623489.80186 0.00000024 0 -particle flame ~ ~ ~ ^623489.80186 ^ ^781831.48247 0.00000024 0 -particle flame ~ ~ ~ ^433883.73912 ^ ^900968.8679 0.00000024 0 -particle flame ~ ~ ~ ^222520.93396 ^ ^974927.91218 0.00000024 0 -particle flame ~ ~ ~ ^0 ^ ^1000000 0.00000024 0 -particle flame ~ ~ ~ ^-222520.93396 ^ ^974927.91218 0.00000024 0 -particle flame ~ ~ ~ ^-433883.73912 ^ ^900968.8679 0.00000024 0 -particle flame ~ ~ ~ ^-623489.80186 ^ ^781831.48247 0.00000024 0 -particle flame ~ ~ ~ ^-781831.48247 ^ ^623489.80186 0.00000024 0 -particle flame ~ ~ ~ ^-900968.8679 ^ ^433883.73912 0.00000024 0 -particle flame ~ ~ ~ ^-974927.91218 ^ ^222520.93396 0.00000024 0 -particle flame ~ ~ ~ ^-1000000 ^ ^0 0.00000024 0 -particle flame ~ ~ ~ ^-974927.91218 ^ ^-222520.93396 0.00000024 0 -particle flame ~ ~ ~ ^-900968.8679 ^ ^-433883.73912 0.00000024 0 -particle flame ~ ~ ~ ^-781831.48247 ^ ^-623489.80186 0.00000024 0 -particle flame ~ ~ ~ ^-623489.80186 ^ ^-781831.48247 0.00000024 0 -particle flame ~ ~ ~ ^-433883.73912 ^ ^-900968.8679 0.00000024 0 -particle flame ~ ~ ~ ^-222520.93396 ^ ^-974927.91218 0.00000024 0 diff --git a/Asset/data/asset/functions/object/alias/1154/register.mcfunction b/Asset/data/asset/functions/object/alias/1154/register.mcfunction deleted file mode 100644 index 1c9a0b51768..00000000000 --- a/Asset/data/asset/functions/object/alias/1154/register.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:object/alias/1154/register -# -# Objectのデータ指定処理のエイリアス -# -# @within asset_manager:object/summon/register.m - -# 元の登録処理を呼び出す - function asset:object/1154.flame_explode/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1154/summon.mcfunction b/Asset/data/asset/functions/object/alias/1154/summon.mcfunction deleted file mode 100644 index 6c38fee99fc..00000000000 --- a/Asset/data/asset/functions/object/alias/1154/summon.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:object/alias/1154/summon -# -# Object召喚処理のエイリアス -# -# @within asset_manager:object/summon/summon.m - -# 元の召喚処理を呼び出す - function asset:object/1154.flame_explode/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1154/tick.mcfunction b/Asset/data/asset/functions/object/alias/1154/tick.mcfunction deleted file mode 100644 index fb92c541674..00000000000 --- a/Asset/data/asset/functions/object/alias/1154/tick.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:object/alias/1154/tick -# -# Tick時処理のエイリアス -# -# @within asset_manager:object/tick/tick.m - -# 元のTick処理を呼び出す - function asset:object/1154.flame_explode/tick/ \ No newline at end of file From fd78c1f8e71ade6cf8ab2511266f04f208bdce1d Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 17:57:56 +0900 Subject: [PATCH 09/34] =?UTF-8?q?=E6=BC=94=E5=87=BA=E3=82=92=E8=AA=BF?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trigger/3.main.mcfunction | 2 +- .../tick/attack/attack.mcfunction | 8 ++++-- .../tick/attack/attack/vfx/1.mcfunction | 26 ------------------- .../vfx/2.mcfunction => vfx.mcfunction} | 2 +- .../1153.flame_butterfly/tick/kill.mcfunction | 8 +++++- .../1153.flame_butterfly/tick/vfx.mcfunction | 2 +- 6 files changed, 16 insertions(+), 32 deletions(-) delete mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/1.mcfunction rename Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/{attack/vfx/2.mcfunction => vfx.mcfunction} (97%) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction index 1bd0b8b8a3f..4a9b2d916f1 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction @@ -16,4 +16,4 @@ # Object召喚 data modify storage api: Argument.ID set value 1153 execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID - execute anchored eyes rotated ~ 0 positioned ^ ^-1 ^1.5 run function api:object/summon + execute rotated ~ 0 anchored eyes positioned ^-1.8 ^ ^1.1 run function api:object/summon diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction index 4a2f67ab50e..587c441ae8b 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction @@ -10,8 +10,12 @@ #declare score_holder $HealthPer # 演出 - execute rotated ~90 25 run function asset:object/1153.flame_butterfly/tick/attack/attack/vfx/2 - execute rotated ~90 -25 run function asset:object/1153.flame_butterfly/tick/attack/attack/vfx/2 + playsound entity.blaze.shoot neutral @a ~ ~ ~ 0.6 1.5 + playsound entity.blaze.shoot neutral @a ~ ~ ~ 0.6 1.6 + playsound block.fire.ambient neutral @a ~ ~ ~ 0.8 1 + playsound block.lava.extinguish neutral @a ~ ~ ~ 0.8 1.2 + execute rotated ~90 25 run function asset:object/1153.flame_butterfly/tick/attack/vfx + execute rotated ~90 -25 run function asset:object/1153.flame_butterfly/tick/attack/vfx # 自身の体力割合を取得 execute as @p[tag=1153.Owner] run function api:entity/player/get_health_per diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/1.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/1.mcfunction deleted file mode 100644 index 4cda6f14927..00000000000 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/1.mcfunction +++ /dev/null @@ -1,26 +0,0 @@ -#> asset:object/1153.flame_butterfly/tick/attack/attack/vfx/1 -# -# -# -# @within function asset:object/1153.flame_butterfly/tick/attack/attack/ - -particle flame ^2 ^ ^0 ^-20000000 ^ ^0 0.00000001 0 -particle flame ^1.9021 ^ ^0.618 ^-19021000 ^ ^-6180000 0.00000001 0 -particle flame ^1.618 ^ ^1.1755 ^-16180000. ^ ^-11755000 0.00000001 0 -particle flame ^1.1755 ^ ^1.618 ^-11755000 ^ ^-16180000. 0.00000001 0 -particle flame ^0.618 ^ ^1.9021 ^-6180000 ^ ^-19021000 0.00000001 0 -particle flame ^0 ^ ^2 ^0 ^ ^-20000000 0.00000001 0 -particle flame ^-0.618 ^ ^1.9021 ^6180000 ^ ^-19021000 0.00000001 0 -particle flame ^-1.1755 ^ ^1.618 ^11755000 ^ ^-16180000. 0.00000001 0 -particle flame ^-1.618 ^ ^1.1755 ^16180000. ^ ^-11755000 0.00000001 0 -particle flame ^-1.9021 ^ ^0.618 ^19021000 ^ ^-6180000 0.00000001 0 -particle flame ^-2 ^ ^0 ^20000000 ^ ^0 0.00000001 0 -particle flame ^-1.9021 ^ ^-0.618 ^19021000 ^ ^6180000 0.00000001 0 -particle flame ^-1.618 ^ ^-1.1755 ^16180000. ^ ^11755000 0.00000001 0 -particle flame ^-1.1755 ^ ^-1.618 ^11755000 ^ ^16180000. 0.00000001 0 -particle flame ^-0.618 ^ ^-1.9021 ^6180000 ^ ^19021000 0.00000001 0 -particle flame ^0 ^ ^-2 ^0 ^ ^20000000 0.00000001 0 -particle flame ^0.618 ^ ^-1.9021 ^-6180000 ^ ^19021000 0.00000001 0 -particle flame ^1.1755 ^ ^-1.618 ^-11755000 ^ ^16180000. 0.00000001 0 -particle flame ^1.618 ^ ^-1.1755 ^-16180000. ^ ^11755000 0.00000001 0 -particle flame ^1.9021 ^ ^-0.618 ^-19021000 ^ ^6180000 0.00000001 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/2.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/vfx.mcfunction similarity index 97% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/2.mcfunction rename to Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/vfx.mcfunction index 54b0e25c9ed..0344be28a2d 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack/vfx/2.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/vfx.mcfunction @@ -1,4 +1,4 @@ -#> asset:object/1153.flame_butterfly/tick/attack/attack/vfx/2 +#> asset:object/1153.flame_butterfly/tick/attack/vfx # # # diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction index c3c4d4d7f5b..2109b0295b3 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction @@ -4,6 +4,12 @@ # # @within function asset:object/1153.flame_butterfly/tick/ -# +# 演出 + particle flame ~ ~ ~ 0 0 0 0.2 50 normal @a + particle small_flame ~ ~ ~ 0 0 0 0.2 50 normal @a + playsound block.fire.ambient neutral @a ~ ~ ~ 0.8 1 + playsound block.lava.extinguish neutral @a ~ ~ ~ 0.8 1 + +# 消滅 execute on passengers run kill @s kill @s diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction index 95003f4cf8a..ca6137c2830 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction +++ b/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction @@ -6,5 +6,5 @@ # 演出 execute if predicate lib:random_pass_per/30 run particle dust 1 0.4 0 0.7 ~ ~ ~ 0.3 0.3 0.3 0 1 normal @a - execute if predicate lib:random_pass_per/8 run particle flame ~ ~ ~ 0.3 0.3 0.3 0 1 normal @a + execute if predicate lib:random_pass_per/8 run particle small_flame ~ ~ ~ 0.3 0.3 0.3 0 1 normal @a execute if predicate lib:random_pass_per/5 run particle dripping_lava ~ ~ ~ 0.3 0 0.3 0 1 normal @a From 493c1e30250b8fdd1a78fd13fd06b16c71e67223 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 20:34:25 +0900 Subject: [PATCH 10/34] =?UTF-8?q?object=E3=81=AE=E3=83=8D=E3=83=BC?= =?UTF-8?q?=E3=83=A0=E3=82=B9=E3=83=9A=E3=83=BC=E3=82=B9=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1153.flame_butterfly/_index.d.mcfunction | 6 ------ .../1153.flare_butterfly/_index.d.mcfunction | 6 ++++++ .../init/.mcfunction | 2 +- .../predicate/near_enemy.mcfunction | 4 ++-- .../predicate/near_owner.mcfunction | 4 ++-- .../predicate/near_target/neutral_near/.mcfunction | 6 +++--- .../near_target/neutral_near/m.mcfunction | 4 ++-- .../predicate/near_target/very_near/.mcfunction | 6 +++--- .../predicate/near_target/very_near/m.mcfunction | 4 ++-- .../register.mcfunction | 2 +- .../summon/.mcfunction | 4 ++-- .../summon/m.mcfunction | 4 ++-- .../tick/.mcfunction | 10 +++++----- .../tick/attack/.mcfunction | 6 +++--- .../tick/attack/attack.mcfunction | 10 +++++----- .../tick/attack/cooldown/.mcfunction | 4 ++-- .../tick/attack/cooldown/reset.mcfunction | 4 ++-- .../tick/attack/vfx.mcfunction | 4 ++-- .../tick/kill.mcfunction | 4 ++-- .../tick/move/.mcfunction | 14 +++++++------- .../tick/move/chase_enemy/chase.m.mcfunction | 6 +++--- .../tick/move/chase_enemy/m.mcfunction | 12 ++++++------ .../move/chase_enemy/set_attack_mode.mcfunction | 4 ++-- .../tick/move/common/reset.mcfunction | 4 ++-- .../tick/move/search_target/.mcfunction | 6 +++--- .../tick/move/search_target/recursive.mcfunction | 10 +++++----- .../tick/move/search_target/success.mcfunction | 4 ++-- .../tick/move/to_owner.mcfunction | 4 ++-- .../tick/move/with_collision.m.mcfunction | 4 ++-- .../tick/vfx.mcfunction | 4 ++-- 30 files changed, 83 insertions(+), 83 deletions(-) delete mode 100644 Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/init/.mcfunction (82%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/predicate/near_enemy.mcfunction (65%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/predicate/near_owner.mcfunction (55%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/predicate/near_target/neutral_near/.mcfunction (58%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/predicate/near_target/neutral_near/m.mcfunction (58%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/predicate/near_target/very_near/.mcfunction (58%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/predicate/near_target/very_near/m.mcfunction (61%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/register.mcfunction (97%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/summon/.mcfunction (77%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/summon/m.mcfunction (81%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/.mcfunction (71%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/attack/.mcfunction (59%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/attack/attack.mcfunction (82%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/attack/cooldown/.mcfunction (53%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/attack/cooldown/reset.mcfunction (50%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/attack/vfx.mcfunction (94%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/kill.mcfunction (73%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/.mcfunction (59%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/chase_enemy/chase.m.mcfunction (86%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/chase_enemy/m.mcfunction (68%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/chase_enemy/set_attack_mode.mcfunction (67%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/common/reset.mcfunction (65%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/search_target/.mcfunction (77%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/search_target/recursive.mcfunction (55%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/search_target/success.mcfunction (71%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/to_owner.mcfunction (91%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/move/with_collision.m.mcfunction (84%) rename Asset/data/asset/functions/object/{1153.flame_butterfly => 1153.flare_butterfly}/tick/vfx.mcfunction (76%) diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction b/Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction deleted file mode 100644 index f17ccb731c2..00000000000 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/_index.d.mcfunction +++ /dev/null @@ -1,6 +0,0 @@ -#> asset:object/1153.flame_butterfly/_index.d -# @private - -#> tag -# @within function asset:object/1153.flame_butterfly/** - #declare tag 1153.Owner diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction new file mode 100644 index 00000000000..bbd9fb51c6e --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:object/1153.flare_butterfly/_index.d +# @private + +#> tag +# @within function asset:object/1153.flare_butterfly/** + #declare tag 1153.Owner diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction similarity index 82% rename from Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction index 6f9e73b8289..0c54ea17d0c 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/init/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction @@ -1,4 +1,4 @@ -#> asset:object/1153.flame_butterfly/init/ +#> asset:object/1153.flare_butterfly/init/ # # Objectのinit時の処理 # diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_enemy.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_enemy.mcfunction similarity index 65% rename from Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_enemy.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_enemy.mcfunction index 1e26e2d6e45..45bc25103a9 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_enemy.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_enemy.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/predicate/near_enemy +#> asset:object/1153.flare_butterfly/predicate/near_enemy # # # -# @within function asset:object/1153.flame_butterfly/tick/move/** +# @within function asset:object/1153.flare_butterfly/tick/move/** # Ownerの周囲に敵が周囲にいないなら失敗 execute at @p[tag=1153.Owner] unless entity @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10] run return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_owner.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_owner.mcfunction similarity index 55% rename from Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_owner.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_owner.mcfunction index 6c8e1759f54..eb27b9bb33a 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_owner.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_owner.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/predicate/near_owner +#> asset:object/1153.flare_butterfly/predicate/near_owner # # # -# @within function asset:object/1153.flame_butterfly/** +# @within function asset:object/1153.flare_butterfly/** # Ownerが近くにいないなら失敗 execute unless entity @p[tag=1153.Owner,distance=..10] run return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/.mcfunction similarity index 58% rename from Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/.mcfunction index 4e2259e33b9..af6e80b5cab 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/.mcfunction @@ -1,10 +1,10 @@ -#> asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/ +#> asset:object/1153.flare_butterfly/predicate/near_target/neutral_near/ # # # -# @within function asset:object/1153.flame_butterfly/tick/** +# @within function asset:object/1153.flare_butterfly/tick/** -execute store result storage asset:context this.Success int 1 run function asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/m with storage asset:context this +execute store result storage asset:context this.Success int 1 run function asset:object/1153.flare_butterfly/predicate/near_target/neutral_near/m with storage asset:context this execute if data storage asset:context this{Success:1} run return 1 execute if data storage asset:context this{Success:0} run return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/m.mcfunction similarity index 58% rename from Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/m.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/m.mcfunction index d7e71bc8c76..69727916b5d 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/neutral_near/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/m.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/m +#> asset:object/1153.flare_butterfly/predicate/near_target/neutral_near/m # # # -# @within function asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/ +# @within function asset:object/1153.flare_butterfly/predicate/near_target/neutral_near/ $execute if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},distance=..10] run return 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/very_near/.mcfunction similarity index 58% rename from Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/very_near/.mcfunction index f5dee513653..3aa49edd399 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/very_near/.mcfunction @@ -1,10 +1,10 @@ -#> asset:object/1153.flame_butterfly/predicate/near_target/very_near/ +#> asset:object/1153.flare_butterfly/predicate/near_target/very_near/ # # # -# @within function asset:object/1153.flame_butterfly/** +# @within function asset:object/1153.flare_butterfly/** -execute store result storage asset:context this.Success int 1 run function asset:object/1153.flame_butterfly/predicate/near_target/very_near/m with storage asset:context this +execute store result storage asset:context this.Success int 1 run function asset:object/1153.flare_butterfly/predicate/near_target/very_near/m with storage asset:context this execute if data storage asset:context this{Success:1} run return 1 execute if data storage asset:context this{Success:0} run return 0 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/very_near/m.mcfunction similarity index 61% rename from Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/m.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/very_near/m.mcfunction index 7773082621d..9da11618428 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/predicate/near_target/very_near/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/very_near/m.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/predicate/near_target/very_near/m +#> asset:object/1153.flare_butterfly/predicate/near_target/very_near/m # # # -# @within function asset:object/1153.flame_butterfly/predicate/near_target/very_near/ +# @within function asset:object/1153.flare_butterfly/predicate/near_target/very_near/ $execute positioned ~-1.2 ~-1.2 ~-1.2 if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},dx=1.4,dy=1.4,dz=1.4] run return 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction similarity index 97% rename from Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction index c9f55c22384..b038b1db8db 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction @@ -1,4 +1,4 @@ -#> asset:object/1153.flame_butterfly/register +#> asset:object/1153.flare_butterfly/register # # Objectのデータを指定 # diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/summon/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/summon/.mcfunction similarity index 77% rename from Asset/data/asset/functions/object/1153.flame_butterfly/summon/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/summon/.mcfunction index fda10b5c56f..1367c35ca60 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/summon/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/summon/.mcfunction @@ -1,4 +1,4 @@ -#> asset:object/1153.flame_butterfly/summon/ +#> asset:object/1153.flare_butterfly/summon/ # # Object召喚処理の呼び出し時に実行されるfunction # @@ -7,5 +7,5 @@ # 元となるEntityを召喚する execute as 0-0-0-0-0 in minecraft:overworld positioned as @s run tp @s ~ ~ ~ ~ 0 data modify storage asset:temp Args.Rotation set from entity 0-0-0-0-0 Rotation - function asset:object/1153.flame_butterfly/summon/m with storage asset:temp Args + function asset:object/1153.flare_butterfly/summon/m with storage asset:temp Args data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/summon/m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/summon/m.mcfunction similarity index 81% rename from Asset/data/asset/functions/object/1153.flame_butterfly/summon/m.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/summon/m.mcfunction index b7baf022792..388e996acbb 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/summon/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/summon/m.mcfunction @@ -1,7 +1,7 @@ -#> asset:object/1153.flame_butterfly/summon/m +#> asset:object/1153.flare_butterfly/summon/m # # # -# @within function asset:object/1153.flame_butterfly/summon/ +# @within function asset:object/1153.flare_butterfly/summon/ $summon armor_stand ~ ~ ~ {Tags:["ObjectInit","Friend"],Rotation:$(Rotation),Marker:1b,Invisible:1b,Passengers:[{id:"minecraft:item_display",Rotation:[90f,0f],Tags:["ProcessCommonTag","AutoKillWhenDieVehicle"],teleport_duration:1,brightness:{sky:10,block:10},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20584}},transformation:{left_rotation:[0.1987f,0f,0f,-0.9801f],right_rotation:[0f,0f,0f,1f],scale:[1f,1f,1f],translation:[0f,-0.5f,0f]}}]} diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction similarity index 71% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction index e1cdbd8a231..7bc48759c58 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction @@ -1,4 +1,4 @@ -#> asset:object/1153.flame_butterfly/tick/ +#> asset:object/1153.flare_butterfly/tick/ # # Objectのtick時の処理 # @@ -9,7 +9,7 @@ #declare score_holder $UserID # 演出 - function asset:object/1153.flame_butterfly/tick/vfx + function asset:object/1153.flare_butterfly/tick/vfx # OwnerにTag付与 execute store result score $UserID Temporary run data get storage asset:context this.UserID @@ -17,13 +17,13 @@ scoreboard players reset $UserID Temporary # 攻撃のCD - function asset:object/1153.flame_butterfly/tick/attack/cooldown/ + function asset:object/1153.flare_butterfly/tick/attack/cooldown/ # Tick加算 scoreboard players add @s General.Object.Tick 1 # 移動 - function asset:object/1153.flame_butterfly/tick/move/ + function asset:object/1153.flare_butterfly/tick/move/ # 蝶の向きを調整 execute at @s on passengers run tp @s ~ ~ ~ ~ 0 @@ -32,4 +32,4 @@ tag @p[tag=1153.Owner] remove 1153.Owner # 消滅処理 - execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flame_butterfly/tick/kill + execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flare_butterfly/tick/kill diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/.mcfunction similarity index 59% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/.mcfunction index e7d51165090..68251442fdf 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/.mcfunction @@ -1,11 +1,11 @@ -#> asset:object/1153.flame_butterfly/tick/attack/ +#> asset:object/1153.flare_butterfly/tick/attack/ # # # -# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m +# @within function asset:object/1153.flare_butterfly/tick/move/chase_enemy/m # 発生までのディレイ execute store result storage asset:context this.AttackDelay._ int 0.9999999999 run data get storage asset:context this.AttackDelay._ # 攻撃 - execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flame_butterfly/tick/attack/attack + execute if data storage asset:context this.AttackDelay{_:0} run function asset:object/1153.flare_butterfly/tick/attack/attack diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction similarity index 82% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction index 587c441ae8b..520f5b96c6f 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/attack.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/attack/attack +#> asset:object/1153.flare_butterfly/tick/attack/attack # # # -# @within function asset:object/1153.flame_butterfly/tick/attack/ +# @within function asset:object/1153.flare_butterfly/tick/attack/ #> Private # @private @@ -14,8 +14,8 @@ playsound entity.blaze.shoot neutral @a ~ ~ ~ 0.6 1.6 playsound block.fire.ambient neutral @a ~ ~ ~ 0.8 1 playsound block.lava.extinguish neutral @a ~ ~ ~ 0.8 1.2 - execute rotated ~90 25 run function asset:object/1153.flame_butterfly/tick/attack/vfx - execute rotated ~90 -25 run function asset:object/1153.flame_butterfly/tick/attack/vfx + execute rotated ~90 25 run function asset:object/1153.flare_butterfly/tick/attack/vfx + execute rotated ~90 -25 run function asset:object/1153.flare_butterfly/tick/attack/vfx # 自身の体力割合を取得 execute as @p[tag=1153.Owner] run function api:entity/player/get_health_per @@ -33,5 +33,5 @@ # リセット scoreboard players reset $UserID Temporary scoreboard players reset $HealthPer Temporary - function asset:object/1153.flame_butterfly/tick/attack/cooldown/reset + function asset:object/1153.flare_butterfly/tick/attack/cooldown/reset data modify storage asset:context this.IsAttackMode set value false diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/cooldown/.mcfunction similarity index 53% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/cooldown/.mcfunction index 744d6dd0dee..cf3a148cd1d 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/cooldown/.mcfunction @@ -1,7 +1,7 @@ -#> asset:object/1153.flame_butterfly/tick/attack/cooldown/ +#> asset:object/1153.flare_butterfly/tick/attack/cooldown/ # # # -# @within function asset:object/1153.flame_butterfly/tick/ +# @within function asset:object/1153.flare_butterfly/tick/ execute store result storage asset:context this.AttackCD._ int 0.9999999999 run data get storage asset:context this.AttackCD._ diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/reset.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/cooldown/reset.mcfunction similarity index 50% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/reset.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/cooldown/reset.mcfunction index afe2eeff541..b9a4fbb1452 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/cooldown/reset.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/cooldown/reset.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/attack/cooldown/reset +#> asset:object/1153.flare_butterfly/tick/attack/cooldown/reset # # # -# @within function asset:object/1153.flame_butterfly/tick/attack/attack +# @within function asset:object/1153.flare_butterfly/tick/attack/attack # 初期化 data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/vfx.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/vfx.mcfunction similarity index 94% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/vfx.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/vfx.mcfunction index 0344be28a2d..26451e4a8c7 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/attack/vfx.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/vfx.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/attack/vfx +#> asset:object/1153.flare_butterfly/tick/attack/vfx # # # -# @within function asset:object/1153.flame_butterfly/tick/attack/attack +# @within function asset:object/1153.flare_butterfly/tick/attack/attack # [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkqgBxwBmAhgJwDsNAtDQEYdOsAslABl6sGANhQpWEjjUoBGSqQCsQ-GAB2dALYJkgMMUABHLAEYdDNoDOScCgD2hdRCQAmSgRRwncDDbAA3OmxCXXAADyQBAihIgF9YggtSNEJrRDkBTKyCSwhzZ0QosDhsbDQYS10Moow7PIhdIrRLAFFS8sqWgEdCIOwoAGUzT3JEemxK+IBdIA_3 # 円 1 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/kill.mcfunction similarity index 73% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/kill.mcfunction index 2109b0295b3..8bd61d89f2c 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/kill.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/kill.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/kill +#> asset:object/1153.flare_butterfly/tick/kill # # # -# @within function asset:object/1153.flame_butterfly/tick/ +# @within function asset:object/1153.flare_butterfly/tick/ # 演出 particle flame ~ ~ ~ 0 0 0 0.2 50 normal @a diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/.mcfunction similarity index 59% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/.mcfunction index 6f36b70c980..61ef26985c6 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/.mcfunction @@ -1,24 +1,24 @@ -#> asset:object/1153.flame_butterfly/tick/move/ +#> asset:object/1153.flare_butterfly/tick/move/ # # # -# @within function asset:object/1153.flame_butterfly/tick/ +# @within function asset:object/1153.flare_butterfly/tick/ # ターゲットがいるかどうかチェックする # ターゲットにできる敵がOwnerの周囲にいなければOwnerを追尾する # TargetMobUUIDがない && Ownerの近くに敵がいればTargetMobUUIDを設定 - execute unless data storage asset:context this.TargetMobUUID if function asset:object/1153.flame_butterfly/predicate/near_enemy run function asset:object/1153.flame_butterfly/tick/move/search_target/ + execute unless data storage asset:context this.TargetMobUUID if function asset:object/1153.flare_butterfly/predicate/near_enemy run function asset:object/1153.flare_butterfly/tick/move/search_target/ # TargetMobUUIDがある && Ownerが周囲にいない ならTargetMobUUIDを削除 - execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flame_butterfly/predicate/near_owner run function asset:object/1153.flame_butterfly/tick/move/common/reset + execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flare_butterfly/predicate/near_owner run function asset:object/1153.flare_butterfly/tick/move/common/reset # TargetMobUUIDがある && Ownerの周囲にTargetがいない ならTargetMobUUIDを削除 - execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flame_butterfly/predicate/near_target/neutral_near/ run function asset:object/1153.flame_butterfly/tick/move/common/reset + execute if data storage asset:context this.TargetMobUUID unless function asset:object/1153.flare_butterfly/predicate/near_target/neutral_near/ run function asset:object/1153.flare_butterfly/tick/move/common/reset # TargetMobUUIDがあれば対象へ追尾する - execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m with storage asset:context this + execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flare_butterfly/tick/move/chase_enemy/m with storage asset:context this # TargetMobUUIDがなければOwnerの方へ移動 - execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flame_butterfly/tick/move/to_owner + execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flare_butterfly/tick/move/to_owner diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/chase.m.mcfunction similarity index 86% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/chase.m.mcfunction index 2eaefcef103..75d49922d6d 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/chase.m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/chase.m.mcfunction @@ -1,9 +1,9 @@ -#> asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m +#> asset:object/1153.flare_butterfly/tick/move/chase_enemy/chase.m # # @input args: # TargetMobUUID : int # ChaseSpeed : float -# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m +# @within function asset:object/1153.flare_butterfly/tick/move/chase_enemy/m # 対象の方へ向きだけ追尾する $execute facing entity @e[type=#lib:living_without_player,scores={MobUUID=$(TargetMobUUID)},distance=..20,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ @@ -18,7 +18,7 @@ # Speedの半分を引数とする $execute unless data storage asset:temp 1153{Success:true} run data modify storage asset:temp 1153.Speed set value $(ChaseSpeed) execute unless data storage asset:temp 1153{Success:true} store result storage asset:temp 1153.Speed float 0.005 run data get storage asset:temp 1061.Speed 100 - execute unless data storage asset:temp 1153{Success:true} at @s run function asset:object/1153.flame_butterfly/tick/move/with_collision.m with storage asset:temp 1153 + execute unless data storage asset:temp 1153{Success:true} at @s run function asset:object/1153.flare_butterfly/tick/move/with_collision.m with storage asset:temp 1153 # リセット data remove storage asset:temp 1153 diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/m.mcfunction similarity index 68% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/m.mcfunction index 6985aed34f8..05051fd2c51 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/m.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/chase_enemy/m +#> asset:object/1153.flare_butterfly/tick/move/chase_enemy/m # # # -# @within function asset:object/1153.flame_butterfly/tick/move/ +# @within function asset:object/1153.flare_butterfly/tick/move/ # ChaseTickが0になるまで敵を追跡する # - 0になったらその敵への追跡を諦める @@ -10,14 +10,14 @@ # 追跡時間 execute store result storage asset:context this.ChaseTick._ int 0.9999999999 run data get storage asset:context this.ChaseTick._ - execute if data storage asset:context this.ChaseTick{_:0} run return run function asset:object/1153.flame_butterfly/tick/move/common/reset + execute if data storage asset:context this.ChaseTick{_:0} run return run function asset:object/1153.flare_butterfly/tick/move/common/reset # 攻撃前のディレイがない && 対象が近くにいないなら追跡 - execute if data storage asset:context this.AttackDelay{_:0} unless function asset:object/1153.flame_butterfly/predicate/near_target/very_near/ run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m with storage asset:context this + execute if data storage asset:context this.AttackDelay{_:0} unless function asset:object/1153.flare_butterfly/predicate/near_target/very_near/ run function asset:object/1153.flare_butterfly/tick/move/chase_enemy/chase.m with storage asset:context this # ターゲットが近くにいれば攻撃モードになる - execute if data storage asset:context this{IsAttackMode:false} if data storage asset:context this.AttackCD{_:0} if function asset:object/1153.flame_butterfly/predicate/near_target/very_near/ run function asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode + execute if data storage asset:context this{IsAttackMode:false} if data storage asset:context this.AttackCD{_:0} if function asset:object/1153.flare_butterfly/predicate/near_target/very_near/ run function asset:object/1153.flare_butterfly/tick/move/chase_enemy/set_attack_mode # 攻撃モードなら攻撃処理 - execute if data storage asset:context this{IsAttackMode:true} run function asset:object/1153.flame_butterfly/tick/attack/ + execute if data storage asset:context this{IsAttackMode:true} run function asset:object/1153.flare_butterfly/tick/attack/ execute if data storage asset:context this{IsAttackMode:true} run data modify storage asset:context this.ChaseTick._ set from storage asset:context this.ChaseTick.Max diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction similarity index 67% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction index d6479bdf3bf..eb2cc44b1c6 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/set_attack_mode.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/chase_enemy/set_attack_mode +#> asset:object/1153.flare_butterfly/tick/move/chase_enemy/set_attack_mode # # # -# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/m +# @within function asset:object/1153.flare_butterfly/tick/move/chase_enemy/m # 攻撃モード data modify storage asset:context this.IsAttackMode set value true diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/common/reset.mcfunction similarity index 65% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/common/reset.mcfunction index b1c096ed5d6..8ff7c0fe4fb 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/common/reset.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/common/reset.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/common/reset +#> asset:object/1153.flare_butterfly/tick/move/common/reset # # # -# @within function asset:object/1153.flame_butterfly/tick/** +# @within function asset:object/1153.flare_butterfly/tick/** # 諸々をリセット data remove storage asset:context this.TargetMobUUID diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction similarity index 77% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction index fc352f16b5e..4b789eb44a6 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/search_target/ +#> asset:object/1153.flare_butterfly/tick/move/search_target/ # # # -# @within function asset:object/1153.flame_butterfly/tick/move/ +# @within function asset:object/1153.flare_butterfly/tick/move/ # 状況によっては毎tick大量の再帰をしてしまうため、数tickに1回のみ判定する execute store result storage asset:context this.SearchInterval._ int 0.9999999999 run data get storage asset:context this.SearchInterval._ @@ -10,4 +10,4 @@ data modify storage asset:context this.SearchInterval._ set from storage asset:context this.SearchInterval.Max # 壁を貫通してない近くの敵を探す - execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flame_butterfly/tick/move/search_target/recursive + execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flare_butterfly/tick/move/search_target/recursive diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/recursive.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/recursive.mcfunction similarity index 55% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/recursive.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/recursive.mcfunction index 141bb828bb2..1216989870d 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/recursive.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/recursive.mcfunction @@ -1,16 +1,16 @@ -#> asset:object/1153.flame_butterfly/tick/move/search_target/recursive +#> asset:object/1153.flare_butterfly/tick/move/search_target/recursive # # # # @within function -# asset:object/1153.flame_butterfly/tick/move/search_target/ -# asset:object/1153.flame_butterfly/tick/move/search_target/recursive +# asset:object/1153.flare_butterfly/tick/move/search_target/ +# asset:object/1153.flare_butterfly/tick/move/search_target/recursive # 既にTargetMobUUIDが設定されていればreturn execute if data storage asset:context this.TargetMobUUID run return fail # 自身が近くにいたら成功してreturn - execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @s[dx=0] run return run function asset:object/1153.flame_butterfly/tick/move/search_target/success + execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @s[dx=0] run return run function asset:object/1153.flare_butterfly/tick/move/search_target/success # 再帰 - execute positioned ^ ^ ^0.5 if block ~ ~ ~ #lib:no_collision/ run function asset:object/1153.flame_butterfly/tick/move/search_target/recursive + execute positioned ^ ^ ^0.5 if block ~ ~ ~ #lib:no_collision/ run function asset:object/1153.flare_butterfly/tick/move/search_target/recursive diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/success.mcfunction similarity index 71% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/success.mcfunction index 665c242abdb..c455d5eaa9f 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/search_target/success.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/success.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/search_target/success +#> asset:object/1153.flare_butterfly/tick/move/search_target/success # # # -# @within function asset:object/1153.flame_butterfly/tick/move/search_target/recursive +# @within function asset:object/1153.flare_butterfly/tick/move/search_target/recursive # 自身のMobUUIDをフィールドに突っ込む execute store result storage asset:context this.TargetMobUUID int 1 run scoreboard players get @s MobUUID diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner.mcfunction similarity index 91% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner.mcfunction index 8e7c0aed99c..c18b5b38f3d 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/to_owner.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/to_owner +#> asset:object/1153.flare_butterfly/tick/move/to_owner # # # -# @within function asset:object/1153.flame_butterfly/tick/move/ +# @within function asset:object/1153.flare_butterfly/tick/move/ #> Private # @private diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/with_collision.m.mcfunction similarity index 84% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/with_collision.m.mcfunction index f9fb6f08fea..b7e3c1f1dce 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/move/with_collision.m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/with_collision.m.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/move/with_collision.m +#> asset:object/1153.flare_butterfly/tick/move/with_collision.m # # @input args: # Speed : float 移動量の半分 -# @within function asset:object/1153.flame_butterfly/tick/move/chase_enemy/chase.m +# @within function asset:object/1153.flare_butterfly/tick/move/chase_enemy/chase.m # x $execute positioned 0.0 0.0 0.0 positioned ^ ^ ^-1 positioned 0.0 ~ ~ positioned ^ ^ ^0.5 facing 0.0 0.0 0.0 positioned as @s positioned ^ ^ ^-$(Speed) rotated as @s positioned ^ ^ ^$(Speed) if block ~ ~ ~ #lib:no_collision/ run tp @s ~ ~ ~ diff --git a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/vfx.mcfunction similarity index 76% rename from Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/vfx.mcfunction index ca6137c2830..ce264eb207e 100644 --- a/Asset/data/asset/functions/object/1153.flame_butterfly/tick/vfx.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/vfx.mcfunction @@ -1,8 +1,8 @@ -#> asset:object/1153.flame_butterfly/tick/vfx +#> asset:object/1153.flare_butterfly/tick/vfx # # # -# @within function asset:object/1153.flame_butterfly/tick/ +# @within function asset:object/1153.flare_butterfly/tick/ # 演出 execute if predicate lib:random_pass_per/30 run particle dust 1 0.4 0 0.7 ~ ~ ~ 0.3 0.3 0.3 0 1 normal @a From 58b6e6bb7ed41a1e1ae11c1be7b956874f8e5c21 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 20:36:51 +0900 Subject: [PATCH 11/34] =?UTF-8?q?=E5=A4=89=E6=9B=B4=E6=BC=8F=E3=82=8C?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Asset/data/asset/functions/object/alias/1153/init.mcfunction | 2 +- .../data/asset/functions/object/alias/1153/register.mcfunction | 2 +- Asset/data/asset/functions/object/alias/1153/summon.mcfunction | 2 +- Asset/data/asset/functions/object/alias/1153/tick.mcfunction | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Asset/data/asset/functions/object/alias/1153/init.mcfunction b/Asset/data/asset/functions/object/alias/1153/init.mcfunction index a5d6532d83f..564a688b61b 100644 --- a/Asset/data/asset/functions/object/alias/1153/init.mcfunction +++ b/Asset/data/asset/functions/object/alias/1153/init.mcfunction @@ -5,4 +5,4 @@ # @within asset_manager:object/init/init.m # 元のInit処理を呼び出す - function asset:object/1153.flame_butterfly/init/ \ No newline at end of file + function asset:object/1153.flare_butterfly/init/ diff --git a/Asset/data/asset/functions/object/alias/1153/register.mcfunction b/Asset/data/asset/functions/object/alias/1153/register.mcfunction index 7c58cdc46ac..53f3568698a 100644 --- a/Asset/data/asset/functions/object/alias/1153/register.mcfunction +++ b/Asset/data/asset/functions/object/alias/1153/register.mcfunction @@ -5,4 +5,4 @@ # @within asset_manager:object/summon/register.m # 元の登録処理を呼び出す - function asset:object/1153.flame_butterfly/register + function asset:object/1153.flare_butterfly/register diff --git a/Asset/data/asset/functions/object/alias/1153/summon.mcfunction b/Asset/data/asset/functions/object/alias/1153/summon.mcfunction index c4245e02773..b5d3a25c03d 100644 --- a/Asset/data/asset/functions/object/alias/1153/summon.mcfunction +++ b/Asset/data/asset/functions/object/alias/1153/summon.mcfunction @@ -5,4 +5,4 @@ # @within asset_manager:object/summon/summon.m # 元の召喚処理を呼び出す - function asset:object/1153.flame_butterfly/summon/ + function asset:object/1153.flare_butterfly/summon/ diff --git a/Asset/data/asset/functions/object/alias/1153/tick.mcfunction b/Asset/data/asset/functions/object/alias/1153/tick.mcfunction index 7feae7baee3..39f06ea9613 100644 --- a/Asset/data/asset/functions/object/alias/1153/tick.mcfunction +++ b/Asset/data/asset/functions/object/alias/1153/tick.mcfunction @@ -5,4 +5,4 @@ # @within asset_manager:object/tick/tick.m # 元のTick処理を呼び出す - function asset:object/1153.flame_butterfly/tick/ + function asset:object/1153.flare_butterfly/tick/ From 3ecfc0a36fc9ab54405958eef1514538aba91187 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 20:59:46 +0900 Subject: [PATCH 12/34] =?UTF-8?q?=E6=95=B5=E3=82=92=E6=8E=A2=E7=B4=A2?= =?UTF-8?q?=E3=81=99=E3=82=8B=E4=BD=8D=E7=BD=AE=E3=82=92=E3=83=97=E3=83=AC?= =?UTF-8?q?=E3=82=A4=E3=83=A4=E3=83=BC=E5=9F=BA=E6=BA=96=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1153.flare_butterfly/tick/move/search_target/.mcfunction | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction index 4b789eb44a6..3d41572a251 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction @@ -9,5 +9,5 @@ execute unless data storage asset:context this.SearchInterval{_:0} run return fail data modify storage asset:context this.SearchInterval._ set from storage asset:context this.SearchInterval.Max -# 壁を貫通してない近くの敵を探す - execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flare_butterfly/tick/move/search_target/recursive +# 召喚者の位置を基準に、壁を貫通してない近くの敵を探す + execute positioned as @p[tag=1153.Owner] as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flare_butterfly/tick/move/search_target/recursive From 2dad08bdf6466739edcb628d9880c4d0221d0fa7 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 21:00:04 +0900 Subject: [PATCH 13/34] =?UTF-8?q?=E3=83=97=E3=83=AC=E3=82=A4=E3=83=A4?= =?UTF-8?q?=E3=83=BC=E3=81=A8=E3=81=AE=E8=B7=9D=E9=9B=A2=E3=81=AB=E5=BF=9C?= =?UTF-8?q?=E3=81=98=E3=81=A6=E7=A7=BB=E5=8B=95=E9=80=9F=E5=BA=A6=E3=82=92?= =?UTF-8?q?=E5=A4=89=E3=81=88=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../object/1153.flare_butterfly/_index.d.mcfunction | 4 ++++ .../1153.flare_butterfly/tick/move/.mcfunction | 2 +- .../{to_owner.mcfunction => to_owner/.mcfunction} | 4 ++-- .../tick/move/to_owner/chase.mcfunction | 13 +++++++++++++ 4 files changed, 20 insertions(+), 3 deletions(-) rename Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/{to_owner.mcfunction => to_owner/.mcfunction} (79%) create mode 100644 Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction index bbd9fb51c6e..d3e2a3ed59d 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction @@ -4,3 +4,7 @@ #> tag # @within function asset:object/1153.flare_butterfly/** #declare tag 1153.Owner + +#> Private +# @within function asset:object/1153.flare_butterfly/tick/move/to_owner/** + #declare tag 1153.TempMarker diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/.mcfunction index 61ef26985c6..abce33c7865 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/.mcfunction @@ -21,4 +21,4 @@ execute if data storage asset:context this.TargetMobUUID run function asset:object/1153.flare_butterfly/tick/move/chase_enemy/m with storage asset:context this # TargetMobUUIDがなければOwnerの方へ移動 - execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flare_butterfly/tick/move/to_owner + execute unless data storage asset:context this.TargetMobUUID run function asset:object/1153.flare_butterfly/tick/move/to_owner/ diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/.mcfunction similarity index 79% rename from Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner.mcfunction rename to Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/.mcfunction index c18b5b38f3d..5e275ec67eb 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/.mcfunction @@ -1,4 +1,4 @@ -#> asset:object/1153.flare_butterfly/tick/move/to_owner +#> asset:object/1153.flare_butterfly/tick/move/to_owner/ # # # @@ -14,7 +14,7 @@ execute as @p[tag=1153.Owner] at @s rotated ~ 0 anchored eyes positioned ^-1.8 ^ ^1.1 run summon marker ~ ~ ~ {Tags:["1153.TempMarker"]} # マーカーに近くなければ追尾する - execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ^ ^ ^0.3 ~ ~ + execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] run function asset:object/1153.flare_butterfly/tick/move/to_owner/chase # マーカーが近い場合は、自身の向きを少しずつOwnerに合わせる execute if entity @e[type=marker,tag=1153.TempMarker,distance=..0.35,limit=1] rotated as @p[tag=1153.Owner] positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^10 facing entity @s feet positioned as @s positioned ^ ^ ^1 rotated as @s positioned ^ ^ ^1 facing entity @s feet positioned as @s positioned ^ ^ ^-0.1 rotated as @s positioned ^ ^ ^-1 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction new file mode 100644 index 00000000000..7e6b250425b --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction @@ -0,0 +1,13 @@ +#> asset:object/1153.flare_butterfly/tick/move/to_owner/chase +# +# +# +# @within function asset:object/1153.flare_butterfly/tick/move/to_owner/ + +# 向きだけ追尾 + execute facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ + +# 該当Markerとの距離に応じて速度を変える + execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..24,limit=1] at @s run return run tp @s ^ ^ ^1.5 + execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..12,limit=1] at @s run return run tp @s ^ ^ ^0.9 + execute at @s run tp @s ^ ^ ^0.3 From 848e01d2f914c080b181a8a3104570487c3f4172 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 22:03:49 +0900 Subject: [PATCH 14/34] =?UTF-8?q?init=E3=81=A7=E6=94=BB=E6=92=83CD?= =?UTF-8?q?=E3=82=92=E5=88=9D=E6=9C=9F=E5=8C=96=E3=81=99=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/object/1153.flare_butterfly/init/.mcfunction | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction index 0c54ea17d0c..c5a9b471fa4 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction @@ -4,5 +4,5 @@ # # @within asset:object/alias/1153/init -# AttackDelay初期化 - # data modify storage asset:context this.AttackDelay._ set from storage asset:context this.AttackDelay.Max +# AttackCD初期化 + data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max From 8a87e6e42fb1282328f3c9e6559ceb8f990bb60f Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 22:04:00 +0900 Subject: [PATCH 15/34] =?UTF-8?q?=E6=95=B5=E3=81=B8=E3=81=AE=E8=BF=BD?= =?UTF-8?q?=E5=B0=BE=E5=8A=9B=E3=82=92=E4=BD=8E=E4=B8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tick/move/chase_enemy/chase.m.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/chase.m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/chase.m.mcfunction index 75d49922d6d..a95b4344fac 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/chase.m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/chase_enemy/chase.m.mcfunction @@ -6,7 +6,7 @@ # @within function asset:object/1153.flare_butterfly/tick/move/chase_enemy/m # 対象の方へ向きだけ追尾する - $execute facing entity @e[type=#lib:living_without_player,scores={MobUUID=$(TargetMobUUID)},distance=..20,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ + $execute facing entity @e[type=#lib:living_without_player,scores={MobUUID=$(TargetMobUUID)},distance=..20,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-250 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ # 前方がブロックに埋まっているか? $execute at @s if block ^ ^ ^$(ChaseSpeed) #lib:no_collision/ run data modify storage asset:temp 1153.Success set value true From bc74f6c7ddfd9062450ce5d29c55e2477ff2b3af Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 22:04:53 +0900 Subject: [PATCH 16/34] =?UTF-8?q?=E6=95=B5=E3=82=92=E6=8E=A2=E3=81=99?= =?UTF-8?q?=E5=87=A6=E7=90=86=E3=81=AE=E5=9F=BA=E6=BA=96=E4=BD=8D=E7=BD=AE?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A32?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1153.flare_butterfly/tick/move/search_target/.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction index 3d41572a251..740624e035f 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/search_target/.mcfunction @@ -10,4 +10,4 @@ data modify storage asset:context this.SearchInterval._ set from storage asset:context this.SearchInterval.Max # 召喚者の位置を基準に、壁を貫通してない近くの敵を探す - execute positioned as @p[tag=1153.Owner] as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest] facing entity @s feet run function asset:object/1153.flare_butterfly/tick/move/search_target/recursive + execute as @p[tag=1153.Owner] at @s anchored eyes positioned ^ ^ ^ as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..12,sort=nearest] facing entity @s eyes run function asset:object/1153.flare_butterfly/tick/move/search_target/recursive From 1b0afb7d4fc63d502357e5ef0bbd77fd8beca0c1 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 23:24:24 +0900 Subject: [PATCH 17/34] =?UTF-8?q?tick=E3=81=A7=E3=81=AE=E5=87=A6=E7=90=86?= =?UTF-8?q?=E9=A0=86=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../object/1153.flare_butterfly/tick/.mcfunction | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction index 7bc48759c58..45701f74dad 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction @@ -16,15 +16,12 @@ execute as @a if score @s UserID = $UserID Temporary run tag @s add 1153.Owner scoreboard players reset $UserID Temporary -# 攻撃のCD - function asset:object/1153.flare_butterfly/tick/attack/cooldown/ - -# Tick加算 - scoreboard players add @s General.Object.Tick 1 - # 移動 function asset:object/1153.flare_butterfly/tick/move/ +# 攻撃のCD + function asset:object/1153.flare_butterfly/tick/attack/cooldown/ + # 蝶の向きを調整 execute at @s on passengers run tp @s ~ ~ ~ ~ 0 @@ -32,4 +29,5 @@ tag @p[tag=1153.Owner] remove 1153.Owner # 消滅処理 + scoreboard players add @s General.Object.Tick 1 execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flare_butterfly/tick/kill From 2d6835059397a9876f2b171bec2042367e7d090d Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 23:52:31 +0900 Subject: [PATCH 18/34] =?UTF-8?q?=E5=8F=AC=E5=96=9A=E6=99=82=E3=81=AE?= =?UTF-8?q?=E6=BC=94=E5=87=BA=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1320.flare_bloom/trigger/3.main.mcfunction | 7 ++++++- .../1153.flare_butterfly/register.mcfunction | 4 ++++ .../object/1153.flare_butterfly/tick/.mcfunction | 7 +++++-- .../tick/move/summon_move/.mcfunction | 16 ++++++++++++++++ .../tick/move/to_owner/.mcfunction | 8 +++----- 5 files changed, 34 insertions(+), 8 deletions(-) create mode 100644 Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/summon_move/.mcfunction diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction index 4a9b2d916f1..f95d6e48f8d 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction @@ -9,6 +9,11 @@ # ここから先は神器側の効果の処理を書く +# 演出 + playsound entity.blaze.shoot player @a ~ ~ ~ 1.5 0.8 + playsound entity.blaze.shoot player @a ~ ~ ~ 1.5 1.3 + playsound entity.witch.throw player @a ~ ~ ~ 1.5 0.5 + # ダメージ設定 data modify storage api: Argument.FieldOverride.Damage.Default set value 500 execute store result storage api: Argument.FieldOverride.Damage.LowHealthPer float 1.5 run data get storage api: Argument.FieldOverride.Damage.Default @@ -16,4 +21,4 @@ # Object召喚 data modify storage api: Argument.ID set value 1153 execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID - execute rotated ~ 0 anchored eyes positioned ^-1.8 ^ ^1.1 run function api:object/summon + execute rotated ~ 0 anchored eyes positioned ^-1.8 ^8 ^-5 run function api:object/summon diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction index b038b1db8db..7f2099cc3cc 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction @@ -29,6 +29,10 @@ data modify storage asset:object Field.ChaseTick._ set value 0 data modify storage asset:object Field.ChaseTick.Max set value 60 +# 召喚演出用 + data modify storage asset:object Field.SummonMoveTick set value 30 + data modify storage asset:object Field.SummonMoveEnded set value false + # 攻撃発生までのディレイ data modify storage asset:object Field.AttackDelay._ set value 0 data modify storage asset:object Field.AttackDelay.Max set value 8 diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction index 45701f74dad..c411f89f26d 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction @@ -16,8 +16,11 @@ execute as @a if score @s UserID = $UserID Temporary run tag @s add 1153.Owner scoreboard players reset $UserID Temporary -# 移動 - function asset:object/1153.flare_butterfly/tick/move/ +# 召喚時の演出 + execute if data storage asset:context this{SummonMoveEnded:false} run function asset:object/1153.flare_butterfly/tick/move/summon_move/ + +# 移動・追尾・攻撃 + execute if data storage asset:context this{SummonMoveEnded:true} run function asset:object/1153.flare_butterfly/tick/move/ # 攻撃のCD function asset:object/1153.flare_butterfly/tick/attack/cooldown/ diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/summon_move/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/summon_move/.mcfunction new file mode 100644 index 00000000000..d53e139531f --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/summon_move/.mcfunction @@ -0,0 +1,16 @@ +#> asset:object/1153.flare_butterfly/tick/move/summon_move/ +# +# +# +# @within function asset:object/1153.flare_butterfly/tick/ + +# 一定tick後に召喚演出終了判定を出す + execute store result storage asset:context this.SummonMoveTick int 0.9999999999 run data get storage asset:context this.SummonMoveTick + execute if data storage asset:context this{SummonMoveTick:0} run data modify storage asset:context this.SummonMoveEnded set value true + +# Ownerに近づいてく + function asset:object/1153.flare_butterfly/tick/move/to_owner/ + +# 召喚時だけ演出を濃くする + particle dust 1 0.4 0 0.9 ~ ~ ~ 0.3 0.3 0.3 0 3 normal @a + execute if predicate lib:random_pass_per/35 run particle small_flame ~ ~ ~ 0.3 0.3 0.3 0 3 normal @a diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/.mcfunction index 5e275ec67eb..d0be868a694 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/.mcfunction @@ -2,11 +2,9 @@ # # # -# @within function asset:object/1153.flare_butterfly/tick/move/ - -#> Private -# @private - #declare tag 1153.TempMarker +# @within function +# asset:object/1153.flare_butterfly/tick/move/ +# asset:object/1153.flare_butterfly/tick/move/summon_move/ # Ownerの位置基準でMarkerを召喚し、そこへ追尾する感じで移動する From 24cff7a077de8564940e3256b9a64ac40471f455 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Fri, 13 Feb 2026 23:54:37 +0900 Subject: [PATCH 19/34] =?UTF-8?q?=E8=BF=91=E3=81=8F=E3=81=AB=E3=81=84?= =?UTF-8?q?=E3=82=8B=E5=88=A4=E5=AE=9A=E3=82=92=E5=B0=91=E3=81=97=E6=8B=A1?= =?UTF-8?q?=E5=A4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../object/1153.flare_butterfly/predicate/near_enemy.mcfunction | 2 +- .../object/1153.flare_butterfly/predicate/near_owner.mcfunction | 2 +- .../predicate/near_target/neutral_near/m.mcfunction | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_enemy.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_enemy.mcfunction index 45bc25103a9..c4b080b1fb8 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_enemy.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_enemy.mcfunction @@ -5,7 +5,7 @@ # @within function asset:object/1153.flare_butterfly/tick/move/** # Ownerの周囲に敵が周囲にいないなら失敗 - execute at @p[tag=1153.Owner] unless entity @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10] run return 0 + execute at @p[tag=1153.Owner] unless entity @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..12] run return 0 # 成功 return 1 diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_owner.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_owner.mcfunction index eb27b9bb33a..e3f65af66be 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_owner.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_owner.mcfunction @@ -5,7 +5,7 @@ # @within function asset:object/1153.flare_butterfly/** # Ownerが近くにいないなら失敗 - execute unless entity @p[tag=1153.Owner,distance=..10] run return 0 + execute unless entity @p[tag=1153.Owner,distance=..12] run return 0 # 成功 return 1 diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/m.mcfunction index 69727916b5d..adf4c52cb76 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/m.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/predicate/near_target/neutral_near/m.mcfunction @@ -4,6 +4,6 @@ # # @within function asset:object/1153.flare_butterfly/predicate/near_target/neutral_near/ -$execute if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},distance=..10] run return 1 +$execute if entity @e[type=#lib:living_without_player,tag=Enemy,scores={MobUUID=$(TargetMobUUID)},distance=..12] run return 1 return 0 From fb972423e56fe4336e236673e60feb06ce8ed422 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sat, 14 Feb 2026 10:23:59 +0900 Subject: [PATCH 20/34] =?UTF-8?q?=E5=AD=98=E5=9C=A8=E6=99=82=E9=96=93?= =?UTF-8?q?=E3=82=92storage=E7=AE=A1=E7=90=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../object/1153.flare_butterfly/register.mcfunction | 11 +++++++---- .../object/1153.flare_butterfly/tick/.mcfunction | 4 ++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction index 7f2099cc3cc..3b4c7c31a87 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction @@ -25,14 +25,17 @@ data modify storage asset:object Field.SearchInterval._ set value 0 data modify storage asset:object Field.SearchInterval.Max set value 3 +# 召喚演出が何tickか?等 + data modify storage asset:object Field.SummonMoveTick set value 45 + data modify storage asset:object Field.SummonMoveEnded set value false + +# 存在時間(召喚が永続化したら要らなくなりそうだが) + data modify storage asset:object Field.Tick set value 445 + # 最大追跡時間 data modify storage asset:object Field.ChaseTick._ set value 0 data modify storage asset:object Field.ChaseTick.Max set value 60 -# 召喚演出用 - data modify storage asset:object Field.SummonMoveTick set value 30 - data modify storage asset:object Field.SummonMoveEnded set value false - # 攻撃発生までのディレイ data modify storage asset:object Field.AttackDelay._ set value 0 data modify storage asset:object Field.AttackDelay.Max set value 8 diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction index c411f89f26d..5a11385e9c6 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/.mcfunction @@ -32,5 +32,5 @@ tag @p[tag=1153.Owner] remove 1153.Owner # 消滅処理 - scoreboard players add @s General.Object.Tick 1 - execute if score @s General.Object.Tick matches 400.. run function asset:object/1153.flare_butterfly/tick/kill + execute store result storage asset:context this.Tick int 0.9999999999 run data get storage asset:context this.Tick + execute if data storage asset:context this{Tick:0} run function asset:object/1153.flare_butterfly/tick/kill From d5cb6cc475dcaae793be91ff2580b169e270abd6 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sat, 14 Feb 2026 10:27:22 +0900 Subject: [PATCH 21/34] =?UTF-8?q?=E3=83=97=E3=83=AC=E3=82=A4=E3=83=A4?= =?UTF-8?q?=E3=83=BC=E3=81=AB=E5=AF=BE=E3=81=99=E3=82=8B=E8=BF=BD=E5=B0=BE?= =?UTF-8?q?=E5=8A=9B=E3=82=92=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1153.flare_butterfly/tick/move/to_owner/chase.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction index 7e6b250425b..b29e562d914 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/move/to_owner/chase.mcfunction @@ -5,7 +5,7 @@ # @within function asset:object/1153.flare_butterfly/tick/move/to_owner/ # 向きだけ追尾 - execute facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-120 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ + execute facing entity @e[type=marker,tag=1153.TempMarker,distance=..64,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-250 facing entity @s feet positioned as @s run tp @s ~ ~ ~ ~ ~ # 該当Markerとの距離に応じて速度を変える execute unless entity @e[type=marker,tag=1153.TempMarker,distance=..24,limit=1] at @s run return run tp @s ^ ^ ^1.5 From 3237420a6af7dc9de61c650fb23de8e4c83be089 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sat, 14 Feb 2026 10:27:36 +0900 Subject: [PATCH 22/34] =?UTF-8?q?=E5=8F=AC=E5=96=9A=E6=99=82=E3=81=AB?= =?UTF-8?q?=E7=9C=9F=E4=B8=8B=E3=82=92=E5=90=91=E3=81=84=E3=81=A6=E3=81=8A?= =?UTF-8?q?=E3=81=8F=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/object/1153.flare_butterfly/init/.mcfunction | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction index c5a9b471fa4..c1d445cd38b 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/init/.mcfunction @@ -6,3 +6,6 @@ # AttackCD初期化 data modify storage asset:context this.AttackCD._ set from storage asset:context this.AttackCD.Max + +# 演出の関係で真下を向いておく + tp @s ~ ~ ~ ~ 90 From 79f23f0e252401365b887a08e69ed0bd7ff487d8 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sat, 14 Feb 2026 10:55:23 +0900 Subject: [PATCH 23/34] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E6=99=82=E3=81=AE?= =?UTF-8?q?=E6=BC=94=E5=87=BA=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trigger/3.main.mcfunction | 2 ++ .../1320.flare_bloom/trigger/vfx.mcfunction | 36 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/vfx.mcfunction diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction index f95d6e48f8d..e7b7c5fac7e 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction @@ -10,6 +10,8 @@ # ここから先は神器側の効果の処理を書く # 演出 + execute anchored eyes positioned ^ ^ ^ positioned ~ ~-0.3 ~ rotated ~90 25 run function asset:artifact/1320.flare_bloom/trigger/vfx + execute anchored eyes positioned ^ ^ ^ positioned ~ ~-0.3 ~ rotated ~90 -25 run function asset:artifact/1320.flare_bloom/trigger/vfx playsound entity.blaze.shoot player @a ~ ~ ~ 1.5 0.8 playsound entity.blaze.shoot player @a ~ ~ ~ 1.5 1.3 playsound entity.witch.throw player @a ~ ~ ~ 1.5 0.5 diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/vfx.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/vfx.mcfunction new file mode 100644 index 00000000000..ff3ead739f0 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/vfx.mcfunction @@ -0,0 +1,36 @@ +#> asset:artifact/1320.flare_bloom/trigger/vfx +# +# +# +# @within function asset:artifact/1320.flare_bloom/trigger/3.main + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkqgBxwBmAhgJwDsNAtDQEYdOsAslABl6sGANhQpWEjjUoBGSqQCsQ-GAB2dALYJkgMMUABHLAEYdDNoDOScCgD2hdRCQAmSgRRwncDDbAA3OmxCXXAADyQBAihIgF9YggtSNEJrRDkBTKyCSwhzZ0QosDhsbDQYS10Moow7PIhdIrRLAFFS8sqWgEdCIOwoAGUzT3JEemxK+IBdIA_3 +# 円 1 +particle flame ~ ~ ~ ^0 ^ ^-1000000 0.00000030 0 +particle flame ~ ~ ~ ^222520.93396 ^ ^-974927.91218 0.00000030 0 +particle flame ~ ~ ~ ^433883.73912 ^ ^-900968.8679 0.00000030 0 +particle flame ~ ~ ~ ^623489.80186 ^ ^-781831.48247 0.00000030 0 +particle flame ~ ~ ~ ^781831.48247 ^ ^-623489.80186 0.00000030 0 +particle flame ~ ~ ~ ^900968.8679 ^ ^-433883.73912 0.00000030 0 +particle flame ~ ~ ~ ^974927.91218 ^ ^-222520.93396 0.00000030 0 +particle flame ~ ~ ~ ^1000000 ^ ^0 0.00000030 0 +particle flame ~ ~ ~ ^974927.91218 ^ ^222520.93396 0.00000030 0 +particle flame ~ ~ ~ ^900968.8679 ^ ^433883.73912 0.00000030 0 +particle flame ~ ~ ~ ^781831.48247 ^ ^623489.80186 0.00000030 0 +particle flame ~ ~ ~ ^623489.80186 ^ ^781831.48247 0.00000030 0 +particle flame ~ ~ ~ ^433883.73912 ^ ^900968.8679 0.00000030 0 +particle flame ~ ~ ~ ^222520.93396 ^ ^974927.91218 0.00000030 0 +particle flame ~ ~ ~ ^0 ^ ^1000000 0.00000030 0 +particle flame ~ ~ ~ ^-222520.93396 ^ ^974927.91218 0.00000030 0 +particle flame ~ ~ ~ ^-433883.73912 ^ ^900968.8679 0.00000030 0 +particle flame ~ ~ ~ ^-623489.80186 ^ ^781831.48247 0.00000030 0 +particle flame ~ ~ ~ ^-781831.48247 ^ ^623489.80186 0.00000030 0 +particle flame ~ ~ ~ ^-900968.8679 ^ ^433883.73912 0.00000030 0 +particle flame ~ ~ ~ ^-974927.91218 ^ ^222520.93396 0.00000030 0 +particle flame ~ ~ ~ ^-1000000 ^ ^0 0.00000030 0 +particle flame ~ ~ ~ ^-974927.91218 ^ ^-222520.93396 0.00000030 0 +particle flame ~ ~ ~ ^-900968.8679 ^ ^-433883.73912 0.00000030 0 +particle flame ~ ~ ~ ^-781831.48247 ^ ^-623489.80186 0.00000030 0 +particle flame ~ ~ ~ ^-623489.80186 ^ ^-781831.48247 0.00000030 0 +particle flame ~ ~ ~ ^-433883.73912 ^ ^-900968.8679 0.00000030 0 +particle flame ~ ~ ~ ^-222520.93396 ^ ^-974927.91218 0.00000030 0 From 5f1706d7d92a4803e6af41345f6bb60e0254f41a Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 20:13:56 +0900 Subject: [PATCH 24/34] =?UTF-8?q?=E3=83=80=E3=83=A1=E3=83=BC=E3=82=B8?= =?UTF-8?q?=E7=AF=84=E5=9B=B2=E3=82=92=E8=A8=AD=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1320.flare_bloom/give/2.give.mcfunction | 2 +- .../1320.flare_bloom/trigger/3.main.mcfunction | 5 +++-- .../1153.flare_butterfly/_index.d.mcfunction | 4 ++++ .../1153.flare_butterfly/register.mcfunction | 5 +++++ .../tick/attack/attack.mcfunction | 10 +++------- .../tick/attack/damage/.mcfunction | 14 ++++++++++++++ .../tick/attack/damage/range.m.mcfunction | 7 +++++++ 7 files changed, 37 insertions(+), 10 deletions(-) create mode 100644 Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction create mode 100644 Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/range.m.mcfunction diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction index 8adfc6b4d25..016e2ce11de 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -29,7 +29,7 @@ # 神器の発動条件 (TextComponentString) (オプション) # data modify storage asset:artifact Condition set value # 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) - data modify storage asset:artifact AttackInfo.Damage set value [0,0] + data modify storage asset:artifact AttackInfo.Damage set value [400,500] # 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) data modify storage asset:artifact AttackInfo.AttackType set value [Physical] # 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction index e7b7c5fac7e..276eb4fff21 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction @@ -17,8 +17,9 @@ playsound entity.witch.throw player @a ~ ~ ~ 1.5 0.5 # ダメージ設定 - data modify storage api: Argument.FieldOverride.Damage.Default set value 500 - execute store result storage api: Argument.FieldOverride.Damage.LowHealthPer float 1.5 run data get storage api: Argument.FieldOverride.Damage.Default + data modify storage api: Argument.FieldOverride.Damage.Default set value {Min:400,Max:500} + execute store result storage api: Argument.FieldOverride.Damage.LowHealthPer.Min float 1.5 run data get storage api: Argument.FieldOverride.Damage.Default.Min + execute store result storage api: Argument.FieldOverride.Damage.LowHealthPer.Max float 1.5 run data get storage api: Argument.FieldOverride.Damage.Default.Max # Object召喚 data modify storage api: Argument.ID set value 1153 diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction index d3e2a3ed59d..a5572b0b1f6 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/_index.d.mcfunction @@ -5,6 +5,10 @@ # @within function asset:object/1153.flare_butterfly/** #declare tag 1153.Owner +#> tag +# @within function asset:object/1153.flare_butterfly/tick/attack/** + #declare score_holder $HealthPer + #> Private # @within function asset:object/1153.flare_butterfly/tick/move/to_owner/** #declare tag 1153.TempMarker diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction index 3b4c7c31a87..ec0e79503a7 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction @@ -18,6 +18,11 @@ data modify storage asset:object ID set value 1153 # フィールド(オプション) +# ダメージ・UserID + data modify storage asset:object Field.Damage.Default set value {Min:1,Max:5} + data modify storage asset:object Field.Damage.LowHealthPer set value {Min:6,Max:10} + data modify storage asset:object Field.Damage.UserID set value -1 + # 移動速度 data modify storage asset:object Field.ChaseSpeed set value 0.6 diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction index 520f5b96c6f..cba548a80c0 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction @@ -22,13 +22,9 @@ execute store result score $HealthPer Temporary run data get storage api: Return.HealthPer 100 # ダメージ - data modify storage api: Argument.Damage set from storage asset:context this.Damage.Default - execute unless score $HealthPer Temporary matches 50.. run data modify storage api: Argument.Damage set from storage asset:context this.Damage.LowHealthPer - data modify storage api: Argument.AttackType set value "Physical" - data modify storage api: Argument.ElementType set value "Fire" - execute as @p[tag=1153.Owner] run function api:damage/modifier - execute positioned ~-2 ~-2 ~-2 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] run function api:damage/ - function api:damage/reset + function api:damage/single_damage_session/open + execute positioned ~-2 ~-2 ~-2 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] run function asset:object/1153.flare_butterfly/tick/attack/damage/ + function api:damage/single_damage_session/close # リセット scoreboard players reset $UserID Temporary diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction new file mode 100644 index 00000000000..c0200ac1527 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/1153.flare_butterfly/tick/attack/damage/ +# +# +# +# @within function asset:object/1153.flare_butterfly/tick/attack/attack + +# 体力が50%か否かでダメージ範囲を変える + execute if score $HealthPer Temporary matches 50.. run function asset:object/1153.flare_butterfly/tick/attack/damage/range.m with storage asset:context this.Damage.Default + execute unless score $HealthPer Temporary matches 50.. run function asset:object/1153.flare_butterfly/tick/attack/damage/range.m with storage asset:context this.Damage.LowHealthPer + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" + execute as @p[tag=1153.Owner] run function api:damage/modifier + execute positioned ~-2 ~-2 ~-2 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] run function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/range.m.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/range.m.mcfunction new file mode 100644 index 00000000000..0ec96f14ea8 --- /dev/null +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/range.m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1153.flare_butterfly/tick/attack/damage/range.m +# +# +# +# @within function asset:object/1153.flare_butterfly/tick/attack/damage/ + +$execute store result storage api: Argument.Damage int 1 run random value $(Min)..$(Max) From 8cabc2bccb23dcfc065a09727af61d16d1ed4ac9 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 21:39:41 +0900 Subject: [PATCH 25/34] =?UTF-8?q?=E3=83=95=E3=83=AC=E3=83=BC=E3=83=90?= =?UTF-8?q?=E3=83=BC=E3=83=86=E3=82=AD=E3=82=B9=E3=83=88=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/1320.flare_bloom/give/2.give.mcfunction | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction index 016e2ce11de..fe242ebcd11 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"フレアブルーム","color":"red"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%以下の時、ダメージが1.5倍になる","color":"white"}'] + data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%未満の時、ダメージが1.5倍になる","color":"white"}','{"text":"自らを焦がし続ける残り火の花","color":"gray"}','{"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 @@ -39,7 +39,7 @@ # 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every" # 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) - data modify storage asset:artifact AttackInfo.AttackRange set value "3.5" + data modify storage asset:artifact AttackInfo.AttackRange set value 2 # MP消費量 (int) data modify storage asset:artifact MPCost set value 100 # MP必要量 (int) (オプション) From 8a7888bed53b76143faac9af205239d39ae2abd0 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 21:49:27 +0900 Subject: [PATCH 26/34] =?UTF-8?q?=E5=90=8D=E5=89=8D=E3=81=AB=E3=82=B0?= =?UTF-8?q?=E3=83=A9=E3=83=87=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3=E3=82=92?= =?UTF-8?q?=E8=A8=AD=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1320.flare_bloom/give/2.give.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction index fe242ebcd11..84d32b60872 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -13,7 +13,7 @@ # 神器のベースアイテム data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" # 神器の名前 (TextComponentString) - data modify storage asset:artifact Name set value '{"text":"フレアブルーム","color":"red"}' + data modify storage asset:artifact Name set value '[{"text":"フ","color":"#EA4C15"},{"text":"レ","color":"#ED5617"},{"text":"ア","color":"#F0601A"},{"text":"ブ","color":"#F46A1C"},{"text":"ル","color":"#F8751F"},{"text":"ー","color":"#FB8021"},{"text":"ム","color":"#FF8B24"}]' # 神器の説明文 (TextComponentString[]) data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%未満の時、ダメージが1.5倍になる","color":"white"}','{"text":"自らを焦がし続ける残り火の花","color":"gray"}','{"text":"その命を燃やす香りに炎の蝶が引き寄せられる","color":"gray"}'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) From c5f25daf116b26ffcaefb846790c6de31b42542c Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 21:50:11 +0900 Subject: [PATCH 27/34] =?UTF-8?q?=E3=83=80=E3=83=A1=E3=83=BC=E3=82=B8?= =?UTF-8?q?=E3=81=8C2=E9=87=8D=E3=81=AB=E7=99=BA=E7=94=9F=E3=81=97?= =?UTF-8?q?=E3=81=86=E3=82=8B=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 --- .../object/1153.flare_butterfly/tick/attack/damage/.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction index c0200ac1527..df134e894dd 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/damage/.mcfunction @@ -10,5 +10,5 @@ data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "Fire" execute as @p[tag=1153.Owner] run function api:damage/modifier - execute positioned ~-2 ~-2 ~-2 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] run function api:damage/ + function api:damage/ function api:damage/reset From b2cea750d07981f8b4601ade38d3c5dd32129100 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 21:52:35 +0900 Subject: [PATCH 28/34] =?UTF-8?q?=E6=94=BB=E6=92=83=E7=AF=84=E5=9B=B2?= =?UTF-8?q?=E3=82=92=E6=8B=A1=E5=A4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1320.flare_bloom/give/2.give.mcfunction | 2 +- .../object/1153.flare_butterfly/tick/attack/attack.mcfunction | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction index 84d32b60872..411cfc23aaa 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -39,7 +39,7 @@ # 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every" # 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) - data modify storage asset:artifact AttackInfo.AttackRange set value 2 + data modify storage asset:artifact AttackInfo.AttackRange set value "2.5" # MP消費量 (int) data modify storage asset:artifact MPCost set value 100 # MP必要量 (int) (オプション) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction index cba548a80c0..99c4b80fda1 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/tick/attack/attack.mcfunction @@ -23,7 +23,7 @@ # ダメージ function api:damage/single_damage_session/open - execute positioned ~-2 ~-2 ~-2 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=3,dy=3,dz=3] run function asset:object/1153.flare_butterfly/tick/attack/damage/ + execute positioned ~-2.5 ~-2.5 ~-2.5 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,dx=4,dy=4,dz=4] run function asset:object/1153.flare_butterfly/tick/attack/damage/ function api:damage/single_damage_session/close # リセット From 630e9952e6baa88752a953fb4e9e3e243402e1ec Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 22:01:28 +0900 Subject: [PATCH 29/34] =?UTF-8?q?=E3=82=B0=E3=83=A9=E3=83=87=E3=83=BC?= =?UTF-8?q?=E3=82=B7=E3=83=A7=E3=83=B3=E3=82=92=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1320.flare_bloom/give/2.give.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction index 411cfc23aaa..8c0913ab055 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -13,7 +13,7 @@ # 神器のベースアイテム data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" # 神器の名前 (TextComponentString) - data modify storage asset:artifact Name set value '[{"text":"フ","color":"#EA4C15"},{"text":"レ","color":"#ED5617"},{"text":"ア","color":"#F0601A"},{"text":"ブ","color":"#F46A1C"},{"text":"ル","color":"#F8751F"},{"text":"ー","color":"#FB8021"},{"text":"ム","color":"#FF8B24"}]' + data modify storage asset:artifact Name set value '[{"text":"フ","color":"#EA4C15"},{"text":"レ","color":"#EC5317"},{"text":"ア","color":"#EF5A19"},{"text":"ブ","color":"#F1611B"},{"text":"ル","color":"#F4681D"},{"text":"ー","color":"#F66E1E"},{"text":"ム","color":"#F8751F"}]' # 神器の説明文 (TextComponentString[]) data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%未満の時、ダメージが1.5倍になる","color":"white"}','{"text":"自らを焦がし続ける残り火の花","color":"gray"}','{"text":"その命を燃やす香りに炎の蝶が引き寄せられる","color":"gray"}'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) From ce5bbf7736a348e8b5bde5ae5b7058dc5528b397 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 22:02:37 +0900 Subject: [PATCH 30/34] =?UTF-8?q?=E3=83=95=E3=83=AC=E3=83=BC=E3=83=90?= =?UTF-8?q?=E3=83=BC=E3=83=86=E3=82=AD=E3=82=B9=E3=83=88=E3=82=92=E8=AA=BF?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1320.flare_bloom/give/2.give.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction index 8c0913ab055..88c00755476 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '[{"text":"フ","color":"#EA4C15"},{"text":"レ","color":"#EC5317"},{"text":"ア","color":"#EF5A19"},{"text":"ブ","color":"#F1611B"},{"text":"ル","color":"#F4681D"},{"text":"ー","color":"#F66E1E"},{"text":"ム","color":"#F8751F"}]' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%未満の時、ダメージが1.5倍になる","color":"white"}','{"text":"自らを焦がし続ける残り火の花","color":"gray"}','{"text":"その命を燃やす香りに炎の蝶が引き寄せられる","color":"gray"}'] + data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%未満の時、ダメージが1.5倍になる","color":"white"}','{"text":"自らを焦がし続ける残り火の花","color":"gray"}','{"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 From c90318b4c7fc4935dafac76cd9bce9a2b37a3f63 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 22:07:47 +0900 Subject: [PATCH 31/34] =?UTF-8?q?=E3=82=AB=E3=83=A9=E3=83=BC=E3=82=B7?= =?UTF-8?q?=E3=83=A3=E3=83=BC=E3=83=89=E3=81=AB=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1320.flare_bloom/register.mcfunction | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/register.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/register.mcfunction index 4fd1f4c2911..0062c9bf9b5 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/register.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/register.mcfunction @@ -4,4 +4,5 @@ # # @within tag/function asset:artifact/register -data modify storage asset:artifact RarityRegistry[4] append value [1320] \ No newline at end of file +data modify storage asset:artifact RarityRegistry[4] append value [1320] +data modify storage asset:artifact RarityRegistryWithColor.Red[4] append value [1320] From 6bf0ef13434144f9b8209cb7ef0a50463a177dba Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 22:57:02 +0900 Subject: [PATCH 32/34] =?UTF-8?q?=E6=94=BB=E6=92=83=E9=96=93=E9=9A=94?= =?UTF-8?q?=E3=82=92=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/object/1153.flare_butterfly/register.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction index ec0e79503a7..ea273b55cce 100644 --- a/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction +++ b/Asset/data/asset/functions/object/1153.flare_butterfly/register.mcfunction @@ -47,7 +47,7 @@ # 攻撃のクールダウン data modify storage asset:object Field.AttackCD._ set value 0 - data modify storage asset:object Field.AttackCD.Max set value 25 + data modify storage asset:object Field.AttackCD.Max set value 30 # 攻撃モードか? data modify storage asset:object Field.IsAttackMode set value false From 2eb1e015eaefd45ab28a15db195a70b45b43ea40 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sun, 15 Feb 2026 23:24:24 +0900 Subject: [PATCH 33/34] =?UTF-8?q?=E7=A5=9E=E5=99=A8=E5=81=B4=E3=81=A7?= =?UTF-8?q?=E8=89=B2=E3=80=85=E8=A8=AD=E5=AE=9A=E3=81=A7=E3=81=8D=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trigger/3.main.mcfunction | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction index 276eb4fff21..bfb4e3300f5 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/trigger/3.main.mcfunction @@ -21,6 +21,25 @@ execute store result storage api: Argument.FieldOverride.Damage.LowHealthPer.Min float 1.5 run data get storage api: Argument.FieldOverride.Damage.Default.Min execute store result storage api: Argument.FieldOverride.Damage.LowHealthPer.Max float 1.5 run data get storage api: Argument.FieldOverride.Damage.Default.Max +# ダメージ以外の諸々の設定 + # 1tick毎の敵を追跡する速度 + data modify storage api: Argument.FieldOverride.ChaseSpeed set value 0.6 + + # 召喚演出が何tickか? + data modify storage api: Argument.FieldOverride.SummonMoveTick set value 45 + + # 存在時間(召喚が永続化したら要らなくなりそうだが) + data modify storage api: Argument.FieldOverride.Tick set value 445 + + # 最大追跡時間 + data modify storage api: Argument.FieldOverride.ChaseTick.Max set value 60 + + # 攻撃発生までのディレイ + data modify storage api: Argument.FieldOverride.AttackDelay.Max set value 8 + + # 攻撃のクールダウン + data modify storage api: Argument.FieldOverride.AttackCD.Max set value 30 + # Object召喚 data modify storage api: Argument.ID set value 1153 execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID From 68c2db2bf48bb9de065511950327a25122a68d01 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Mon, 16 Feb 2026 23:43:08 +0900 Subject: [PATCH 34/34] =?UTF-8?q?=E3=83=95=E3=83=AC=E3=83=BC=E3=83=90?= =?UTF-8?q?=E3=83=BC=E3=83=86=E3=82=AD=E3=82=B9=E3=83=88=E3=82=92=E8=AA=BF?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/artifact/1320.flare_bloom/give/2.give.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction index 88c00755476..173b4824c8e 100644 --- a/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1320.flare_bloom/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '[{"text":"フ","color":"#EA4C15"},{"text":"レ","color":"#EC5317"},{"text":"ア","color":"#EF5A19"},{"text":"ブ","color":"#F1611B"},{"text":"ル","color":"#F4681D"},{"text":"ー","color":"#F66E1E"},{"text":"ム","color":"#F8751F"}]' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%未満の時、ダメージが1.5倍になる","color":"white"}','{"text":"自らを焦がし続ける残り火の花","color":"gray"}','{"text":"その命を燃やす香りに、炎の蝶が引き寄せられる","color":"gray"}'] + data modify storage asset:artifact Lore set value ['{"text":"周囲の敵を攻撃する炎の蝶を召喚する","color":"white"}','{"text":"自身の体力が50%未満の時、ダメージが1.5倍になる","color":"white"}','{"text":"自らを焦がし続ける残り火の花","color":"gray"}','{"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