From 64555b9d066611296473727ee5620f33e3cd4452 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 3 Jun 2026 21:11:14 +0900 Subject: [PATCH 01/24] =?UTF-8?q?=E3=83=9F=E3=83=8B=E3=82=A8=E3=83=AB?= =?UTF-8?q?=E3=83=80=E3=83=BC=E3=82=AC=E3=83=BC=E3=83=87=E3=82=A3=E3=82=A2?= =?UTF-8?q?=E3=83=B3=E5=A4=A7=E4=BD=93=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../death/.mcfunction | 9 +++ .../0323.mini_elder_guardian/hurt/.mcfunction | 12 +++ .../0323.mini_elder_guardian/move/.mcfunction | 8 ++ .../register.mcfunction | 79 +++++++++++++++++++ .../rotate/.mcfunction | 8 ++ .../summon/.mcfunction | 8 ++ .../0323.mini_elder_guardian/tick/.mcfunction | 27 +++++++ .../tick/event/attack/.mcfunction | 24 ++++++ .../tick/event/attack/laser/.mcfunction | 20 +++++ .../tick/event/attack/laser/damage.mcfunction | 13 +++ .../tick/event/attack/laser/green.mcfunction | 29 +++++++ .../tick/event/attack/laser/sound.mcfunction | 17 ++++ .../tick/event/attack/laser/yellow.mcfunction | 17 ++++ .../tick/event/attack/reset.mcfunction | 13 +++ .../tick/event/attack/start.mcfunction | 11 +++ .../tick/event/curse/.mcfunction | 8 ++ .../tick/event/curse/check.mcfunction | 10 +++ .../tick/event/curse/give.mcfunction | 39 +++++++++ .../functions/mob/alias/323/death.mcfunction | 8 ++ .../functions/mob/alias/323/hurt.mcfunction | 8 ++ .../functions/mob/alias/323/move.mcfunction | 8 ++ .../mob/alias/323/register.mcfunction | 8 ++ .../functions/mob/alias/323/rotate.mcfunction | 8 ++ .../functions/mob/alias/323/summon.mcfunction | 8 ++ .../functions/mob/alias/323/tick.mcfunction | 8 ++ 25 files changed, 408 insertions(+) create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/death/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/hurt/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/summon/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/damage.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/green.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/sound.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/start.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/323/death.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/323/hurt.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/323/move.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/323/register.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/323/rotate.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/323/summon.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/323/tick.mcfunction diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/death/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/death/.mcfunction new file mode 100644 index 00000000000..5686ec61e0d --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/death/.mcfunction @@ -0,0 +1,9 @@ +#> asset:mob/0323.mini_elder_guardian/death/ +# +# Mobの死亡時の処理 +# +# @within function asset:mob/alias/323/death + +# サウンド + playsound minecraft:entity.elder_guardian.death hostile @a ~ ~ ~ 1.5 1.4 + playsound minecraft:entity.elder_guardian.death_land hostile @a ~ ~ ~ 1.5 1 diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/hurt/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/hurt/.mcfunction new file mode 100644 index 00000000000..ff7d71e3b2a --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/hurt/.mcfunction @@ -0,0 +1,12 @@ +#> asset:mob/0323.mini_elder_guardian/hurt/ +# +# Mobのダメージ時の処理 +# +# @within function asset:mob/alias/323/hurt + +# サウンド + playsound minecraft:entity.elder_guardian.hurt hostile @a ~ ~ ~ 2 1.4 + +# HurtTime + data modify storage asset:context this.HurtTime set value 20 + data modify entity @s NoAI set value 0b diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction new file mode 100644 index 00000000000..fdcb9b7e917 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/0323.mini_elder_guardian/move/ +# +# 継承先などから実行される処理 +# +# @within asset:mob/alias/323/move + +# 攻撃中ではないかつHurtTime:0でなら移動 + execute if data storage asset:context this{AttackMode:false,HurtTime:0} run function asset:mob/super.method diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction new file mode 100644 index 00000000000..b8560f3d428 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -0,0 +1,79 @@ +#> asset:mob/0323.mini_elder_guardian/register +# +# Mobのデータを指定 +# +# @within function asset:mob/alias/323/register + +# 継承(オプション) + data modify storage asset:mob Extends append value 2003 + function asset:mob/extends +# 他のモブに継承されることを許可するか (boolean) (オプション) + # data modify storage asset:mob ExtendsSafe set value +# 継承されることを前提とした、抽象的なモブであるかどうか(boolean) + data modify storage asset:mob IsAbstract set value false +# ID (int) + data modify storage asset:mob ID set value 323 +# Type (string) Wikiを参照 + data modify storage asset:mob Type set value "Enemy" +# 干渉可能か否か (boolean) + data modify storage asset:mob Interferable set value true +# 名前 (TextComponentString) (オプション) + data modify storage asset:mob Name set value '{"text":"ミニエルダーガーディアン","color":"white"}' +# 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:stick",Count:1b,tag:{CustomModelData:20619}} + # 胴 (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 1500 +# 攻撃力 (double) (オプション) + # data modify storage asset:mob AttackDamage set value +# 防御力 (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 0.08 +# 索敵範囲 (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 + # 魔法倍率 (float) (オプション) + # data modify storage asset:mob Resist.Magic set value + # 火倍率 (float) (オプション) + # data modify storage asset:mob Resist.Fire set value + # 水倍率 (float) (オプション) + data modify storage asset:mob Resist.Water set value 0.7 + # 雷倍率 (float) (オプション) + data modify storage asset:mob Resist.Thunder set value 1.4 +# フィールド + +# ダメージ + data modify storage asset:mob Field.Damage set value 5.5f +# 呪い(採掘速度低下)クールダウン + data modify storage asset:mob Field.CurseCooldown._ set value 160 + data modify storage asset:mob Field.CurseCooldown.Max set value 600 +# 旋回力 + data modify storage asset:mob Field.Rotate set value 3000 +# 疑似HurtTime + data modify storage asset:mob Field.HurtTime set value 0 +# 攻撃モード + data modify storage asset:mob Field.AttackMode set value false diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction new file mode 100644 index 00000000000..ec6b62fab16 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/0323.mini_elder_guardian/rotate/ +# +# 継承先などから実行される処理 +# +# @within asset:mob/alias/323/rotate + +# 攻撃中ではないかつHurtTime:0でなら移動 + execute if data storage asset:context this{AttackMode:false,HurtTime:0} run function asset:mob/super.method diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/summon/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/summon/.mcfunction new file mode 100644 index 00000000000..608d813efc7 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/0323.mini_elder_guardian/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:mob/alias/323/summon + +# 元となるEntityを召喚する + summon zombie ~ ~ ~ {Silent:1b,IsBaby:0b,NoAI:1b,Tags:["MobInit","ProcessCommonTag","AlwaysInvisible","AlwaysSlowFall"],DeathLootTable:"minecraft:entities/elder_guardian"} diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction new file mode 100644 index 00000000000..4e2f7d52f9f --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction @@ -0,0 +1,27 @@ +#> asset:mob/0323.mini_elder_guardian/tick/ +# +# Mobのtick時の処理 +# +# @within asset:mob/alias/323/tick + +# 疑似HurtTimeによるのけぞり管理 + execute store result storage asset:context this.HurtTime int 0.9999999999 run data get storage asset:context this.HurtTime + execute if data storage asset:context this{HurtTime:0} run data modify entity @s NoAI set value 1b + execute if data storage asset:context this{HurtTime:0} run data modify storage asset:context this.HurtTime set value -1 + +# 呪い(採掘速度低下) + execute store result storage asset:context this.CurseCooldown._ int 0.9999999999 run data get storage asset:context this.CurseCooldown._ + execute if data storage asset:context this.CurseCooldown{_:0} run function asset:mob/0323.mini_elder_guardian/tick/event/curse/ + execute if data storage asset:context this.CurseCooldown{_:0} run data modify storage asset:context this.CurseCooldown._ set from storage asset:context this.CurseCooldown.Max + +# 付近にプレイヤーがいたら攻撃待機 + execute if entity @p[gamemode=!spectator,distance=..8] run data modify storage asset:context this.AttackMode set value true + +# 攻撃モード + execute if data storage asset:context this{AttackMode:true} anchored eyes positioned ^ ^ ^1 positioned ~ ~-0.1 ~ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/ + +# 遠くに離れたら攻撃モード終了 + execute if data storage asset:context this{AttackMode:true} unless entity @p[gamemode=!spectator,distance=..15] run function asset:mob/0323.mini_elder_guardian/tick/event/attack/reset + +# super.tick + function asset:mob/super.tick diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction new file mode 100644 index 00000000000..f35b6bbe338 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction @@ -0,0 +1,24 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/ +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/ + +# Tick加算 + scoreboard players add @s General.Mob.Tick 1 + +# こっちを狙う + execute at @s if score @s General.Mob.Tick matches 0..40 facing entity @p[gamemode=!spectator] feet positioned ^ ^ ^-200 rotated as @s positioned ^ ^ ^-1000 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ + +# 照射開始動作 + execute if score @s General.Mob.Tick matches 40 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/start + +# レーザー照射 + execute if score @s General.Mob.Tick matches 40..159 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ + +# 攻撃終了後、ちょっと泳ぐ + execute at @s if score @s General.Mob.Tick matches 160..240 run function asset:mob/call.m {method:"rotate"} + execute at @s if score @s General.Mob.Tick matches 160..240 run function asset:mob/call.m {method:"move"} + +# 攻撃動作終了 + execute if score @s General.Mob.Tick matches 240.. run function asset:mob/0323.mini_elder_guardian/tick/event/attack/reset diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction new file mode 100644 index 00000000000..b0a6af2124c --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction @@ -0,0 +1,20 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/event/attack/ + +# 旋回 at @sを入れることで元の実行座標に戻す + execute at @s facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-1500 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ + +# 予告の黄色レーザー + execute if score @s General.Mob.Tick matches 40..100 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow + +# 判定発生開始サウンド + execute if score @s General.Mob.Tick matches 100 run playsound minecraft:entity.guardian.attack hostile @a ~ ~ ~ 2 + +# 攻撃の緑レーザー + execute if score @s General.Mob.Tick matches 100..160 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/green + +# レーザーの音 + execute if score @s General.Mob.Tick matches 100..160 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/sound diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/damage.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/damage.mcfunction new file mode 100644 index 00000000000..d2a68f9da40 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/damage.mcfunction @@ -0,0 +1,13 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/damage +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/green + +# ダメージ設定 + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Water" + execute as @e[type=zombie,tag=this,distance=..40,sort=nearest,limit=1] run function api:damage/modifier + function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/green.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/green.mcfunction new file mode 100644 index 00000000000..c8fc15e6301 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/green.mcfunction @@ -0,0 +1,29 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/green +# +# +# +# @within function +# asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ +# asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/green + +#> Private +# @private + #declare score_holder $DamageInterval + +# パーティクル + particle dust 0 1 0 0.5 ^ ^ ^ 0 0 0 0 1 force @a[distance=..30] + particle dust 0 1 0 0.5 ^ ^ ^0.5 0 0 0 0 1 force @a[distance=..30] + particle dust 0 1 0 0.5 ^ ^ ^-0.5 0 0 0 0 1 force @a[distance=..30] + particle dust 0 1 0 0.5 ^ ^ ^0.25 0 0 0 0 1 force @a[distance=..30] + particle dust 0 1 0 0.5 ^ ^ ^-0.25 0 0 0 0 1 force @a[distance=..30] + +# 実行時間を移す + scoreboard players operation $DamageInterval Temporary = @s General.Mob.Tick + +# 数Tickごとにダメージ + scoreboard players operation $DamageInterval Temporary %= $5 Const + execute if score $DamageInterval Temporary matches 0 positioned ~-0.5 ~-0.5 ~-0.5 as @p[tag=!PlayerShouldInvulnerable,dx=0] run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/damage + scoreboard players reset $DamageInterval Temporary + +# 壁がなかったり、プレイヤーにあたったりしなければ再帰 + execute if entity @s[distance=..15] positioned ~-0.5 ~-0.5 ~-0.5 unless entity @p[gamemode=!spectator,dx=0] positioned ~0.5 ~0.5 ~0.5 positioned ^ ^ ^1 if block ~ ~ ~ #lib:no_collision/ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/green diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/sound.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/sound.mcfunction new file mode 100644 index 00000000000..d2dffaf0d42 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/sound.mcfunction @@ -0,0 +1,17 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/sound +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ + +#> Private +# @private + #declare score_holder $SoundInterval + +# 実行時間を移す + scoreboard players operation $SoundInterval Temporary = @s General.Mob.Tick + +# 数Tickごとにサウンド + scoreboard players operation $SoundInterval Temporary %= $15 Const + execute if score $SoundInterval Temporary matches 0 run playsound entity.guardian.attack hostile @a ~ ~ ~ 2 2 + scoreboard players reset $SoundInterval Temporary diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow.mcfunction new file mode 100644 index 00000000000..18f5991ddcc --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow.mcfunction @@ -0,0 +1,17 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow +# +# +# +# @within function +# asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ +# asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow + +# パーティクル + particle dust 1 1 0 0.4 ^ ^ ^ 0 0 0 0 1 force @a[distance=..30] + particle dust 1 1 0 0.4 ^ ^ ^0.5 0 0 0 0 1 force @a[distance=..30] + particle dust 1 1 0 0.4 ^ ^ ^-0.5 0 0 0 0 1 force @a[distance=..30] + particle dust 1 1 0 0.4 ^ ^ ^0.25 0 0 0 0 1 force @a[distance=..30] + particle dust 1 1 0 0.4 ^ ^ ^-0.25 0 0 0 0 1 force @a[distance=..30] + +# 壁がなかったり、プレイヤーにあたったりしなければ再帰 + execute if entity @s[distance=..15] positioned ~-0.5 ~-0.5 ~-0.5 unless entity @p[gamemode=!spectator,dx=0] positioned ~0.5 ~0.5 ~0.5 positioned ^ ^ ^1 if block ~ ~ ~ #lib:no_collision/ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction new file mode 100644 index 00000000000..a45d91cb648 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction @@ -0,0 +1,13 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/reset +# +# +# +# @within function +# asset:mob/0323.mini_elder_guardian/tick/ +# asset:mob/0323.mini_elder_guardian/tick/event/attack/ + +# 戦闘モード終了 + data modify storage asset:context this.AttackMode set value false + +# スコアリセット + scoreboard players reset @s General.Mob.Tick diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/start.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/start.mcfunction new file mode 100644 index 00000000000..dfa5a503562 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/start.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/attack/start +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/event/attack/ + +# サウンド + playsound minecraft:entity.elder_guardian.ambient hostile @a ~ ~ ~ 1.5 1.4 + +# パーティクル + particle electric_spark ^ ^ ^-0.5 0 0 0 0.5 20 diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction new file mode 100644 index 00000000000..7f861be2502 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/curse/ +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/ + +# 範囲内のプレイヤーにデバフを付与する + execute as @a[gamemode=!spectator,distance=..32] run function asset:mob/0323.mini_elder_guardian/tick/event/curse/check diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction new file mode 100644 index 00000000000..0fefdf753e4 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction @@ -0,0 +1,10 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/curse/check +# +# as player +# +# @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/ + +# 自身に採掘速度低下Lv2がなければデバフを付与 + data modify storage api: Argument.ID set value 76 + function api:entity/mob/effect/get/from_id + execute unless data storage api: Return.Effect run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction new file mode 100644 index 00000000000..c1d3202c9b9 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction @@ -0,0 +1,39 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/curse/give +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/check + +#> Private +# @private + #declare score_holder $Duration + +# 演出 + execute at @s run particle elder_guardian ~ ~ ~ 0 0 0 0 1 normal @s + execute at @s run playsound entity.elder_guardian.curse hostile @s ~ ~ ~ 1 1 + +# 難易度値取得 + function api:global_vars/get_difficulty + +# 採掘速度低下Lv2 +# Duration = 200 + 100* Difficulty + data modify storage api: Argument.ID set value 76 + data modify storage api: Argument.Stack set value 3 + execute store result score $Duration Temporary run data get storage api: Return.Difficulty 100 + execute store result storage api: Argument.Duration int 1 run scoreboard players add $Duration Temporary 200 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset + + scoreboard players reset $Duration Temporary + +# Blessless限定 + execute unless predicate api:global_vars/difficulty/min/3_blessless run return fail + + return 0 + +# 水耐性低下 + data modify storage api: Argument.ID set value 323 + data modify storage api: Argument.Stack set value 600 + data modify storage api: Argument.Duration set value 600 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/mob/alias/323/death.mcfunction b/Asset/data/asset/functions/mob/alias/323/death.mcfunction new file mode 100644 index 00000000000..8d09186acad --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/323/death.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/323/death +# +# Mobの死亡時の処理のエイリアス +# +# @within asset_manager:mob/triggers/death/death.m + +# 本来の処理を呼び出す + function asset:mob/0323.mini_elder_guardian/death/ \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/323/hurt.mcfunction b/Asset/data/asset/functions/mob/alias/323/hurt.mcfunction new file mode 100644 index 00000000000..194d637132d --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/323/hurt.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/323/hurt +# +# Mobのダメージ時の処理のエイリアス +# +# @within asset_manager:mob/triggers/hurt/hurt.m + +# 本来の処理を呼び出す + function asset:mob/0323.mini_elder_guardian/hurt/ \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/323/move.mcfunction b/Asset/data/asset/functions/mob/alias/323/move.mcfunction new file mode 100644 index 00000000000..d9e4be61141 --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/323/move.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/323/move +# +# メソッド処理のエイリアス +# +# @within asset_manager:mob/triggers/call_method/run_method.m + +# 本来の処理を呼び出す + function asset:mob/0323.mini_elder_guardian/move/ \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/323/register.mcfunction b/Asset/data/asset/functions/mob/alias/323/register.mcfunction new file mode 100644 index 00000000000..ff254dbc912 --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/323/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/323/register +# +# Mobのデータ指定処理のエイリアス +# +# @within asset_manager:mob/triggers/summon/register.m + +# 元の登録処理を呼び出す + function asset:mob/0323.mini_elder_guardian/register \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/323/rotate.mcfunction b/Asset/data/asset/functions/mob/alias/323/rotate.mcfunction new file mode 100644 index 00000000000..8794df826f5 --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/323/rotate.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/323/rotate +# +# メソッド処理のエイリアス +# +# @within asset_manager:mob/triggers/call_method/run_method.m + +# 本来の処理を呼び出す + function asset:mob/0323.mini_elder_guardian/rotate/ \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/323/summon.mcfunction b/Asset/data/asset/functions/mob/alias/323/summon.mcfunction new file mode 100644 index 00000000000..d8551ecee0d --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/323/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/323/summon +# +# Mob召喚処理のエイリアス +# +# @within asset_manager:mob/triggers/summon/summon.m + +# 本来の処理を呼び出す + function asset:mob/0323.mini_elder_guardian/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/323/tick.mcfunction b/Asset/data/asset/functions/mob/alias/323/tick.mcfunction new file mode 100644 index 00000000000..81845fa24da --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/323/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/323/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:mob/triggers/tick/tick.m + +# 元のTick処理を呼び出す + function asset:mob/0323.mini_elder_guardian/tick/ \ No newline at end of file From 74faae660c9f5ebbec0f9fc2d11fe03da4d07093 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 3 Jun 2026 21:36:54 +0900 Subject: [PATCH 02/24] =?UTF-8?q?[Effect=2011,=2061]=20=E6=B0=B4=E8=80=90?= =?UTF-8?q?=E6=80=A7=E4=BD=8E=E4=B8=8B=E3=83=87=E3=83=90=E3=83=95=E3=82=92?= =?UTF-8?q?=E4=BD=9C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_/end.mcfunction | 7 ++++ .../_/given.mcfunction | 7 ++++ .../_/re-given.mcfunction | 7 ++++ .../_/register.mcfunction | 7 ++++ .../_/remove.mcfunction | 7 ++++ .../0011.defense_water_debuff/end/.mcfunction | 8 ++++ .../given/.mcfunction | 8 ++++ .../modifier/add.mcfunction | 14 +++++++ .../modifier/remove.mcfunction | 12 ++++++ .../re-given/.mcfunction | 10 +++++ .../register.mcfunction | 39 +++++++++++++++++++ .../remove/.mcfunction | 8 ++++ .../_/register.mcfunction | 7 ++++ .../register.mcfunction | 13 +++++++ .../data/asset/tags/functions/effect/end.json | 1 + .../asset/tags/functions/effect/given.json | 1 + .../asset/tags/functions/effect/re-given.json | 1 + .../asset/tags/functions/effect/register.json | 4 +- .../asset/tags/functions/effect/remove.json | 1 + 19 files changed, 161 insertions(+), 1 deletion(-) create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/_/end.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/_/given.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/_/re-given.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/_/register.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/_/remove.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/end/.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/given/.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/add.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/re-given/.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/register.mcfunction create mode 100644 Asset/data/asset/functions/effect/0011.defense_water_debuff/remove/.mcfunction create mode 100644 Asset/data/asset/functions/effect/0061.defense_water_debuff/_/register.mcfunction create mode 100644 Asset/data/asset/functions/effect/0061.defense_water_debuff/register.mcfunction diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/end.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/end.mcfunction new file mode 100644 index 00000000000..229a2011fd4 --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0011.defense_water_debuff/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:11} run function asset:effect/0011.defense_water_debuff/end/ diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/given.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/given.mcfunction new file mode 100644 index 00000000000..9d1cfb0416b --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0011.defense_water_debuff/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:11} run function asset:effect/0011.defense_water_debuff/given/ diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/re-given.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/re-given.mcfunction new file mode 100644 index 00000000000..b370ad861b1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/re-given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0011.defense_water_debuff/_/re-given +# +# Effectが上書きされた時に実行されるfunction +# +# @within tag/function asset:effect/re-given + +execute if data storage asset:context {id:11} run function asset:effect/0011.defense_water_debuff/re-given/ diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/register.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/register.mcfunction new file mode 100644 index 00000000000..a817aebfc18 --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0011.defense_water_debuff/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:11} run function asset:effect/0011.defense_water_debuff/register diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/remove.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/remove.mcfunction new file mode 100644 index 00000000000..daf2ecbb84f --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0011.defense_water_debuff/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:11} run function asset:effect/0011.defense_water_debuff/remove/ diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/end/.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/end/.mcfunction new file mode 100644 index 00000000000..52132822707 --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0011.defense_water_debuff/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0011.defense_water_debuff/_/end + +# 削除 + function asset:effect/0011.defense_water_debuff/modifier/remove diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/given/.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/given/.mcfunction new file mode 100644 index 00000000000..51cf49b260b --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0011.defense_water_debuff/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0011.defense_water_debuff/_/given + +# 付与 + function asset:effect/0011.defense_water_debuff/modifier/add diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/add.mcfunction new file mode 100644 index 00000000000..70a90a6e7b7 --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/add.mcfunction @@ -0,0 +1,14 @@ +#> asset:effect/0011.defense_water_debuff/modifier/add +# +# +# +# @within function +# asset:effect/0011.defense_water_debuff/given/ +# asset:effect/0011.defense_water_debuff/re-given/ + +# 補正を付与する + data modify storage api: Argument.UUID set value [I;1,3,-1,0] + data modify storage api: Argument.UUID[2] set from storage asset:context originID + execute store result storage api: Argument.Amount double -0.10 run data get storage asset:context Stack 1 + data modify storage api: Argument.Operation set value "multiply" + function api:modifier/defense/water/add diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction new file mode 100644 index 00000000000..fb2c010e320 --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction @@ -0,0 +1,12 @@ +#> asset:effect/0011.defense_water_debuff/modifier/remove +# +# +# +# @within function +# asset:effect/0011.defense_water_debuff/end/ +# asset:effect/0011.defense_water_debuff/re-given/ +# asset:effect/0011.defense_water_debuff/remove/ + +# 補正を付与する + data modify storage api: Argument.UUID set value [I;1,3,-1,0] + function api:modifier/defense/water/remove diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/re-given/.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/re-given/.mcfunction new file mode 100644 index 00000000000..54e17fc38ec --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/re-given/.mcfunction @@ -0,0 +1,10 @@ +#> asset:effect/0011.defense_water_debuff/re-given/ +# +# Effectが上書きされた時の処理 +# +# @within function asset:effect/0011.defense_water_debuff/_/re-given + +# 削除 + function asset:effect/0011.defense_water_debuff/modifier/remove +# 付与 + function asset:effect/0011.defense_water_debuff/modifier/add diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/register.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/register.mcfunction new file mode 100644 index 00000000000..08dd5ef2f1b --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0011.defense_water_debuff/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0011.defense_water_debuff/_/register + +# ExtendsSafe (boolean) (default = false) + data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 11 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"水属性被ダメージ上昇"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"水属性被ダメージが上昇する"}'] +# 効果時間 (int) (default = API || error) + # data modify storage asset:effect Duration set value +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 100 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value true +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 1 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + # data modify storage asset:effect StackVisible set value + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/remove/.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/remove/.mcfunction new file mode 100644 index 00000000000..27b2b3d849c --- /dev/null +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0011.defense_water_debuff/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0011.defense_water_debuff/_/remove + +# 削除 + function asset:effect/0011.defense_water_debuff/modifier/remove diff --git a/Asset/data/asset/functions/effect/0061.defense_water_debuff/_/register.mcfunction b/Asset/data/asset/functions/effect/0061.defense_water_debuff/_/register.mcfunction new file mode 100644 index 00000000000..d87d7590d8e --- /dev/null +++ b/Asset/data/asset/functions/effect/0061.defense_water_debuff/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0061.defense_water_debuff/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:61} run function asset:effect/0061.defense_water_debuff/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0061.defense_water_debuff/register.mcfunction b/Asset/data/asset/functions/effect/0061.defense_water_debuff/register.mcfunction new file mode 100644 index 00000000000..b0b54d35a5a --- /dev/null +++ b/Asset/data/asset/functions/effect/0061.defense_water_debuff/register.mcfunction @@ -0,0 +1,13 @@ +#> asset:effect/0061.defense_water_debuff/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0061.defense_water_debuff/_/register + +# 継承 (int) + data modify storage asset:effect Extends append value 11 + function asset:effect/extends +# ID (int) + data modify storage asset:effect ID set value 61 +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 2 diff --git a/Asset/data/asset/tags/functions/effect/end.json b/Asset/data/asset/tags/functions/effect/end.json index 48b7d4613e8..da79f6222b4 100644 --- a/Asset/data/asset/tags/functions/effect/end.json +++ b/Asset/data/asset/tags/functions/effect/end.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0011.defense_water_debuff/_/end", "asset:effect/0360.calamity_bind/_/end", "asset:effect/0345.topaz_protection/_/end", "asset:effect/0342.prayer_amidst_blight/_/end", diff --git a/Asset/data/asset/tags/functions/effect/given.json b/Asset/data/asset/tags/functions/effect/given.json index 366ab807951..27f22c1874b 100644 --- a/Asset/data/asset/tags/functions/effect/given.json +++ b/Asset/data/asset/tags/functions/effect/given.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0011.defense_water_debuff/_/given", "asset:effect/0352.kitsunebi/_/given", "asset:effect/0360.calamity_bind/_/given", "asset:effect/0345.topaz_protection/_/given", diff --git a/Asset/data/asset/tags/functions/effect/re-given.json b/Asset/data/asset/tags/functions/effect/re-given.json index d3650bf09af..0f0c1e1b23a 100644 --- a/Asset/data/asset/tags/functions/effect/re-given.json +++ b/Asset/data/asset/tags/functions/effect/re-given.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0011.defense_water_debuff/_/re-given", "asset:effect/0352.kitsunebi/_/re-given", "asset:effect/0345.topaz_protection/_/re-given", "asset:effect/0029.poison/_/re-given", diff --git a/Asset/data/asset/tags/functions/effect/register.json b/Asset/data/asset/tags/functions/effect/register.json index 2a88625f93d..5e01fc0fc08 100644 --- a/Asset/data/asset/tags/functions/effect/register.json +++ b/Asset/data/asset/tags/functions/effect/register.json @@ -1,5 +1,7 @@ { "values": [ + "asset:effect/0061.defense_water_debuff/_/register", + "asset:effect/0011.defense_water_debuff/_/register", "asset:effect/0352.kitsunebi/_/register", "asset:effect/0351.nectar_regeneration/_/register", "asset:effect/0117.slowness/_/register", @@ -175,4 +177,4 @@ "asset:effect/0007.defense_base_debuff/_/register", "asset:effect/0258.spirit_melody/_/register" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/effect/remove.json b/Asset/data/asset/tags/functions/effect/remove.json index a036dc5e9ab..da3947caa3f 100644 --- a/Asset/data/asset/tags/functions/effect/remove.json +++ b/Asset/data/asset/tags/functions/effect/remove.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0011.defense_water_debuff/_/remove", "asset:effect/0360.calamity_bind/_/remove", "asset:effect/0345.topaz_protection/_/remove", "asset:effect/0342.prayer_amidst_blight/_/remove", From 49c069b046cc2b321f7ec80c6307753f761fc458 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 3 Jun 2026 21:50:09 +0900 Subject: [PATCH 03/24] =?UTF-8?q?=E7=A7=BB=E5=8B=95=E3=81=97=E3=81=AA?= =?UTF-8?q?=E3=81=84=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 --- .../functions/mob/0323.mini_elder_guardian/move/.mcfunction | 3 ++- .../functions/mob/0323.mini_elder_guardian/register.mcfunction | 2 +- .../functions/mob/0323.mini_elder_guardian/rotate/.mcfunction | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction index fdcb9b7e917..80c5eca723b 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction @@ -5,4 +5,5 @@ # @within asset:mob/alias/323/move # 攻撃中ではないかつHurtTime:0でなら移動 - execute if data storage asset:context this{AttackMode:false,HurtTime:0} run function asset:mob/super.method + execute if data storage asset:context this{AttackMode:false,HurtTime:-1} run function asset:mob/super.method + diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction index b8560f3d428..76cef0ee7a6 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -74,6 +74,6 @@ # 旋回力 data modify storage asset:mob Field.Rotate set value 3000 # 疑似HurtTime - data modify storage asset:mob Field.HurtTime set value 0 + data modify storage asset:mob Field.HurtTime set value -1 # 攻撃モード data modify storage asset:mob Field.AttackMode set value false diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction index ec6b62fab16..feefa140c09 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction @@ -5,4 +5,4 @@ # @within asset:mob/alias/323/rotate # 攻撃中ではないかつHurtTime:0でなら移動 - execute if data storage asset:context this{AttackMode:false,HurtTime:0} run function asset:mob/super.method + execute if data storage asset:context this{AttackMode:false,HurtTime:-1} run function asset:mob/super.method From 6eb92dad24b44d9ef5bfc99755e34cf68fb58bc8 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 3 Jun 2026 21:50:26 +0900 Subject: [PATCH 04/24] =?UTF-8?q?Blessless=E4=BB=A5=E4=B8=8A=E3=81=AE?= =?UTF-8?q?=E9=9B=A3=E6=98=93=E5=BA=A6=E3=81=A7=E6=B0=B4=E8=80=90=E6=80=A7?= =?UTF-8?q?=E4=BD=8E=E4=B8=8B=E3=83=87=E3=83=90=E3=83=95=E3=82=92=E4=BB=98?= =?UTF-8?q?=E4=B8=8E=E3=81=99=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 --- .../tick/event/curse/give.mcfunction | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction index c1d3202c9b9..12d105b23ad 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction @@ -6,6 +6,7 @@ #> Private # @private + #declare score_holder $Stack #declare score_holder $Duration # 演出 @@ -24,16 +25,21 @@ function api:entity/mob/effect/give function api:entity/mob/effect/reset +# リセット scoreboard players reset $Duration Temporary # Blessless限定 execute unless predicate api:global_vars/difficulty/min/3_blessless run return fail - return 0 - # 水耐性低下 - data modify storage api: Argument.ID set value 323 - data modify storage api: Argument.Stack set value 600 - data modify storage api: Argument.Duration set value 600 +# Stack = (Difficulty - 2) +# Duration = 200 + 100* Difficulty + data modify storage api: Argument.ID set value 61 + execute store result storage api: Argument.Stack int 0.9999999999 run data get storage api: Return.Difficulty 0.9999999999 + execute store result score $Duration Temporary run data get storage api: Return.Difficulty 100 + execute store result storage api: Argument.Duration int 1 run scoreboard players add $Duration Temporary 200 function api:entity/mob/effect/give function api:entity/mob/effect/reset + +# リセット + scoreboard players reset $Duration Temporary From 28091ec3e0f156d5606af80ec65680ccfb633848 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 3 Jun 2026 21:58:58 +0900 Subject: [PATCH 05/24] =?UTF-8?q?=E3=83=87=E3=83=90=E3=83=95=E3=81=AE?= =?UTF-8?q?=E5=8A=B9=E6=9E=9C=E6=99=82=E9=96=93=E3=81=A8=E4=BB=98=E4=B8=8E?= =?UTF-8?q?=E9=96=93=E9=9A=94=E3=82=92=E5=BB=B6=E9=95=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/0323.mini_elder_guardian/register.mcfunction | 2 +- .../tick/event/curse/give.mcfunction | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction index 76cef0ee7a6..d5185ff2c48 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -70,7 +70,7 @@ data modify storage asset:mob Field.Damage set value 5.5f # 呪い(採掘速度低下)クールダウン data modify storage asset:mob Field.CurseCooldown._ set value 160 - data modify storage asset:mob Field.CurseCooldown.Max set value 600 + data modify storage asset:mob Field.CurseCooldown.Max set value 800 # 旋回力 data modify storage asset:mob Field.Rotate set value 3000 # 疑似HurtTime diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction index 12d105b23ad..1a529df5a56 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction @@ -17,10 +17,10 @@ function api:global_vars/get_difficulty # 採掘速度低下Lv2 -# Duration = 200 + 100* Difficulty +# Duration = 200 + 200* Difficulty data modify storage api: Argument.ID set value 76 data modify storage api: Argument.Stack set value 3 - execute store result score $Duration Temporary run data get storage api: Return.Difficulty 100 + execute store result score $Duration Temporary run data get storage api: Return.Difficulty 200 execute store result storage api: Argument.Duration int 1 run scoreboard players add $Duration Temporary 200 function api:entity/mob/effect/give function api:entity/mob/effect/reset @@ -36,7 +36,7 @@ # Duration = 200 + 100* Difficulty data modify storage api: Argument.ID set value 61 execute store result storage api: Argument.Stack int 0.9999999999 run data get storage api: Return.Difficulty 0.9999999999 - execute store result score $Duration Temporary run data get storage api: Return.Difficulty 100 + execute store result score $Duration Temporary run data get storage api: Return.Difficulty 200 execute store result storage api: Argument.Duration int 1 run scoreboard players add $Duration Temporary 200 function api:entity/mob/effect/give function api:entity/mob/effect/reset From ebd74de75a91c5efd2b614dc43061a6b3fa2c816 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 3 Jun 2026 22:21:59 +0900 Subject: [PATCH 06/24] =?UTF-8?q?[Mob=20323]=20=E3=83=9F=E3=83=8B=E3=82=A8?= =?UTF-8?q?=E3=83=AB=E3=83=80=E3=83=BC=E3=82=AC=E3=83=BC=E3=83=87=E3=82=A3?= =?UTF-8?q?=E3=82=A2=E3=83=B3Lv3=E3=82=92=E7=B6=99=E6=89=BF=E5=8F=AF?= =?UTF-8?q?=E8=83=BD=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/mob/0323.mini_elder_guardian/register.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction index d5185ff2c48..e88100a5912 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -8,7 +8,7 @@ data modify storage asset:mob Extends append value 2003 function asset:mob/extends # 他のモブに継承されることを許可するか (boolean) (オプション) - # data modify storage asset:mob ExtendsSafe set value + data modify storage asset:mob ExtendsSafe set value true # 継承されることを前提とした、抽象的なモブであるかどうか(boolean) data modify storage asset:mob IsAbstract set value false # ID (int) From edee260e8fc8de90f21e4cae5f032123ff00cc4c Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 3 Jun 2026 22:22:08 +0900 Subject: [PATCH 07/24] =?UTF-8?q?[Mob=20324]=20=E3=83=9F=E3=83=8B=E3=82=A8?= =?UTF-8?q?=E3=83=AB=E3=83=80=E3=83=BC=E3=82=AC=E3=83=BC=E3=83=87=E3=82=A3?= =?UTF-8?q?=E3=82=A2=E3=83=B3=E3=82=92=E4=BD=9C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../register.mcfunction | 19 +++++++++++++++++++ .../mob/alias/324/register.mcfunction | 8 ++++++++ 2 files changed, 27 insertions(+) create mode 100644 Asset/data/asset/functions/mob/0324.mini_elder_guardian/register.mcfunction create mode 100644 Asset/data/asset/functions/mob/alias/324/register.mcfunction diff --git a/Asset/data/asset/functions/mob/0324.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0324.mini_elder_guardian/register.mcfunction new file mode 100644 index 00000000000..6f02189592f --- /dev/null +++ b/Asset/data/asset/functions/mob/0324.mini_elder_guardian/register.mcfunction @@ -0,0 +1,19 @@ +#> asset:mob/0324.mini_elder_guardian/register +# +# Mobのデータを指定 +# +# @within function asset:mob/alias/324/register + +# 継承 + data modify storage asset:mob Extends append value 323 + function asset:mob/extends +# 他のモブに継承されることを許可するか (boolean) (オプション) + # data modify storage asset:mob ExtendsSafe set value +# 継承されることを前提とした、抽象的なモブであるかどうか(boolean) + data modify storage asset:mob IsAbstract set value false +# ID (int) + data modify storage asset:mob ID set value 324 +# 体力 (double) (オプション) + data modify storage asset:mob Health set value 4000 +# フィールド + data modify storage asset:mob Field.Damage set value 12f diff --git a/Asset/data/asset/functions/mob/alias/324/register.mcfunction b/Asset/data/asset/functions/mob/alias/324/register.mcfunction new file mode 100644 index 00000000000..2d3f2152329 --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/324/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/324/register +# +# Mobのデータ指定処理のエイリアス +# +# @within asset_manager:mob/triggers/summon/register.m + +# 元の登録処理を呼び出す + function asset:mob/0324.mini_elder_guardian/register \ No newline at end of file From 83ed5d60116399cddbb60c08585da8759e06eb85 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 00:27:37 +0900 Subject: [PATCH 08/24] =?UTF-8?q?=E3=81=9D=E3=82=82=E3=81=9D=E3=82=82?= =?UTF-8?q?=E6=94=BB=E6=92=83=E4=B8=AD=E3=81=AA=E3=82=89super.tick?= =?UTF-8?q?=E3=82=92=E3=81=97=E3=81=AA=E3=81=84=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/0323.mini_elder_guardian/move/.mcfunction | 9 --------- .../mob/0323.mini_elder_guardian/rotate/.mcfunction | 8 -------- .../mob/0323.mini_elder_guardian/tick/.mcfunction | 4 ++-- Asset/data/asset/functions/mob/alias/323/move.mcfunction | 8 -------- .../data/asset/functions/mob/alias/323/rotate.mcfunction | 8 -------- 5 files changed, 2 insertions(+), 35 deletions(-) delete mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction delete mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction delete mode 100644 Asset/data/asset/functions/mob/alias/323/move.mcfunction delete mode 100644 Asset/data/asset/functions/mob/alias/323/rotate.mcfunction diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction deleted file mode 100644 index 80c5eca723b..00000000000 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/move/.mcfunction +++ /dev/null @@ -1,9 +0,0 @@ -#> asset:mob/0323.mini_elder_guardian/move/ -# -# 継承先などから実行される処理 -# -# @within asset:mob/alias/323/move - -# 攻撃中ではないかつHurtTime:0でなら移動 - execute if data storage asset:context this{AttackMode:false,HurtTime:-1} run function asset:mob/super.method - diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction deleted file mode 100644 index feefa140c09..00000000000 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/rotate/.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:mob/0323.mini_elder_guardian/rotate/ -# -# 継承先などから実行される処理 -# -# @within asset:mob/alias/323/rotate - -# 攻撃中ではないかつHurtTime:0でなら移動 - execute if data storage asset:context this{AttackMode:false,HurtTime:-1} run function asset:mob/super.method diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction index 4e2f7d52f9f..05043a95cc6 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction @@ -23,5 +23,5 @@ # 遠くに離れたら攻撃モード終了 execute if data storage asset:context this{AttackMode:true} unless entity @p[gamemode=!spectator,distance=..15] run function asset:mob/0323.mini_elder_guardian/tick/event/attack/reset -# super.tick - function asset:mob/super.tick +# 攻撃中でない && HurtTime中ではない、ならsuper.tick + execute if data storage asset:context this{AttackMode:false,HurtTime:-1} run function asset:mob/super.tick diff --git a/Asset/data/asset/functions/mob/alias/323/move.mcfunction b/Asset/data/asset/functions/mob/alias/323/move.mcfunction deleted file mode 100644 index d9e4be61141..00000000000 --- a/Asset/data/asset/functions/mob/alias/323/move.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:mob/alias/323/move -# -# メソッド処理のエイリアス -# -# @within asset_manager:mob/triggers/call_method/run_method.m - -# 本来の処理を呼び出す - function asset:mob/0323.mini_elder_guardian/move/ \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/323/rotate.mcfunction b/Asset/data/asset/functions/mob/alias/323/rotate.mcfunction deleted file mode 100644 index 8794df826f5..00000000000 --- a/Asset/data/asset/functions/mob/alias/323/rotate.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:mob/alias/323/rotate -# -# メソッド処理のエイリアス -# -# @within asset_manager:mob/triggers/call_method/run_method.m - -# 本来の処理を呼び出す - function asset:mob/0323.mini_elder_guardian/rotate/ \ No newline at end of file From f4c3e17761ebf765c9c0178d095bbed08691f874 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 00:28:24 +0900 Subject: [PATCH 09/24] AttackMode -> IsAttackMode --- .../mob/0323.mini_elder_guardian/register.mcfunction | 2 +- .../mob/0323.mini_elder_guardian/tick/.mcfunction | 8 ++++---- .../tick/event/attack/reset.mcfunction | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction index e88100a5912..ee13f8d9167 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -76,4 +76,4 @@ # 疑似HurtTime data modify storage asset:mob Field.HurtTime set value -1 # 攻撃モード - data modify storage asset:mob Field.AttackMode set value false + data modify storage asset:mob Field.IsAttackMode set value false diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction index 05043a95cc6..c6f88237772 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction @@ -15,13 +15,13 @@ execute if data storage asset:context this.CurseCooldown{_:0} run data modify storage asset:context this.CurseCooldown._ set from storage asset:context this.CurseCooldown.Max # 付近にプレイヤーがいたら攻撃待機 - execute if entity @p[gamemode=!spectator,distance=..8] run data modify storage asset:context this.AttackMode set value true + execute if entity @p[gamemode=!spectator,distance=..8] run data modify storage asset:context this.IsAttackMode set value true # 攻撃モード - execute if data storage asset:context this{AttackMode:true} anchored eyes positioned ^ ^ ^1 positioned ~ ~-0.1 ~ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/ + execute if data storage asset:context this{IsAttackMode:true} anchored eyes positioned ^ ^ ^1 positioned ~ ~-0.1 ~ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/ # 遠くに離れたら攻撃モード終了 - execute if data storage asset:context this{AttackMode:true} unless entity @p[gamemode=!spectator,distance=..15] run function asset:mob/0323.mini_elder_guardian/tick/event/attack/reset + execute if data storage asset:context this{IsAttackMode:true} unless entity @p[gamemode=!spectator,distance=..15] run function asset:mob/0323.mini_elder_guardian/tick/event/attack/reset # 攻撃中でない && HurtTime中ではない、ならsuper.tick - execute if data storage asset:context this{AttackMode:false,HurtTime:-1} run function asset:mob/super.tick + execute if data storage asset:context this{IsAttackMode:false,HurtTime:-1} run function asset:mob/super.tick diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction index a45d91cb648..8faef837f36 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/reset.mcfunction @@ -7,7 +7,7 @@ # asset:mob/0323.mini_elder_guardian/tick/event/attack/ # 戦闘モード終了 - data modify storage asset:context this.AttackMode set value false + data modify storage asset:context this.IsAttackMode set value false # スコアリセット scoreboard players reset @s General.Mob.Tick From 02f6500a1a2b7fbadec393e67297c7c190e3bb52 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 00:30:42 +0900 Subject: [PATCH 10/24] =?UTF-8?q?register=E3=81=AB=E3=82=B3=E3=83=A1?= =?UTF-8?q?=E3=83=B3=E3=83=88=E3=82=92=E8=BF=BD=E8=A8=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/mob/0323.mini_elder_guardian/register.mcfunction | 1 + 1 file changed, 1 insertion(+) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction index ee13f8d9167..b9a156848f3 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -69,6 +69,7 @@ # ダメージ data modify storage asset:mob Field.Damage set value 5.5f # 呪い(採掘速度低下)クールダウン +# 召喚されてからNtick後にデバフを付与したいため、初期値は0とはしない data modify storage asset:mob Field.CurseCooldown._ set value 160 data modify storage asset:mob Field.CurseCooldown.Max set value 800 # 旋回力 From c8b72c96fd81d0023f17e63faa2647995090cc23 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 00:39:39 +0900 Subject: [PATCH 11/24] =?UTF-8?q?=E5=90=8D=E5=89=8D=E3=81=AB=E8=89=B2?= =?UTF-8?q?=E3=82=92=E8=A8=AD=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../functions/mob/0323.mini_elder_guardian/register.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction index b9a156848f3..6ccc1615f08 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -18,7 +18,7 @@ # 干渉可能か否か (boolean) data modify storage asset:mob Interferable set value true # 名前 (TextComponentString) (オプション) - data modify storage asset:mob Name set value '{"text":"ミニエルダーガーディアン","color":"white"}' + data modify storage asset:mob Name set value '{"text":"ミニエルダーガーディアン","color":"#5e69d9"}' # Mobの説明文 (TextComponentString[]) (オプション) data modify storage asset:mob Lore set value ['{"text":"ちっさいエルダーガーディアン。","color":"white"}','{"text":"小さくても火力は高いし、しっかり呪う能力も健在である。","color":"white"}'] # 武器 From c99dddeda49ba03754b2676d9749f8f72fbfa4c5 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 00:41:36 +0900 Subject: [PATCH 12/24] =?UTF-8?q?=E7=89=B9=E5=AE=9A=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E4=B8=8B=E3=81=A7=E3=82=A8=E3=83=A9=E3=83=BC=E3=81=8C=E5=87=BA?= =?UTF-8?q?=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 --- .../mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction | 1 + 1 file changed, 1 insertion(+) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction index f35b6bbe338..d43c66ce55a 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction @@ -17,6 +17,7 @@ execute if score @s General.Mob.Tick matches 40..159 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ # 攻撃終了後、ちょっと泳ぐ + execute if score @s General.Mob.Tick matches 160..240 run function asset:mob/call.m {method:"get_speed"} execute at @s if score @s General.Mob.Tick matches 160..240 run function asset:mob/call.m {method:"rotate"} execute at @s if score @s General.Mob.Tick matches 160..240 run function asset:mob/call.m {method:"move"} From 27571075d5415c900c7583396ba7e537b1fe0d2e Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 01:01:52 +0900 Subject: [PATCH 13/24] =?UTF-8?q?=E3=83=87=E3=83=90=E3=83=95=E3=81=AE?= =?UTF-8?q?=E5=8A=B9=E6=9E=9C=E6=99=82=E9=96=93=E3=82=92=E8=AA=BF=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tick/event/curse/give.mcfunction | 22 +++++-------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction index 1a529df5a56..2797c06f36d 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction @@ -4,11 +4,6 @@ # # @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/check -#> Private -# @private - #declare score_holder $Stack - #declare score_holder $Duration - # 演出 execute at @s run particle elder_guardian ~ ~ ~ 0 0 0 0 1 normal @s execute at @s run playsound entity.elder_guardian.curse hostile @s ~ ~ ~ 1 1 @@ -17,29 +12,22 @@ function api:global_vars/get_difficulty # 採掘速度低下Lv2 -# Duration = 200 + 200* Difficulty +# Stack = 3 +# Duration = 200 * Difficulty data modify storage api: Argument.ID set value 76 data modify storage api: Argument.Stack set value 3 - execute store result score $Duration Temporary run data get storage api: Return.Difficulty 200 - execute store result storage api: Argument.Duration int 1 run scoreboard players add $Duration Temporary 200 + execute store result storage api: Argument.Duration int 200 run data get storage api: Return.Difficulty function api:entity/mob/effect/give function api:entity/mob/effect/reset -# リセット - scoreboard players reset $Duration Temporary - # Blessless限定 execute unless predicate api:global_vars/difficulty/min/3_blessless run return fail # 水耐性低下 # Stack = (Difficulty - 2) -# Duration = 200 + 100* Difficulty +# Duration = 200 * Difficulty data modify storage api: Argument.ID set value 61 execute store result storage api: Argument.Stack int 0.9999999999 run data get storage api: Return.Difficulty 0.9999999999 - execute store result score $Duration Temporary run data get storage api: Return.Difficulty 200 - execute store result storage api: Argument.Duration int 1 run scoreboard players add $Duration Temporary 200 + execute store result storage api: Argument.Duration int 200 run data get storage api: Return.Difficulty function api:entity/mob/effect/give function api:entity/mob/effect/reset - -# リセット - scoreboard players reset $Duration Temporary From 0853a0ef22c6fc46404aac806f2b27a8436eb850 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 01:04:07 +0900 Subject: [PATCH 14/24] =?UTF-8?q?=E8=A3=9C=E6=AD=A3=E3=81=8C=E6=AD=A3?= =?UTF-8?q?=E5=B8=B8=E3=81=AB=E6=B6=88=E3=81=88=E3=81=AA=E3=81=84=E5=95=8F?= =?UTF-8?q?=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 --- .../effect/0011.defense_water_debuff/modifier/remove.mcfunction | 1 + 1 file changed, 1 insertion(+) diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction index fb2c010e320..5b0826f8f15 100644 --- a/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction @@ -9,4 +9,5 @@ # 補正を付与する data modify storage api: Argument.UUID set value [I;1,3,-1,0] + data modify storage api: Argument.UUID[2] set from storage asset:context originID function api:modifier/defense/water/remove From 54b91dafd17042f275672f69dc0bce7db48068d6 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 02:09:51 +0900 Subject: [PATCH 15/24] =?UTF-8?q?=E6=AD=A3=E5=B8=B8=E3=81=AB=E3=83=97?= =?UTF-8?q?=E3=83=AC=E3=82=A4=E3=83=A4=E3=83=BC=E3=81=AE=E7=9B=AE=E3=82=92?= =?UTF-8?q?=E7=8B=99=E3=81=86=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/0323.mini_elder_guardian/tick/.mcfunction | 2 +- .../0323.mini_elder_guardian/tick/event/attack/.mcfunction | 7 ++++--- .../tick/event/attack/laser/.mcfunction | 1 - 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction index c6f88237772..a4507f7f845 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction @@ -18,7 +18,7 @@ execute if entity @p[gamemode=!spectator,distance=..8] run data modify storage asset:context this.IsAttackMode set value true # 攻撃モード - execute if data storage asset:context this{IsAttackMode:true} anchored eyes positioned ^ ^ ^1 positioned ~ ~-0.1 ~ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/ + execute if data storage asset:context this{IsAttackMode:true} run function asset:mob/0323.mini_elder_guardian/tick/event/attack/ # 遠くに離れたら攻撃モード終了 execute if data storage asset:context this{IsAttackMode:true} unless entity @p[gamemode=!spectator,distance=..15] run function asset:mob/0323.mini_elder_guardian/tick/event/attack/reset diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction index d43c66ce55a..a5a2095b312 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction @@ -7,14 +7,15 @@ # Tick加算 scoreboard players add @s General.Mob.Tick 1 -# こっちを狙う - execute at @s if score @s General.Mob.Tick matches 0..40 facing entity @p[gamemode=!spectator] feet positioned ^ ^ ^-200 rotated as @s positioned ^ ^ ^-1000 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ +# プレイヤーのターゲティング + execute if score @s General.Mob.Tick matches 0..39 facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-500 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ + execute if score @s General.Mob.Tick matches 40.. facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-1500 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ # 照射開始動作 execute if score @s General.Mob.Tick matches 40 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/start # レーザー照射 - execute if score @s General.Mob.Tick matches 40..159 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ + execute if score @s General.Mob.Tick matches 40..159 anchored eyes positioned ^ ^ ^ facing entity @p[gamemode=!spectator,distance=..32] eyes run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ # 攻撃終了後、ちょっと泳ぐ execute if score @s General.Mob.Tick matches 160..240 run function asset:mob/call.m {method:"get_speed"} diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction index b0a6af2124c..84671331ed2 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction @@ -5,7 +5,6 @@ # @within function asset:mob/0323.mini_elder_guardian/tick/event/attack/ # 旋回 at @sを入れることで元の実行座標に戻す - execute at @s facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-1500 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ # 予告の黄色レーザー execute if score @s General.Mob.Tick matches 40..100 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow From 265c32367f99468c2fbf0bc0f694452a3dc3db19 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 4 Jun 2026 23:51:10 +0900 Subject: [PATCH 16/24] =?UTF-8?q?=E8=BF=BD=E5=B0=BE=E5=87=A6=E7=90=86?= =?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 --- .../0323.mini_elder_guardian/tick/event/attack/.mcfunction | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction index a5a2095b312..6545a1b13d3 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction @@ -8,14 +8,14 @@ scoreboard players add @s General.Mob.Tick 1 # プレイヤーのターゲティング - execute if score @s General.Mob.Tick matches 0..39 facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-500 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ - execute if score @s General.Mob.Tick matches 40.. facing entity @p[gamemode=!spectator,distance=..64] feet positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-1500 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ + execute if score @s General.Mob.Tick matches 0..39 anchored eyes facing entity @p[gamemode=!spectator,distance=..64] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-500 facing entity @s eyes positioned as @s anchored feet positioned ^ ^ ^ run tp @s ^ ^ ^ ~ ~ + execute if score @s General.Mob.Tick matches 40.. anchored eyes facing entity @p[gamemode=!spectator,distance=..64] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-1500 facing entity @s eyes positioned as @s anchored feet positioned ^ ^ ^ run tp @s ^ ^ ^ ~ ~ # 照射開始動作 execute if score @s General.Mob.Tick matches 40 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/start # レーザー照射 - execute if score @s General.Mob.Tick matches 40..159 anchored eyes positioned ^ ^ ^ facing entity @p[gamemode=!spectator,distance=..32] eyes run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ + execute if score @s General.Mob.Tick matches 40..159 anchored eyes positioned ^ ^ ^ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ # 攻撃終了後、ちょっと泳ぐ execute if score @s General.Mob.Tick matches 160..240 run function asset:mob/call.m {method:"get_speed"} From cee334a5a121a8d6be451dab4266193cad997b04 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Sat, 6 Jun 2026 19:24:53 +0900 Subject: [PATCH 17/24] =?UTF-8?q?=E4=B8=8D=E8=A6=81=E3=82=B3=E3=83=A1?= =?UTF-8?q?=E3=83=B3=E3=83=88=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tick/event/attack/laser/.mcfunction | 2 -- 1 file changed, 2 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction index 84671331ed2..89213751e86 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/laser/.mcfunction @@ -4,8 +4,6 @@ # # @within function asset:mob/0323.mini_elder_guardian/tick/event/attack/ -# 旋回 at @sを入れることで元の実行座標に戻す - # 予告の黄色レーザー execute if score @s General.Mob.Tick matches 40..100 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/yellow From 936dbed8b3bfd075bf4637c3ce26ba17d1357ee6 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 3 Sep 2026 15:05:32 +0900 Subject: [PATCH 18/24] =?UTF-8?q?=E4=BB=98=E4=B8=8E=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E3=82=92=E6=8E=A1=E6=8E=98=E9=80=9F=E5=BA=A6Lv2=E3=81=8C10?= =?UTF-8?q?=E7=A7=92=E4=BB=A5=E4=B8=8B=E3=81=AB=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tick/event/curse/check.mcfunction | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction index 0fefdf753e4..31e3d80bb49 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction @@ -4,7 +4,15 @@ # # @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/ -# 自身に採掘速度低下Lv2がなければデバフを付与 +#> Private +# @private + #declare score_holder $8Z.Duration + +# 自身の採掘速度低下Lv2の効果時間が10秒以下なら付与 data modify storage api: Argument.ID set value 76 function api:entity/mob/effect/get/from_id - execute unless data storage api: Return.Effect run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give + execute store result score $8Z.Duration Temporary run data get storage api: Return.Effect.Duration + execute if score $8Z.Duration Temporary matches ..200 run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give + +# リセット + scoreboard players reset $8Z.Duration Temporary From e17d56b9c5dde43318299c66c2776320bc5e004a Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Thu, 3 Sep 2026 15:31:20 +0900 Subject: [PATCH 19/24] =?UTF-8?q?=E3=83=87=E3=83=90=E3=83=95=E3=82=92regis?= =?UTF-8?q?ter=E3=81=A7=E5=AE=9A=E7=BE=A9=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 --- .../register.mcfunction | 24 +++++++++++++ .../tick/event/curse/give.mcfunction | 32 ++++++++--------- .../tick/event/curse/give_calc.mcfunction | 34 +++++++++++++++++++ 3 files changed, 73 insertions(+), 17 deletions(-) create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction index 6ccc1615f08..65d5506242e 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/register.mcfunction @@ -78,3 +78,27 @@ data modify storage asset:mob Field.HurtTime set value -1 # 攻撃モード data modify storage asset:mob Field.IsAttackMode set value false + +# 採掘速度低下 + # スタック + # 基礎値 + data modify storage asset:mob Field.Debuff.A.Stack.Base set value 3 + # 難易度比例部分 + data modify storage asset:mob Field.Debuff.A.Stack.Difficulty set value 0 + # 効果時間 + # 基礎値 + data modify storage asset:mob Field.Debuff.A.Duration.Base set value 0 + # 難易度比例部分 + data modify storage asset:mob Field.Debuff.A.Duration.Difficulty set value 200 + +# 水耐性低下 + # スタック + # 基礎値 + data modify storage asset:mob Field.Debuff.B.Stack.Base set value -2 + # 難易度比例部分 + data modify storage asset:mob Field.Debuff.B.Stack.Difficulty set value 1 + # 効果時間 + # 基礎値 + data modify storage asset:mob Field.Debuff.B.Duration.Base set value 0 + # 難易度比例部分 + data modify storage asset:mob Field.Debuff.B.Duration.Difficulty set value 200 diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction index 2797c06f36d..23d7536b189 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction @@ -8,26 +8,24 @@ execute at @s run particle elder_guardian ~ ~ ~ 0 0 0 0 1 normal @s execute at @s run playsound entity.elder_guardian.curse hostile @s ~ ~ ~ 1 1 +#> Private +# @private + #declare score_holder $Difficulty + # 難易度値取得 function api:global_vars/get_difficulty + execute store result score $Difficulty Temporary run data get storage api: Return.Difficulty -# 採掘速度低下Lv2 -# Stack = 3 -# Duration = 200 * Difficulty +# 採掘速度低下を付与 data modify storage api: Argument.ID set value 76 - data modify storage api: Argument.Stack set value 3 - execute store result storage api: Argument.Duration int 200 run data get storage api: Return.Difficulty - function api:entity/mob/effect/give - function api:entity/mob/effect/reset - -# Blessless限定 - execute unless predicate api:global_vars/difficulty/min/3_blessless run return fail + data modify storage asset:temp Debuff set from storage asset:context this.Debuff.A + function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc -# 水耐性低下 -# Stack = (Difficulty - 2) -# Duration = 200 * Difficulty +# 水耐性低下を付与 data modify storage api: Argument.ID set value 61 - execute store result storage api: Argument.Stack int 0.9999999999 run data get storage api: Return.Difficulty 0.9999999999 - execute store result storage api: Argument.Duration int 200 run data get storage api: Return.Difficulty - function api:entity/mob/effect/give - function api:entity/mob/effect/reset + data modify storage asset:temp Debuff set from storage asset:context this.Debuff.B + function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc + +# リセット + scoreboard players reset $Difficulty Temporary + data remove storage asset:temp Debuff diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction new file mode 100644 index 00000000000..c5c71e6d6ae --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction @@ -0,0 +1,34 @@ +#> asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc +# +# +# +# @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/give + +#> Private +# @private + #declare score_holder $CalcA + #declare score_holder $CalcB + #declare score_holder $CalcC + #declare score_holder $CalcD + #declare score_holder $Difficulty + +# スタック及び効果時間の計算 + execute store result score $CalcA Temporary run data get storage asset:temp Debuff.Stack.Base + execute store result score $CalcB Temporary run data get storage asset:temp Debuff.Stack.Difficulty + scoreboard players operation $CalcB Temporary *= $Difficulty Temporary + execute store result storage api: Argument.Stack int 1 run scoreboard players operation $CalcA Temporary += $CalcB Temporary + + execute store result score $CalcC Temporary run data get storage asset:temp Debuff.Duration.Base + execute store result score $CalcD Temporary run data get storage asset:temp Debuff.Duration.Difficulty + scoreboard players operation $CalcD Temporary *= $Difficulty Temporary + execute store result storage api: Argument.Duration int 1 run scoreboard players operation $CalcC Temporary += $CalcD Temporary + +# 効果時間が1.. && スタックが1..なら付与 + execute if score $CalcA Temporary matches 1.. if score $CalcC Temporary matches 1.. run function api:entity/mob/effect/give + function api:entity/mob/effect/reset + +# + scoreboard players reset $CalcA Temporary + scoreboard players reset $CalcB Temporary + scoreboard players reset $CalcC Temporary + scoreboard players reset $CalcD Temporary From ea3eec0a2e0f9bde9e32ab0e930e939af5655fca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=91=A0=E7=92=83?= <87566955+Lapis-LJA@users.noreply.github.com> Date: Wed, 28 Oct 2026 20:35:27 +0900 Subject: [PATCH 20/24] =?UTF-8?q?=E6=AF=8Etick=E3=81=AE=E3=81=91=E3=81=9E?= =?UTF-8?q?=E3=82=8A=E3=82=92=E3=81=97=E3=81=AA=E3=81=84=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 Co-authored-by: ハル --- .../functions/mob/0323.mini_elder_guardian/tick/.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction index a4507f7f845..9cdbac0b40b 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/.mcfunction @@ -5,7 +5,7 @@ # @within asset:mob/alias/323/tick # 疑似HurtTimeによるのけぞり管理 - execute store result storage asset:context this.HurtTime int 0.9999999999 run data get storage asset:context this.HurtTime + execute unless data storage asset:context this{HurtTime:-1} store result storage asset:context this.HurtTime int 0.9999999999 run data get storage asset:context this.HurtTime execute if data storage asset:context this{HurtTime:0} run data modify entity @s NoAI set value 1b execute if data storage asset:context this{HurtTime:0} run data modify storage asset:context this.HurtTime set value -1 From db5f2a231005582ace8356226a2e595fce46951a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=91=A0=E7=92=83?= <87566955+Lapis-LJA@users.noreply.github.com> Date: Wed, 28 Oct 2026 20:35:42 +0900 Subject: [PATCH 21/24] =?UTF-8?q?=E3=82=B3=E3=83=A1=E3=83=B3=E3=83=88?= =?UTF-8?q?=E3=83=9F=E3=82=B9=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: ハル --- .../effect/0011.defense_water_debuff/modifier/remove.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction index 5b0826f8f15..c929519ca9a 100644 --- a/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction +++ b/Asset/data/asset/functions/effect/0011.defense_water_debuff/modifier/remove.mcfunction @@ -7,7 +7,7 @@ # asset:effect/0011.defense_water_debuff/re-given/ # asset:effect/0011.defense_water_debuff/remove/ -# 補正を付与する +# 補正を削除する data modify storage api: Argument.UUID set value [I;1,3,-1,0] data modify storage api: Argument.UUID[2] set from storage asset:context originID function api:modifier/defense/water/remove From 04c6056c865fbbd36f82e94ce3f3a20efe244173 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=91=A0=E7=92=83?= <87566955+Lapis-LJA@users.noreply.github.com> Date: Wed, 28 Oct 2026 20:46:12 +0900 Subject: [PATCH 22/24] =?UTF-8?q?particle=E3=81=AE=E5=BA=A7=E6=A8=99?= =?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 Co-authored-by: ハル --- .../mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction index 6545a1b13d3..97e35657c56 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/attack/.mcfunction @@ -12,7 +12,7 @@ execute if score @s General.Mob.Tick matches 40.. anchored eyes facing entity @p[gamemode=!spectator,distance=..64] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-1500 facing entity @s eyes positioned as @s anchored feet positioned ^ ^ ^ run tp @s ^ ^ ^ ~ ~ # 照射開始動作 - execute if score @s General.Mob.Tick matches 40 run function asset:mob/0323.mini_elder_guardian/tick/event/attack/start + execute if score @s General.Mob.Tick matches 40 anchored eyes positioned ^ ^ ^1 positioned ~ ~-0.1 ~ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/start # レーザー照射 execute if score @s General.Mob.Tick matches 40..159 anchored eyes positioned ^ ^ ^ run function asset:mob/0323.mini_elder_guardian/tick/event/attack/laser/ From ab57afa7083f1e161125134ccc9f13c6a08279ad Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 28 Oct 2026 21:14:25 +0900 Subject: [PATCH 23/24] =?UTF-8?q?=E8=A8=88=E7=AE=97=E3=82=921=E5=BA=A6?= =?UTF-8?q?=E3=81=97=E3=81=8B=E8=A1=8C=E3=82=8F=E3=81=AA=E3=81=84=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 --- .../0323.mini_elder_guardian/_index.d.mcfunction | 6 ++++++ .../tick/event/curse/.mcfunction | 8 +++++++- .../tick/event/curse/check.mcfunction | 2 +- .../tick/event/curse/give.mcfunction | 14 +++++++------- .../tick/event/curse/give_calc.mcfunction | 2 +- 5 files changed, 22 insertions(+), 10 deletions(-) create mode 100644 Asset/data/asset/functions/mob/0323.mini_elder_guardian/_index.d.mcfunction diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/_index.d.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/_index.d.mcfunction new file mode 100644 index 00000000000..5716aa4aa08 --- /dev/null +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:mob/0323.mini_elder_guardian/_index.d +# @private + +#> tag +# @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/** + #declare tag DebuffTarget diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction index 7f861be2502..55a61abf250 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/.mcfunction @@ -4,5 +4,11 @@ # # @within function asset:mob/0323.mini_elder_guardian/tick/ -# 範囲内のプレイヤーにデバフを付与する +# 付与条件を満たすプレイヤーがいるかチェック execute as @a[gamemode=!spectator,distance=..32] run function asset:mob/0323.mini_elder_guardian/tick/event/curse/check + +# いれば付与 + execute if entity @p[tag=DebuffTarget,distance=..32] run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give + +# リセット + tag @a[tag=DebuffTarget,distance=..32] remove DebuffTarget diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction index 31e3d80bb49..4ba2c5073b8 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/check.mcfunction @@ -12,7 +12,7 @@ data modify storage api: Argument.ID set value 76 function api:entity/mob/effect/get/from_id execute store result score $8Z.Duration Temporary run data get storage api: Return.Effect.Duration - execute if score $8Z.Duration Temporary matches ..200 run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give + execute if score $8Z.Duration Temporary matches ..200 run tag @s add DebuffTarget # リセット scoreboard players reset $8Z.Duration Temporary diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction index 23d7536b189..8340a5b75f8 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction @@ -2,16 +2,16 @@ # # # -# @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/check - -# 演出 - execute at @s run particle elder_guardian ~ ~ ~ 0 0 0 0 1 normal @s - execute at @s run playsound entity.elder_guardian.curse hostile @s ~ ~ ~ 1 1 +# @within function asset:mob/0323.mini_elder_guardian/tick/event/curse/ #> Private # @private #declare score_holder $Difficulty +# 演出 + execute as @a[tag=DebuffTarget,distance=..32] at @s run particle elder_guardian ~ ~ ~ 0 0 0 0 1 normal @s + execute as @a[tag=DebuffTarget,distance=..32] at @s run playsound entity.elder_guardian.curse hostile @s ~ ~ ~ 1 1 + # 難易度値取得 function api:global_vars/get_difficulty execute store result score $Difficulty Temporary run data get storage api: Return.Difficulty @@ -19,12 +19,12 @@ # 採掘速度低下を付与 data modify storage api: Argument.ID set value 76 data modify storage asset:temp Debuff set from storage asset:context this.Debuff.A - function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc + execute as @a[tag=DebuffTarget,distance=..32] run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc # 水耐性低下を付与 data modify storage api: Argument.ID set value 61 data modify storage asset:temp Debuff set from storage asset:context this.Debuff.B - function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc + execute as @a[tag=DebuffTarget,distance=..32] run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc # リセット scoreboard players reset $Difficulty Temporary diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction index c5c71e6d6ae..5b52ab85b6c 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction @@ -27,7 +27,7 @@ execute if score $CalcA Temporary matches 1.. if score $CalcC Temporary matches 1.. run function api:entity/mob/effect/give function api:entity/mob/effect/reset -# +# リセット scoreboard players reset $CalcA Temporary scoreboard players reset $CalcB Temporary scoreboard players reset $CalcC Temporary From 38a3eb4c17405985224e66356a96b9184676cc95 Mon Sep 17 00:00:00 2001 From: Lapis-LJA Date: Wed, 28 Oct 2026 22:26:46 +0900 Subject: [PATCH 24/24] =?UTF-8?q?:bug:=20=E5=91=AA=E3=81=84=E3=81=AE?= =?UTF-8?q?=E8=A8=88=E7=AE=97=E3=82=92Effect=E3=81=94=E3=81=A8=E3=81=AB?= =?UTF-8?q?=E4=B8=80=E5=BA=A6=E3=81=AB=E3=81=BE=E3=81=A8=E3=82=81=E5=85=A8?= =?UTF-8?q?=E5=93=A1=E3=81=B8=E4=BB=98=E4=B8=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../0323.mini_elder_guardian/tick/event/curse/give.mcfunction | 4 ++-- .../tick/event/curse/give_calc.mcfunction | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction index 8340a5b75f8..49e05412555 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give.mcfunction @@ -19,12 +19,12 @@ # 採掘速度低下を付与 data modify storage api: Argument.ID set value 76 data modify storage asset:temp Debuff set from storage asset:context this.Debuff.A - execute as @a[tag=DebuffTarget,distance=..32] run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc + function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc # 水耐性低下を付与 data modify storage api: Argument.ID set value 61 data modify storage asset:temp Debuff set from storage asset:context this.Debuff.B - execute as @a[tag=DebuffTarget,distance=..32] run function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc + function asset:mob/0323.mini_elder_guardian/tick/event/curse/give_calc # リセット scoreboard players reset $Difficulty Temporary diff --git a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction index 5b52ab85b6c..dc59e3cee0a 100644 --- a/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction +++ b/Asset/data/asset/functions/mob/0323.mini_elder_guardian/tick/event/curse/give_calc.mcfunction @@ -23,8 +23,8 @@ scoreboard players operation $CalcD Temporary *= $Difficulty Temporary execute store result storage api: Argument.Duration int 1 run scoreboard players operation $CalcC Temporary += $CalcD Temporary -# 効果時間が1.. && スタックが1..なら付与 - execute if score $CalcA Temporary matches 1.. if score $CalcC Temporary matches 1.. run function api:entity/mob/effect/give +# 効果時間が1.. && スタックが1..なら対象全員に付与 + execute if score $CalcA Temporary matches 1.. if score $CalcC Temporary matches 1.. as @a[tag=DebuffTarget,distance=..32] run function api:entity/mob/effect/give function api:entity/mob/effect/reset # リセット