From 13b77c8bf3ccac68a0c86658836c9302f0a70e8e Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 01:29:57 +0900 Subject: [PATCH 1/9] =?UTF-8?q?=E3=82=AD=E3=83=A9=E3=83=BC=E3=83=93?= =?UTF-8?q?=E3=83=BC=E3=81=8C=E5=87=B6=E6=9A=B4=E3=81=AA=E3=83=8F=E3=83=81?= =?UTF-8?q?=E3=82=92=E7=B6=99=E6=89=BF=E3=81=99=E3=82=8B=E3=82=88=E3=81=86?= =?UTF-8?q?=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/0176.killer_bee/hurt/.mcfunction | 12 ----- .../mob/0176.killer_bee/load.mcfunction | 11 ----- .../mob/0176.killer_bee/register.mcfunction | 40 +++++------------ .../mob/0176.killer_bee/summon/.mcfunction | 4 -- .../mob/0176.killer_bee/tick/.mcfunction | 39 ---------------- .../0176.killer_bee/tick/damage.mcfunction | 27 ----------- .../mob/0186.ferocious_bee/hurt/.mcfunction | 12 +++-- .../mob/0186.ferocious_bee/init/.mcfunction | 15 +++++++ .../mob/0186.ferocious_bee/load.mcfunction | 11 ----- .../0186.ferocious_bee/register.mcfunction | 23 +++++++++- .../mob/0186.ferocious_bee/tick/.mcfunction | 45 ++++++++++--------- .../0186.ferocious_bee/tick/damage.mcfunction | 5 +-- .../tick/end_hurt_time.mcfunction | 11 +++++ .../0186.ferocious_bee/tick/move.mcfunction | 11 +++++ .../0186.ferocious_bee/tick/reset.mcfunction | 11 +++++ .../tick/turning.mcfunction | 11 +++++ .../functions/mob/alias/176/hurt.mcfunction | 4 -- .../functions/mob/alias/176/summon.mcfunction | 4 -- .../functions/mob/alias/176/tick.mcfunction | 4 -- .../functions/mob/alias/186/init.mcfunction | 8 ++++ Asset/data/asset/tags/functions/mob/load.json | 2 - 21 files changed, 134 insertions(+), 176 deletions(-) delete mode 100644 Asset/data/asset/functions/mob/0176.killer_bee/hurt/.mcfunction delete mode 100644 Asset/data/asset/functions/mob/0176.killer_bee/load.mcfunction delete mode 100644 Asset/data/asset/functions/mob/0176.killer_bee/summon/.mcfunction delete mode 100644 Asset/data/asset/functions/mob/0176.killer_bee/tick/.mcfunction delete mode 100644 Asset/data/asset/functions/mob/0176.killer_bee/tick/damage.mcfunction create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/init/.mcfunction delete mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/load.mcfunction create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move.mcfunction create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/tick/turning.mcfunction delete mode 100644 Asset/data/asset/functions/mob/alias/176/hurt.mcfunction delete mode 100644 Asset/data/asset/functions/mob/alias/176/summon.mcfunction delete mode 100644 Asset/data/asset/functions/mob/alias/176/tick.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/186/init.mcfunction diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/hurt/.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/hurt/.mcfunction deleted file mode 100644 index e3ed289daa..0000000000 --- a/Asset/data/asset/functions/mob/0176.killer_bee/hurt/.mcfunction +++ /dev/null @@ -1,12 +0,0 @@ -#> asset:mob/0176.killer_bee/hurt/ -# -# Mobの被ダメージ時の処理 -# -# @within function asset:mob/alias/176/hurt - -# 演出 - playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 - -# HurtTimeをスコア化 - scoreboard players set @s 4W.HurtTime 20 - data modify entity @s[scores={4W.MoveTime=..49}] NoAI set value 0b diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/load.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/load.mcfunction deleted file mode 100644 index f625966bb7..0000000000 --- a/Asset/data/asset/functions/mob/0176.killer_bee/load.mcfunction +++ /dev/null @@ -1,11 +0,0 @@ -#> asset:mob/0176.killer_bee/load -# -# MOBに利用するスコアボード等の初期化処理 -# -# @within tag/function asset:mob/load - -#> 定義類はここに -# @within function asset:mob/0176.killer_bee/** - scoreboard objectives add 4W.HurtTime dummy - scoreboard objectives add 4W.MoveTime dummy - scoreboard objectives add 4W.AttackCT dummy diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction index 32260feb50..ee2e875ea4 100644 --- a/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction +++ b/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction @@ -1,6 +1,12 @@ #> asset:mob/0176.killer_bee/register # @within asset:mob/alias/176/register +# 継承 (int) (オプション) + data modify storage asset:mob Extends append value 186 + function asset:mob/extends + +# 他のモブに継承されることを許可するか (boolean) (オプション) + # data modify storage asset:mob ExtendsSafe set value # ID (int) data modify storage asset:mob ID set value 176 # Type (string) Wikiを参照 @@ -11,38 +17,10 @@ data modify storage asset:mob Name set value '{"text":"キラービー"}' # Mobの説明文 (TextComponentString[]) (オプション) data modify storage asset:mob Lore set value ['{"text":"殺人蜂。","color":"white"}','{"text":"一応ミツバチなので針を刺すたびに致命傷を負う。","color":"white"}'] -# 武器 - # メインハンド (Compound(Item)) (オプション) - # data modify storage asset:mob Weapon.Mainhand set value - # オフハンド (Compound(Item)) (オプション) - # data modify storage asset:mob Weapon.Offhand set value -# 武器ドロップ率 ([float, float]) (オプション) - # data modify storage asset:mob WeaponDropChances set value -# 防具 - # 頭 (Compound(Item)) (オプション) - data modify storage asset:mob Armor.Head set value {id:"minecraft:stone",Count:1b,tag:{CustomModelData:20054}} - # 胴 (Compound(Item)) (オプション) - # data modify storage asset:mob Armor.Chest set value - # 脚 (Compound(Item)) (オプション) - # data modify storage asset:mob Armor.Legs set value - # 足 (Compound(Item)) (オプション) - # data modify storage asset:mob Armor.Feet set value -# 防具ドロップ率 ([float, float]) (オプション) - # data modify storage asset:mob ArmorDropChances set value # 体力 (double) (オプション) data modify storage asset:mob Health set value 1000 -# 攻撃力 (double) (オプション) - # data modify storage asset:mob AttackDamage set value 1 -# 防御力 (double) (オプション) // 被ダメージがある程度大きい場合1ptにつき0.8%カット、小さい場合1ptにつき約4%カット 20pt以上は頭打ち - # data modify storage asset:mob Defense set value -# 特殊防御力 (double) (オプション) // 4pointにつきダメージを大きく減らす - # data modify storage asset:mob SpecialDefense set value # 移動速度 (double) (オプション) # data modify storage asset:mob Speed set value -# 索敵範囲 (double) (オプション) - # data modify storage asset:mob FollowRange set value -# ノックバック耐性 (double) (オプション) - # data modify storage asset:mob KnockBackResist set value # 属性倍率 // 1.0fで100% 最低でも25%は軽減されずに入る # 物理倍率 (float) (オプション) data modify storage asset:mob Resist.Physical set value 1 @@ -54,3 +32,9 @@ data modify storage asset:mob Lore set value ['{"text":"殺人蜂。","color":"w data modify storage asset:mob Resist.Water set value 1 # 雷倍率 (float) (オプション) data modify storage asset:mob Resist.Thunder set value 1 + +# フィールド + data modify storage asset:mob Field.Damage set value 25f + +# 旋回時間 + data modify storage asset:mob Field.TurnTick set value 50 diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/summon/.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/summon/.mcfunction deleted file mode 100644 index ebf3dad026..0000000000 --- a/Asset/data/asset/functions/mob/0176.killer_bee/summon/.mcfunction +++ /dev/null @@ -1,4 +0,0 @@ -#> asset:mob/0176.killer_bee/summon/ -# @within asset:mob/alias/176/summon - -summon zombie ~ ~ ~ {Tags:["MobInit","ProcessCommonTag","AlwaysInvisible"],NoGravity:1b,NoAI:1b,Silent:1b,IsBaby:1b,DeathLootTable:"empty"} diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/tick/.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/tick/.mcfunction deleted file mode 100644 index f3a205ce42..0000000000 --- a/Asset/data/asset/functions/mob/0176.killer_bee/tick/.mcfunction +++ /dev/null @@ -1,39 +0,0 @@ -#> asset:mob/0176.killer_bee/tick/ -# -# Mobのtick時の処理 -# -# @within function asset:mob/alias/176/tick - -# スコア関連 - scoreboard players add @s 4W.MoveTime 1 - scoreboard players remove @s[scores={4W.HurtTime=0..}] 4W.HurtTime 1 - -# スコアによって速度が変わる -# スコアが50の時にプレイヤーが近くにいなければスコアをリセット -# 50..69の時に、近くのプレイヤーに軸合わせする -# 70以上で突進する - execute if entity @s[scores={4W.MoveTime=..49}] unless score @s 4W.HurtTime matches 0.. facing entity @p feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-800 facing entity @s eyes positioned as @s run tp @s ^ ^ ^0.3 ~ ~ - execute if entity @s[scores={4W.MoveTime=50}] unless entity @p[gamemode=!spectator,distance=..20] run scoreboard players reset @s 4W.MoveTime - execute if entity @s[scores={4W.MoveTime=50..69}] anchored eyes run tp @s ~ ~ ~ facing entity @p eyes - execute if entity @s[scores={4W.MoveTime=70..}] run tp @s ^ ^ ^1 ~ ~ - -# スコアリセット - scoreboard players reset @s[scores={4W.MoveTime=80..}] 4W.MoveTime - -# のけぞりから復帰 - data modify entity @s[scores={4W.HurtTime=..0}] NoAI set value 1b - -# 演出 - execute if entity @s[scores={4W.MoveTime=70}] run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 - execute if entity @s[scores={4W.MoveTime=70..}] run particle cloud ~ ~1.25 ~ 0.25 0.25 0.25 0 0 - -# クールタイムを減らす 0以下にはならない - scoreboard players remove @s[scores={4W.AttackCT=1..}] 4W.AttackCT 1 - -# クールタイム中じゃないなら突進時に攻撃 - execute if entity @s[scores={4W.MoveTime=70..}] unless entity @s[scores={4W.AttackCT=1..}] positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0176.killer_bee/tick/damage - -# カベにぶつかった際の処理はない。壁は貫通するもの - -# デスポーン処理 - execute unless entity @p[distance=..40] run function api:mob/remove diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/tick/damage.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/tick/damage.mcfunction deleted file mode 100644 index 17602298fd..0000000000 --- a/Asset/data/asset/functions/mob/0176.killer_bee/tick/damage.mcfunction +++ /dev/null @@ -1,27 +0,0 @@ -#> asset:mob/0176.killer_bee/tick/damage -# -# -# -# @within function asset:mob/0176.killer_bee/tick/ - -# 演出 - playsound entity.bee.sting hostile @a ~ ~ ~ 1 1 - -# 攻撃のCT設定 - scoreboard players set @s 4W.AttackCT 20 - -# ダメージ - data modify storage api: Argument.Damage set value 25 - data modify storage api: Argument.AttackType set value "Physical" - data modify storage api: Argument.ElementType set value "None" - function api:damage/modifier - execute as @p[tag=!PlayerShouldInvulnerable,dx=0] run function api:damage/ - function api:damage/reset - -# 自爆ダメージ - data modify storage api: Argument.Damage set value 200 - data modify storage api: Argument.AttackType set value "Physical" - data modify storage api: Argument.FixedDamage set value true - execute as @p[tag=!PlayerShouldInvulnerable,dx=0] run function api:damage/modifier - function api:damage/ - function api:damage/reset diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction index 5b3fcec717..4ccd7467ad 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction @@ -7,6 +7,12 @@ # 演出 playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 -# HurtTimeをスコア化 - scoreboard players set @s 56.HurtTime 20 - data modify entity @s[scores={56.MoveTime=..179}] NoAI set value 0b +# 以下の処理はDoTの場合は適用されない + execute if data storage asset:context Hurt{IsDoT:true} run return fail + +# HurtTimeをフィールドで疑似的に管理 + data modify storage asset:context this.HurtTime._ set from storage asset:context this.HurtTime.Max + +# のけぞり用にNoAIを無効化 + data modify entity @s NoAI set value 0b + data modify storage asset:context this.NoAI set value true diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/init/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/init/.mcfunction new file mode 100644 index 0000000000..4b58f40a65 --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/init/.mcfunction @@ -0,0 +1,15 @@ +#> asset:mob/0186.ferocious_bee/init/ +# +# Mobのinit時の処理 +# +# @within asset:mob/alias/186/init + +# IsBabyの速度補正を打ち消すため、旋回中と突進中の速度をそれぞれ0.66667倍する + execute store result storage asset:context this.MoveSpeed.Turn double 0.0066667 run data get storage asset:context this.MoveSpeed.Turn 100 + execute store result storage asset:context this.MoveSpeed.Charge double 0.0066667 run data get storage asset:context this.MoveSpeed.Charge 100 + +# 速度を初期化しておく + data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Turn + +# スコアも初期化しておく + execute store result score @s General.Mob.Tick run data get storage asset:context this.TurnTick -1 diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/load.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/load.mcfunction deleted file mode 100644 index bf13a741a9..0000000000 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/load.mcfunction +++ /dev/null @@ -1,11 +0,0 @@ -#> asset:mob/0186.ferocious_bee/load -# -# MOBに利用するスコアボード等の初期化処理 -# -# @within tag/function asset:mob/load - -#> 定義類はここに -# @within function asset:mob/0186.ferocious_bee/** - scoreboard objectives add 56.HurtTime dummy - scoreboard objectives add 56.MoveTime dummy - scoreboard objectives add 56.AttackCT dummy diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction index 773eaeefbd..5de9f67b0a 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction @@ -1,6 +1,14 @@ #> asset:mob/0186.ferocious_bee/register # @within asset:mob/alias/186/register +# 継承 (int) (オプション) + data modify storage asset:mob Extends append value 2004 + function asset:mob/extends +# 継承されることを前提とした、抽象的なモブであるかどうか(boolean) + data modify storage asset:mob IsAbstract set value false + +# 他のモブに継承されることを許可するか (boolean) (オプション) + data modify storage asset:mob ExtendsSafe set value true # ID (int) data modify storage asset:mob ID set value 186 # Type (string) Wikiを参照 @@ -38,7 +46,7 @@ # 特殊防御力 (double) (オプション) // 4pointにつきダメージを大きく減らす # data modify storage asset:mob SpecialDefense set value # 移動速度 (double) (オプション) - # data modify storage asset:mob Speed set value + data modify storage asset:mob Speed set value 0.2 # 索敵範囲 (double) (オプション) data modify storage asset:mob FollowRange set value 50 # ノックバック耐性 (double) (オプション) @@ -54,3 +62,16 @@ data modify storage asset:mob Resist.Water set value 0.9 # 雷倍率 (float) (オプション) data modify storage asset:mob Resist.Thunder set value 1 + +# フィールド + data modify storage asset:mob Field.Damage set value 11f + +# 旋回時間 + data modify storage asset:mob Field.TurnTick set value 180 + +# 速度 + data modify storage asset:mob Field.MoveSpeed set value {Turn:0.2,Charge:1.0} + +# 疑似HurtTime + data modify storage asset:mob Field.HurtTime._ set value 0 + data modify storage asset:mob Field.HurtTime.Max set value 20 diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction index ff5f8d08ac..ccd275f2c9 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction @@ -4,36 +4,37 @@ # # @within function asset:mob/alias/186/tick -# スコア関連 - scoreboard players add @s 56.MoveTime 1 - scoreboard players remove @s[scores={56.HurtTime=0..}] 56.HurtTime 1 - -# スコアによって速度が変わる -# スコアが180の時にプレイヤーが近くにいなければスコアをリセット -# 180..189の時に、近くのプレイヤーに軸合わせする -# 190以上で突進する - execute if entity @s[scores={56.MoveTime=..179}] unless score @s 56.HurtTime matches 0.. facing entity @p feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-800 facing entity @s eyes positioned as @s run tp @s ^ ^ ^0.2 ~ ~ - execute if entity @s[scores={56.MoveTime=180}] unless entity @p[gamemode=!spectator,distance=..20] run scoreboard players reset @s 56.MoveTime - execute if entity @s[scores={56.MoveTime=180..189}] anchored eyes run tp @s ~ ~ ~ facing entity @p eyes - execute if entity @s[scores={56.MoveTime=190..}] run tp @s ^ ^ ^1 ~ ~ +# Tickスコア + scoreboard players add @s General.Mob.Tick 1 + +# HurtTimeのデクリメント + execute store result storage asset:context this.HurtTime._ int 0.999999999 run data get storage asset:context this.HurtTime._ + +# スコアが-1以下 && HurtTime中でない ならプレイヤーを追尾する + execute if entity @s[scores={General.Mob.Tick=..-1}] if data storage asset:context this.HurtTime{_:0} run function asset:mob/0186.ferocious_bee/tick/turning +# スコアが0の時にプレイヤーが近くにいなければスコアをリセット + execute if entity @s[scores={General.Mob.Tick=0}] unless entity @p[gamemode=!spectator,distance=..40] run function asset:mob/0186.ferocious_bee/tick/reset +# 0..19の時に、近くのプレイヤーに軸合わせする + execute if entity @s[scores={General.Mob.Tick=0..19}] anchored eyes run tp @s ~ ~ ~ facing entity @p[gamemode=!spectator,distance=..40] eyes +# 突進直前に速度設定 + execute if entity @s[scores={General.Mob.Tick=20}] run data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Charge +# 20以上で突進 + execute if entity @s[scores={General.Mob.Tick=20..}] run function asset:mob/0186.ferocious_bee/tick/move # スコアリセット - scoreboard players reset @s[scores={56.MoveTime=200..}] 56.MoveTime + execute if score @s General.Mob.Tick matches 30.. run function asset:mob/0186.ferocious_bee/tick/reset # のけぞりから復帰 - data modify entity @s[scores={56.HurtTime=..0}] NoAI set value 1b + execute if data storage asset:context this.HurtTime{_:0,NoAI:false} run function asset:mob/0186.ferocious_bee/tick/end_hurt_time # 演出 - execute if entity @s[scores={56.MoveTime=190}] run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 - execute if entity @s[scores={56.MoveTime=190..}] run particle cloud ~ ~1.25 ~ 0.25 0.25 0.25 0 0 + execute if entity @s[scores={General.Mob.Tick=20}] run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 + execute if entity @s[scores={General.Mob.Tick=20..}] run particle cloud ~ ~1.25 ~ 0.25 0.25 0.25 0 0 -# クールタイムを減らす 0以下にはならない - scoreboard players remove @s[scores={56.AttackCT=1..}] 56.AttackCT 1 - -# クールタイム中じゃないなら突進時に攻撃 - execute if entity @s[scores={56.MoveTime=190..}] unless score @s 56.AttackCT matches 1.. positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage +# 突進時に攻撃 + execute if entity @s[scores={General.Mob.Tick=20..}] positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage # カベにぶつかった際の処理はない。壁は貫通するもの # デスポーン処理 - execute unless entity @p[distance=..40] run function api:mob/remove + execute unless entity @p[gamemode=!spectator,distance=..40] run function api:mob/remove diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage.mcfunction index 8d5f0e14ba..6790e3d225 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage.mcfunction @@ -7,11 +7,8 @@ # 演出 playsound entity.bee.sting hostile @a ~ ~ ~ 1 1 -# 攻撃のCT設定 - scoreboard players set @s 56.AttackCT 20 - # ダメージ - data modify storage api: Argument.Damage set value 11.0f + data modify storage api: Argument.Damage set from storage asset:context this.Damage data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "None" function api:damage/modifier diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction new file mode 100644 index 0000000000..1eff4fab2b --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0186.ferocious_bee/tick/end_hurt_time +# +# +# +# @within function asset:mob/0186.ferocious_bee/tick/ + +# + data modify storage asset:context this.NoAI set value false + +# NoAIを有効化 + data modify entity @s NoAI set value true diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move.mcfunction new file mode 100644 index 0000000000..75db870bcb --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0186.ferocious_bee/tick/move +# +# +# +# @within function +# asset:mob/0186.ferocious_bee/tick/ +# asset:mob/0186.ferocious_bee/tick/turning + +# 移動 + function asset:mob/call.m {method:"get_speed"} + execute at @s run function asset:mob/call.m {method:"move"} diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction new file mode 100644 index 0000000000..5e2daf874a --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0186.ferocious_bee/tick/reset +# +# +# +# @within function asset:mob/0186.ferocious_bee/tick/ + +# tick初期化 + execute store result score @s General.Mob.Tick run data get storage asset:context this.TurnTick -1 + +# 速度初期化 + data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Turn diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/turning.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/turning.mcfunction new file mode 100644 index 0000000000..87d2442bc9 --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/turning.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0186.ferocious_bee/tick/turning +# +# +# +# @within function asset:mob/0186.ferocious_bee/tick/ + +# 追尾 + execute facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-800 facing entity @s eyes positioned as @s run tp @s ~ ~ ~ ~ ~ + +# 移動 + function asset:mob/0186.ferocious_bee/tick/move diff --git a/Asset/data/asset/functions/mob/alias/176/hurt.mcfunction b/Asset/data/asset/functions/mob/alias/176/hurt.mcfunction deleted file mode 100644 index 61c53a7cd1..0000000000 --- a/Asset/data/asset/functions/mob/alias/176/hurt.mcfunction +++ /dev/null @@ -1,4 +0,0 @@ -#> asset:mob/alias/176/hurt -# @within asset_manager:mob/hurt/hurt.m - -function asset:mob/0176.killer_bee/hurt/ diff --git a/Asset/data/asset/functions/mob/alias/176/summon.mcfunction b/Asset/data/asset/functions/mob/alias/176/summon.mcfunction deleted file mode 100644 index 22db1ee58d..0000000000 --- a/Asset/data/asset/functions/mob/alias/176/summon.mcfunction +++ /dev/null @@ -1,4 +0,0 @@ -#> asset:mob/alias/176/summon -# @within asset_manager:mob/summon/summon.m - -function asset:mob/0176.killer_bee/summon/ diff --git a/Asset/data/asset/functions/mob/alias/176/tick.mcfunction b/Asset/data/asset/functions/mob/alias/176/tick.mcfunction deleted file mode 100644 index eaa20c1082..0000000000 --- a/Asset/data/asset/functions/mob/alias/176/tick.mcfunction +++ /dev/null @@ -1,4 +0,0 @@ -#> asset:mob/alias/176/tick -# @within asset_manager:mob/tick/tick.m - -function asset:mob/0176.killer_bee/tick/ diff --git a/Asset/data/asset/functions/mob/alias/186/init.mcfunction b/Asset/data/asset/functions/mob/alias/186/init.mcfunction new file mode 100644 index 0000000000..f62c61baae --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/186/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/186/init +# +# Init処理のエイリアス +# +# @within asset_manager:mob/triggers/init/init.m + +# 元のInit処理を呼び出す + function asset:mob/0186.ferocious_bee/init/ \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/mob/load.json b/Asset/data/asset/tags/functions/mob/load.json index 3c05053eb5..3d388cf93f 100644 --- a/Asset/data/asset/tags/functions/mob/load.json +++ b/Asset/data/asset/tags/functions/mob/load.json @@ -35,8 +35,6 @@ "asset:mob/0055.hetukedah/load", "asset:mob/0046.clock_of_despair/load", "asset:mob/0331.aurora_sorcerer/load", - "asset:mob/0176.killer_bee/load", - "asset:mob/0186.ferocious_bee/load", "asset:mob/0275.destroyed_block/0.load", "asset:mob/0273.hell_blade/0.load", "asset:mob/0204.infernal_watcher/load", From 6ca3439d5c10e737987b2e9eb268cd4f80c1423e Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 01:33:52 +0900 Subject: [PATCH 2/9] =?UTF-8?q?=E3=83=91=E3=83=BC=E3=83=86=E3=82=A3?= =?UTF-8?q?=E3=82=AF=E3=83=AB=E3=81=AE=E5=87=BA=E3=82=8B=E4=BD=8D=E7=BD=AE?= =?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 --- .../asset/functions/mob/0186.ferocious_bee/tick/.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction index ccd275f2c9..a675af51ed 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction @@ -29,7 +29,7 @@ # 演出 execute if entity @s[scores={General.Mob.Tick=20}] run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 - execute if entity @s[scores={General.Mob.Tick=20..}] run particle cloud ~ ~1.25 ~ 0.25 0.25 0.25 0 0 + execute if entity @s[scores={General.Mob.Tick=20..}] run particle cloud ^ ^0.7 ^-0.8 0.25 0.25 0.25 0 0 # 突進時に攻撃 execute if entity @s[scores={General.Mob.Tick=20..}] positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage From 6b9d151a7800b610eb2359df5782119f99219f1e Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 04:53:31 +0900 Subject: [PATCH 3/9] =?UTF-8?q?=E3=83=80=E3=83=A1=E3=83=BC=E3=82=B8?= =?UTF-8?q?=E3=81=AB=E5=A4=9A=E9=87=8D=E3=83=92=E3=83=83=E3=83=88=E9=98=B2?= =?UTF-8?q?=E6=AD=A2=E5=87=A6=E7=90=86=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/0186.ferocious_bee/register.mcfunction | 1 + .../mob/0186.ferocious_bee/tick/.mcfunction | 5 ++--- .../tick/{damage.mcfunction => damage/.mcfunction} | 7 ++----- .../tick/damage/check_duplicate.mcfunction | 12 ++++++++++++ .../mob/0186.ferocious_bee/tick/reset.mcfunction | 3 +++ 5 files changed, 20 insertions(+), 8 deletions(-) rename Asset/data/asset/functions/mob/0186.ferocious_bee/tick/{damage.mcfunction => damage/.mcfunction} (66%) create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/check_duplicate.mcfunction diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction index 5de9f67b0a..d86d95c6ea 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction @@ -2,6 +2,7 @@ # @within asset:mob/alias/186/register # 継承 (int) (オプション) + data modify storage asset:mob Extends append value 2002 data modify storage asset:mob Extends append value 2004 function asset:mob/extends # 継承されることを前提とした、抽象的なモブであるかどうか(boolean) diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction index a675af51ed..c5ebc1c142 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction @@ -20,6 +20,8 @@ execute if entity @s[scores={General.Mob.Tick=20}] run data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Charge # 20以上で突進 execute if entity @s[scores={General.Mob.Tick=20..}] run function asset:mob/0186.ferocious_bee/tick/move +# 突進時に攻撃 + execute if entity @s[scores={General.Mob.Tick=20..}] positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage/ # スコアリセット execute if score @s General.Mob.Tick matches 30.. run function asset:mob/0186.ferocious_bee/tick/reset @@ -31,9 +33,6 @@ execute if entity @s[scores={General.Mob.Tick=20}] run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 execute if entity @s[scores={General.Mob.Tick=20..}] run particle cloud ^ ^0.7 ^-0.8 0.25 0.25 0.25 0 0 -# 突進時に攻撃 - execute if entity @s[scores={General.Mob.Tick=20..}] positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage - # カベにぶつかった際の処理はない。壁は貫通するもの # デスポーン処理 diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction similarity index 66% rename from Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage.mcfunction rename to Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction index 6790e3d225..14012ffa29 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction @@ -1,16 +1,13 @@ -#> asset:mob/0186.ferocious_bee/tick/damage +#> asset:mob/0186.ferocious_bee/tick/damage/ # # # # @within function asset:mob/0186.ferocious_bee/tick/ -# 演出 - playsound entity.bee.sting hostile @a ~ ~ ~ 1 1 - # ダメージ data modify storage api: Argument.Damage set from storage asset:context this.Damage data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "None" function api:damage/modifier - execute as @p[tag=!PlayerShouldInvulnerable,dx=0] run function api:damage/ + execute as @a[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage/check_duplicate function api:damage/reset diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/check_duplicate.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/check_duplicate.mcfunction new file mode 100644 index 0000000000..d5c8224e0a --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/check_duplicate.mcfunction @@ -0,0 +1,12 @@ +#> asset:mob/0186.ferocious_bee/tick/damage/check_duplicate +# +# +# +# @within function asset:mob/0186.ferocious_bee/tick/damage/ + +# ダメージ + function asset:mob/call.m {method:"check_duplicate"} + execute if predicate asset:mob/2002.duplicate_hit_protection_mixin/is_first_hit run function api:damage/ + +# 演出 + execute if predicate asset:mob/2002.duplicate_hit_protection_mixin/is_first_hit run playsound entity.bee.sting hostile @s ~ ~ ~ 1 1 diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction index 5e2daf874a..55ad8285d1 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/reset.mcfunction @@ -9,3 +9,6 @@ # 速度初期化 data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Turn + +# 多重ヒット防止のデータをリセット + function asset:mob/call.m {method:"reset_duplicate_protection"} From e21a9f1208176b7370f90e84694d4fe4f155604e Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 04:53:43 +0900 Subject: [PATCH 4/9] =?UTF-8?q?HurtTime=E5=91=A8=E3=82=8A=E3=81=AE?= =?UTF-8?q?=E5=87=A6=E7=90=86=E3=81=AE=E3=83=9F=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 --- .../asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction | 3 +++ .../mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction index 4ccd7467ad..db120467cf 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/hurt/.mcfunction @@ -10,6 +10,9 @@ # 以下の処理はDoTの場合は適用されない execute if data storage asset:context Hurt{IsDoT:true} run return fail +# 以下の処理はプレイヤーからの攻撃でないと適用されない + execute if data storage asset:context Hurt{} + # HurtTimeをフィールドで疑似的に管理 data modify storage asset:context this.HurtTime._ set from storage asset:context this.HurtTime.Max diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction index 1eff4fab2b..2a08823a1c 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/end_hurt_time.mcfunction @@ -5,7 +5,7 @@ # @within function asset:mob/0186.ferocious_bee/tick/ # - data modify storage asset:context this.NoAI set value false + data modify storage asset:context this.NoAI set value true # NoAIを有効化 data modify entity @s NoAI set value true From 56db6f8b9d8cf4d51f694d9cf2d55637855e6041 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 05:05:40 +0900 Subject: [PATCH 5/9] =?UTF-8?q?=E6=AF=92=E3=82=92=E4=BB=98=E4=B8=8E?= =?UTF-8?q?=E3=81=99=E3=82=8B=E8=83=BD=E5=8A=9B=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/0176.killer_bee/register.mcfunction | 3 +++ .../mob/0186.ferocious_bee/attack/.mcfunction | 27 +++++++++++++++++++ .../0186.ferocious_bee/register.mcfunction | 7 +++-- .../tick/damage/.mcfunction | 1 + .../functions/mob/alias/186/attack.mcfunction | 8 ++++++ 5 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/186/attack.mcfunction diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction index ee2e875ea4..c88aeffb7e 100644 --- a/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction +++ b/Asset/data/asset/functions/mob/0176.killer_bee/register.mcfunction @@ -38,3 +38,6 @@ data modify storage asset:mob Lore set value ['{"text":"殺人蜂。","color":"w # 旋回時間 data modify storage asset:mob Field.TurnTick set value 50 + +# 毒のID + data modify storage asset:mob Field.PoisonID set value 79 diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction new file mode 100644 index 0000000000..51e9f0b2ba --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction @@ -0,0 +1,27 @@ +#> asset:mob/0186.ferocious_bee/attack/ +# +# Mobの攻撃時の処理 +# +# @within function asset:mob/alias/186/attack + +#> Private +# @private + #declare score_holder $Difficulty + +# Metadataがなければ return + execute unless data storage asset:context Attack{Metadata:"186.Attack"} run return fail + +# 難易度値取得 + function api:global_vars/get_difficulty + execute store result score $Difficulty Temporary run data get storage api: Return.Difficulty + +# 毒を付与 +# Stack = (Difficulty * 2), Duration = 80(Difficulty + 1) + data modify storage api: Argument.ID set from storage asset:context this.PoisonID + execute store result storage api: Argument.Stack int 2 run data get storage api: Return.Difficulty + execute store result storage api: Argument.Duration int 80 run scoreboard players add $Difficulty Temporary 1 + execute as @a[tag=Victim] run function api:entity/mob/effect/give + function api:entity/mob/effect/reset + +# リセット + scoreboard players reset $Difficulty Temporary diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction index d86d95c6ea..9211428f6b 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/register.mcfunction @@ -19,7 +19,7 @@ # 名前 (TextComponentString) (オプション) data modify storage asset:mob Name set value '{"text":"凶暴なハチ","color":"yellow"}' # Mobの説明文 (TextComponentString[]) (オプション) - data modify storage asset:mob Lore set value ['{"text":"ブーーーーン!","color":"white"}','{"text":"毒は持ってない。","color":"white"}'] + data modify storage asset:mob Lore set value ['{"text":"ブーーーーン!","color":"white"}','{"text":"毒を持ってるので刺されない用に注意。","color":"white"}'] # 武器 # メインハンド (Compound(Item)) (オプション) # data modify storage asset:mob Weapon.Mainhand set value @@ -64,9 +64,12 @@ # 雷倍率 (float) (オプション) data modify storage asset:mob Resist.Thunder set value 1 -# フィールド +# ダメージ data modify storage asset:mob Field.Damage set value 11f +# 毒のID + data modify storage asset:mob Field.PoisonID set value 29 + # 旋回時間 data modify storage asset:mob Field.TurnTick set value 180 diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction index 14012ffa29..9fe67c9bad 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction @@ -6,6 +6,7 @@ # ダメージ data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.Metadata set value "186.Attack" data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "None" function api:damage/modifier diff --git a/Asset/data/asset/functions/mob/alias/186/attack.mcfunction b/Asset/data/asset/functions/mob/alias/186/attack.mcfunction new file mode 100644 index 0000000000..3e0935c445 --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/186/attack.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/186/attack +# +# Mobの攻撃時の処理のエイリアス +# +# @within asset_manager:mob/triggers/attack/attack.m + +# 本来の処理を呼び出す + function asset:mob/0186.ferocious_bee/attack/ \ No newline at end of file From 88bbf1f6c128846c7454cc53c9805702bfa1b4d5 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 05:13:58 +0900 Subject: [PATCH 6/9] =?UTF-8?q?distance=E5=BF=98=E3=82=8C=E3=82=92?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../asset/functions/mob/0186.ferocious_bee/attack/.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction index 51e9f0b2ba..6b11efc09c 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/attack/.mcfunction @@ -20,7 +20,7 @@ data modify storage api: Argument.ID set from storage asset:context this.PoisonID execute store result storage api: Argument.Stack int 2 run data get storage api: Return.Difficulty execute store result storage api: Argument.Duration int 80 run scoreboard players add $Difficulty Temporary 1 - execute as @a[tag=Victim] run function api:entity/mob/effect/give + execute as @a[tag=Victim,distance=..32] run function api:entity/mob/effect/give function api:entity/mob/effect/reset # リセット From bac0cf1d1cc01c19431567cda7cb2c5f6aaf155d Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 05:15:00 +0900 Subject: [PATCH 7/9] =?UTF-8?q?if=20score=E3=81=AB=E7=B5=B1=E4=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/0186.ferocious_bee/tick/.mcfunction | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction index c5ebc1c142..a696404254 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction @@ -11,17 +11,17 @@ execute store result storage asset:context this.HurtTime._ int 0.999999999 run data get storage asset:context this.HurtTime._ # スコアが-1以下 && HurtTime中でない ならプレイヤーを追尾する - execute if entity @s[scores={General.Mob.Tick=..-1}] if data storage asset:context this.HurtTime{_:0} run function asset:mob/0186.ferocious_bee/tick/turning + execute if score @s General.Mob.Tick matches ..-1 if data storage asset:context this.HurtTime{_:0} run function asset:mob/0186.ferocious_bee/tick/turning # スコアが0の時にプレイヤーが近くにいなければスコアをリセット - execute if entity @s[scores={General.Mob.Tick=0}] unless entity @p[gamemode=!spectator,distance=..40] run function asset:mob/0186.ferocious_bee/tick/reset + execute if score @s General.Mob.Tick matches 0 unless entity @p[gamemode=!spectator,distance=..40] run function asset:mob/0186.ferocious_bee/tick/reset # 0..19の時に、近くのプレイヤーに軸合わせする - execute if entity @s[scores={General.Mob.Tick=0..19}] anchored eyes run tp @s ~ ~ ~ facing entity @p[gamemode=!spectator,distance=..40] eyes + execute if score @s General.Mob.Tick matches 0..19 anchored eyes run tp @s ~ ~ ~ facing entity @p[gamemode=!spectator,distance=..40] eyes # 突進直前に速度設定 - execute if entity @s[scores={General.Mob.Tick=20}] run data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Charge + execute if score @s General.Mob.Tick matches 20 run data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Charge # 20以上で突進 - execute if entity @s[scores={General.Mob.Tick=20..}] run function asset:mob/0186.ferocious_bee/tick/move + execute if score @s General.Mob.Tick matches 20.. run function asset:mob/0186.ferocious_bee/tick/move # 突進時に攻撃 - execute if entity @s[scores={General.Mob.Tick=20..}] positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage/ + execute if score @s General.Mob.Tick matches 20.. positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage/ # スコアリセット execute if score @s General.Mob.Tick matches 30.. run function asset:mob/0186.ferocious_bee/tick/reset @@ -30,8 +30,8 @@ execute if data storage asset:context this.HurtTime{_:0,NoAI:false} run function asset:mob/0186.ferocious_bee/tick/end_hurt_time # 演出 - execute if entity @s[scores={General.Mob.Tick=20}] run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 - execute if entity @s[scores={General.Mob.Tick=20..}] run particle cloud ^ ^0.7 ^-0.8 0.25 0.25 0.25 0 0 + execute if score @s General.Mob.Tick matches 20 run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 + execute if score @s General.Mob.Tick matches 20.. run particle cloud ^ ^0.7 ^-0.8 0.25 0.25 0.25 0 0 # カベにぶつかった際の処理はない。壁は貫通するもの From 8a73b4ef14315fae18d8c1305a0a7df888f3acfc Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 05:23:48 +0900 Subject: [PATCH 8/9] =?UTF-8?q?=E6=A7=8B=E9=80=A0=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 --- .../mob/0186.ferocious_bee/tick/.mcfunction | 23 +++++++------------ .../tick/before_charge.mcfunction | 11 +++++++++ .../tick/damage/.mcfunction | 2 +- .../{move.mcfunction => move/.mcfunction} | 6 ++--- .../tick/move/charge.mcfunction | 14 +++++++++++ .../tick/{ => move}/turning.mcfunction | 4 ++-- 6 files changed, 39 insertions(+), 21 deletions(-) create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/tick/before_charge.mcfunction rename Asset/data/asset/functions/mob/0186.ferocious_bee/tick/{move.mcfunction => move/.mcfunction} (51%) create mode 100644 Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/charge.mcfunction rename Asset/data/asset/functions/mob/0186.ferocious_bee/tick/{ => move}/turning.mcfunction (71%) diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction index a696404254..73c5ffeb60 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/.mcfunction @@ -11,28 +11,21 @@ execute store result storage asset:context this.HurtTime._ int 0.999999999 run data get storage asset:context this.HurtTime._ # スコアが-1以下 && HurtTime中でない ならプレイヤーを追尾する - execute if score @s General.Mob.Tick matches ..-1 if data storage asset:context this.HurtTime{_:0} run function asset:mob/0186.ferocious_bee/tick/turning -# スコアが0の時にプレイヤーが近くにいなければスコアをリセット + execute if score @s General.Mob.Tick matches ..-1 if data storage asset:context this.HurtTime{_:0} run function asset:mob/0186.ferocious_bee/tick/move/turning +# プレイヤーが近くにいなければスコアをリセット execute if score @s General.Mob.Tick matches 0 unless entity @p[gamemode=!spectator,distance=..40] run function asset:mob/0186.ferocious_bee/tick/reset -# 0..19の時に、近くのプレイヤーに軸合わせする +# 軸合わせする execute if score @s General.Mob.Tick matches 0..19 anchored eyes run tp @s ~ ~ ~ facing entity @p[gamemode=!spectator,distance=..40] eyes -# 突進直前に速度設定 - execute if score @s General.Mob.Tick matches 20 run data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Charge -# 20以上で突進 - execute if score @s General.Mob.Tick matches 20.. run function asset:mob/0186.ferocious_bee/tick/move -# 突進時に攻撃 - execute if score @s General.Mob.Tick matches 20.. positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage/ - -# スコアリセット +# 突進直前の諸々 + execute if score @s General.Mob.Tick matches 20 run function asset:mob/0186.ferocious_bee/tick/before_charge +# 突進 + execute if score @s General.Mob.Tick matches 20.. run function asset:mob/0186.ferocious_bee/tick/move/charge +# 突進終了 execute if score @s General.Mob.Tick matches 30.. run function asset:mob/0186.ferocious_bee/tick/reset # のけぞりから復帰 execute if data storage asset:context this.HurtTime{_:0,NoAI:false} run function asset:mob/0186.ferocious_bee/tick/end_hurt_time -# 演出 - execute if score @s General.Mob.Tick matches 20 run playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 - execute if score @s General.Mob.Tick matches 20.. run particle cloud ^ ^0.7 ^-0.8 0.25 0.25 0.25 0 0 - # カベにぶつかった際の処理はない。壁は貫通するもの # デスポーン処理 diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/before_charge.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/before_charge.mcfunction new file mode 100644 index 0000000000..5c8268223e --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/before_charge.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0186.ferocious_bee/tick/before_charge +# +# +# +# @within function asset:mob/0186.ferocious_bee/tick/ + +# 演出 + playsound entity.bee.hurt hostile @a ~ ~ ~ 1 1 + +# 速度設定 + data modify entity @s Attributes[{Name:"minecraft:generic.movement_speed"}].Base set from storage asset:context this.MoveSpeed.Charge diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction index 9fe67c9bad..eefaec2fc4 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/damage/.mcfunction @@ -2,7 +2,7 @@ # # # -# @within function asset:mob/0186.ferocious_bee/tick/ +# @within function asset:mob/0186.ferocious_bee/tick/move/charge # ダメージ data modify storage api: Argument.Damage set from storage asset:context this.Damage diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/.mcfunction similarity index 51% rename from Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move.mcfunction rename to Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/.mcfunction index 75db870bcb..a0f2c2be31 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/.mcfunction @@ -1,10 +1,10 @@ -#> asset:mob/0186.ferocious_bee/tick/move +#> asset:mob/0186.ferocious_bee/tick/move/ # # # # @within function -# asset:mob/0186.ferocious_bee/tick/ -# asset:mob/0186.ferocious_bee/tick/turning +# asset:mob/0186.ferocious_bee/tick/move/charge +# asset:mob/0186.ferocious_bee/tick/move/turning # 移動 function asset:mob/call.m {method:"get_speed"} diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/charge.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/charge.mcfunction new file mode 100644 index 0000000000..369b61cfc5 --- /dev/null +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/charge.mcfunction @@ -0,0 +1,14 @@ +#> asset:mob/0186.ferocious_bee/tick/move/charge +# +# +# +# @within function asset:mob/0186.ferocious_bee/tick/ + +# 演出 + particle cloud ^ ^0.7 ^-0.8 0.25 0.25 0.25 0 0 + +# 攻撃 + execute positioned ~-0.5 ~0.5 ~-0.5 if entity @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0186.ferocious_bee/tick/damage/ + +# 移動 + function asset:mob/0186.ferocious_bee/tick/move/ diff --git a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/turning.mcfunction b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/turning.mcfunction similarity index 71% rename from Asset/data/asset/functions/mob/0186.ferocious_bee/tick/turning.mcfunction rename to Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/turning.mcfunction index 87d2442bc9..d4cbaaec53 100644 --- a/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/turning.mcfunction +++ b/Asset/data/asset/functions/mob/0186.ferocious_bee/tick/move/turning.mcfunction @@ -1,4 +1,4 @@ -#> asset:mob/0186.ferocious_bee/tick/turning +#> asset:mob/0186.ferocious_bee/tick/move/turning # # # @@ -8,4 +8,4 @@ execute facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-800 facing entity @s eyes positioned as @s run tp @s ~ ~ ~ ~ ~ # 移動 - function asset:mob/0186.ferocious_bee/tick/move + function asset:mob/0186.ferocious_bee/tick/move/ From 8060980bf76bbaa96d415b0f75d0c34ed4de35d1 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Tue, 17 Mar 2026 09:34:35 +0900 Subject: [PATCH 9/9] =?UTF-8?q?[Mob=20176]=20=E3=82=AD=E3=83=A9=E3=83=BC?= =?UTF-8?q?=E3=83=93=E3=83=BC=E3=81=8C=E6=94=BB=E6=92=83=E5=BE=8C=E3=81=AB?= =?UTF-8?q?=E6=AD=BB=E3=81=AC=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/mob/0176.killer_bee/attack/.mcfunction | 11 +++++++++++ .../asset/functions/mob/alias/176/attack.mcfunction | 8 ++++++++ 2 files changed, 19 insertions(+) create mode 100644 Asset/data/asset/functions/mob/0176.killer_bee/attack/.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/176/attack.mcfunction diff --git a/Asset/data/asset/functions/mob/0176.killer_bee/attack/.mcfunction b/Asset/data/asset/functions/mob/0176.killer_bee/attack/.mcfunction new file mode 100644 index 0000000000..280afbbf2c --- /dev/null +++ b/Asset/data/asset/functions/mob/0176.killer_bee/attack/.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0176.killer_bee/attack/ +# +# Mobの攻撃時の処理 +# +# @within function asset:mob/alias/176/attack + +# super.attack + function asset:mob/super.attack + +# 死 + function api:mob/kill diff --git a/Asset/data/asset/functions/mob/alias/176/attack.mcfunction b/Asset/data/asset/functions/mob/alias/176/attack.mcfunction new file mode 100644 index 0000000000..8140124ae1 --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/176/attack.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/176/attack +# +# Mobの攻撃時の処理のエイリアス +# +# @within asset_manager:mob/triggers/attack/attack.m + +# 本来の処理を呼び出す + function asset:mob/0176.killer_bee/attack/ \ No newline at end of file