diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/give/2.give.mcfunction index da0f17b1ee..6adf2dc228 100644 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1065.magic_bullet/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"魔弾","color":"#4F5BFF"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"敵味方を無差別に貫く弾丸を放つ。","color":"white"}','{"text":"残り弾数が減るほど与えるダメージが上昇する。","color":"white"}','{"text":"7つ目の弾丸は50%の確率でランダムなプレイヤーを狙う。","color":"white"}','{"text":"弾が切れても自動でリロードされる。","color":"white"}','{"text":"「最後の弾丸は愛する人の頭を貫くだろう。」","color":"gray"}'] + data modify storage asset:artifact Lore set value ['{"text":"敵味方を無差別に貫く弾丸を放つ","color":"white"}','{"text":"残り弾数が減るほど与えるダメージが上昇する","color":"white"}','{"text":"7つ目の弾丸は50%の確率でランダムなプレイヤーを狙う","color":"white"}','{"text":"弾が切れても自動でリロードされる","color":"white"}','{"text":"「最後の弾丸は愛する人の頭を貫くだろう。」","color":"gray"}'] # MP以外の消費物 (TextComponentString) (オプション) # data modify storage asset:artifact CostText set value # 使用回数 (int) (オプション) diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/0.load.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/0.load.mcfunction deleted file mode 100644 index 7adaa7141d..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/0.load.mcfunction +++ /dev/null @@ -1,12 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/0.load -# -# 神器に利用するスコアボード等の初期化処理 -# -# @within tag/function asset:artifact/load - -#> 定義類はここに -# @within function asset:artifact/1065.magic_bullet/trigger/** - scoreboard objectives add TL.Tick dummy - scoreboard objectives add TL.UseCount dummy - scoreboard objectives add TL.SquareCount dummy - scoreboard objectives add TL.OwnerID dummy diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/3.main.mcfunction index 336bc65d99..80f7bc3672 100644 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/3.main.mcfunction @@ -17,31 +17,61 @@ # 7回目なら確率でプレイヤーを狙うTagを付与 execute if score $UseCount Temporary matches 7 if predicate lib:random_pass_per/50 run tag @s add TL.AimToPlayer - #execute if score $UseCount Temporary matches 7 run tag @s add TL.AimToPlayer -# 魔弾を召喚 - execute anchored eyes positioned ^-0.4 ^-0.1 ^0.6 summon marker run function asset:artifact/1065.magic_bullet/trigger/5.init_bullet +# debug + # tag @s add TL.AimToPlayer + # scoreboard players set $UseCount Temporary 7 -# プレイヤーのRotationをstorageに入れる - data modify storage asset:temp TL.Rotation set from entity @s Rotation +# プレイヤーを狙う状態なら、ランダムなIDを用意する + execute if entity @s[tag=TL.AimToPlayer] store result score $Random Temporary run random value 0..65535 -# マクロを使って魔法陣を召喚 +# 魔法陣を召喚 # 使用回数に応じて魔法陣の召喚数を増やす # プレイヤーを狙う状態の際は魔方陣を1つ追加 - execute anchored eyes positioned ^-0.4 ^-0.1 ^0.9 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL - execute if score $UseCount Temporary matches 3.. anchored eyes positioned ^-0.4 ^-0.1 ^1.05 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL - execute if score $UseCount Temporary matches 7 anchored eyes positioned ^-0.4 ^-0.1 ^1.2 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL - execute if score $UseCount Temporary matches 7 if entity @s[tag=TL.AimToPlayer] anchored eyes positioned ^-0.4 ^-0.1 ^1.35 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL + execute anchored eyes positioned ^-0.4 ^-0.1 ^0.9 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[0.9d,0.9d,0.01d],Delay:2,Interpolation:2,LeftRotate:false} + execute if score $UseCount Temporary matches 3.. anchored eyes positioned ^-0.4 ^-0.1 ^1.05 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[1.8d,1.8d,0.01d],Delay:4,Interpolation:4,LeftRotate:true} + execute if score $UseCount Temporary matches 7 anchored eyes positioned ^-0.4 ^-0.1 ^1.2 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[1.2d,1.2d,0.01d],Delay:8,Interpolation:2,LeftRotate:false} + execute if score $UseCount Temporary matches 7 if entity @s[tag=TL.AimToPlayer] anchored eyes positioned ^-0.4 ^-0.1 ^1.35 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[0.7d,0.7d,0.01d],Delay:10,Interpolation:2,LeftRotate:true} -# プレイヤーを狙う状態の時に実行 - execute if entity @s[tag=TL.AimToPlayer] run function asset:artifact/1065.magic_bullet/trigger/4.aim_to_player +# 魔弾を召喚する + + # ダメージ定義 + # 非プレイヤー + # 7発目なら強制的に2000 + execute if score $UseCount Temporary matches 1 run data modify storage api: Argument.FieldOverride.Damage.ToNonPlayer set value 500f + execute if score $UseCount Temporary matches 2 run data modify storage api: Argument.FieldOverride.Damage.ToNonPlayer set value 650f + execute if score $UseCount Temporary matches 3 run data modify storage api: Argument.FieldOverride.Damage.ToNonPlayer set value 800f + execute if score $UseCount Temporary matches 4 run data modify storage api: Argument.FieldOverride.Damage.ToNonPlayer set value 950f + execute if score $UseCount Temporary matches 5 run data modify storage api: Argument.FieldOverride.Damage.ToNonPlayer set value 1050f + execute if score $UseCount Temporary matches 6 run data modify storage api: Argument.FieldOverride.Damage.ToNonPlayer set value 1350f + execute if score $UseCount Temporary matches 7 run data modify storage api: Argument.FieldOverride.Damage.ToNonPlayer set value 2000f + + # プレイヤー + # 7発目なら強制的に50 + execute if score $UseCount Temporary matches 1 run data modify storage api: Argument.FieldOverride.Damage.ToPlayer set value 25.0f + execute if score $UseCount Temporary matches 2 run data modify storage api: Argument.FieldOverride.Damage.ToPlayer set value 27.5f + execute if score $UseCount Temporary matches 3 run data modify storage api: Argument.FieldOverride.Damage.ToPlayer set value 30.0f + execute if score $UseCount Temporary matches 4 run data modify storage api: Argument.FieldOverride.Damage.ToPlayer set value 32.5f + execute if score $UseCount Temporary matches 5 run data modify storage api: Argument.FieldOverride.Damage.ToPlayer set value 35.0f + execute if score $UseCount Temporary matches 6 run data modify storage api: Argument.FieldOverride.Damage.ToPlayer set value 37.5f + execute if score $UseCount Temporary matches 7 run data modify storage api: Argument.FieldOverride.Damage.ToPlayer set value 50.0f -# スケジュールループ - schedule function asset:artifact/1065.magic_bullet/trigger/loop/ 1t replace + # プレイヤーを狙う状態に弾に渡すデータ + # $RandomをIDとして渡す + execute if entity @s[tag=TL.AimToPlayer] store result storage api: Argument.FieldOverride.ID int 1 run scoreboard players get $Random Temporary + execute if entity @s[tag=TL.AimToPlayer] run data modify storage api: Argument.FieldOverride.AimToPlayer set value true + + # 魔弾を召喚 + data modify storage api: Argument.ID set value 1046 + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + execute anchored eyes positioned ^-0.4 ^-0.1 ^0.6 run function api:object/summon + +# プレイヤーを狙う状態の時に実行 + execute if entity @s[tag=TL.AimToPlayer] run function asset:artifact/1065.magic_bullet/trigger/summon_square/aim_to_player # 使用回数が0になったら再度give execute unless data storage asset:context Items.mainhand.id run playsound block.iron_trapdoor.close player @a ~ ~ ~ 0.7 0.7 - execute unless data storage asset:context Items.mainhand.id run playsound entity.horse.armor player @p ~ ~ ~ 0.6 0.7 + execute unless data storage asset:context Items.mainhand.id run playsound entity.horse.armor player @a ~ ~ ~ 0.6 0.7 execute unless data storage asset:context Items.mainhand.id run data modify storage api: Argument.ID set value 1065 execute unless data storage asset:context Items.mainhand.id run function api:artifact/replace/from_id @@ -50,5 +80,5 @@ scoreboard players reset $7 Temporary scoreboard players reset $UseCount Temporary scoreboard players reset $RemainCount Temporary - scoreboard players reset $SquareCount Temporary - data remove storage asset:temp TL + scoreboard players reset $Damage Temporary + scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/4.aim_to_player.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/4.aim_to_player.mcfunction deleted file mode 100644 index 0fed00e5a5..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/4.aim_to_player.mcfunction +++ /dev/null @@ -1,31 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/4.aim_to_player -# -# プレイヤーを狙う際の処理 -# -# @within function asset:artifact/1065.magic_bullet/trigger/3.main - -#> Private -# @private - #declare tag TL.TargetPlayer - #declare tag RotationMarker - -# ランダムなプレイヤーを指定 - tag @r[distance=..100] add TL.TargetPlayer - -# ターゲットの後ろにRotationのデータを用意するためのマーカーを召喚 -# 2個目のコマンドの最初にat @p[]があるのはdistanceの範囲を狭めるため - execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^ ^-1 run summon marker ~ ~ ~ {Tags:["RotationMarker"]} - execute at @p[tag=TL.TargetPlayer] as @e[type=marker,tag=RotationMarker,distance=..5,sort=nearest,limit=1] at @s run tp @s ~ ~ ~ facing entity @e[tag=TL.TargetPlayer,limit=1] eyes - -# マーカーのRotationをストレージへ - execute at @p[tag=TL.TargetPlayer] as @e[type=marker,tag=RotationMarker,distance=..5] at @s run data modify storage asset:temp TL.Rotation set from entity @s Rotation - -# ターゲットの真後ろに魔方陣を4つ召喚 - execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^ positioned ^ ^ ^-5.45 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL - execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^ positioned ^ ^ ^-5.30 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL - execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^ positioned ^ ^ ^-5.15 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL - execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^ positioned ^ ^ ^-5.00 run function asset:artifact/1065.magic_bullet/trigger/6.summon_square.m with storage asset:temp TL - -# リセット - tag @e[tag=TL.TargetPlayer] remove TL.TargetPlayer - kill @e[type=marker,tag=RotationMarker] diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/5.init_bullet.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/5.init_bullet.mcfunction deleted file mode 100644 index 9fd375d490..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/5.init_bullet.mcfunction +++ /dev/null @@ -1,21 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/5.init_bullet -# -# 弾の初期化処理 -# -# @within function asset:artifact/1065.magic_bullet/trigger/3.main - -# Tagを付与 - tag @s add TL.Bullet - tag @s add TL.LoopTarget - -# 視点を使用者に合わせる - data modify entity @s Rotation set from entity @p[tag=this] Rotation - -# 使用回数をスコアへ - scoreboard players operation @s TL.UseCount = $UseCount Temporary - -# OwnerIDを設定 - scoreboard players operation @s TL.OwnerID = @p[tag=this] UserID - -# プレイヤーを狙う処理 - execute if entity @p[tag=this,tag=TL.AimToPlayer] run tag @s add TL.AimToPlayer diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/6.summon_square.m.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/6.summon_square.m.mcfunction deleted file mode 100644 index 57a2255e17..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/6.summon_square.m.mcfunction +++ /dev/null @@ -1,31 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/6.summon_square.m -# -# 魔法陣の召喚処理 -# -# @input args: -# Rotation: double @ 2 -# -# @within function -# asset:artifact/1065.magic_bullet/trigger/3.main -# asset:artifact/1065.magic_bullet/trigger/4.aim_to_player - -# 何個目の魔法陣か数える - scoreboard players add $SquareCount Temporary 1 - -# マクロで向きを合わせた状態で召喚 - $summon item_display ~ ~ ~ {Rotation:$(Rotation),Tags:["TL.Square","TL.LoopTarget","TL.Init"],brightness:{sky:15,block:15},interpolation_duration:2,transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[0f,0f,0f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20351}}} - -# 魔法陣へ何個目かのスコアを入れる - scoreboard players operation @e[type=item_display,tag=TL.Init,distance=..0.01,sort=nearest,limit=1] TL.SquareCount = $SquareCount Temporary - -# OwnerIDを設定 - scoreboard players operation @e[type=item_display,tag=TL.Init,distance=..0.01,sort=nearest,limit=1] TL.OwnerID = @s UserID - -# ターゲットにされたプレイヤーがいる状態でかつ、1個目の魔法陣なら弾のワープ先用のTagを付与 - execute if entity @p[tag=TL.TargetPlayer] if score $SquareCount Temporary matches 1 run tag @e[type=item_display,tag=TL.Init,distance=..0.01,sort=nearest,limit=1] add TL.TeleportPosition - -# InitTag削除 - tag @e[type=item_display,tag=TL.Init,distance=..0.01,sort=nearest,limit=1] remove TL.Init - -# 4以上ならリセットしておく - execute if score $SquareCount Temporary matches 4.. run scoreboard players reset $SquareCount Temporary diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/_index.d.mcfunction index 2f46f0ead6..059d6b23d4 100644 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/_index.d.mcfunction +++ b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/_index.d.mcfunction @@ -3,17 +3,9 @@ #> tag # @within function asset:artifact/1065.magic_bullet/trigger/** - #declare tag TL.Bullet - #declare tag TL.Square - #declare tag TL.LoopTarget - #declare tag TL.Init #declare tag TL.AimToPlayer - #declare tag TL.TargetPlayer - #declare tag TL.TeleportPosition - #declare tag TL.TargetEntity - #declare score_holder $Recursive #declare score_holder $UseCount #declare score_holder $RemainCount - #declare score_holder $SquareCount #declare score_holder $7 #declare score_holder $Damage + #declare score_holder $Random diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/.mcfunction deleted file mode 100644 index c18082aa39..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/.mcfunction +++ /dev/null @@ -1,14 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/ -# -# スケジュールループ -# -# @within function -# asset:artifact/1065.magic_bullet/trigger/3.main -# asset:artifact/1065.magic_bullet/trigger/loop/bullet/main -# asset:artifact/1065.magic_bullet/trigger/loop/square/main -# asset:artifact/1065.magic_bullet/trigger/rejoin_process - - -# ループ処理 - execute as @e[type=marker,tag=TL.Bullet] at @s run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/main - execute as @e[type=item_display,tag=TL.Square] at @s run function asset:artifact/1065.magic_bullet/trigger/loop/square/main diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/.mcfunction deleted file mode 100644 index dc3dfa5356..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/.mcfunction +++ /dev/null @@ -1,63 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/ -# -# ダメージ処理 -# -# @within function asset:artifact/1065.magic_bullet/trigger/loop/bullet/main - -#> Private -# @private - #declare tag Owner - -# マーカーのデータを取り出し、既にヒット済みかをチェック - data modify storage asset:temp TL.HitList set from entity @s data - execute as @e[type=#lib:living,tag=TL.TargetEntity,distance=..4] run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/check_target - data modify entity @s data set from storage asset:temp TL.HitList - data remove storage asset:temp TL - -# 使用者を特定 - execute at @a if score @s TL.OwnerID = @p UserID run tag @p add Owner - -# Nは使用回数とする - -# 非プレイヤーに対するダメージ -# ダメージ = 350 + 150 * N -# 7つ目の弾丸では火力が2000になる - -# ダメージ計算 - scoreboard players operation $Damage Temporary = @s TL.UseCount - scoreboard players operation $Damage Temporary *= $150 Const - execute store result storage api: Argument.Damage int 1 run scoreboard players add $Damage Temporary 350 - execute if entity @s[scores={TL.UseCount=7}] run data modify storage api: Argument.Damage set value 2000 - -# その他ダメージ処理 - data modify storage api: Argument.AttackType set value "Magic" - data modify storage api: Argument.ElementType set value "Fire" - execute as @p[tag=Owner] run function api:damage/modifier - execute as @e[type=#lib:living,type=!player,tag=TL.TargetEntity,distance=..5] run function api:damage/ - function api:damage/reset - -# プレイヤーに対するダメージ -# ダメージ = 2.5(N + 9) -# 7つ目の弾丸では火力が50になる - -# ダメージ計算 - scoreboard players operation $Damage Temporary = @s TL.UseCount - scoreboard players operation $Damage Temporary += $9 Const - execute store result storage api: Argument.Damage double 0.5 run scoreboard players add $Damage Temporary 5 - execute if entity @s[scores={TL.UseCount=7}] run data modify storage api: Argument.Damage set value 50 - -# その他ダメージ処理 - data modify storage api: Argument.AttackType set value "Magic" - data modify storage api: Argument.ElementType set value "Fire" - data modify storage api: Argument.DeathMessage append value '[{"translate": "%1$sは%2$sに撃ち抜かれた","with":[{"selector":"@s"},{"nbt":"Return.AttackerName","storage":"lib:","interpret":true}]}]' - execute as @p[tag=Owner] run function api:damage/modifier - execute as @a[tag=TL.TargetEntity,tag=!Owner,distance=..5] run function api:damage/ - function api:damage/reset - -# 7つ目の弾丸かつプレイヤーを狙っててかつ使用者に当たってるなら実行 - execute if entity @s[tag=TL.AimToPlayer,scores={TL.UseCount=7}] as @p[tag=Owner,tag=TL.TargetEntity] run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/hit_myself - -# リセット - scoreboard players reset $Damage Temporary - tag @p[tag=Owner] remove Owner - tag @e[type=#lib:living,tag=TL.TargetEntity,distance=..10] remove TL.TargetEntity diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/check.m.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/check.m.mcfunction deleted file mode 100644 index af17bb942d..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/check.m.mcfunction +++ /dev/null @@ -1,14 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/check.m -# -# 既にヒット済みかをマクロを使って検知する -# -# args: -# ID: int -# -# @within function asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/check_target - -# 自身のIDが既にあれば自身のターゲット用Tagを削除 - $execute if data storage asset:temp TL.HitList.$(ID) run tag @s remove TL.TargetEntity - -# データがなければ追加しておく - $execute unless data storage asset:temp TL.HitList.$(ID) run data modify storage asset:temp TL.HitList.$(ID) set value 0b diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/check_target.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/check_target.mcfunction deleted file mode 100644 index 10e3e5d5fc..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/check_target.mcfunction +++ /dev/null @@ -1,12 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/check_target -# -# IDからヒット済みかをチェック -# -# @within function asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/ - -# 自身のIDをstorageに入れる - execute if entity @s[type=player] store result storage asset:temp TL.ID int 1 run scoreboard players get @s UserID - execute if entity @s[type=!player] store result storage asset:temp TL.ID int 1 run scoreboard players get @s MobUUID - -# ターゲットが既にヒット済みかチェックする - function asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/check.m with storage asset:temp TL diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/hit_myself.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/hit_myself.mcfunction deleted file mode 100644 index 4f9e02e64f..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/damage/hit_myself.mcfunction +++ /dev/null @@ -1,14 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/hit_myself -# -# 自分に弾が当たったときの処理 -# -# @within function asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/ - -# ダメージ - data modify storage api: Argument.Damage set value 50 - data modify storage api: Argument.AttackType set value "Magic" - data modify storage api: Argument.ElementType set value "Fire" - data modify storage api: Argument.DeathMessage append value '[{"translate": "%1$sは7つ目の弾丸に撃ち抜かれた","with":[{"selector":"@s"},{"nbt":"Return.AttackerName","storage":"lib:","interpret":true}]}]' - function api:damage/modifier - function api:damage/ - function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/main.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/main.mcfunction deleted file mode 100644 index 37ab7ce188..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/main.mcfunction +++ /dev/null @@ -1,32 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/main -# -# 弾のメイン処理 -# -# @within function asset:artifact/1065.magic_bullet/trigger/loop/ - -# スコア - scoreboard players add @s TL.Tick 1 - -# 演出 - execute if entity @s[scores={TL.Tick=..20}] run particle dust 0 0.8 1 0.8 ~ ~ ~ 0 0 0 0 1 - execute if entity @s[scores={TL.Tick=..3}] run playsound minecraft:entity.illusioner.prepare_blindness neutral @a ~ ~ ~ 0.5 1.8 - execute if entity @s[scores={TL.Tick=4..6}] run playsound minecraft:entity.illusioner.prepare_blindness neutral @a ~ ~ ~ 0.5 1.9 - execute if entity @s[scores={TL.Tick=7..9}] run playsound minecraft:entity.illusioner.prepare_blindness neutral @a ~ ~ ~ 0.5 2 - execute if entity @s[scores={TL.Tick=20}] run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/vfx - -# 移動処理 - execute if entity @s[scores={TL.Tick=20..}] run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/move - execute if entity @s[scores={TL.Tick=20..}] run scoreboard players reset $Recursive Temporary - -# ダメージ - execute if entity @s[scores={TL.Tick=21..}] if entity @e[type=#lib:living,tag=TL.TargetEntity,distance=..4,limit=1] run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/damage/ - -# プレイヤーを狙う状態ならワープする - execute if entity @s[tag=TL.AimToPlayer,scores={TL.Tick=20}] run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/teleport - -# 消滅 - execute if entity @s[scores={TL.Tick=40..}] run kill @s - execute unless block ^ ^ ^0.25 #lib:no_collision run kill @s - -# ループ処理 - schedule function asset:artifact/1065.magic_bullet/trigger/loop/ 1t replace diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/move.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/move.mcfunction deleted file mode 100644 index d1413fa322..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/move.mcfunction +++ /dev/null @@ -1,24 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/move -# -# 再帰処理で前進する -# -# @within function -# asset:artifact/1065.magic_bullet/trigger/loop/bullet/main -# asset:artifact/1065.magic_bullet/trigger/loop/bullet/move - -# tpする - tp @s ^ ^ ^0.25 - -# 演出 - execute at @s run particle dust 0.2 0.2 1 1.3 ~ ~ ~ 0 0 0 0 1 force @a - execute at @s run particle dust 0.2 0.2 1 1.3 ^ ^ ^0.125 0 0 0 0 1 force @a - -# ヒットしたEntityにターゲットTagを付与 - execute if entity @s[scores={TL.Tick=21..}] positioned ~-0.5 ~-0.5 ~-0.5 run tag @e[type=#lib:living,tag=!PlayerShouldInvulnerable,tag=!Object,tag=!Uninterferable,dx=0] add TL.TargetEntity - -# 再帰移動 -# 自然に魔法陣から魔法陣へワープさせるため、 -# プレイヤーを狙う状態かつ移動し始めてから1tick目(20)かつ、$Recursiveが1の時に強制的に中断 - scoreboard players add $Recursive Temporary 1 - execute if entity @s[tag=TL.AimToPlayer,scores={TL.Tick=20}] if score $Recursive Temporary matches 1.. run return fail - execute if score $Recursive Temporary matches ..9 at @s if block ^ ^ ^0.25 #lib:no_collision run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/move diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/teleport.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/teleport.mcfunction deleted file mode 100644 index 5da6dce7ad..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/teleport.mcfunction +++ /dev/null @@ -1,11 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/teleport -# -# 魔法陣から魔法陣へワープする -# -# @within function asset:artifact/1065.magic_bullet/trigger/loop/bullet/main - -# OwnerIDが同じ魔法陣へワープする - execute at @e[type=item_display,tag=TL.TeleportPosition,distance=..110] if score @s TL.OwnerID = @e[type=item_display,tag=TL.TeleportPosition,limit=1] TL.OwnerID rotated ~ 0 positioned ^ ^ ^-0.2 run tp @s ~ ~ ~ ~ ~ - -# 演出 - execute at @s run function asset:artifact/1065.magic_bullet/trigger/loop/bullet/vfx diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/vfx.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/vfx.mcfunction deleted file mode 100644 index 5ff3929a97..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/bullet/vfx.mcfunction +++ /dev/null @@ -1,20 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/bullet/vfx -# -# vfx -# -# @within function -# asset:artifact/1065.magic_bullet/trigger/loop/bullet/main -# asset:artifact/1065.magic_bullet/trigger/loop/bullet/teleport - -# 演出 - particle scrape ~ ~ ~ 0 0 0 15 100 normal @a - execute if entity @s[scores={TL.UseCount=4..}] run particle scrape ~ ~ ~ 0 0 0 30 100 normal @a - execute if entity @s[scores={TL.UseCount=7}] run particle scrape ~ ~ ~ 0 0 0 45 100 normal @a - playsound tsb_sounds:rifle_shot neutral @a ~ ~ ~ 2 0.8 - #playsound tsb_sounds:rifle_shot neutral @a ~ ~ ~ 2 0.8 - #playsound tsb_sounds:rifle_shot neutral @a ~ ~ ~ 1 0.7 - playsound block.fire.extinguish neutral @a ~ ~ ~ 1 1.2 - playsound block.fire.extinguish neutral @a ~ ~ ~ 1 1.3 - playsound minecraft:entity.warden.sonic_boom neutral @a ~ ~ ~ 0.3 2 - playsound minecraft:entity.warden.sonic_boom neutral @a ~ ~ ~ 0.15 1.9 - #playsound minecraft:entity.warden.sonic_boom neutral @a ~ ~ ~ 0.1 1.8 diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/square/main.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/square/main.mcfunction deleted file mode 100644 index 9fb180ef3a..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/loop/square/main.mcfunction +++ /dev/null @@ -1,39 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/loop/square/main -# -# 魔法陣のメイン処理 -# -# @within function asset:artifact/1065.magic_bullet/trigger/loop/ - -# スコア - scoreboard players add @s TL.Tick 1 - -# 魔法陣の表示処理 -# 何番目の魔法陣かで表示タイミングが異なる - -# 1つ目 - execute if entity @s[scores={TL.SquareCount=1,TL.Tick=2}] run data modify entity @s start_interpolation set value 0 - execute if entity @s[scores={TL.SquareCount=1,TL.Tick=2}] run data modify entity @s transformation.scale set value [0.9d,0.9d,0.01d] - -# 2つ目 - execute if entity @s[scores={TL.SquareCount=2,TL.Tick=4}] run data modify entity @s start_interpolation set value 0 - execute if entity @s[scores={TL.SquareCount=2,TL.Tick=4}] run data modify entity @s interpolation_duration set value 4 - execute if entity @s[scores={TL.SquareCount=2,TL.Tick=4}] run data modify entity @s transformation.scale set value [1.8d,1.8d,0.01d] - -# 3つ目 - execute if entity @s[scores={TL.SquareCount=3,TL.Tick=8}] run data modify entity @s start_interpolation set value 0 - execute if entity @s[scores={TL.SquareCount=3,TL.Tick=8}] run data modify entity @s transformation.scale set value [1.2d,1.2d,0.01d] - -# 4つ目 - execute if entity @s[scores={TL.SquareCount=4,TL.Tick=10}] run data modify entity @s start_interpolation set value 0 - execute if entity @s[scores={TL.SquareCount=4,TL.Tick=10}] run data modify entity @s transformation.scale set value [0.7d,0.7d,0.01d] - -# 消える - execute if entity @s[scores={TL.Tick=35}] run data modify entity @s start_interpolation set value 0 - execute if entity @s[scores={TL.Tick=35}] run data modify entity @s interpolation_duration set value 5 - execute if entity @s[scores={TL.Tick=35}] run data modify entity @s transformation.scale set value [0d,0d,0.01d] - -# 消滅 - execute if entity @s[scores={TL.Tick=40..}] run kill @s - -# ループ処理 - schedule function asset:artifact/1065.magic_bullet/trigger/loop/ 1t replace diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/rejoin_process.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/rejoin_process.mcfunction deleted file mode 100644 index 053a85d974..0000000000 --- a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/rejoin_process.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:artifact/1065.magic_bullet/trigger/rejoin_process -# -# 使い方は必ずwikiを見ること -# -# @within tag/function asset:rejoin - -# ループ再開 - execute if entity @e[type=!#lib:living,tag=TL.LoopTarget,limit=1] run schedule function asset:artifact/1065.magic_bullet/trigger/loop/ 1t replace diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/summon_square/aim_to_player.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/summon_square/aim_to_player.mcfunction new file mode 100644 index 0000000000..a354078a05 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/summon_square/aim_to_player.mcfunction @@ -0,0 +1,24 @@ +#> asset:artifact/1065.magic_bullet/trigger/summon_square/aim_to_player +# +# プレイヤーを狙う際の処理 +# +# @within function asset:artifact/1065.magic_bullet/trigger/3.main + +#> Private +# @private + #declare tag TL.TargetPlayer + +# ランダムなプレイヤーを指定 + tag @r[tag=!PlayerShouldInvulnerable,distance=..100] add TL.TargetPlayer + +# 1個目の魔法陣にIDを持たせる + execute store result storage api: Argument.FieldOverride.ID int 1 run scoreboard players get $Random Temporary + +# ターゲットの真後ろに魔法陣を4つ召喚 + execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^-5.45 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[0.9d,0.9d,0.01d],Delay:2,Interpolation:2,LeftRotate:false} + execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^-5.30 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[1.8d,1.8d,0.01d],Delay:4,Interpolation:4,LeftRotate:true} + execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^-5.15 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[1.2d,1.2d,0.01d],Delay:8,Interpolation:2,LeftRotate:false} + execute at @p[tag=TL.TargetPlayer] rotated ~ 0 anchored eyes positioned ^ ^-0.1 ^-5.00 run function asset:artifact/1065.magic_bullet/trigger/summon_square/m {Scale:[0.7d,0.7d,0.01d],Delay:10,Interpolation:2,LeftRotate:true} + +# リセット + tag @p[tag=TL.TargetPlayer] remove TL.TargetPlayer diff --git a/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/summon_square/m.mcfunction b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/summon_square/m.mcfunction new file mode 100644 index 0000000000..1d0d2d979b --- /dev/null +++ b/Asset/data/asset/functions/artifact/1065.magic_bullet/trigger/summon_square/m.mcfunction @@ -0,0 +1,19 @@ +#> asset:artifact/1065.magic_bullet/trigger/summon_square/m +# +# 魔法陣の召喚処理 +# +# @input args: +# Scale : double @ 3 +# Delay : int +# Interpolation : int +# @within function +# asset:artifact/1065.magic_bullet/trigger/3.main +# asset:artifact/1065.magic_bullet/trigger/summon_square/aim_to_player + +# 魔法陣を召喚 + data modify storage api: Argument.ID set value 1045 + $data modify storage api: Argument.FieldOverride.Scale set value $(Scale) + $data modify storage api: Argument.FieldOverride.Delay set value $(Delay) + $data modify storage api: Argument.FieldOverride.Interpolation set value $(Interpolation) + $data modify storage api: Argument.FieldOverride.LeftRotate set value $(LeftRotate)b + function api:object/summon diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/init/.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/init/.mcfunction new file mode 100644 index 0000000000..62a2a804ec --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/init/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1045.magic_bullet_square/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1045/init + +# this.IDがあればスコアへ代入しておく + execute if data storage asset:context this.ID store result score @s 1045.ID run data get storage asset:context this.ID diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/load.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/load.mcfunction new file mode 100644 index 0000000000..b9feb8ab0b --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/load.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1045.magic_bullet_square/load +# +# Objectに利用するスコアボード等の初期化処理 +# +# @within tag/function asset:object/load + +#> 定義類はここに +# @within function +# asset:object/1045.magic_bullet_square/** +# asset:object/1046.magic_bullet/tick/teleport + scoreboard objectives add 1045.ID dummy diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/register.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/register.mcfunction new file mode 100644 index 0000000000..2f4aa9c679 --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/register.mcfunction @@ -0,0 +1,26 @@ +#> asset:object/1045.magic_bullet_square/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1045/register + +# 継承(オプション) + # data modify storage asset:object Extends append value + # function asset:object/extends +# 他のObjectに継承されることを許可するか (boolean) (オプション) + # data modify storage asset:object ExtendsSafe set value +# 継承されることを前提とした、抽象的なObjectであるかどうか(boolean) + data modify storage asset:object IsAbstract set value false +# Tickするかどうか(boolean) (オプション) + # data modify storage asset:object IsTicking set value + +# ID (int) + data modify storage asset:object ID set value 1045 +# フィールド(オプション) + data modify storage asset:object Field.Scale set value [1d,1d,0.01d] + data modify storage asset:object Field.Delay set value 20 + data modify storage asset:object Field.Spin set value 4 + data modify storage asset:object Field.SpinInterval set value 2 + data modify storage asset:object Field.Interpolation set value 2 + data modify storage asset:object Field.LeftRotate set value false + # data modify storage asset:object Field.ID set value -1 diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/.mcfunction new file mode 100644 index 0000000000..7f8e73df5a --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1045.magic_bullet_square/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1045/summon + +# 召喚 + execute as 0-0-0-0-0 in minecraft:overworld positioned as @s run tp @s ~ ~ ~ ~ ~ + data modify storage asset:temp Args.Rotation set from entity 0-0-0-0-0 Rotation + function asset:object/1045.magic_bullet_square/summon/m with storage asset:temp Args + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/debug.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/debug.mcfunction new file mode 100644 index 0000000000..14f890c31b --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/debug.mcfunction @@ -0,0 +1,12 @@ +#> asset:object/1045.magic_bullet_square/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + + data modify storage api: Argument.FieldOverride.LeftRotate set value false + +# 召喚 + data modify storage api: Argument.ID set value 1045 + function api:object/summon diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/m.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/m.mcfunction new file mode 100644 index 0000000000..81aeff6c08 --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/summon/m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1045.magic_bullet_square/summon/m +# +# @input args: +# Rotation : float @ 2 +# @within function asset:object/1045.magic_bullet_square/summon/ + +$summon item_display ~ ~ ~ {Rotation:$(Rotation),Tags:["ObjectInit"],brightness:{sky:15,block:15},transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[0f,0f,0f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20351}}} diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/.mcfunction new file mode 100644 index 0000000000..efb2f38f7c --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/.mcfunction @@ -0,0 +1,25 @@ +#> asset:object/1045.magic_bullet_square/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1045/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 魔法陣表示までの遅延 + execute unless data storage asset:context this{Delay:-1} store result storage asset:context this.Delay int 0.9999999999 run data get storage asset:context this.Delay + execute if data storage asset:context this{Delay:0} run function asset:object/1045.magic_bullet_square/tick/display + +# 回転させる + execute if data storage asset:context this{Delay:-1} store result storage asset:context this.SpinInterval int 0.9999999999 run data get storage asset:context this.SpinInterval + execute if data storage asset:context this{SpinInterval:0} unless score @s General.Object.Tick matches 65.. run function asset:object/1045.magic_bullet_square/tick/spin + execute if data storage asset:context this{SpinInterval:0} run data modify storage asset:context this.SpinInterval set value 16 + +# 魔法陣を見えなくする + execute if score @s General.Object.Tick matches 60 run data modify entity @s start_interpolation set value 0 + execute if score @s General.Object.Tick matches 60 run data modify entity @s interpolation_duration set value 5 + execute if score @s General.Object.Tick matches 60 run data modify entity @s transformation.scale set value [0d,0d,0.01d] + +# 消滅処理 + kill @s[scores={General.Object.Tick=65..}] diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/display.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/display.mcfunction new file mode 100644 index 0000000000..940a95a949 --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/display.mcfunction @@ -0,0 +1,17 @@ +#> asset:object/1045.magic_bullet_square/tick/display +# +# 魔法陣を表示する際の処理 +# +# @within function asset:object/1045.magic_bullet_square/tick/ + +# start_interpolation + data modify entity @s start_interpolation set value 0 + +# transformation.scale + data modify entity @s transformation.scale set from storage asset:context this.Scale + +# interpolation_duration + data modify entity @s interpolation_duration set from storage asset:context this.Interpolation + +# Delayを-1にして何度も表示されないようにする + data modify storage asset:context this.Delay set value -1 diff --git a/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/spin.mcfunction b/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/spin.mcfunction new file mode 100644 index 0000000000..08d1753ce4 --- /dev/null +++ b/Asset/data/asset/functions/object/1045.magic_bullet_square/tick/spin.mcfunction @@ -0,0 +1,23 @@ +#> asset:object/1045.magic_bullet_square/tick/spin +# +# 回転させる +# +# @within function asset:object/1045.magic_bullet_square/tick/ + +# start_interpolation + data modify entity @s start_interpolation set value 0 + +# Delayが0でなければinterpolation_durationを変える + data modify entity @s interpolation_duration set value 16 + +# 回転 + execute store result storage asset:context this.Spin int 0.9999999999 run data get storage asset:context this.Spin + execute if data storage asset:context this{Spin:3} if data storage asset:context this{LeftRotate:true} run data modify entity @s transformation.left_rotation set value [0.0f,0.0f,-0.7071f,0.7071f] + execute if data storage asset:context this{Spin:3} unless data storage asset:context this{LeftRotate:true} run data modify entity @s transformation.left_rotation set value [0.0f,0.0f,0.7071f,0.7071f] + execute if data storage asset:context this{Spin:2} run data modify entity @s transformation.left_rotation set value [0.0f,0.0f,1.0f,0.0f] + execute if data storage asset:context this{Spin:1} if data storage asset:context this{LeftRotate:true} run data modify entity @s transformation.left_rotation set value [0.0f,0.0f,0.7071f,0.7071f] + execute if data storage asset:context this{Spin:1} unless data storage asset:context this{LeftRotate:true} run data modify entity @s transformation.left_rotation set value [0.0f,0.0f,-0.7071f,0.7071f] + execute if data storage asset:context this{Spin:0} run data modify entity @s transformation.left_rotation set value [0.0f,0.0f,0.0f,1.0f] + +# リセット + execute if data storage asset:context this{Spin:0} run data modify storage asset:context this.Spin set value 4 diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/_index.d.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/_index.d.mcfunction new file mode 100644 index 0000000000..715ad6e252 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:object/1046.magic_bullet/_index.d +# @private + +#> tag +# @within function asset:object/1046.magic_bullet/** + #declare tag 1046.TargetEntity diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/detect_hit_entity/.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/detect_hit_entity/.mcfunction new file mode 100644 index 0000000000..77b61d3a5d --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/detect_hit_entity/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1046.magic_bullet/detect_hit_entity/ +# +# 継承先などから実行される処理 +# +# @within asset:object/alias/1046/detect_hit_entity + +# 判定 + execute if entity @s positioned ~-0.5 ~-0.5 ~-0.5 if entity @e[type=#lib:living,tag=!Uninterferable,dx=0] run data modify storage asset:context IsHitEntity set value true diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/.mcfunction new file mode 100644 index 0000000000..ba89706f43 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/.mcfunction @@ -0,0 +1,42 @@ +#> asset:object/1046.magic_bullet/hit_entity/ +# +# 継承先などから実行される処理 +# +# @within asset:object/alias/1046/hit_entity + +#> Private +# @private + #declare tag Owner + #declare score_holder $UserID + +# 使用者特定 + execute store result score $UserID Temporary run data get storage asset:context this.UserID + execute as @a if score @s UserID = $UserID Temporary run tag @s add Owner + +# 多重ヒット防止判定 +# 敵味方関係なくチェックする + execute positioned ~-0.5 ~-0.5 ~-0.5 as @e[type=#lib:living,tag=!Uninterferable,dx=0] run function asset:object/1046.magic_bullet/hit_entity/check_target/ + +# プレイヤー以外に対するダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage.ToNonPlayer + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Fire" + execute as @p[tag=Owner] run function api:damage/modifier + execute positioned ~-0.5 ~-0.5 ~-0.5 as @e[type=#lib:living,type=!player,tag=1046.TargetEntity,dx=0] run function api:damage/ + function api:damage/reset + +# プレイヤーに対するダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage.ToPlayer + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Fire" + execute as @p[tag=Owner] run function api:damage/modifier + execute positioned ~-0.5 ~-0.5 ~-0.5 as @e[type=#lib:living,type=player,tag=1046.TargetEntity,tag=!PlayerShouldInvulnerable,tag=!Owner,dx=0] run function api:damage/ + function api:damage/reset + +# プレイヤーを狙った弾かつOwnerがいればOwnerにダメージ + execute if data storage asset:context this{AimToPlayer:true} positioned ~-0.5 ~-0.5 ~-0.5 as @p[tag=Owner,tag=1046.TargetEntity,tag=!PlayerShouldInvulnerable,dx=0] run function asset:object/1046.magic_bullet/hit_entity/self_damage + +# リセット + tag @p[tag=Owner] remove Owner + tag @e[type=#lib:living,tag=1046.TargetEntity,tag=!Uninterferable,distance=..5] remove 1046.TargetEntity + scoreboard players reset $UserID Temporary diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/check_target/.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/check_target/.mcfunction new file mode 100644 index 0000000000..31a177e395 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/check_target/.mcfunction @@ -0,0 +1,15 @@ +#> asset:object/1046.magic_bullet/hit_entity/check_target/ +# +# +# +# @within function asset:object/1046.magic_bullet/hit_entity/ + +# IDをstorageへ突っ込む + execute if entity @s[type=player] store result storage asset:temp Args.ID int 1 run scoreboard players get @s UserID + execute if entity @s[type=!player] store result storage asset:temp Args.ID int 1 run scoreboard players get @s MobUUID + +# マクロで比較する + function asset:object/1046.magic_bullet/hit_entity/check_target/m with storage asset:temp Args + +# リセット + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/check_target/m.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/check_target/m.mcfunction new file mode 100644 index 0000000000..2ac2008b7e --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/check_target/m.mcfunction @@ -0,0 +1,13 @@ +#> asset:object/1046.magic_bullet/hit_entity/check_target/m +# +# @input args: +# ID : int +# @within function asset:object/1046.magic_bullet/hit_entity/check_target/ + +# 自身のIDがなければ自身にTargetTagを付与 + $execute if entity @s[type=player] unless data storage asset:context this.HitList.Player.$(ID) run tag @s add 1046.TargetEntity + $execute if entity @s[type=!player] unless data storage asset:context this.HitList.NonPlayer.$(ID) run tag @s add 1046.TargetEntity + +# データがなければ追加しておく + $execute if entity @s[type=player] unless data storage asset:context this.HitList.Player.$(ID) run data modify storage asset:context this.HitList.Player.$(ID) set value 0b + $execute if entity @s[type=!player] unless data storage asset:context this.HitList.NonPlayer.$(ID) run data modify storage asset:context this.HitList.NonPlayer.$(ID) set value 0b diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/self_damage.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/self_damage.mcfunction new file mode 100644 index 0000000000..62230c1236 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/hit_entity/self_damage.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/1046.magic_bullet/hit_entity/self_damage +# +# 7発目の弾丸 +# +# @input as Player +# @within function asset:object/1046.magic_bullet/hit_entity/ + +# 自身を貫くダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage.Self + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Fire" + function api:damage/modifier + function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/recursive/.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/recursive/.mcfunction new file mode 100644 index 0000000000..679d9deaa5 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/recursive/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1046.magic_bullet/recursive/ +# +# 継承先などから実行される処理 +# +# @within asset:object/alias/1046/recursive + +# 演出 + execute at @s run particle dust 0.2 0.2 1 1.3 ^ ^ ^ 0 0 0 0 1 force @a + execute at @s run particle dust 0.2 0.2 1 1.3 ^ ^ ^0.125 0 0 0 0 1 force @a + execute at @s run particle dust 0.2 0.2 1 1.3 ^ ^ ^0.250 0 0 0 0 1 force @a + execute at @s run particle dust 0.2 0.2 1 1.3 ^ ^ ^0.375 0 0 0 0 1 force @a diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/register.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/register.mcfunction new file mode 100644 index 0000000000..f6ab01cb02 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/register.mcfunction @@ -0,0 +1,26 @@ +#> asset:object/1046.magic_bullet/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1046/register + +# 継承(オプション) + data modify storage asset:object Extends append value 1 + function asset:object/extends +# 他のObjectに継承されることを許可するか (boolean) (オプション) + # data modify storage asset:object ExtendsSafe set value +# 継承されることを前提とした、抽象的なObjectであるかどうか(boolean) + data modify storage asset:object IsAbstract set value false +# Tickするかどうか(boolean) (オプション) + # data modify storage asset:object IsTicking set value + +# ID (int) + data modify storage asset:object ID set value 1046 +# フィールド(オプション) + data modify storage asset:object Field.Speed set value 5 + data modify storage asset:object Field.Range set value 150 + data modify storage asset:object Field.MovePerStep set value 0.5 + data modify storage asset:object Field.Damage set value {ToNonPlayer:1,ToPlayer:1,Self:7} + data modify storage asset:object Field.AimToPlayer set value false + # data modify storage asset:object Field.ID set value -1 + data modify storage asset:object Field.UserID set value -1 diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/summon/.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/summon/.mcfunction new file mode 100644 index 0000000000..3908f7734a --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/summon/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1046.magic_bullet/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1046/summon + +# 召喚 + execute as 0-0-0-0-0 in minecraft:overworld positioned as @s run tp @s ~ ~ ~ ~ ~ + data modify storage asset:temp Args.Rotation set from entity 0-0-0-0-0 Rotation + function asset:object/1046.magic_bullet/summon/m with storage asset:temp Args + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/summon/debug.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/summon/debug.mcfunction new file mode 100644 index 0000000000..b3d5a73959 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1046.magic_bullet/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1046 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/summon/m.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/summon/m.mcfunction new file mode 100644 index 0000000000..8ed9e83d4d --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/summon/m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1046.magic_bullet/summon/m +# +# @input args: +# Rotation : float @ 2 +# @within function asset:object/1046.magic_bullet/summon/ + +# 召喚 + $summon marker ~ ~ ~ {Tags:["ObjectInit"],Rotation:$(Rotation)} diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/tick/.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/tick/.mcfunction new file mode 100644 index 0000000000..cbeb9bdd6d --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/tick/.mcfunction @@ -0,0 +1,21 @@ +#> asset:object/1046.magic_bullet/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1046/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 演出 + execute if score @s General.Object.Tick matches ..20 run particle dust 0 0.8 1 0.8 ~ ~ ~ 0 0 0 0 1 + execute if score @s General.Object.Tick matches ..3 run playsound minecraft:entity.illusioner.prepare_blindness neutral @a ~ ~ ~ 0.5 1.8 + execute if score @s General.Object.Tick matches 4..6 run playsound minecraft:entity.illusioner.prepare_blindness neutral @a ~ ~ ~ 0.5 1.9 + execute if score @s General.Object.Tick matches ..9 run playsound minecraft:entity.illusioner.prepare_blindness neutral @a ~ ~ ~ 0.5 2 + execute if score @s General.Object.Tick matches 20 run function asset:object/1046.magic_bullet/tick/vfx + +# AimToPlayer:trueなら魔法陣へテレポートする + execute if score @s General.Object.Tick matches 20 if data storage asset:context this{AimToPlayer:true} run function asset:object/1046.magic_bullet/tick/teleport + +# 20tick目からsuper.tick + execute if score @s General.Object.Tick matches 20.. at @s run function asset:object/super.tick diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/tick/teleport.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/tick/teleport.mcfunction new file mode 100644 index 0000000000..4836351a90 --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/tick/teleport.mcfunction @@ -0,0 +1,21 @@ +#> asset:object/1046.magic_bullet/tick/teleport +# +# IDが同じ魔法陣へテレポートする +# +# @within function asset:object/1046.magic_bullet/tick/ + +#> Private +# @private + #declare score_holder $1046.ID + +# 自身のIDをスコアへ + execute store result score $1046.ID Temporary run data get storage asset:context this.ID + +# 同IDを持つ魔法陣へテレポート + execute as @e[type=item_display,scores={ObjectID=1045},distance=..120] if score @s 1045.ID = $1046.ID Temporary at @s run tp @e[type=marker,tag=this,distance=..120] ^ ^ ^-0.2 ~ 0 + +# vfx + execute at @s run function asset:object/1046.magic_bullet/tick/vfx + +# リセット + scoreboard players reset $1046.ID Temporary diff --git a/Asset/data/asset/functions/object/1046.magic_bullet/tick/vfx.mcfunction b/Asset/data/asset/functions/object/1046.magic_bullet/tick/vfx.mcfunction new file mode 100644 index 0000000000..5b44ce1abc --- /dev/null +++ b/Asset/data/asset/functions/object/1046.magic_bullet/tick/vfx.mcfunction @@ -0,0 +1,27 @@ +#> asset:object/1046.magic_bullet/tick/vfx +# +# +# +# @within function +# asset:object/1046.magic_bullet/tick/ +# asset:object/1046.magic_bullet/tick/teleport + +#> Private +# @private + #declare score_holder $BulletCount + +# 何発目の弾かをスコアに入れる + execute store result score $BulletCount Temporary run data get storage asset:context this.BulletCount + +# 演出 + particle scrape ~ ~ ~ 0 0 0 15 100 normal @a + execute if score $BulletCount Temporary matches 4.. run particle scrape ~ ~ ~ 0 0 0 30 100 normal @a + execute if score $BulletCount Temporary matches 7 run particle scrape ~ ~ ~ 0 0 0 45 100 normal @a + playsound tsb_sounds:rifle_shot neutral @a ~ ~ ~ 2 0.8 + playsound block.fire.extinguish neutral @a ~ ~ ~ 1 1.2 + playsound block.fire.extinguish neutral @a ~ ~ ~ 1 1.3 + playsound minecraft:entity.warden.sonic_boom neutral @a ~ ~ ~ 0.3 2 + playsound minecraft:entity.warden.sonic_boom neutral @a ~ ~ ~ 0.15 1.9 + +# リセット + scoreboard players reset $BulletCount Temporary diff --git a/Asset/data/asset/functions/object/alias/1045/init.mcfunction b/Asset/data/asset/functions/object/alias/1045/init.mcfunction new file mode 100644 index 0000000000..0d05ea1d84 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1045/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1045/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1045.magic_bullet_square/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1045/register.mcfunction b/Asset/data/asset/functions/object/alias/1045/register.mcfunction new file mode 100644 index 0000000000..20fa347342 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1045/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1045/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1045.magic_bullet_square/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1045/summon.mcfunction b/Asset/data/asset/functions/object/alias/1045/summon.mcfunction new file mode 100644 index 0000000000..811ee27747 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1045/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1045/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1045.magic_bullet_square/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1045/tick.mcfunction b/Asset/data/asset/functions/object/alias/1045/tick.mcfunction new file mode 100644 index 0000000000..74d146a765 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1045/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1045/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1045.magic_bullet_square/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1046/detect_hit_entity.mcfunction b/Asset/data/asset/functions/object/alias/1046/detect_hit_entity.mcfunction new file mode 100644 index 0000000000..cc82d46ad7 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1046/detect_hit_entity.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1046/detect_hit_entity +# +# メソッド処理のエイリアス +# +# @within asset_manager:object/call_method/run_method.m + +# 元のメソッド処理を呼び出す + function asset:object/1046.magic_bullet/detect_hit_entity/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1046/hit_entity.mcfunction b/Asset/data/asset/functions/object/alias/1046/hit_entity.mcfunction new file mode 100644 index 0000000000..eb51f05861 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1046/hit_entity.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1046/hit_entity +# +# メソッド処理のエイリアス +# +# @within asset_manager:object/call_method/run_method.m + +# 元のメソッド処理を呼び出す + function asset:object/1046.magic_bullet/hit_entity/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1046/recursive.mcfunction b/Asset/data/asset/functions/object/alias/1046/recursive.mcfunction new file mode 100644 index 0000000000..16ca6c9470 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1046/recursive.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1046/recursive +# +# メソッド処理のエイリアス +# +# @within asset_manager:object/call_method/run_method.m + +# 元のメソッド処理を呼び出す + function asset:object/1046.magic_bullet/recursive/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1046/register.mcfunction b/Asset/data/asset/functions/object/alias/1046/register.mcfunction new file mode 100644 index 0000000000..620cfa87d8 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1046/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1046/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1046.magic_bullet/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1046/summon.mcfunction b/Asset/data/asset/functions/object/alias/1046/summon.mcfunction new file mode 100644 index 0000000000..8d3c26bbc7 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1046/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1046/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1046.magic_bullet/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1046/tick.mcfunction b/Asset/data/asset/functions/object/alias/1046/tick.mcfunction new file mode 100644 index 0000000000..7319f91b39 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1046/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1046/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1046.magic_bullet/tick/ \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/load.json b/Asset/data/asset/tags/functions/artifact/load.json index b06de8caf4..7dc5972872 100644 --- a/Asset/data/asset/tags/functions/artifact/load.json +++ b/Asset/data/asset/tags/functions/artifact/load.json @@ -5,7 +5,6 @@ "asset:artifact/1081.wandering_piece_of_dream/trigger/0.load", "asset:artifact/0566.great_sage_helmet/trigger/0.load", "asset:artifact/1017.cutlass_of_endless_silence/trigger/0.load", - "asset:artifact/1065.magic_bullet/trigger/0.load", "asset:artifact/0554.catastrophe/trigger/0.load", "asset:artifact/1110.lantern_of_firefly/trigger/0.load", "asset:artifact/1149.afterglow_of_thunder/trigger/0.load", diff --git a/Asset/data/asset/tags/functions/object/load.json b/Asset/data/asset/tags/functions/object/load.json index 9ed8e40409..c31f51925b 100644 --- a/Asset/data/asset/tags/functions/object/load.json +++ b/Asset/data/asset/tags/functions/object/load.json @@ -1,5 +1,6 @@ { "values": [ + "asset:object/1045.magic_bullet_square/load", "asset:object/1102.turret/load", "asset:object/2026.lastbattle_platform/load", "asset:object/2198.rubiel_scythe/load", diff --git a/Asset/data/asset/tags/functions/rejoin.json b/Asset/data/asset/tags/functions/rejoin.json index 0baf90e3ba..2c8daa5bdb 100644 --- a/Asset/data/asset/tags/functions/rejoin.json +++ b/Asset/data/asset/tags/functions/rejoin.json @@ -4,7 +4,6 @@ "asset:mob/0340.twins_rubiel/rejoin_process/", "asset:mob/0410.heiloang/rejoin_process/", "asset:artifact/1017.cutlass_of_endless_silence/trigger/rejoin_process", - "asset:artifact/1065.magic_bullet/trigger/rejoin_process", "asset:artifact/1141.bell_of_courage/trigger/rejoin_process", "asset:artifact/1110.lantern_of_firefly/trigger/rejoin_process", "asset:artifact/0002.blessing/trigger/rejoin_process",