From 1f8d31fc522e511aba73a6fb97c10c662a7091c5 Mon Sep 17 00:00:00 2001 From: EllaCoat Date: Wed, 14 Aug 2024 02:28:28 +0900 Subject: [PATCH] =?UTF-8?q?=E7=B4=85=E9=9B=B7=20=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ai/animation/10_0_kourai/.mcfunction | 54 +++++++++++++++++++ .../10_0_kourai/announce_line.mcfunction | 11 ++++ .../10_0_kourai/sword/spread_loop.mcfunction | 30 +++++++++++ .../3_0_triple_slash/predict/.mcfunction | 1 + .../animation/9_0_dimension_slash/.mcfunction | 1 - 5 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/announce_line.mcfunction create mode 100644 Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop.mcfunction diff --git a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/.mcfunction b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/.mcfunction index 91fc338e02..2aea4aeb88 100644 --- a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/.mcfunction +++ b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/.mcfunction @@ -4,6 +4,15 @@ # # @within function asset:mob/0391.axia_first/ai/animation/ +# 近くのプレイヤーの方を向く +# 一部の時間のみ向く処理を入れる + tag @s add AV.Temp.This + execute if score @s AV.AnimationTick matches 1..130 if predicate api:global_vars/difficulty/min/hard as @p[tag=!PlayerShouldInvulnerable,distance=..100] run function asset:mob/0391.axia_first/ai/general/2.rotate + execute if score @s AV.AnimationTick matches 1..45 as @p[tag=!PlayerShouldInvulnerable,distance=..100] run function asset:mob/0391.axia_first/ai/general/2.rotate + execute if score @s AV.AnimationTick matches 56..59 as @p[tag=!PlayerShouldInvulnerable,distance=..100] run function asset:mob/0391.axia_first/ai/general/2.rotate + execute if score @s AV.AnimationTick matches 70..85 as @p[tag=!PlayerShouldInvulnerable,distance=..100] run function asset:mob/0391.axia_first/ai/general/2.rotate + tag @s remove AV.Temp.This + # アニメーション再生 execute if score @s AV.AnimationTick matches 1 as @e[type=item_display,tag=AV.Root.This,distance=..100] run function animated_java:axia/animations/12_0_kourai/play @@ -42,3 +51,48 @@ execute if score @s AV.AnimationTick matches 95 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/slash_sonic_start/3 execute if score @s AV.AnimationTick matches 107 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/slash_sonic_start/4 execute if score @s AV.AnimationTick matches 119 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/slash_sonic_start/5 + execute if score @s AV.AnimationTick matches 45 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/announce_line + execute if score @s AV.AnimationTick matches 59 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/announce_line + execute if score @s AV.AnimationTick matches 85 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/announce_line + execute if score @s AV.AnimationTick matches 97 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/announce_line + execute if score @s AV.AnimationTick matches 109 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/announce_line + +# ディメンションソード + execute if score @s AV.AnimationTick matches 141 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 147 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 153 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 159 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 165 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 141 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 147 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 153 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 159 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 165 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + + +# ディメンションソード ハード + execute if score @s AV.AnimationTick matches 144 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 150 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 156 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 162 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 168 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 144 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 150 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 156 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 162 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + execute if score @s AV.AnimationTick matches 168 if predicate api:global_vars/difficulty/min/hard run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + +# 移動 + # TP + execute if score @s AV.AnimationTick matches 12 at @s positioned ^ ^ ^0.1 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 13 at @s positioned ^ ^ ^0.2 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 14 at @s positioned ^ ^ ^0.4 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 15 at @s positioned ^ ^ ^0.5 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 16..36 at @s positioned ^ ^ ^0.7 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 37 at @s positioned ^ ^ ^0.5 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 38 at @s positioned ^ ^ ^0.4 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 39 at @s positioned ^ ^ ^0.2 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 40 at @s positioned ^ ^ ^0.1 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 53..57 at @s positioned ^ ^ ^0.2 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 67..76 at @s positioned ^ ^ ^0.2 run function asset:mob/0391.axia_first/ai/general/1.teleport + execute if score @s AV.AnimationTick matches 93..113 at @s positioned ^ ^ ^0.2 run function asset:mob/0391.axia_first/ai/general/1.teleport diff --git a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/announce_line.mcfunction b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/announce_line.mcfunction new file mode 100644 index 0000000000..8e78db5bcb --- /dev/null +++ b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/announce_line.mcfunction @@ -0,0 +1,11 @@ +#> asset:mob/0391.axia_first/ai/animation/10_0_kourai/announce_line +# +# 予告線 召喚 +# +# @within function asset:mob/0391.axia_first/ai/animation/10_0_kourai/ + +execute anchored eyes run summon item_display ^ ^ ^2 {interpolation_duration:0,teleport_duration:0,Tags:["AV.AnnounceInit"],brightness:{sky:15,block:15},transformation:{left_rotation:[0f,0f,0.383f,0.924f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,13.5f],scale:[0.1f,0.1f,25f]},item:{id:"air",Count:1b}} + +execute anchored eyes positioned ^ ^ ^2 as @e[tag=AV.AnnounceInit,distance=..0.1] run tp @s ^ ^ ^ ~ ~ + +execute anchored eyes positioned ^ ^ ^2 as @e[tag=AV.AnnounceInit,distance=..0.1] run function asset:mob/0391.axia_first/ai/projectile/announce_line/1.init.m {Num:-10} diff --git a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop.mcfunction b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop.mcfunction new file mode 100644 index 0000000000..b1267540f9 --- /dev/null +++ b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop.mcfunction @@ -0,0 +1,30 @@ +#> asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop +# +# ディメンションソード 拡散 +# +# @within function +# asset:mob/0391.axia_first/ai/animation/10_0_kourai/ +# asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop + +# 再拡散時用にリセット + scoreboard players reset $AV.Temp Temporary + +# Markerを呼び出す + execute at @e[type=marker,tag=AV.Marker.SummonPoint,distance=..100,limit=1] run tp 0-0-0-0-0 ^ ^ ^ ~ ~ + +# 拡散する + data modify storage lib: Argument.Bounds set value [[22d,22d],[0,0],[22d,22d]] + execute as 0-0-0-0-0 at @s run function lib:spread_entity/ + +# 半径14m以内ではない 又は 他の歯車と重なっている場合再拡散する + execute at 0-0-0-0-0 unless entity @e[type=marker,tag=AV.Marker.SummonPoint,distance=..22,limit=1] run scoreboard players set $AV.Temp Temporary 1 + execute at 0-0-0-0-0 if entity @e[type=marker,tag=AV.DimSword,distance=0.001..5] run scoreboard players set $AV.Temp Temporary 1 + +# 条件を満たしていれば置く + execute unless score $AV.Temp Temporary matches 1 at 0-0-0-0-0 run function asset:mob/0391.axia_first/ai/projectile/sword/0.summon + +# Makerを戻してあげる + execute in overworld run tp 0-0-0-0-0 0.0 0.0 0.0 + +# 満たしていなければ再拡散 + execute if score $AV.Temp Temporary matches 1 run function asset:mob/0391.axia_first/ai/animation/10_0_kourai/sword/spread_loop diff --git a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/3_0_triple_slash/predict/.mcfunction b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/3_0_triple_slash/predict/.mcfunction index 5567229d47..c49d85f930 100644 --- a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/3_0_triple_slash/predict/.mcfunction +++ b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/3_0_triple_slash/predict/.mcfunction @@ -6,6 +6,7 @@ # asset:mob/0391.axia_first/ai/animation/3_0_triple_slash/ # asset:mob/0391.axia_first/ai/animation/7_0_zangekihou/ # asset:mob/0391.axia_first/ai/animation/9_0_dimension_slash/ +# asset:mob/0391.axia_first/ai/animation/10_0_kourai/ # 攻撃対象にTagを付与 tag @p[tag=!PlayerShouldInvulnerable,distance=..100] add AV.Temp.Target diff --git a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/9_0_dimension_slash/.mcfunction b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/9_0_dimension_slash/.mcfunction index bc2fc42f27..0899bfe300 100644 --- a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/9_0_dimension_slash/.mcfunction +++ b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/9_0_dimension_slash/.mcfunction @@ -6,7 +6,6 @@ # 近くのプレイヤーの方を向く # 一部の時間のみ向く処理を入れる - #ToDo ハードのみ41~50間は偏差処理を入れつつ向く tag @s add AV.Temp.This execute if score @s AV.AnimationTick matches 1..98 as @p[tag=!PlayerShouldInvulnerable,distance=..100] run function asset:mob/0391.axia_first/ai/general/2.rotate execute if score @s AV.AnimationTick matches 99..114 if predicate api:global_vars/difficulty/max/normal as @p[tag=!PlayerShouldInvulnerable,distance=..100] run function asset:mob/0391.axia_first/ai/general/2.rotate