diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/give/1.trigger.mcfunction new file mode 100644 index 0000000000..396ebe35ef --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1391.blue_refraction_prism/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1391} run function asset:artifact/1391.blue_refraction_prism/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/give/2.give.mcfunction new file mode 100644 index 0000000000..b1b0837e42 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/give/2.give.mcfunction @@ -0,0 +1,73 @@ +#> asset:artifact/1391.blue_refraction_prism/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1391.blue_refraction_prism/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1391 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '[{"text":"青","color":"#7A7AFF"},{"text":"色","color":"#8484FF"},{"text":"の","color":"#8E8EFF"},{"text":"屈","color":"#9898FF"},{"text":"折","color":"#A2A2FF"},{"text":"","color":"#ACACFF"},{"text":"プ","color":"#B6B6FF"},{"text":"リ","color":"#C0C0FF"},{"text":"ズ","color":"#CACAFF"},{"text":"ム","color":"#D4D4FF"}]' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"攻撃対象N体に与ダメージ量の10%分の水属性ダメージを与える"}','{"text":"このダメージは自身のステータス補正の影響を受けない"}'] +# 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) + # data modify storage asset:artifact ConsumeItem.Item set value '{"translate":"item.minecraft.stick"}' + # data modify storage asset:artifact ConsumeItem.Count set value 1 + # data modify storage asset:artifact ConsumeItem.Extra set value +# 使用回数 (int) (オプション) + # data modify storage asset:artifact RemainingCount set value +# 神器を発動できるスロット (string) Wikiを参照 + data modify storage asset:artifact Slot set value "hotbar" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onAttack" +# 効果が重複可能か否か (boolean) (オプション) + # data modify storage asset:artifact EnableDuplication set value +# 神器の発動条件 (TextComponentString) (オプション) + data modify storage asset:artifact Condition set value '{"text":"水属性以外で属性攻撃"}' +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.Damage set value [0,0] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [Water] +# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.BypassResist set value +# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.IsRangeAttack set value +# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.AttackRange set value +# MP消費量 (int) + data modify storage asset:artifact MPCost set value 20 +# MP必要量 (int) (オプション) + # data modify storage asset:artifact MPRequire set value +# MP回復量 (int) + # data modify storage asset:artifact MPHealWhenHit set value +# 神器のクールダウン (int) (オプション) + data modify storage asset:artifact LocalCooldown set value 100 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + # data modify storage asset:artifact TypeCooldown.Type set value + # data modify storage asset:artifact TypeCooldown.Duration set value +# 第二種別クールダウン ({Type: string, Duration: int}) (オプション) + # data modify storage asset:artifact SecondaryTypeCooldown.Type set value + # data modify storage asset:artifact SecondaryTypeCooldown.Duration set value +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + data modify storage asset:artifact DisableCooldownMessage set value true +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + data modify storage asset:artifact DisableMPMessage set value true +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value "ALL" +# カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション) + # data modify storage asset:artifact CustomNBT set value {} + +# 神器の入手用function + function asset:artifact/common/give diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/register.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/register.mcfunction new file mode 100644 index 0000000000..63c5907498 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1391.blue_refraction_prism/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +# data modify storage asset:artifact RarityRegistry[1] append value [1391] diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..ddbaac8396 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idの%slot%に装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{hotbar:[1391]} run function asset:artifact/1391.blue_refraction_prism/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..8d91c3b689 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/2.check_condition.mcfunction @@ -0,0 +1,33 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1391.blue_refraction_prism/trigger/1.trigger + +# ID指定する + data modify storage asset:artifact TargetID set value 1391 +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/hotbar +# 他にアイテム等確認する場合はここに書く + +# CanUsedじゃないならreturn + execute if entity @s[tag=!CanUsed] run return fail + +# バニラ攻撃ならreturn + execute if data storage asset:context Attack{IsVanilla:true} run tag @s remove CanUsed + execute if entity @s[tag=!CanUsed] run return fail + +# DoTならreturn + execute if data storage asset:context Attack{IsDoT:true} run return fail + execute if entity @s[tag=!CanUsed] run return fail + +# 水属性ならreturn + execute if data storage asset:context Attack{ElementType:"Water"} run return fail + execute if entity @s[tag=!CanUsed] run return fail + +# Victimがいなければreturn + execute unless entity @e[type=#lib:living_without_player,tag=Victim,distance=..64] run return fail + execute if entity @s[tag=!CanUsed] run return fail + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1391.blue_refraction_prism/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/3.main.mcfunction new file mode 100644 index 0000000000..e9a1ec68b0 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/3.main.mcfunction @@ -0,0 +1,30 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1391.blue_refraction_prism/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/hotbar + +# ここから先は神器側の効果の処理を書く + +# SingleDamageSession open + function api:damage/single_damage_session/open + +# 攻撃対象のうち近いN体に諸々を適用 + execute as @e[type=#lib:living_without_player,tag=Victim,tag=!Uninterferable,distance=..64,sort=nearest,limit=3] at @s run function asset:artifact/1391.blue_refraction_prism/trigger/apply + +# SingleDamageSession close + function api:damage/single_damage_session/close + +# 自作パーティクル x4 +# 各entityで実行すると負荷がやばいのでテキトーに分散させる + function asset:artifact/1391.blue_refraction_prism/trigger/vfx/ + function asset:artifact/1391.blue_refraction_prism/trigger/vfx/ + function asset:artifact/1391.blue_refraction_prism/trigger/vfx/ + function asset:artifact/1391.blue_refraction_prism/trigger/vfx/ + +# リセット + data remove storage asset:temp Temp + tag @e[type=#lib:living_without_player,tag=Target,distance=..64] remove Target diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/_index.d.mcfunction new file mode 100644 index 0000000000..916f999cdc --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/_index.d.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/_index.d +# @private + +#> tag +# @within function asset:artifact/1391.blue_refraction_prism/trigger/** + #declare score_holder $TempID + #declare tag Target diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/apply.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/apply.mcfunction new file mode 100644 index 0000000000..bd3b54fc05 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/apply.mcfunction @@ -0,0 +1,29 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/apply +# +# +# +# @within function asset:artifact/1391.blue_refraction_prism/trigger/3.main + +# 自身にTagを付与しておく + tag @s add Target + +# 演出 + playsound block.amethyst_block.chime player @a ~ ~ ~ 1.5 1 + playsound block.amethyst_block.chime player @a ~ ~ ~ 1.5 0.8 + +# 事前処理 + data modify storage asset:temp Temp.To set from storage asset:context Attack.To + data modify storage asset:temp Temp.Amounts set from storage asset:context Attack.Amounts + function asset:artifact/1391.blue_refraction_prism/trigger/recursive + scoreboard players reset $TempID Temporary + +# ダメージ +# 自身の補正は適用されない + execute store result storage api: Argument.Damage float 0.001 run data get storage asset:temp Temp.Damage 100 + data modify storage api: Argument.AttackType set from storage asset:context Attack.AttackType + data modify storage api: Argument.ElementType set value "Water" + data modify storage api: Argument.BypassModifier set value true + execute as @p[tag=this] run function api:damage/modifier + data modify storage api: Argument.BypassModifier set value true + function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/recursive.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/recursive.mcfunction new file mode 100644 index 0000000000..f690728483 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/recursive.mcfunction @@ -0,0 +1,20 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/recursive +# +# +# +# @within function +# asset:artifact/1391.blue_refraction_prism/trigger/apply +# asset:artifact/1391.blue_refraction_prism/trigger/recursive + +# 最後尾の要素を取得 + execute store result score $TempID Temporary run data get storage asset:temp Temp.To[-1] + +# 最後尾のIDが自身のUUIDと一致しているなら、ダメージをTempStorageに入れておく + execute if score @s MobUUID = $TempID Temporary run data modify storage asset:temp Temp.Damage set from storage asset:temp Temp.Amounts[-1] + +# 一致していないなら最後尾の要素を削除 + execute unless score @s MobUUID = $TempID Temporary run data remove storage asset:temp Temp.To[-1] + execute unless score @s MobUUID = $TempID Temporary run data remove storage asset:temp Temp.Amounts[-1] + +# 要素がある && 一致してないなら再帰 + execute if data storage asset:temp Temp.To[0] unless score @s MobUUID = $TempID Temporary run function asset:artifact/1391.blue_refraction_prism/trigger/recursive diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/vfx/.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/vfx/.mcfunction new file mode 100644 index 0000000000..1a4d6d825f --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/vfx/.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/vfx/ +# +# +# +# @within function asset:artifact/1391.blue_refraction_prism/trigger/3.main + +# Targetのうちランダムな1体の箇所で演出 + execute as @e[type=#lib:living_without_player,tag=Target,distance=..64,sort=random,limit=1] at @s anchored eyes rotated ~ 0 positioned ^ ^-0.5 ^ run function asset:artifact/1391.blue_refraction_prism/trigger/vfx/summon diff --git a/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/vfx/summon.mcfunction b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/vfx/summon.mcfunction new file mode 100644 index 0000000000..500ce7564e --- /dev/null +++ b/Asset/data/asset/functions/artifact/1391.blue_refraction_prism/trigger/vfx/summon.mcfunction @@ -0,0 +1,9 @@ +#> asset:artifact/1391.blue_refraction_prism/trigger/vfx/summon +# +# +# +# @within function asset:artifact/1391.blue_refraction_prism/trigger/vfx/ + + data modify storage api: Argument.ID set value 1156 + data modify storage api: Argument.FieldOverride.Font set value {Front:4,Back:5} + function api:object/summon diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/init/.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/init/.mcfunction new file mode 100644 index 0000000000..3b253633f5 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/init/.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/1156.refraction_prism/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1156/init + +# Rotationをランダムにする + execute store result storage asset:temp Args.Yaw float 0.01 run random value 0..35999 + execute store result storage asset:temp Args.Pitch float 0.01 run random value -6000..1500 + function asset:object/1156.refraction_prism/init/set_rotation with storage asset:temp Args + data remove storage asset:temp Args + +# Passengersも合わせる + execute at @s on passengers run tp @s ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/init/set_rotation.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/init/set_rotation.mcfunction new file mode 100644 index 0000000000..1c5551cfc2 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/init/set_rotation.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1156.refraction_prism/init/set_rotation +# +# +# +# @within function asset:object/1156.refraction_prism/init/ + + $tp @s ~ ~ ~ $(Yaw) $(Pitch) diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/register.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/register.mcfunction new file mode 100644 index 0000000000..6f7cbefb84 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/register.mcfunction @@ -0,0 +1,21 @@ +#> asset:object/1156.refraction_prism/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1156/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 1160 +# フィールド(オプション) + data modify storage asset:object Field.Font.Front set value 4 + data modify storage asset:object Field.Font.Back set value 5 diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/summon/.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/summon/.mcfunction new file mode 100644 index 0000000000..cefc39e439 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/summon/.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1156.refraction_prism/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1156/summon + + function asset:object/1156.refraction_prism/summon/m with storage asset:context this.Font diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/summon/m.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/summon/m.mcfunction new file mode 100644 index 0000000000..775101acd7 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/summon/m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1156.refraction_prism/summon/m +# +# +# +# @within function asset:object/1156.refraction_prism/summon/ + +$summon text_display ~ ~ ~ {Tags:["ObjectInit"],teleport_duration:1,alignment:"center",brightness:{sky:15,block:15},transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0.3826f,0.9238f],translation:[0f,0f,0f],scale:[0f,0f,0f]},text:'[{"text":"$(Front)","font":"object/1156"}]',background:16711680,Passengers:[{id:"text_display",Tags:[],teleport_duration:1,alignment:"center",brightness:{sky:15,block:15},transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[-0.3826f,0.9238f,0f,0f],translation:[0f,0f,0f],scale:[0f,0f,0f]},text:'[{"text":"$(Back)","font":"object/1156"}]',background:16711680}]} diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/.mcfunction new file mode 100644 index 0000000000..f0327cf4f5 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/.mcfunction @@ -0,0 +1,23 @@ +#> asset:object/1156.refraction_prism/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1156/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + execute unless score @s General.Object.Tick matches 3.. run return fail + +# tp + execute if score @s General.Object.Tick matches 3..13 run tp @s ^ ^ ^0.12 + execute if score @s General.Object.Tick matches 14..21 run tp @s ^ ^ ^0.09 + execute if score @s General.Object.Tick matches 22..27 run tp @s ^ ^ ^0.05 + execute if score @s General.Object.Tick matches 28.. run tp @s ^ ^ ^0.01 + +# transformation + execute if score @s General.Object.Tick matches 3 run function asset:object/1156.refraction_prism/tick/transformation/0/ + execute if score @s General.Object.Tick matches 15 run function asset:object/1156.refraction_prism/tick/transformation/1/ + execute if score @s General.Object.Tick matches 25 run function asset:object/1156.refraction_prism/tick/transformation/2/ + +# kill + execute if score @s General.Object.Tick matches 30.. run function asset:object/1156.refraction_prism/tick/kill diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/kill.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/kill.mcfunction new file mode 100644 index 0000000000..6fa4b9f9cc --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/kill.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1156.refraction_prism/tick/kill +# +# +# +# @within function asset:object/1156.refraction_prism/tick/ + +execute on passengers run kill @s +kill @s diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/0/.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/0/.mcfunction new file mode 100644 index 0000000000..16068c6017 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/0/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1156.refraction_prism/tick/transformation/0/ +# +# +# +# @within function asset:object/1156.refraction_prism/tick/ + + function asset:object/1156.refraction_prism/tick/transformation/0/apply + execute on passengers run function asset:object/1156.refraction_prism/tick/transformation/0/apply diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/0/apply.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/0/apply.mcfunction new file mode 100644 index 0000000000..6455cc8079 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/0/apply.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1156.refraction_prism/tick/transformation/0/apply +# +# +# +# @within function asset:object/1156.refraction_prism/tick/transformation/0/ + + data modify entity @s interpolation_duration set value 12 + data modify entity @s start_interpolation set value 0 + data modify entity @s transformation.left_rotation set value {angle:1.57f,axis:[0f,-0.7071f,0.7071f]} + data modify entity @s transformation.scale set value [0.6f,0.6f,0f] diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/1/.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/1/.mcfunction new file mode 100644 index 0000000000..dc96c23548 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/1/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1156.refraction_prism/tick/transformation/1/ +# +# +# +# @within function asset:object/1156.refraction_prism/tick/ + + function asset:object/1156.refraction_prism/tick/transformation/1/apply + execute on passengers run function asset:object/1156.refraction_prism/tick/transformation/1/apply diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/1/apply.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/1/apply.mcfunction new file mode 100644 index 0000000000..ca5bf849e9 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/1/apply.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1156.refraction_prism/tick/transformation/1/apply +# +# +# +# @within function asset:object/1156.refraction_prism/tick/transformation/1/ + + data modify entity @s interpolation_duration set value 10 + data modify entity @s start_interpolation set value 0 + data modify entity @s transformation.left_rotation set value {angle:3.14f,axis:[0f,-0.7071f,0.7071f]} + data modify entity @s transformation.scale set value [0.9f,0.9f,0f] diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/2/.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/2/.mcfunction new file mode 100644 index 0000000000..cdf17299db --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/2/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1156.refraction_prism/tick/transformation/2/ +# +# 消滅する +# +# @within function asset:object/1156.refraction_prism/tick/ + + function asset:object/1156.refraction_prism/tick/transformation/2/apply + execute on passengers run function asset:object/1156.refraction_prism/tick/transformation/2/apply diff --git a/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/2/apply.mcfunction b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/2/apply.mcfunction new file mode 100644 index 0000000000..291e6e4636 --- /dev/null +++ b/Asset/data/asset/functions/object/1156.refraction_prism/tick/transformation/2/apply.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1156.refraction_prism/tick/transformation/2/apply +# +# +# +# @within function asset:object/1156.refraction_prism/tick/transformation/2/ + + data modify entity @s interpolation_duration set value 5 + data modify entity @s start_interpolation set value 0 + data modify entity @s transformation.left_rotation set value {angle:-2.355f,axis:[0f,-0.7071f,0.7071f]} + data modify entity @s transformation.scale set value [0f,0f,0f] diff --git a/Asset/data/asset/functions/object/alias/1156/init.mcfunction b/Asset/data/asset/functions/object/alias/1156/init.mcfunction new file mode 100644 index 0000000000..2b690f2e74 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1156/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1156/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1156.refraction_prism/init/ diff --git a/Asset/data/asset/functions/object/alias/1156/register.mcfunction b/Asset/data/asset/functions/object/alias/1156/register.mcfunction new file mode 100644 index 0000000000..d3e5d8ac3e --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1156/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1156/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1156.refraction_prism/register diff --git a/Asset/data/asset/functions/object/alias/1156/summon.mcfunction b/Asset/data/asset/functions/object/alias/1156/summon.mcfunction new file mode 100644 index 0000000000..0b481c2269 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1156/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1156/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1156.refraction_prism/summon/ diff --git a/Asset/data/asset/functions/object/alias/1156/tick.mcfunction b/Asset/data/asset/functions/object/alias/1156/tick.mcfunction new file mode 100644 index 0000000000..137fbcb328 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1156/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1156/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1156.refraction_prism/tick/ diff --git a/Asset/data/asset/tags/functions/artifact/attack.json b/Asset/data/asset/tags/functions/artifact/attack.json index 2758c71743..51196a7a72 100644 --- a/Asset/data/asset/tags/functions/artifact/attack.json +++ b/Asset/data/asset/tags/functions/artifact/attack.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1391.blue_refraction_prism/trigger/1.trigger", "asset:artifact/0897.lightning_broach/trigger/1.trigger", "asset:artifact/0554.catastrophe/attack/1.trigger", "asset:artifact/1110.lantern_of_firefly/trigger/1.trigger", @@ -8,4 +9,4 @@ "asset:artifact/0664.soul_fire_armor/attack/1.trigger", "asset:artifact/0724.oblivious_snow/attack/1.trigger" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/give.json b/Asset/data/asset/tags/functions/artifact/give.json index 6d62d7b380..0e931e8548 100644 --- a/Asset/data/asset/tags/functions/artifact/give.json +++ b/Asset/data/asset/tags/functions/artifact/give.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1391.blue_refraction_prism/give/1.trigger", "asset:artifact/1144.cradle_of_azure_moon/give/1.trigger", "asset:artifact/1317.oblivious_feather/give/1.trigger", "asset:artifact/1324.balance_star/give/1.trigger", @@ -520,4 +521,4 @@ "asset:artifact/0735.collision_plate/give/1.trigger", "asset:artifact/0745.blade_of_whirlwind/give/1.trigger" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/register.json b/Asset/data/asset/tags/functions/artifact/register.json index cbb226dca8..36b64cbfb4 100644 --- a/Asset/data/asset/tags/functions/artifact/register.json +++ b/Asset/data/asset/tags/functions/artifact/register.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/1391.blue_refraction_prism/register", "asset:artifact/1144.cradle_of_azure_moon/register", "asset:artifact/1317.oblivious_feather/register", "asset:artifact/1324.balance_star/register", @@ -298,4 +299,4 @@ "asset:artifact/1027.fire_of_rebirth/register", "asset:artifact/1111.rod_o_redeem/register" ] -} +} \ No newline at end of file