diff --git a/.vscode/settings.json b/.vscode/settings.json index b9cee0a5ed..f45dc9ae7f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2107,7 +2107,7 @@ "# 名前 (TextComponentString)", " data modify storage asset:effect Name set value ", "# 説明文 (TextComponentString[])", - " data modify storage asset:effect Description set value ", + " data modify storage asset:effect Description set value []", "# 効果時間 (int) (default = API || error)", " data modify storage asset:effect Duration set value ", "# スタック (int) (default = API || 1)", diff --git a/Asset/data/asset/functions/artifact/0002.blessing/give/get_random_name.mcfunction b/Asset/data/asset/functions/artifact/0002.blessing/give/get_random_name.mcfunction index 0926ee95c3..c54443e680 100644 --- a/Asset/data/asset/functions/artifact/0002.blessing/give/get_random_name.mcfunction +++ b/Asset/data/asset/functions/artifact/0002.blessing/give/get_random_name.mcfunction @@ -16,7 +16,7 @@ # 候補リストの長さを取得 execute store result score $CandidatesLength Temporary if data storage lib: Array[] # ターゲットの名前をランダムに決める - execute store result score $Argument.Index Lib run function lib:random/ + execute store result score $Argument.Index Lib run random value 0..65535 scoreboard players operation $Argument.Index Lib %= $CandidatesLength Temporary # 移動 function lib:array/move diff --git a/Asset/data/asset/functions/artifact/0003.humanity/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0003.humanity/trigger/2.check_condition.mcfunction index 37a87eeea3..28c265449b 100644 --- a/Asset/data/asset/functions/artifact/0003.humanity/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/0003.humanity/trigger/2.check_condition.mcfunction @@ -8,5 +8,9 @@ function asset:artifact/common/check_condition/auto # 他にアイテム等確認する場合はここに書く +# 猫の場合死ぬ +# 現状だとCTがないので特に条件を考えずに実装している + execute if predicate player_manager:is_believe/nyaptov run function asset:artifact/0003.humanity/trigger/nyaptov + # CanUsedタグをチェックして3.main.mcfunctionを実行する - execute if entity @s[tag=CanUsed] run function asset:artifact/0003.humanity/trigger/3.main \ No newline at end of file + execute if entity @s[tag=CanUsed] run function asset:artifact/0003.humanity/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/0003.humanity/trigger/nyaptov.mcfunction b/Asset/data/asset/functions/artifact/0003.humanity/trigger/nyaptov.mcfunction new file mode 100644 index 0000000000..1f0b7b98b5 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0003.humanity/trigger/nyaptov.mcfunction @@ -0,0 +1,18 @@ +#> asset:artifact/0003.humanity/trigger/nyaptov +# +# +# +# @within function asset:artifact/0003.humanity/trigger/2.check_condition + +# 演出 + title @a title {"text":"YOU DIED","color":"red"} + playsound block.beacon.power_select player @s ~ ~ ~ 1 0 1 + +# 致死量のダメージを受ける + data modify storage api: Argument.Damage set value 9999 + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.FixedDamage set value true + data modify storage api: Argument.DeathMessage set value ['[{"translate": "%1$sは人間性を過剰に摂取した","with":[{"selector":"@s"}]}]'] + function api:damage/modifier + function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/0022.amen_ra_rod/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/give/2.give.mcfunction index 2ebe63cefb..1ed792f360 100644 --- a/Asset/data/asset/functions/artifact/0022.amen_ra_rod/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/give/2.give.mcfunction @@ -15,13 +15,13 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"アメン・ラーの杖","color":"yellow"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"異邦の神が扱う杖"}','{"text":"周囲のMobを発光させる。"}'] + data modify storage asset:artifact Lore set value ['{"text":"異邦の神が扱う杖"}','{"text":"周囲のMobの位置に光る玉を顕現させる"}','{"text":"しゃがんで深く祈ることで"}','{"text":"効果時間は短くなるが、光玉が対象を追跡するようになる"}'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) # data modify storage asset:artifact ConsumeItem.Item set value # data modify storage asset:artifact ConsumeItem.Count set value # data modify storage asset:artifact ConsumeItem.Extra set value # 使用回数 (int) (オプション) - data modify storage asset:artifact RemainingCount set value 100 + # data modify storage asset:artifact RemainingCount set value # 神器を発動できるスロット (string) Wikiを参照 data modify storage asset:artifact Slot set value "auto" # 神器のトリガー (string) Wikiを参照 @@ -45,7 +45,7 @@ # MP必要量 (int) (オプション) # data modify storage asset:artifact MPRequire set value # 神器のクールダウン (int) (オプション) - # data modify storage asset:artifact LocalCooldown set value + data modify storage asset:artifact LocalCooldown set value 200 # 種別クールダウン ({Type: string, Duration: int}) (オプション) # data modify storage asset:artifact TypeCooldown.Type set value # data modify storage asset:artifact TypeCooldown.Duration set value diff --git a/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/3.main.mcfunction index 9c54a37048..21050f23bf 100644 --- a/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/3.main.mcfunction @@ -9,11 +9,6 @@ # ここから先は神器側の効果の処理を書く -# 発光を付与 - effect give @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..10] minecraft:glowing 3 0 true - -# パーティクル - execute at @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..10] run particle end_rod ~ ~ ~ 1 1 1 0.1 100 force @a[distance=..30] - -# SE - playsound minecraft:entity.arrow.hit_player player @s ~ ~ ~ 20 1 +# 光玉を召喚 + execute if predicate lib:is_sneaking as @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..15] at @s anchored eyes positioned ^ ^ ^ run function asset:artifact/0022.amen_ra_rod/trigger/summon_1 + execute unless predicate lib:is_sneaking at @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..15] anchored eyes positioned ^ ^ ^ run function asset:artifact/0022.amen_ra_rod/trigger/summon_2 diff --git a/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/summon_1.mcfunction b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/summon_1.mcfunction new file mode 100644 index 0000000000..7f91a320f0 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/summon_1.mcfunction @@ -0,0 +1,11 @@ +#> asset:artifact/0022.amen_ra_rod/trigger/summon_1 +# +# 神器のメイン処理部 +# +# @within function asset:artifact/0022.amen_ra_rod/trigger/3.main + +data modify storage api: Argument.ID set value 1103 +data modify storage api: Argument.FieldOverride.Track set value true +execute store result storage api: Argument.FieldOverride.TargetID int 1 run scoreboard players get @s MobUUID +data modify storage api: Argument.FieldOverride.Duration set value 100 +function api:object/summon diff --git a/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/summon_2.mcfunction b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/summon_2.mcfunction new file mode 100644 index 0000000000..d03131acc5 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0022.amen_ra_rod/trigger/summon_2.mcfunction @@ -0,0 +1,10 @@ +#> asset:artifact/0022.amen_ra_rod/trigger/summon_2 +# +# 神器のメイン処理部 +# +# @within function asset:artifact/0022.amen_ra_rod/trigger/3.main + +data modify storage api: Argument.ID set value 1103 +# data modify storage api: Argument.FieldOverride.Track set value false +data modify storage api: Argument.FieldOverride.Duration set value 200 +function api:object/summon diff --git a/Asset/data/asset/functions/artifact/0088.fertility_hoe/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0088.fertility_hoe/give/2.give.mcfunction index 640444378f..44636d6177 100644 --- a/Asset/data/asset/functions/artifact/0088.fertility_hoe/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0088.fertility_hoe/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '[{"text":"豊穣の鍬","color":"green"}]' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['[{"text":"周囲5mの範囲の作物を最大まで成長させる"}]'] + data modify storage asset:artifact Lore set value ['[{"text":"使用者を中心とした9x9の範囲の作物を最大まで成長させる"}]'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) data modify storage asset:artifact ConsumeItem.Item set value '{"translate":"item.minecraft.bone_meal"}' data modify storage asset:artifact ConsumeItem.Count set value 8 diff --git a/Asset/data/asset/functions/artifact/0107.dispenser_canon/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0107.dispenser_canon/give/2.give.mcfunction index bdfd284c2b..d1b51e3e91 100644 --- a/Asset/data/asset/functions/artifact/0107.dispenser_canon/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0107.dispenser_canon/give/2.give.mcfunction @@ -29,17 +29,17 @@ # 神器の発動条件 (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] + data modify storage asset:artifact AttackInfo.Damage set value [5-50] # 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) - # data modify storage asset:artifact AttackInfo.AttackType set value [Physical,Magic] + data modify storage asset:artifact AttackInfo.AttackType set value [Physical] # 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) - # data modify storage asset:artifact AttackInfo.ElementType set value [Fire,Water,Thunder,None] + data modify storage asset:artifact AttackInfo.ElementType set value [Fire] # 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) # data modify storage asset:artifact AttackInfo.BypassResist set value # 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) - # data modify storage asset:artifact AttackInfo.IsRangeAttack set value + data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every" # 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) - # data modify storage asset:artifact AttackInfo.AttackRange set value + data modify storage asset:artifact AttackInfo.AttackRange set value 3 # MP消費量 (int) data modify storage asset:artifact MPCost set value 70 # MP必要量 (int) (オプション) diff --git a/Asset/data/asset/functions/artifact/0107.dispenser_canon/trigger/3.1.sticky.mcfunction b/Asset/data/asset/functions/artifact/0107.dispenser_canon/trigger/3.1.sticky.mcfunction deleted file mode 100644 index 9f3afc36c4..0000000000 --- a/Asset/data/asset/functions/artifact/0107.dispenser_canon/trigger/3.1.sticky.mcfunction +++ /dev/null @@ -1,13 +0,0 @@ -#> asset:artifact/0107.dispenser_canon/trigger/3.1.sticky -# -# 神器のメイン処理部 -# -# @within -# function asset:artifact/0107.dispenser_canon/trigger/3.main -# function asset:artifact/0107.dispenser_canon/trigger/3.1.sticky - -# 粘着する - execute as @e[type=endermite,tag=TNTStick] at @s run tp @e[type=#lib:living,type=!player,tag=!Uninterferable,tag=!TNTStick,distance=..2,sort=nearest,limit=1] - -# ループさせる - execute as @e[type=endermite,tag=TNTStick,limit=1] run schedule function asset:artifact/0107.dispenser_canon/trigger/3.1.sticky 1t \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0107.dispenser_canon/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0107.dispenser_canon/trigger/3.main.mcfunction index 2db959b1e1..b81c35f6cd 100644 --- a/Asset/data/asset/functions/artifact/0107.dispenser_canon/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0107.dispenser_canon/trigger/3.main.mcfunction @@ -3,9 +3,6 @@ # 神器のメイン処理部 # # @within function asset:artifact/0107.dispenser_canon/trigger/2.check_condition -#> private -# @private - #declare tag TNTStick # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/auto @@ -16,11 +13,7 @@ playsound minecraft:entity.tnt.primed player @a # TNT召喚 - summon endermite ~ ~1.5 ~ {Silent:1b,Team:"NoCollision",FallDistance:99f,DeathTime:15s,Tags:["TNTStick"],Passengers:[{id:"minecraft:tnt",fuse:40s}],active_effects:[{id:"invisibility",amplifier:1b,duration:2147483647}]} - -# TNTを飛ばす - data modify storage lib: Argument.VectorMagnitude set value 2 - execute as @e[type=endermite,tag=TNTStick,distance=..2] facing ^ ^ ^10 run function lib:motion/ - data remove storage lib: Argument -# スケジュール - schedule function asset:artifact/0107.dispenser_canon/trigger/3.1.sticky 1t \ No newline at end of file + data modify storage api: Argument.ID set value 1101 + data modify storage api: Argument.FieldOverride.Damage set value 50 + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + execute anchored eyes positioned ^ ^-0.2 ^ run function api:object/summon diff --git a/Asset/data/asset/functions/artifact/0152.call_cat/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0152.call_cat/trigger/3.main.mcfunction index a51cc2190e..a67ce3f0e8 100644 --- a/Asset/data/asset/functions/artifact/0152.call_cat/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0152.call_cat/trigger/3.main.mcfunction @@ -20,8 +20,7 @@ playsound minecraft:entity.cat.ambient neutral @a ~ ~ ~ 1 1.25 # ネコの種類をランダムに - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $11 Const + execute store result score $Random Temporary run random value 0..10 execute if score $Random Temporary matches 0 run data modify entity @e[type=cat,tag=AbstractCat,distance=..1,limit=1] variant set value "all_black" execute if score $Random Temporary matches 1 run data modify entity @e[type=cat,tag=AbstractCat,distance=..1,limit=1] variant set value "black" execute if score $Random Temporary matches 2 run data modify entity @e[type=cat,tag=AbstractCat,distance=..1,limit=1] variant set value "british_shorthair" @@ -46,4 +45,4 @@ # リセット scoreboard players reset $Random Temporary - tag @e[type=cat,tag=AbstractCat,distance=..1,limit=1] remove AbstractCat \ No newline at end of file + tag @e[type=cat,tag=AbstractCat,distance=..1,limit=1] remove AbstractCat diff --git a/Asset/data/asset/functions/artifact/0159.extracted_mp_bottle/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0159.extracted_mp_bottle/trigger/3.main.mcfunction index 2afb0a007b..ccbc58e974 100644 --- a/Asset/data/asset/functions/artifact/0159.extracted_mp_bottle/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0159.extracted_mp_bottle/trigger/3.main.mcfunction @@ -15,8 +15,7 @@ # 演出 execute anchored eyes run particle dust 1 0.31 0.91 0.3 ^ ^ ^ 0.4 0.4 0.4 0 20 normal @s # MP回復量を計算 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $6 Const + execute store result score $Random Temporary run random value 0..5 scoreboard players set $Fluctuation Temporary 30 execute store result storage api: Argument.Fluctuation int 1 run scoreboard players operation $Fluctuation Temporary -= $Random Temporary diff --git a/Asset/data/asset/functions/artifact/0201.cowardly_soul/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0201.cowardly_soul/give/2.give.mcfunction index 5dd486745b..cbbb619174 100644 --- a/Asset/data/asset/functions/artifact/0201.cowardly_soul/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0201.cowardly_soul/give/2.give.mcfunction @@ -11,7 +11,7 @@ # 神器のID (int) スプレッドシートの値を入れる data modify storage asset:artifact ID set value 201 # 神器のベースアイテム - data modify storage asset:artifact Item set value "minecraft:heart_of_the_sea" + data modify storage asset:artifact Item set value "minecraft:stick" # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"臆病者の魂","color":"dark_aqua"}' # 神器の説明文 (TextComponentString[]) diff --git a/Asset/data/asset/functions/artifact/0218.iron_storm/trigger/3.3.blast.mcfunction b/Asset/data/asset/functions/artifact/0218.iron_storm/trigger/3.3.blast.mcfunction index a1c852a021..1bf6e6d80f 100644 --- a/Asset/data/asset/functions/artifact/0218.iron_storm/trigger/3.3.blast.mcfunction +++ b/Asset/data/asset/functions/artifact/0218.iron_storm/trigger/3.3.blast.mcfunction @@ -7,7 +7,6 @@ #> private # # @private - #declare score_holder $70 #declare score_holder $DamageCoefficient #declare score_holder $DA.OwnerID #declare tag DA.Owner @@ -17,8 +16,7 @@ execute as @a if score @s UserID = $DA.OwnerID Temporary run tag @s add DA.Owner # ダメージ係数計算(最大ダメージの30%~100%),計算結果: 係数[%] - execute store result score $DamageCoefficient Temporary run function lib:random/ - scoreboard players operation $DamageCoefficient Temporary %= $70 Const + execute store result score $DamageCoefficient Temporary run random value 0..69 scoreboard players add $DamageCoefficient Temporary 30 # 敵へのダメージ(最大500) diff --git a/Asset/data/asset/functions/artifact/0258.cat_dream_pillow/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0258.cat_dream_pillow/trigger/3.main.mcfunction index 81a0054c06..f5c8f327c6 100644 --- a/Asset/data/asset/functions/artifact/0258.cat_dream_pillow/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0258.cat_dream_pillow/trigger/3.main.mcfunction @@ -17,8 +17,7 @@ particle dust 1000000000 -0.3 -0.2 1 ~ ~1.2 ~ 0.8 0.4 0.8 0 50 # 乱数生成 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # playsound execute if score $Random Temporary matches 0 run playsound entity.cat.ambient player @a ~ ~ ~ 1 1 0 diff --git a/Asset/data/asset/functions/artifact/0294.turret/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/0294.turret/give/1.trigger.mcfunction new file mode 100644 index 0000000000..a5fc4229f4 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0294.turret/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0294.turret/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:294} run function asset:artifact/0294.turret/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0294.turret/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0294.turret/give/2.give.mcfunction new file mode 100644 index 0000000000..a70b60ac65 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0294.turret/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/0294.turret/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/0294.turret/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 294 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"タレット","color":"gray"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"配置すると自動的に周囲の敵を感知し攻撃する"}','{"text":"Hello?","color":"dark_gray"}'] +# 消費アイテム ({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 "auto" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onClick" +# 神器の発動条件 (TextComponentString) (オプション) + # data modify storage asset:artifact Condition set value +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.Damage set value ["5.5"] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Physical] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [None] +# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.BypassResist set value +# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.IsRangeAttack set value never +# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackRange set value 5 +# MP消費量 (int) + data modify storage asset:artifact MPCost set value 100 +# 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 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "summon" + data modify storage asset:artifact TypeCooldown.Duration set value 150 +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (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/0294.turret/register.mcfunction b/Asset/data/asset/functions/artifact/0294.turret/register.mcfunction new file mode 100644 index 0000000000..547f746207 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0294.turret/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0294.turret/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[2] append value [294] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0294.turret/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/0294.turret/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..313b0f7da3 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0294.turret/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/0294.turret/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのautoに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{auto:294} run function asset:artifact/0294.turret/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0294.turret/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0294.turret/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..75ecb10e1a --- /dev/null +++ b/Asset/data/asset/functions/artifact/0294.turret/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/0294.turret/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/0294.turret/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/auto +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/0294.turret/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0294.turret/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0294.turret/trigger/3.main.mcfunction new file mode 100644 index 0000000000..d1f2a187a4 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0294.turret/trigger/3.main.mcfunction @@ -0,0 +1,16 @@ +#> asset:artifact/0294.turret/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/0294.turret/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/auto + +# ここから先は神器側の効果の処理を書く + +# 召喚 + data modify storage api: Argument.ID set value 1102 + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + data modify storage api: Argument.FieldOverride.Damage set value 5.5 + execute positioned ~ ~0.5 ~ rotated ~ 0 positioned ^ ^ ^1 run function api:object/summon diff --git a/Asset/data/asset/functions/artifact/0295.call_elemental_familiar/trigger/summon_fairy.mcfunction b/Asset/data/asset/functions/artifact/0295.call_elemental_familiar/trigger/summon_fairy.mcfunction index 73dfccdb31..0f2ff92b38 100644 --- a/Asset/data/asset/functions/artifact/0295.call_elemental_familiar/trigger/summon_fairy.mcfunction +++ b/Asset/data/asset/functions/artifact/0295.call_elemental_familiar/trigger/summon_fairy.mcfunction @@ -9,8 +9,7 @@ #declare score_holder $Random # 乱数 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # ダメージ設定 data modify storage api: Argument.FieldOverride.Damage set value 55.0f diff --git a/Asset/data/asset/functions/artifact/0312.fire_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0312.fire_sword/trigger/3.main.mcfunction index af3b116cb1..33b9f0e578 100644 --- a/Asset/data/asset/functions/artifact/0312.fire_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0312.fire_sword/trigger/3.main.mcfunction @@ -3,9 +3,6 @@ # 神器のメイン処理部 # # @within function asset:artifact/0312.fire_sword/trigger/2.check_condition -#> private -# @private - #declare score_holder $RandomDamage # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -20,24 +17,9 @@ playsound minecraft:block.fire.ambient player @a ~ ~ ~ 1 1.5 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~10の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $7 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 6 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Fire" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 6..12 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/0313.raging_fire_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0313.raging_fire_sword/trigger/3.main.mcfunction index e885f91cd8..5e43336a9b 100644 --- a/Asset/data/asset/functions/artifact/0313.raging_fire_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0313.raging_fire_sword/trigger/3.main.mcfunction @@ -4,10 +4,6 @@ # # @within function asset:artifact/0313.raging_fire_sword/trigger/2.check_condition -#> private -# @private - #declare score_holder $RandomDamage - # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -19,24 +15,9 @@ playsound minecraft:block.fire.ambient player @a ~ ~ ~ 1 1.3 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~30の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $16 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 12 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Fire" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 12..27 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/0314.blasting_fire_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0314.blasting_fire_sword/trigger/3.main.mcfunction index 6235a5a526..15d98bfd96 100644 --- a/Asset/data/asset/functions/artifact/0314.blasting_fire_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0314.blasting_fire_sword/trigger/3.main.mcfunction @@ -4,10 +4,6 @@ # # @within function asset:artifact/0314.blasting_fire_sword/trigger/2.check_condition -#> Private -# @private - #declare score_holder $RandomDamage - # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -20,25 +16,9 @@ playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.5 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~40の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $41 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 45 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Fire" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 45..80 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary - scoreboard players reset $Rotate Temporary diff --git a/Asset/data/asset/functions/artifact/0314.blasting_fire_sword/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/0314.blasting_fire_sword/trigger/_index.d.mcfunction deleted file mode 100644 index 6aeabcd546..0000000000 --- a/Asset/data/asset/functions/artifact/0314.blasting_fire_sword/trigger/_index.d.mcfunction +++ /dev/null @@ -1,7 +0,0 @@ -#> asset:artifact/0314.blasting_fire_sword/trigger/_index.d -# @private - -#> tag -# @within function -# asset:artifact/0314.blasting_fire_sword/trigger/** - #declare score_holder $Rotate \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0315.water_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0315.water_sword/trigger/3.main.mcfunction index 458296081e..3d59a56f09 100644 --- a/Asset/data/asset/functions/artifact/0315.water_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0315.water_sword/trigger/3.main.mcfunction @@ -3,9 +3,6 @@ # 神器のメイン処理部 # # @within function asset:artifact/0315.water_sword/trigger/2.check_condition -#> private -# @private - #declare score_holder $RandomDamage # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -18,24 +15,9 @@ playsound minecraft:entity.dolphin.splash player @a ~ ~ ~ 1 1 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~10の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $7 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 6 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Water" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 6..12 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Water" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/0316.rapids_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0316.rapids_sword/trigger/3.main.mcfunction index 9539cf72d6..02d9eefce9 100644 --- a/Asset/data/asset/functions/artifact/0316.rapids_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0316.rapids_sword/trigger/3.main.mcfunction @@ -3,9 +3,6 @@ # 神器のメイン処理部 # # @within function asset:artifact/0316.rapids_sword/trigger/2.check_condition -#> private -# @private - #declare score_holder $RandomDamage # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -19,24 +16,9 @@ playsound minecraft:entity.dolphin.splash player @a ~ ~ ~ 1 1 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~30の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $16 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 12 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Water" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 12..27 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Water" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/0317.sea_storm_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0317.sea_storm_sword/trigger/3.main.mcfunction index 41a52b3b0f..5b3b11a8ab 100644 --- a/Asset/data/asset/functions/artifact/0317.sea_storm_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0317.sea_storm_sword/trigger/3.main.mcfunction @@ -4,10 +4,6 @@ # # @within function asset:artifact/0317.sea_storm_sword/trigger/2.check_condition -#> Private -# @private - #declare score_holder $RandomDamage - # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -18,25 +14,9 @@ playsound item.trident.throw player @a ~ ~ ~ 0.8 0.7 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~40の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $41 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 45 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Water" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 45..80 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Water" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary - scoreboard players reset $Rotate Temporary diff --git a/Asset/data/asset/functions/artifact/0317.sea_storm_sword/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/0317.sea_storm_sword/trigger/_index.d.mcfunction deleted file mode 100644 index de05e00780..0000000000 --- a/Asset/data/asset/functions/artifact/0317.sea_storm_sword/trigger/_index.d.mcfunction +++ /dev/null @@ -1,7 +0,0 @@ -#> asset:artifact/0317.sea_storm_sword/trigger/_index.d -# @private - -#> tag -# @within function -# asset:artifact/0317.sea_storm_sword/trigger/** - #declare score_holder $Rotate \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0318.thunder_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0318.thunder_sword/trigger/3.main.mcfunction index c4a340c7dc..4b0415e9b2 100644 --- a/Asset/data/asset/functions/artifact/0318.thunder_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0318.thunder_sword/trigger/3.main.mcfunction @@ -3,9 +3,6 @@ # 神器のメイン処理部 # # @within function asset:artifact/0318.thunder_sword/trigger/2.check_condition -#> private -# @private - #declare score_holder $RandomDamage # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -17,24 +14,9 @@ playsound minecraft:entity.lightning_bolt.thunder player @a ~ ~ ~ 1 2 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~5の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $7 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 6 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Thunder" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 6..12 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Thunder" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/0319.thunderbolt_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0319.thunderbolt_sword/trigger/3.main.mcfunction index ec10d3f41f..c7730d12d9 100644 --- a/Asset/data/asset/functions/artifact/0319.thunderbolt_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0319.thunderbolt_sword/trigger/3.main.mcfunction @@ -3,9 +3,6 @@ # 神器のメイン処理部 # # @within function asset:artifact/0319.thunderbolt_sword/trigger/2.check_condition -#> private -# @private - #declare score_holder $RandomDamage # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/mainhand @@ -20,24 +17,9 @@ playsound minecraft:entity.zombie.break_wooden_door player @a ~ ~ ~ 1 1.5 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~30の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $16 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 12 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Thunder" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 12..27 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Thunder" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/3.main.mcfunction index baf456e11c..e0fb9b0637 100644 --- a/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/3.main.mcfunction @@ -14,24 +14,9 @@ playsound item.trident.throw player @a ~ ~ ~ 1 1 # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~40の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $41 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 30 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Thunder" -# 補正functionを実行 + execute store result storage api: Argument.Damage float 1 run random value 45..80 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Thunder" function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ - -# リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/_index.d.mcfunction index 24d992a4ab..730de472cd 100644 --- a/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/_index.d.mcfunction +++ b/Asset/data/asset/functions/artifact/0320.divine_thunder_sword/trigger/_index.d.mcfunction @@ -5,4 +5,3 @@ # @within function # asset:artifact/0320.divine_thunder_sword/trigger/** #declare score_holder $Line - #declare score_holder $RandomDamage \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0349.passion_pickaxe/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0349.passion_pickaxe/trigger/3.main.mcfunction index 796cb3d677..1f19379432 100644 --- a/Asset/data/asset/functions/artifact/0349.passion_pickaxe/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0349.passion_pickaxe/trigger/3.main.mcfunction @@ -10,23 +10,17 @@ # ここから先は神器側の効果の処理を書く # ダメージ - # 与えるダメージ = 550 - data modify storage api: Argument.Damage set value 50f - # 物理属性 - data modify storage api: Argument.AttackType set value "Physical" - # 炎属性 - data modify storage api: Argument.ElementType set value "Fire" - # 耐性エフェクトを無視するか否か - data modify storage api: Argument.FixedDamage set value false -# 補正functionを実行 + data modify storage api: Argument.Damage set value 50f + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" function api:damage/modifier -# 攻撃した対象に実行 execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/ -# リセット function api:damage/reset -# 自身にエフェクト付与 - effect give @s minecraft:haste 60 3 true +# 自身にマインソウル(ID:291)を付与 + data modify storage api: Argument.ID set value 291 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset # 演出 particle minecraft:lava ~ ~ ~ 0.5 1 0.5 1 100 force @a[distance=..20] diff --git a/Asset/data/asset/functions/artifact/0364.red_knights_sword/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0364.red_knights_sword/trigger/3.main.mcfunction index 8040442184..e1bb215f90 100644 --- a/Asset/data/asset/functions/artifact/0364.red_knights_sword/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0364.red_knights_sword/trigger/3.main.mcfunction @@ -22,10 +22,8 @@ playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 -# ほしい範囲に剰余算 - execute store result score $Random Temporary run function lib:random/ -# 疑似乱数取得 - scoreboard players operation $Random Temporary %= $3 Const +# 乱数取得 + execute store result score $Random Temporary run random value 0..2 # メッセージ出力 execute if score $Random Temporary matches 0 anchored eyes positioned ^ ^ ^1 run function asset:artifact/0364.red_knights_sword/trigger/particle/particle_1 execute if score $Random Temporary matches 1 anchored eyes positioned ^ ^ ^1 run function asset:artifact/0364.red_knights_sword/trigger/particle/particle_2 diff --git a/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/3.main.mcfunction index 8e3d1ab20f..489e7a457a 100644 --- a/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/3.main.mcfunction @@ -3,90 +3,34 @@ # 神器のメイン処理部 # # @within function asset:artifact/0383.i_scream_ice_cream/trigger/2.check_condition -#> Private -# @private - #declare score_holder $Random # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う auto/feet/legs/chest/head/mainhand/offhandを記載してね function asset:artifact/common/use/auto # ここから先は神器側の効果の処理を書く -# ランダムで変なこと言うやつ - # 引数 - data modify storage lib: Args.key set value "383.Message" - data modify storage lib: Args.max set value 40 - data modify storage lib: Args.scarcity_history_size set value 20 - # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/with_biased/manual.m with storage lib: Args - # メッセージ出力 - execute if score $Random Temporary matches 0 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" アイスで冷やす?ああ、いいっすね!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 1 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" アイススケートする?ああ、いいっすけど!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 2 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" アイスランド人が愛すランドセル!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 3 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" イカリングでカーリング!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 4 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷河がないんじゃ、ひょうが無い!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 5 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" サムは寒いと感じた!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 6 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷点下なのに、ヒョー、雨天か!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 7 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 防寒姿で傍観!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 8 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 効率良く氷強くする!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 9 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷凍庫に入れと〜こ","color":"aqua","bold":true}] - execute if score $Random Temporary matches 10 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" コーラスフルーツをよう凍らす!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 11 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 寒波に完敗!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 12 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 雪が降ってて寒いでスノー!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 13 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" ナイスなアイス、なぁ、いいっすよね!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 14 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 寒気は回る、感極まる!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 15 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 愛する人とアイス食う!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 16 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" もう冬かい?なんて不愉快!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 17 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷めているサメ!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 18 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 紅茶が凍っちゃった!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 19 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" サム言い寄る、寒い夜!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 20 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷集めて、あ~冷てぇ!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 21 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 場が凍り付く?氷作ってるからね!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 22 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冬の鯛は冷たい!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 23 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" ブリのブリザード!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 24 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 南極で何曲か聞く!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 25 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷の小売店!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 26 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷たい理由を問い詰めたい!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 27 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 北風の時期に来た課税!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 28 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷河期のガキ!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 29 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 雪をもっておゆき!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 30 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冬眠する島民!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 31 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" コートを着とこーっと!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 32 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷てぇアイスを詰めてくれ!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 33 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷の降臨!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 34 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 雪の日にゆきたくない!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 35 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" スノー降る!Snow full!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 36 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷点下には雹添加!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 37 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 深雪見ゆ君!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 38 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" かまくらのふかふかまくら!","color":"aqua","bold":true}] - execute if score $Random Temporary matches 39 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷菓を評価!","color":"aqua","bold":true}] - - # リセット - scoreboard players reset $Random Temporary - # 演出 playsound minecraft:ui.toast.challenge_complete player @a ~ ~ ~ 1 1.1 playsound minecraft:block.glass.break player @a ~ ~ ~ 1 1 particle minecraft:block blue_ice ~ ~3 ~ 4 4 4 10 1000 particle minecraft:block ice ~ ~3 ~ 4 4 4 10 1000 - schedule function asset:artifact/0383.i_scream_ice_cream/trigger/3.1.message 2s append execute if predicate api:area/is_breakable run fill ~-4 ~-4 ~-4 ~4 ~4 ~4 minecraft:frosted_ice replace minecraft:water[level=0] +# クソ寒いダジャレ + function asset:artifact/0383.i_scream_ice_cream/trigger/message/puns + +# 2秒後に「場が凍りついた...」 + schedule function asset:artifact/0383.i_scream_ice_cream/trigger/message/place_froze 2s append + # 移動速度低下付与 # 天使に対しては効果が落ちる effect give @e[type=#lib:living,type=!player,tag=!Enemy.Boss,tag=!Uninterferable,distance=..5] slowness 30 4 effect give @e[type=#lib:living,type=!player,tag=Enemy.Boss,tag=!Uninterferable,distance=..5] slowness 4 1 # ダメージ - # 与えるダメージ = 113 - data modify storage api: Argument.Damage set value 42f - # 第一属性 - data modify storage api: Argument.AttackType set value "Magic" - # 第二属性 - data modify storage api: Argument.ElementType set value "Water" -# 補正functionを実行 + data modify storage api: Argument.Damage set value 42f + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Water" function api:damage/modifier -# 範囲5m以内のエンティティを対象に execute as @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..5] run function api:damage/ -# リセット function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/3.1.message.mcfunction b/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/message/place_froze.mcfunction similarity index 73% rename from Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/3.1.message.mcfunction rename to Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/message/place_froze.mcfunction index 32b7c9c002..51279c5f58 100644 --- a/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/3.1.message.mcfunction +++ b/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/message/place_froze.mcfunction @@ -1,4 +1,4 @@ -#> asset:artifact/0383.i_scream_ice_cream/trigger/3.1.message +#> asset:artifact/0383.i_scream_ice_cream/trigger/message/place_froze # # 数秒遅れての処理 # @@ -6,4 +6,4 @@ # メッセージ tellraw @a {"text":"場が凍りついた...","color":"dark_purple"} - execute as @a at @s run playsound minecraft:entity.wither.spawn player @s ~ ~ ~ 0.3 0 \ No newline at end of file + execute as @a at @s run playsound minecraft:entity.wither.spawn player @s ~ ~ ~ 0.3 0 diff --git a/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/message/puns.mcfunction b/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/message/puns.mcfunction new file mode 100644 index 0000000000..2f3286dd84 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0383.i_scream_ice_cream/trigger/message/puns.mcfunction @@ -0,0 +1,60 @@ +#> asset:artifact/0383.i_scream_ice_cream/trigger/message/puns +# +# くそ寒いダジャレ +# +# @within function asset:artifact/0383.i_scream_ice_cream/trigger/3.main + +#> Private +# @private + #declare score_holder $Random + +# バイアス付き乱数 + data modify storage lib: Args.key set value "383.Message" + data modify storage lib: Args.max set value 40 + data modify storage lib: Args.scarcity_history_size set value 20 + execute store result score $Random Temporary run function lib:random/with_biased/manual.m with storage lib: Args + +# クソ寒いダジャレをランダムに言う + execute if score $Random Temporary matches 0 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" アイスで冷やす?ああ、いいっすね!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 1 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" アイススケートする?ああ、いいっすけど!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 2 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" アイスランド人が愛すランドセル!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 3 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" イカリングでカーリング!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 4 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷河がないんじゃ、ひょうが無い!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 5 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" サムは寒いと感じた!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 6 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷点下なのに、ヒョー、雨天か!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 7 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 防寒姿で傍観!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 8 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 効率良く氷強くする!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 9 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷凍庫に入れと〜こ","color":"aqua","bold":true}] + execute if score $Random Temporary matches 10 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" コーラスフルーツをよう凍らす!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 11 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 寒波に完敗!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 12 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 雪が降ってて寒いでスノー!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 13 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" ナイスなアイス、なぁ、いいっすよね!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 14 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 寒気は回る、感極まる!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 15 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 愛する人とアイス食う!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 16 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" もう冬かい?なんて不愉快!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 17 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷めているサメ!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 18 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 紅茶が凍っちゃった!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 19 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" サム言い寄る、寒い夜!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 20 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷集めて、あ~冷てぇ!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 21 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 場が凍り付く?氷作ってるからね!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 22 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冬の鯛は冷たい!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 23 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" ブリのブリザード!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 24 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 南極で何曲か聞く!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 25 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷の小売店!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 26 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷たい理由を問い詰めたい!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 27 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 北風の時期に来た課税!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 28 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷河期のガキ!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 29 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 雪をもっておゆき!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 30 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冬眠する島民!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 31 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" コートを着とこーっと!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 32 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 冷てぇアイスを詰めてくれ!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 33 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷の降臨!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 34 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 雪の日にゆきたくない!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 35 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" スノー降る!Snow full!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 36 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷点下には雹添加!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 37 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 深雪見ゆ君!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 38 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" かまくらのふかふかまくら!","color":"aqua","bold":true}] + execute if score $Random Temporary matches 39 run tellraw @a [{"text":"<","color":"aqua","bold":true},{"selector":"@s","bold":true},{"text":">","bold":true},{"text":" 氷菓を評価!","color":"aqua","bold":true}] + +# リセット + scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/3.main.mcfunction index b168e3d22e..3752ce332d 100644 --- a/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/3.main.mcfunction @@ -9,8 +9,12 @@ # ここから先は神器側の効果の処理を書く -# エフェクト付与 - effect give @s speed 10 2 true +# スピードの向こう側(ID:293)がなければ、待望の瞬間(ID:292)を付与 + data modify storage api: Argument.ID set value 293 + function api:entity/mob/effect/get/from_id + execute unless data storage api: Return.Effect run data modify storage api: Argument.ID set value 292 + execute unless data storage api: Return.Effect run function api:entity/mob/effect/give + execute unless data storage api: Return.Effect run function api:entity/mob/effect/reset # 30%の確率でメッセージを流す execute if predicate lib:random_pass_per/30 run function asset:artifact/0441.awaited_opportunity/trigger/message/ diff --git a/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/.mcfunction b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/.mcfunction index 3a03cb4c65..7bce69a8e3 100644 --- a/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/.mcfunction +++ b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/.mcfunction @@ -45,7 +45,7 @@ execute if score $Random Temporary matches 11 run function asset:artifact/0441.awaited_opportunity/trigger/message/hardluck # スピードの向こう側 - execute if score $Random Temporary matches 13 run effect give @s speed 30 10 true + execute if score $Random Temporary matches 13 run function asset:artifact/0441.awaited_opportunity/trigger/message/beyond_the_speed # リセット scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/beyond_the_speed.mcfunction b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/beyond_the_speed.mcfunction new file mode 100644 index 0000000000..08fa90dc0e --- /dev/null +++ b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/beyond_the_speed.mcfunction @@ -0,0 +1,15 @@ +#> asset:artifact/0441.awaited_opportunity/trigger/message/beyond_the_speed +# +# 俺が手に入れてやる・・・!その領域・・!“スピードの向こう側”を・・!! +# +# @within function asset:artifact/0441.awaited_opportunity/trigger/message/ + +# 待望の瞬間(ID:292)を削除 + data modify storage api: Argument.ID set value 292 + function api:entity/mob/effect/remove/from_id + function api:entity/mob/effect/reset + +# スピードの向こう側(ID:293)を付与 + data modify storage api: Argument.ID set value 293 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/hardluck.mcfunction b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/hardluck.mcfunction index 9b622e86b4..7effa5dffa 100644 --- a/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/hardluck.mcfunction +++ b/Asset/data/asset/functions/artifact/0441.awaited_opportunity/trigger/message/hardluck.mcfunction @@ -6,7 +6,11 @@ # プレイヤーが"不運"と"踊"っちまった時 tellraw @a[distance=..30] [{"text":"<","color":"white"},{"selector":"@s"},{"text":"> "},{"text":"があああああッ・・!!"}] - effect give @s unluck 30 1 + +# “不運”と“踊”る(ID:294)を付与 + data modify storage api: Argument.ID set value 294 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset # 自傷 data modify storage api: Argument.Damage set value 3.5f diff --git a/Asset/data/asset/functions/artifact/0462.456_dice/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0462.456_dice/trigger/3.main.mcfunction index fbaf7ec946..d18a6a51bf 100644 --- a/Asset/data/asset/functions/artifact/0462.456_dice/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0462.456_dice/trigger/3.main.mcfunction @@ -13,13 +13,8 @@ # ここから先は神器側の効果の処理を書く -# サイコロを振る - # 疑似乱数取得 - execute store result score @s Temporary run function lib:random/ - # ほしい範囲に剰余算 - scoreboard players operation @s Temporary %= $3 Const - # 0~2の値を4~6になるように4加算 - scoreboard players add @s Temporary 4 +# 4-6の範囲でサイコロを振る + execute store result score @s Temporary run random value 4..6 # ダメージを与えるエンティティの絞り込み tag @e[tag=Enemy,tag=!Uninterferable,distance=..20,sort=nearest,limit=1] add CU.Target @@ -33,4 +28,4 @@ # リセット scoreboard players reset @s Temporary - tag @e[tag=CU.Target] remove CU.Target \ No newline at end of file + tag @e[tag=CU.Target] remove CU.Target diff --git a/Asset/data/asset/functions/artifact/0464.lightning_exploit/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/0464.lightning_exploit/give/1.trigger.mcfunction new file mode 100644 index 0000000000..dd216881c1 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0464.lightning_exploit/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0464.lightning_exploit/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:464} run function asset:artifact/0464.lightning_exploit/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0464.lightning_exploit/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0464.lightning_exploit/give/2.give.mcfunction new file mode 100644 index 0000000000..230085720e --- /dev/null +++ b/Asset/data/asset/functions/artifact/0464.lightning_exploit/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/0464.lightning_exploit/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/0464.lightning_exploit/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 464 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"サンダーボルトエクスプロイト","color":"yellow"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"着弾時、周囲に電撃を放つ玉を放つ","color":"white"}'] +# MP以外の消費物 (TextComponentString) (オプション) + # data modify storage asset:artifact CostText set value +# 使用回数 (int) (オプション) + # data modify storage asset:artifact RemainingCount set value +# 神器を発動できるスロット (string) Wikiを参照 + data modify storage asset:artifact Slot set value "auto" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onClick" +# 神器の発動条件 (TextComponentString) (オプション) + # data modify storage asset:artifact Condition set value +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.Damage set value ["110×15"] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Physical] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [Thunder] +# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.BypassResist set value +# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every" +# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackRange set value 3 +# MP消費量 (int) + data modify storage asset:artifact MPCost set value 50 +# MP必要量 (int) (オプション) + # data modify storage asset:artifact MPRequire set value +# MP回復量 + #data modify storage asset:artifact MPHealWhenHit set value +# 神器のクールダウン (int) (オプション) + #data modify storage asset:artifact LocalCooldown set value +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "longRange" + data modify storage asset:artifact TypeCooldown.Duration set value 50 +# 神器のクールダウン (int) (オプション) + # data modify storage asset:artifact LocalCooldown set value +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Nyaptov"] +# カスタム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/0464.lightning_exploit/register.mcfunction b/Asset/data/asset/functions/artifact/0464.lightning_exploit/register.mcfunction new file mode 100644 index 0000000000..31f9c19522 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0464.lightning_exploit/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0464.lightning_exploit/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[4] append value [464] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..65b5e95490 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/0464.lightning_exploit/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのautoに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{auto:464} run function asset:artifact/0464.lightning_exploit/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..749ef8733e --- /dev/null +++ b/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/0464.lightning_exploit/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/0464.lightning_exploit/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/auto +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/0464.lightning_exploit/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/3.main.mcfunction new file mode 100644 index 0000000000..321d8719d2 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0464.lightning_exploit/trigger/3.main.mcfunction @@ -0,0 +1,32 @@ +#> asset:artifact/0464.lightning_exploit/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/0464.lightning_exploit/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/auto + +# ここから先は神器側の効果の処理を書く + +#> Private +# @private + #declare tag SpreadMarker + +# 演出 + playsound minecraft:entity.puffer_fish.sting player @a ~ ~ ~ 1 0.4 + +# 前方拡散 + execute anchored eyes positioned ^ ^ ^1 run summon marker ~ ~ ~ {Tags:["SpreadMarker"]} + data modify storage lib: Argument.Distance set value 3 + data modify storage lib: Argument.Spread set value 0.3 + execute as @e[type=marker,tag=SpreadMarker,distance=..10,sort=nearest,limit=1] positioned as @s run function lib:forward_spreader/circle + +# 召喚 + data modify storage api: Argument.ID set value 1086 + data modify storage api: Argument.FieldOverride.Damage set value 110 + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + execute anchored eyes positioned ^ ^ ^1 facing entity @e[type=marker,tag=SpreadMarker,distance=..10,sort=nearest,limit=1] feet run function api:object/summon + +# リセット + kill @e[type=marker,tag=SpreadMarker,distance=..10] diff --git a/Asset/data/asset/functions/artifact/0573.final_prism/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0573.final_prism/trigger/3.main.mcfunction index 08dc663caa..78e7ac91a7 100644 --- a/Asset/data/asset/functions/artifact/0573.final_prism/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0573.final_prism/trigger/3.main.mcfunction @@ -12,9 +12,7 @@ function asset:artifact/common/use/mainhand # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $4 Const + execute store result score $Random Temporary run random value 0..3 # ここから先は神器側の効果の処理を書く data modify storage lib: Argument.Distance set value 10.0f diff --git a/Asset/data/asset/functions/artifact/0600.xtal/trigger/5.slash.mcfunction b/Asset/data/asset/functions/artifact/0600.xtal/trigger/5.slash.mcfunction index 40ec666d7e..d64ef40423 100644 --- a/Asset/data/asset/functions/artifact/0600.xtal/trigger/5.slash.mcfunction +++ b/Asset/data/asset/functions/artifact/0600.xtal/trigger/5.slash.mcfunction @@ -9,10 +9,8 @@ playsound item.trident.throw player @a ~ ~ ~ 1 0.6 playsound minecraft:entity.glow_squid.squirt player @a ~ ~ ~ 1 2 -# ほしい範囲に剰余算 - execute store result score $Random Temporary run function lib:random/ -# 疑似乱数取得 - scoreboard players operation $Random Temporary %= $3 Const +# 乱数取得 + execute store result score $Random Temporary run random value 0..2 # パーティクル execute if score $Random Temporary matches 0 anchored eyes positioned ^ ^ ^1 run function asset:artifact/0600.xtal/trigger/particle/particle_1 execute if score $Random Temporary matches 1 anchored eyes positioned ^ ^ ^1 run function asset:artifact/0600.xtal/trigger/particle/particle_2 diff --git a/Asset/data/asset/functions/artifact/0605.ambition/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0605.ambition/trigger/3.main.mcfunction index 98fbb890cb..a4ce1fb404 100644 --- a/Asset/data/asset/functions/artifact/0605.ambition/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0605.ambition/trigger/3.main.mcfunction @@ -15,14 +15,15 @@ # 没収されたアイテム * 11の値を設定 scoreboard players operation @s Temporary *= $11 Const -# 最大値をきめる +# ダメージ最大値設定 scoreboard players set $MaxDamage Temporary 4400 + scoreboard players operation @s Temporary < $MaxDamage Temporary # 演出 execute at @e[type=#lib:living,type=!player,tag=Victim,distance=..6] positioned ~ ~1 ~ summon marker run function asset:artifact/0605.ambition/trigger/vfx/ # ダメージ - execute store result storage api: Argument.Damage float 1 run scoreboard players operation @s Temporary < $MaxDamage Temporary + execute store result storage api: Argument.Damage float 1 run scoreboard players get @s Temporary data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "None" function api:damage/modifier diff --git a/Asset/data/asset/functions/artifact/0605.ambition/trigger/vfx/.mcfunction b/Asset/data/asset/functions/artifact/0605.ambition/trigger/vfx/.mcfunction index beef6c73bb..5646fe0cbd 100644 --- a/Asset/data/asset/functions/artifact/0605.ambition/trigger/vfx/.mcfunction +++ b/Asset/data/asset/functions/artifact/0605.ambition/trigger/vfx/.mcfunction @@ -18,7 +18,7 @@ # debug # scoreboard players set $Per Temporary 100 -# 割合に比例して$Countを設定 +# 割合に応じて$Countを設定 execute if score $Per Temporary matches 50..99 run scoreboard players set $Count Temporary 1 execute if score $Per Temporary matches 100 run scoreboard players set $Count Temporary 2 diff --git a/Asset/data/asset/functions/artifact/0606.traffic_sign/trigger/3.2.sign_summon.mcfunction b/Asset/data/asset/functions/artifact/0606.traffic_sign/trigger/3.2.sign_summon.mcfunction index e68ac4e5e0..9c3cce25d8 100644 --- a/Asset/data/asset/functions/artifact/0606.traffic_sign/trigger/3.2.sign_summon.mcfunction +++ b/Asset/data/asset/functions/artifact/0606.traffic_sign/trigger/3.2.sign_summon.mcfunction @@ -8,9 +8,8 @@ summon item_display ~ ~ ~ {teleport_duration:1,Tags:["GU.Sign.Init","GU.Sign"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,20f,0f],scale:[1f,1f,1f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:606}}} # 若干斜めにする - execute store result entity @e[type=item_display,tag=GU.Sign.Init,distance=..0.01,limit=1] Rotation[0] float 1 run function lib:random/ - execute store result score $GU.Temp Temporary run function lib:random/ - scoreboard players operation $GU.Temp Temporary %= $31 Const + execute store result entity @e[type=item_display,tag=GU.Sign.Init,distance=..0.01,limit=1] Rotation[0] float 1 run random value 0..359 + execute store result score $GU.Temp Temporary run random value 0..30 data modify storage asset:temp GU.Temp set value {left_rotation:{axis:[0,0,1],angle:0f},right_rotation:[0f,0f,0f,1f],translation:[0f,20f,0f],scale:[1f,1f,1f]} execute store result storage asset:temp GU.Temp.left_rotation.angle float 0.0175 run scoreboard players remove $GU.Temp Temporary 15 data modify entity @e[type=item_display,tag=GU.Sign.Init,distance=..0.01,limit=1] transformation set from storage asset:temp GU.Temp diff --git a/Asset/data/asset/functions/artifact/0607.u_and_w_06/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0607.u_and_w_06/trigger/3.main.mcfunction index 0ea5f8b3f9..660a1302d5 100644 --- a/Asset/data/asset/functions/artifact/0607.u_and_w_06/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0607.u_and_w_06/trigger/3.main.mcfunction @@ -30,14 +30,12 @@ # ランダムで拡散率がひどいことになる # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - # ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $100 Const + execute store result score $Random Temporary run random value 0..9 # 10%で発動 - execute if score $Random Temporary matches 0..9 run data modify storage lib: Argument.Spread set value 2 + execute if score $Random Temporary matches 0 run data modify storage lib: Argument.Spread set value 2 # 50%で発動 - execute if score $Random Temporary matches 10..69 run data modify storage lib: Argument.Distance set value 5.0 - execute if score $Random Temporary matches 10..69 run data modify storage lib: Argument.Spread set value 0.1 + execute if score $Random Temporary matches 1..5 run data modify storage lib: Argument.Distance set value 5.0 + execute if score $Random Temporary matches 1..5 run data modify storage lib: Argument.Spread set value 0.1 # 前方拡散を実行する execute as @e[type=marker,tag=SpreadMarker,limit=1] run function lib:forward_spreader/circle diff --git a/Asset/data/asset/functions/artifact/0609.lunar_flare/trigger/projectile/hit.mcfunction b/Asset/data/asset/functions/artifact/0609.lunar_flare/trigger/projectile/hit.mcfunction index 58a1df2396..8839f157b5 100644 --- a/Asset/data/asset/functions/artifact/0609.lunar_flare/trigger/projectile/hit.mcfunction +++ b/Asset/data/asset/functions/artifact/0609.lunar_flare/trigger/projectile/hit.mcfunction @@ -17,21 +17,12 @@ tag @s add GX.This # ダメージ設定 - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。追加ダメージが発生。 - scoreboard players operation $RandomDamage Temporary %= $21 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 75 + execute store result storage api: Argument.Damage float 1 run random value 75..95 # 属性 data modify storage api: Argument.AttackType set value "Magic" data modify storage api: Argument.ElementType set value "None" - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # ダメージ 原作再現と他のエイム武器との差別化を兼ねて範囲攻撃 execute as @a if score @s UserID = @e[type=armor_stand,tag=GX.This,distance=..1,limit=1] GX.UserID run function api:damage/modifier execute positioned ~-0.5 ~-0.5 ~-0.5 at @e[type=#lib:living,type=!player,tag=!Uninterferable,dx=0] as @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..2.5] run function api:damage/ @@ -39,5 +30,4 @@ # リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary kill @s diff --git a/Asset/data/asset/functions/artifact/0615.censored/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0615.censored/trigger/3.main.mcfunction index 850ae98797..0f07fc8283 100644 --- a/Asset/data/asset/functions/artifact/0615.censored/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0615.censored/trigger/3.main.mcfunction @@ -15,9 +15,7 @@ # 確率で処刑する # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - # ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $5 Const + execute store result score $Random Temporary run random value 0..4 # 処刑 execute if score $Random Temporary matches 0 at @e[type=#lib:living,type=!player,tag=Victim,tag=!Enemy.Boss,tag=!Uninterferable] run function asset:artifact/0615.censored/trigger/3.4.execution # ボス級の処刑 diff --git a/Asset/data/asset/functions/artifact/0672.aurora_blade/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0672.aurora_blade/trigger/3.main.mcfunction index 98226e6c3e..62d50e4c3b 100644 --- a/Asset/data/asset/functions/artifact/0672.aurora_blade/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0672.aurora_blade/trigger/3.main.mcfunction @@ -6,8 +6,6 @@ #> Private # @private - #declare score_holder $RandomDamage - #declare score_holder $CalcRandom #declare score_holder $MP #declare score_holder $MPMax #declare score_holder $MPPer @@ -31,32 +29,16 @@ playsound entity.player.attack.sweep player @a ~ ~ ~ 0.4 1 0 playsound entity.evoker.prepare_summon player @a ~ ~ ~ 0.8 2 0 -# ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~300の追加ダメージ - scoreboard players set $CalcRandom Temporary 201 - scoreboard players operation $RandomDamage Temporary %= $CalcRandom Temporary - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 200 - # Argument.Damageに代入 $MPPer >= 70 なら1.5倍 - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - execute if score $MPPer Temporary matches 70.. store result storage api: Argument.Damage float 1.5 run scoreboard players get $RandomDamage Temporary - + execute store result storage api: Argument.Damage float 1 run random value 200..400 + execute if score $MPPer Temporary matches 70.. store result storage api: Argument.Damage float 1.5 run data get storage api: Argument.Damage data modify storage api: Argument.AttackType set value "Magic" data modify storage api: Argument.ElementType set value "Thunder" - -# 補正functionを実行 function api:damage/modifier -# ダメージを与える execute as @e[type=#lib:living,tag=Victim,distance=..6] run function api:damage/ + function api:damage/reset # リセット - function api:damage/reset - scoreboard players reset $CalcRandom Temporary - scoreboard players reset $RandomDamage Temporary scoreboard players reset $MP Temporary scoreboard players reset $MPMax Temporary scoreboard players reset $MPPer Temporary diff --git a/Asset/data/asset/functions/artifact/0702.bright_lamp/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0702.bright_lamp/give/2.give.mcfunction index 9cf0a54232..ba591726e5 100644 --- a/Asset/data/asset/functions/artifact/0702.bright_lamp/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0702.bright_lamp/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"光照のランプ","color":"gold"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"周囲を明るく照らすランプ。","color":"white"}','{"text":"自身と周囲のプレイヤーに対して","color":"white"}','{"text":"暗視を付与し、暗闇を解除する。","color":"white"}'] + data modify storage asset:artifact Lore set value ['{"text":"周囲を明るく照らすランプ","color":"white"}','{"text":"自身と周囲のプレイヤーに対して","color":"white"}','{"text":"暗視を付与し、暗闇を解除する","color":"white"}'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) # data modify storage asset:artifact ConsumeItem.Item set value # data modify storage asset:artifact ConsumeItem.Count set value @@ -41,11 +41,11 @@ # 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) # data modify storage asset:artifact AttackInfo.AttackRange set value # MP消費量 (int) - data modify storage asset:artifact MPCost set value 5 + data modify storage asset:artifact MPCost set value 4 # MP必要量 (int) (オプション) # data modify storage asset:artifact MPRequire set value 5 # 神器のクールダウン (int) (オプション) - data modify storage asset:artifact LocalCooldown set value 300 + data modify storage asset:artifact LocalCooldown set value 200 # 種別クールダウン ({Type: string, Duration: int}) (オプション) # data modify storage asset:artifact TypeCooldown.Type set value # data modify storage asset:artifact TypeCooldown.Duration set value diff --git a/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/3.main.mcfunction index 252a6d6f32..ba7e7e70e6 100644 --- a/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/3.main.mcfunction @@ -12,10 +12,11 @@ # 演出 #playsound ogg:block.respawn_anchor.charge3 player @a ~ ~ ~ 0.25 2 execute positioned ~ ~1 ~ run function asset:artifact/0702.bright_lamp/trigger/vfx - scoreboard players reset $RecursiveLimit Temporary # 暗視を付与 - effect give @a[distance=..8] night_vision 26 0 true + data modify storage api: Argument set value {ID:191,Duration:420} + execute as @a[distance=..8] run function api:entity/mob/effect/give + function api:entity/mob/effect/reset # 暗闇を解除 data modify storage api: Argument.ID set value 24 diff --git a/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/_index.d.mcfunction deleted file mode 100644 index 08080b9f5d..0000000000 --- a/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/_index.d.mcfunction +++ /dev/null @@ -1,6 +0,0 @@ -#> asset:artifact/0702.bright_lamp/trigger/_index.d -# @private - -#> tag -# @within function asset:artifact/0702.bright_lamp/trigger/** - #declare score_holder $RecursiveLimit \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/vfx.mcfunction b/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/vfx.mcfunction index a1f88c1bbd..d00987ad94 100644 --- a/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/vfx.mcfunction +++ b/Asset/data/asset/functions/artifact/0702.bright_lamp/trigger/vfx.mcfunction @@ -6,15 +6,95 @@ # asset:artifact/0702.bright_lamp/trigger/3.main # asset:artifact/0702.bright_lamp/trigger/vfx -# 演出 - execute rotated ~00 0 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 - execute rotated ~04 0 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 - execute rotated ~08 0 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 - execute rotated ~12 0 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 - execute rotated ~16 0 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 - -# スコア - scoreboard players add $RecursiveLimit Temporary 1 - -# 一周するまで再帰 - execute if score $RecursiveLimit Temporary matches ..17 rotated ~20 ~ run function asset:artifact/0702.bright_lamp/trigger/vfx \ No newline at end of file +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmKQMwBsA7HQAz0C0dVdARiwCwCcfAEwsAhgDNSI3j0404glGJ5UArHzAEAdiIC2CZIDDFAAQBGDWBgiMugM5JwKAPaFNEJH0YEUcV3Az2wADcRbEJ9cAAPJE8wKGiAX3iCa1I0QjtEQQIbCCs3RBi4bGw0GBt9E0YYjEdciH0YtBsAUWLS8uaAR0IQ7CgAZUtvckQxEPLEgF0gA_3 +# 円 1 +execute rotated ~ 0 facing ^0 ^ ^-2 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.13951 ^ ^-1.99513 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.27835 ^ ^-1.98054 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.41582 ^ ^-1.9563 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.55127 ^ ^-1.92252 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.68404 ^ ^-1.87939 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.81347 ^ ^-1.82709 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.93894 ^ ^-1.7659 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.05984 ^ ^-1.6961 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.17557 ^ ^-1.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.28558 ^ ^-1.53209 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.38932 ^ ^-1.43868 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.48629 ^ ^-1.33826 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.57602 ^ ^-1.23132 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.65808 ^ ^-1.11839 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.73205 ^ ^-1 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.79759 ^ ^-0.87674 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.85437 ^ ^-0.74921 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.90211 ^ ^-0.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.94059 ^ ^-0.48384 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.96962 ^ ^-0.3473 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.98904 ^ ^-0.20906 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.99878 ^ ^-0.0698 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.99878 ^ ^0.0698 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.98904 ^ ^0.20906 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.96962 ^ ^0.3473 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.94059 ^ ^0.48384 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.90211 ^ ^0.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.85437 ^ ^0.74921 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.79759 ^ ^0.87674 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.73205 ^ ^1 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.65808 ^ ^1.11839 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.57602 ^ ^1.23132 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.48629 ^ ^1.33826 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.38932 ^ ^1.43868 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.28558 ^ ^1.53209 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.17557 ^ ^1.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^1.05984 ^ ^1.6961 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.93894 ^ ^1.7659 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.81347 ^ ^1.82709 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.68404 ^ ^1.87939 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.55127 ^ ^1.92252 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.41582 ^ ^1.9563 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.27835 ^ ^1.98054 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0.13951 ^ ^1.99513 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^0 ^ ^2 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.13951 ^ ^1.99513 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.27835 ^ ^1.98054 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.41582 ^ ^1.9563 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.55127 ^ ^1.92252 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.68404 ^ ^1.87939 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.81347 ^ ^1.82709 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.93894 ^ ^1.7659 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.05984 ^ ^1.6961 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.17557 ^ ^1.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.28558 ^ ^1.53209 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.38932 ^ ^1.43868 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.48629 ^ ^1.33826 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.57602 ^ ^1.23132 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.65808 ^ ^1.11839 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.73205 ^ ^1 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.79759 ^ ^0.87674 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.85437 ^ ^0.74921 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.90211 ^ ^0.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.94059 ^ ^0.48384 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.96962 ^ ^0.3473 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.98904 ^ ^0.20906 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.99878 ^ ^0.0698 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.99878 ^ ^-0.0698 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.98904 ^ ^-0.20906 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.96962 ^ ^-0.3473 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.94059 ^ ^-0.48384 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.90211 ^ ^-0.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.85437 ^ ^-0.74921 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.79759 ^ ^-0.87674 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.73205 ^ ^-1 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.65808 ^ ^-1.11839 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.57602 ^ ^-1.23132 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.48629 ^ ^-1.33826 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.38932 ^ ^-1.43868 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.28558 ^ ^-1.53209 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.17557 ^ ^-1.61803 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-1.05984 ^ ^-1.6961 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.93894 ^ ^-1.7659 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.81347 ^ ^-1.82709 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.68404 ^ ^-1.87939 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.55127 ^ ^-1.92252 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.41582 ^ ^-1.9563 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.27835 ^ ^-1.98054 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 +execute rotated ~ 0 facing ^-0.13951 ^ ^-1.99513 run particle end_rod ^ ^ ^2 ^ ^ ^100000000 0.000000005 0 diff --git a/Asset/data/asset/functions/artifact/0716.world_tree_branch/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0716.world_tree_branch/trigger/3.main.mcfunction index b1d3302c18..a94504fe7f 100644 --- a/Asset/data/asset/functions/artifact/0716.world_tree_branch/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0716.world_tree_branch/trigger/3.main.mcfunction @@ -24,7 +24,7 @@ # attribute @s generic.movement_speed modifier add 00000001-0000-0001-0000-02cc00000005 "0716.Speed" 0.05 multiply_base # 回復量 - data modify storage api: Argument.UUID set value [I;1,1,715,5] + data modify storage api: Argument.UUID set value [I;1,1,716,5] data modify storage api: Argument.Amount set value 0.08 data modify storage api: Argument.Operation set value "multiply_base" function api:modifier/heal/add diff --git a/Asset/data/asset/functions/artifact/0717.world_tree_stem/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0717.world_tree_stem/trigger/3.main.mcfunction index 8e627e6b62..5bb94bba1f 100644 --- a/Asset/data/asset/functions/artifact/0717.world_tree_stem/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0717.world_tree_stem/trigger/3.main.mcfunction @@ -24,7 +24,7 @@ # attribute @s generic.movement_speed modifier add 00000001-0000-0001-0000-02cd00000004 "0717.Speed" 0.05 multiply_base # 回復量 - data modify storage api: Argument.UUID set value [I;1,1,638,6] + data modify storage api: Argument.UUID set value [I;1,1,717,4] data modify storage api: Argument.Amount set value 0.08 data modify storage api: Argument.Operation set value "multiply_base" function api:modifier/heal/add diff --git a/Asset/data/asset/functions/artifact/0719.sword_of_divine_sound/trigger/vfx/random_rotation.mcfunction b/Asset/data/asset/functions/artifact/0719.sword_of_divine_sound/trigger/vfx/random_rotation.mcfunction index 74a86e5f88..8c3c74d91c 100644 --- a/Asset/data/asset/functions/artifact/0719.sword_of_divine_sound/trigger/vfx/random_rotation.mcfunction +++ b/Asset/data/asset/functions/artifact/0719.sword_of_divine_sound/trigger/vfx/random_rotation.mcfunction @@ -4,10 +4,8 @@ # # @within function asset:artifact/0719.sword_of_divine_sound/trigger/vfx/lightning -# 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $9 Const +# 乱数取得 + execute store result score $Random Temporary run random value 0..8 # 値に応じて角度を変えて再帰 x_rotationが入っている部分は雷の向きが水平になりすぎるのを防ぐため execute if score $Random Temporary matches 0 if entity @s run tp @s ~ ~ ~ ~ ~0 diff --git a/Asset/data/asset/functions/artifact/0731.mouse_feet/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0731.mouse_feet/give/2.give.mcfunction index a4b5ebb556..e76534ecec 100644 --- a/Asset/data/asset/functions/artifact/0731.mouse_feet/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0731.mouse_feet/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"ネズミの足","color":"gray"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"3秒間移動速度上昇を得る。","color":"white"}','{"text":"臆病なネズミの足。 叩かないで!","color":"gray"}'] + data modify storage asset:artifact Lore set value ['{"text":"移動速度+40%を3秒間得る","color":"white"}','{"text":"臆病なネズミの足 叩かないで!","color":"gray"}'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) # data modify storage asset:artifact ConsumeItem.Item set value # data modify storage asset:artifact ConsumeItem.Count set value diff --git a/Asset/data/asset/functions/artifact/0731.mouse_feet/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0731.mouse_feet/trigger/3.main.mcfunction index 3725b01d8c..90a4e1d82c 100644 --- a/Asset/data/asset/functions/artifact/0731.mouse_feet/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0731.mouse_feet/trigger/3.main.mcfunction @@ -9,8 +9,10 @@ # ここから先は神器側の効果の処理を書く -# スピードバフ - effect give @s speed 3 1 true - # 演出 - playsound entity.bat.ambient player @a ~ ~ ~ 0.8 2 0 \ No newline at end of file + playsound entity.bat.ambient player @a ~ ~ ~ 0.8 2 0 + +# バフ + data modify storage api: Argument.ID set value 286 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/.mcfunction b/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/.mcfunction index f53ebbc684..54ce5c6acd 100644 --- a/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/.mcfunction +++ b/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/.mcfunction @@ -8,26 +8,19 @@ summon firework_rocket ~ ~ ~ {Tags:["FireworkInit"],Life:0,LifeTime:20,ShotAtAngle:0b,FireworksItem:{id:"minecraft:firework_rocket",Count:1b,tag:{Fireworks:{Explosions:[{Colors:[I;16777215]}]}}}} # LifeTimeに突っ込む数値をランダムで決める - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $12 Const - -# 最低値分の値を増やしてstorageに代入 - execute store result storage asset:temp Firework.LifeTime int 1 run scoreboard players add $Random Temporary 30 + execute store result storage asset:temp Firework.LifeTime int 1 run random value 30..41 # storageに必要なnbtを設定しておく data modify storage asset:temp Firework.Explosions set value {Flicker:1b} # 花火の形を設定する - execute store result score $RandomShape Temporary run function lib:random/ - scoreboard players operation $RandomShape Temporary %= $6 Const + execute store result score $RandomShape Temporary run random value 0..5 execute if score $RandomShape Temporary matches 0..3 run data modify storage asset:temp Firework.Explosions.Type set value 1 execute if score $RandomShape Temporary matches 4 run data modify storage asset:temp Firework.Explosions.Type set value 2 execute if score $RandomShape Temporary matches 5 run data modify storage asset:temp Firework.Explosions.Type set value 3 # 花火の色の数を1~3でランダムに決める - execute store result score $ColorCount Temporary run function lib:random/ - scoreboard players operation $ColorCount Temporary %= $3 Const - scoreboard players add $ColorCount Temporary 1 + execute store result score $ColorCount Temporary run random value 1..3 # storageをint_array_list型にする data modify storage asset:temp Firework.Colors set value [I;] @@ -43,4 +36,4 @@ scoreboard players reset $RandomShape Temporary scoreboard players reset $ColorCount Temporary scoreboard players reset $RecursiveCount Temporary - data remove storage asset:temp Firework \ No newline at end of file + data remove storage asset:temp Firework diff --git a/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/append_color.mcfunction b/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/append_color.mcfunction index b5c44c0239..c27dc5791b 100644 --- a/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/append_color.mcfunction +++ b/Asset/data/asset/functions/artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/append_color.mcfunction @@ -7,8 +7,7 @@ # asset:artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/append_color # ランダムに色を指定する - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $11 Const + execute store result score $Random Temporary run random value 0..10 # 再帰の回数を計測するスコア scoreboard players add $RecursiveCount Temporary 1 @@ -37,4 +36,4 @@ execute if score $Random Temporary matches 10 run data modify storage asset:temp Firework.Colors append value 15961002 # $ColorCountが1以上でかつ $RecursiveCount = $ColorCountになるまで再帰 - execute if score $ColorCount Temporary matches 1.. unless score $RecursiveCount Temporary = $ColorCount Temporary run function asset:artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/append_color \ No newline at end of file + execute if score $ColorCount Temporary matches 1.. unless score $RecursiveCount Temporary = $ColorCount Temporary run function asset:artifact/0737.summer_festival_of_remembrance/trigger/firework_process/summon/append_color diff --git a/Asset/data/asset/functions/artifact/0756.sakura_hubuki/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0756.sakura_hubuki/trigger/3.main.mcfunction index 2a244731e7..71e05584a1 100644 --- a/Asset/data/asset/functions/artifact/0756.sakura_hubuki/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0756.sakura_hubuki/trigger/3.main.mcfunction @@ -10,7 +10,7 @@ # ここから先は神器側の効果の処理を書く # 確率で攻撃演出を分岐 - execute store result score $Random Temporary run function lib:random/ + execute store result score $Random Temporary run random value 0..6 scoreboard players operation $Random Temporary %= $7 Const execute if score $Random Temporary matches 0..1 positioned ^ ^1 ^1.5 run function asset:artifact/0756.sakura_hubuki/trigger/vfx/slash1 execute if score $Random Temporary matches 2..3 positioned ^ ^1 ^1.5 run function asset:artifact/0756.sakura_hubuki/trigger/vfx/slash2 @@ -24,25 +24,20 @@ playsound entity.player.attack.sweep player @a ~ ~ ~ 0.8 1.2 0 # ダメージ - # ブレ - execute store result score $RandomDamage Temporary run function lib:random/ - scoreboard players operation $RandomDamage Temporary %= $71 Const - scoreboard players add $RandomDamage Temporary 150 + # ダメージ範囲 + execute store result score $RandomDamage Temporary run random value 150..220 # スコアが6ならVictimにダメージを与える前に範囲攻撃を行う execute if score $Random Temporary matches 6 at @e[type=#lib:living,type=!player,tag=Victim,distance=..6] run function asset:artifact/0756.sakura_hubuki/trigger/4.range_attack - # 数値を代入 + # メイン対象へダメージ execute store result storage api: Argument.Damage float 1.0 run scoreboard players get $RandomDamage Temporary - # 属性 data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "Water" - # 補正 function api:damage/modifier - # ダメージを与える execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..6] run function api:damage/ + function api:damage/reset # リセット scoreboard players reset $Random Temporary scoreboard players reset $RandomDamage Temporary - function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.1.damage.mcfunction b/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.1.damage.mcfunction deleted file mode 100644 index fcb7d6ad08..0000000000 --- a/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.1.damage.mcfunction +++ /dev/null @@ -1,18 +0,0 @@ -#> asset:artifact/0844.closed_eyes_of_love/trigger/3.1.damage -# -# -# -# @within function asset:artifact/0844.closed_eyes_of_love/trigger/3.main - -# ダメージ - # 与えるダメージ - data modify storage api: Argument.Damage set value 450.0f - # 魔法属性 - data modify storage api: Argument.AttackType set value "Magic" - # 無属性 - data modify storage api: Argument.ElementType set value "Thunder" - # ダメージ - function api:damage/modifier - execute anchored eyes positioned ^ ^ ^ positioned ~-1 ~0.5 ~-1 as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=1,dy=1,dz=1] run function api:damage/ -# リセット - function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.main.mcfunction index 78105e9171..623bc1c148 100644 --- a/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.main.mcfunction @@ -9,7 +9,7 @@ # ここから先は神器側の効果の処理を書く # vfx - function asset:artifact/0844.closed_eyes_of_love/trigger/3.1.vfx + function asset:artifact/0844.closed_eyes_of_love/trigger/vfx # damage - function asset:artifact/0844.closed_eyes_of_love/trigger/3.1.damage + function asset:artifact/0844.closed_eyes_of_love/trigger/damage diff --git a/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/damage.mcfunction b/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/damage.mcfunction new file mode 100644 index 0000000000..057ead46f1 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/damage.mcfunction @@ -0,0 +1,13 @@ +#> asset:artifact/0844.closed_eyes_of_love/trigger/damage +# +# +# +# @within function asset:artifact/0844.closed_eyes_of_love/trigger/3.main + +# ダメージ + data modify storage api: Argument.Damage set value 450.0f + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Thunder" + function api:damage/modifier + execute anchored eyes positioned ^ ^ ^ positioned ~-1 ~0.5 ~-1 as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=1,dy=1,dz=1] run function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.1.vfx.mcfunction b/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/vfx.mcfunction similarity index 61% rename from Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.1.vfx.mcfunction rename to Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/vfx.mcfunction index 683fcf6efc..441cc209ae 100644 --- a/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/3.1.vfx.mcfunction +++ b/Asset/data/asset/functions/artifact/0844.closed_eyes_of_love/trigger/vfx.mcfunction @@ -1,4 +1,4 @@ -#> asset:artifact/0844.closed_eyes_of_love/trigger/3.1.vfx +#> asset:artifact/0844.closed_eyes_of_love/trigger/vfx # # vfx # @@ -9,4 +9,4 @@ playsound ogg:random.levelup player @a[distance=..16] ~ ~ ~ 1 2 1 # パーティクル - execute positioned ~ ~2.5 ~ run particle block_marker light ^0.15 ^ ^ 0 0 0 0 1 \ No newline at end of file + execute anchored eyes positioned ^0.15 ^ ^ positioned ~ ~1 ~ run particle block_marker light ~ ~ ~ 0 0 0 0 1 diff --git a/Asset/data/asset/functions/artifact/0860.angel_wing/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0860.angel_wing/give/2.give.mcfunction index 4cb62103fa..17f5f672d1 100644 --- a/Asset/data/asset/functions/artifact/0860.angel_wing/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0860.angel_wing/give/2.give.mcfunction @@ -25,7 +25,7 @@ # 神器を発動できるスロット (string) Wikiを参照 data modify storage asset:artifact Slot set value "chest" # 神器のトリガー (string) Wikiを参照 - data modify storage asset:artifact Trigger set value "passive" + data modify storage asset:artifact Trigger set value "equipping" # 神器の発動条件 (TextComponentString) (オプション) # data modify storage asset:artifact Condition set value # 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) diff --git a/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/3.main.mcfunction index d5c952475d..4261e2b252 100644 --- a/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/3.main.mcfunction @@ -5,9 +5,11 @@ # @within function asset:artifact/0860.angel_wing/trigger/2.check_condition # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う - data modify storage asset:artifact IgnoreItemUpdate set value true function asset:artifact/common/use/chest # ここから先は神器側の効果の処理を書く - effect give @s minecraft:jump_boost 2 2 true - effect give @s minecraft:speed 2 1 true + +# バフを付与 + data modify storage api: Argument.ID set value 310 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/dis_equip/.mcfunction b/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/dis_equip/.mcfunction new file mode 100644 index 0000000000..c24e89570f --- /dev/null +++ b/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/dis_equip/.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/0860.angel_wing/trigger/dis_equip/ +# +# 装備を外した時に外した部位にのみのidが入った状態でトリガーされる +# +# @within tag/function asset:artifact/dis_equip + +execute if data storage asset:context id{chest:860} run function asset:artifact/0860.angel_wing/trigger/dis_equip/main diff --git a/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/dis_equip/main.mcfunction b/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/dis_equip/main.mcfunction new file mode 100644 index 0000000000..3382cf9960 --- /dev/null +++ b/Asset/data/asset/functions/artifact/0860.angel_wing/trigger/dis_equip/main.mcfunction @@ -0,0 +1,10 @@ +#> asset:artifact/0860.angel_wing/trigger/dis_equip/main +# +# 装備を外した時のメイン処理 +# +# @within function asset:artifact/0860.angel_wing/trigger/dis_equip/ + +# バフ解除 + data modify storage api: Argument.ID set value 310 + function api:entity/mob/effect/remove/from_id + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0876.uni/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0876.uni/trigger/3.main.mcfunction index e5bcd4c09e..1d72a96d9c 100644 --- a/Asset/data/asset/functions/artifact/0876.uni/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0876.uni/trigger/3.main.mcfunction @@ -34,10 +34,8 @@ execute anchored eyes positioned ^-0.35 ^-0.15 ^ facing entity @e[type=marker,tag=SpreadMarker,limit=1] feet run function asset:artifact/0876.uni/trigger/bullet tag @s remove Landing -# 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $3 Const +# 乱数取得 + execute store result score $Random Temporary run random value 0..2 # 向きを適当に変える execute if score $Random Temporary matches 0 run tp @s ~ ~ ~ ~ ~-0.5 execute if score $Random Temporary matches 1 run tp @s ~ ~ ~ ~-0.5 ~-0.5 diff --git a/Asset/data/asset/functions/artifact/0897.lightning_broach/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0897.lightning_broach/give/2.give.mcfunction index a521149c9a..61a7a27021 100644 --- a/Asset/data/asset/functions/artifact/0897.lightning_broach/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0897.lightning_broach/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"雷のブローチ","color":"yellow"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"対象の現在体力に比例した割合ダメージを与える"}'] + data modify storage asset:artifact Lore set value ['{"text":"攻撃対象3体に対象の現在体力に比例した割合ダメージを与える"}'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) # data modify storage asset:artifact ConsumeItem.Item set value # data modify storage asset:artifact ConsumeItem.Count set value @@ -25,7 +25,7 @@ # 神器を発動できるスロット (string) Wikiを参照 data modify storage asset:artifact Slot set value "hotbar" # 神器のトリガー (string) Wikiを参照 - data modify storage asset:artifact Trigger set value "onAttackByMelee" + data modify storage asset:artifact Trigger set value "onAttack" # 効果が重複可能か否か (boolean) (オプション)", data modify storage asset:artifact EnableDuplication set value true # 神器の発動条件 (TextComponentString) (オプション) diff --git a/Asset/data/asset/functions/artifact/0897.lightning_broach/trigger/damage.mcfunction b/Asset/data/asset/functions/artifact/0897.lightning_broach/trigger/damage.mcfunction index 74164bc12d..d9316ad54a 100644 --- a/Asset/data/asset/functions/artifact/0897.lightning_broach/trigger/damage.mcfunction +++ b/Asset/data/asset/functions/artifact/0897.lightning_broach/trigger/damage.mcfunction @@ -18,7 +18,7 @@ # 攻撃 execute store result storage api: Argument.Damage double 0.01 run scoreboard players get $Damage Temporary data modify storage api: Argument.AttackType set value "Magic" - data modify storage api: Argument.AttackType set value "Thunder" + data modify storage api: Argument.ElementType set value "Thunder" data modify storage api: Argument.FixedDamage set value true execute as @p[tag=this] run function api:damage/modifier function api:damage/ diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/give/2.give.mcfunction index 958ac6c02c..a39bf472aa 100644 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0907.rod_of_rain/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"彩雨の杖","color":"blue"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"雨の降るエリアを設置する。","color":"#7A95FF"}','{"text":"エリアは定期的に敵にはダメージを与え","color":"#7A95FF"}','{"text":"プレイヤーの体力を自身の最大体力の10%分回復する。","color":"#7A95FF"}','{"text":"この回復には水攻撃補正が追加で乗る。","color":"#7A95FF"}','{"text":"鮮やかに彩られた雨乞いに使われた杖。","color":"#a0eafe"}','{"text":"ひとたび振るえば辺りに祝福の雨を降らすという。","color":"#a0eafe"}','{"text":"雨は癒やしをもたらし、時には罪を洗い流す。","color":"#a0eafe"}'] + data modify storage asset:artifact Lore set value ['{"text":"雨の降るエリアを設置する","color":"#7A95FF"}','{"text":"エリアは定期的に敵にはダメージを与え","color":"#7A95FF"}','{"text":"プレイヤーの体力を自身の最大体力の10%分回復する","color":"#7A95FF"}','{"text":"この回復には水攻撃補正が追加で乗る","color":"#7A95FF"}','{"text":"鮮やかに彩られた雨乞いに使われた杖","color":"#a0eafe"}','{"text":"ひとたび振るえば辺りに祝福の雨を降らすという","color":"#a0eafe"}','{"text":"雨は癒やしをもたらし、時には罪を洗い流す","color":"#a0eafe"}'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) # data modify storage asset:artifact ConsumeItem.Item set value # data modify storage asset:artifact ConsumeItem.Count set value @@ -39,7 +39,7 @@ # 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every" # 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) - data modify storage asset:artifact AttackInfo.AttackRange set value 9 + data modify storage asset:artifact AttackInfo.AttackRange set value 7 # MP消費量 (int) data modify storage asset:artifact MPCost set value 0 # MP必要量 (int) (オプション) diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/0.load.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/0.load.mcfunction deleted file mode 100644 index 9de40d05f6..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/0.load.mcfunction +++ /dev/null @@ -1,10 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/0.load -# -# 神器に利用するスコアボード等の初期化処理 -# -# @within tag/function asset:artifact/load - -#> 定義類はここに -# @within function asset:artifact/0907.rod_of_rain/trigger/** - scoreboard objectives add P8.Tick dummy - scoreboard objectives add P8.UserID dummy \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/3.main.mcfunction index b960b85183..17b5745086 100644 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/3.main.mcfunction @@ -9,9 +9,9 @@ # ここから先は神器側の効果の処理を書く -# 雨雲を召喚 - summon marker ~ ~6 ~ {Tags:["P8.RainCloud","Object","Uninterferable"]} - execute positioned ~ ~6 ~ run scoreboard players operation @e[type=marker,tag=P8.RainCloud,distance=..0.01] P8.UserID = @s UserID - -# スケジュールループスタート - schedule function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop 1t replace +# Objectを召喚 + data modify storage api: Argument.ID set value 1027 + data modify storage api: Argument.FieldOverride.Damage set value 1200f + data modify storage api: Argument.FieldOverride.HealPer set value 10 + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + function api:object/summon diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/_index.d.mcfunction deleted file mode 100644 index 14585ec8a2..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/_index.d.mcfunction +++ /dev/null @@ -1,9 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/_index.d -# @private - -#> tag -# @within function asset:artifact/0907.rod_of_rain/trigger/** - #declare tag P8.RainCloud - #declare tag P8.TargetEntity - #declare tag P8.This - #declare tag P8.Owner \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop.mcfunction deleted file mode 100644 index cbbb5b6230..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop.mcfunction +++ /dev/null @@ -1,11 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop -# -# スケジュールループ -# -# @within function -# asset:artifact/0907.rod_of_rain/trigger/3.main -# asset:artifact/0907.rod_of_rain/trigger/rain_cloud/2.main -# asset:artifact/0907.rod_of_rain/trigger/rejoin_process - -# メイン処理 - execute as @e[type=marker,tag=P8.RainCloud] at @s run function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/2.main diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/2.main.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/2.main.mcfunction deleted file mode 100644 index ac91ecf3f2..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/2.main.mcfunction +++ /dev/null @@ -1,47 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/rain_cloud/2.main -# -# 雨雲のメイン処理 -# -# @within function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop - -#> Private -# @private - #declare score_holder $Temp - -# スコア - scoreboard players add @s P8.Tick 1 - -# 回転 - tp @s ~ ~ ~ ~2 ~ - -# 演出 - particle minecraft:rain ~ ~ ~ 1.8 0 1.8 0 40 normal @a - particle dolphin ~ ~-3 ~ 2.4 2 2.4 0 20 normal @a - particle dolphin ~ ~-5.7 ~ 2.4 0.1 2.4 0 20 normal @a - particle dust 0.4 0.7 100000000 2 ~ ~ ~ 1.5 0.2 1.5 0 8 - -# 音 - scoreboard players operation $Temp Temporary = @s P8.Tick - scoreboard players operation $Temp Temporary %= $22 Const - execute if score $Temp Temporary matches 0 run playsound weather.rain player @a ~ ~ ~ 0.5 1.5 0 - -# 当たり判定の演出 - scoreboard players operation $Temp Temporary = @s P8.Tick - scoreboard players operation $Temp Temporary %= $3 Const - execute if score $Temp Temporary matches 0 positioned ~ ~-5.8 ~ run function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/3.shapes - -# 効果発動処理 - scoreboard players operation $Temp Temporary = @s P8.Tick - scoreboard players operation $Temp Temporary %= $40 Const - execute if score $Temp Temporary matches 0 positioned ~ ~-6 ~ run tag @e[type=#lib:living,tag=!Uninterferable,tag=!Object,distance=..4.5] add P8.TargetEntity - execute if score $Temp Temporary matches 0 positioned ~ ~-3 ~ run tag @e[type=#lib:living,tag=!Uninterferable,tag=!Object,distance=..4.5] add P8.TargetEntity - execute if score $Temp Temporary matches 0 positioned ~ ~-6 ~ run function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/4.effect - -# 雨雲用スケジュールループ - execute if entity @s[scores={P8.Tick=..400}] run schedule function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop 1t replace - -# 消滅 - execute if entity @s[scores={P8.Tick=400..}] run kill @s - -# リセット - scoreboard players reset $Temp Temporary diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/3.shapes.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/3.shapes.mcfunction deleted file mode 100644 index d2d1920cd5..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/3.shapes.mcfunction +++ /dev/null @@ -1,38 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/rain_cloud/3.shapes -# -# 当たり判定の表示だよ -# -# @within function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/2.main - -# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmHAKwBmNA7KQEYDMAtHAEymlsAsATgCMNNgEMAbKTgcBYoaRYsaLMUxRgCAOzEBbBMkBhigAIhmsDDEY9AZyTgUAe0JaISFgAYCKOK7gZ7MAA3MWxCA3AADyQvMCgYgF8EgmtSNEI7RD4AOioCGwgrN0RYuGxsNBgbAyEPWIxHQogDWLQbAFFyyur2gEdCUOwoAGVLH3JEGlDqpIBdIA_3 -# 円 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^0 ^ ^-4.5 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^0.9356 ^ ^-4.40166 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^1.83031 ^ ^-4.11095 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^2.64503 ^ ^-3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^3.34415 ^ ^-3.01109 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^3.89711 ^ ^-2.25 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^4.27975 ^ ^-1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^4.47535 ^ ^-0.47038 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^4.47535 ^ ^0.47038 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^4.27975 ^ ^1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^3.89711 ^ ^2.25 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^3.34415 ^ ^3.01109 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^2.64503 ^ ^3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^1.83031 ^ ^4.11095 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^0.9356 ^ ^4.40166 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^0 ^ ^4.5 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-0.9356 ^ ^4.40166 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-1.83031 ^ ^4.11095 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-2.64503 ^ ^3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-3.34415 ^ ^3.01109 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-3.89711 ^ ^2.25 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-4.27975 ^ ^1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-4.47535 ^ ^0.47038 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-4.47535 ^ ^-0.47038 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-4.27975 ^ ^-1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-3.89711 ^ ^-2.25 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-3.34415 ^ ^-3.01109 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-2.64503 ^ ^-3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-1.83031 ^ ^-4.11095 0 0 0 0 1 -particle dust_color_transition 0 1 1 1 0 0 1 ^-0.9356 ^ ^-4.40166 0 0 0 0 1 diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/4.effect.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/4.effect.mcfunction deleted file mode 100644 index 10dd42ac7c..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/4.effect.mcfunction +++ /dev/null @@ -1,57 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/rain_cloud/4.effect -# -# 雨のダメージ処理と回復処理 -# -# @within function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/2.main - -#> Private -# @private - #declare score_holder $AttackWater - -# 演出 - playsound entity.dolphin.swim player @a ~ ~ ~ 0.7 1.5 0 - playsound entity.dolphin.swim player @a ~ ~ ~ 0.7 1.8 0 - playsound ogg:ambient.underwater.additions.bubbles6 player @a ~ ~ ~ 0.5 1.5 0 - execute positioned ~ ~0.25 ~ run function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/5.effect_vfx - execute positioned ~ ~0.8 ~ run function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/5.effect_vfx - -# 自身を判別するTagを自身に付与 - tag @s add P8.This - execute as @a if score @s UserID = @e[type=marker,tag=P8.This,limit=1] P8.UserID run tag @s add P8.Owner - -# ダメージ - data modify storage api: Argument.Damage set value 1200.0f - data modify storage api: Argument.AttackType set value "Magic" - data modify storage api: Argument.ElementType set value "Water" - execute as @p[tag=P8.Owner] run function api:damage/modifier - execute as @e[type=#lib:living,tag=Enemy,tag=P8.TargetEntity,tag=!Uninterferable,distance=..10] run function api:damage/ - function api:damage/reset - -# 回復 - # 水攻撃補正をstorageに入れる (補正1.2の場合、0.2になるように計算) - execute as @p[tag=P8.Owner] run function api:modifier/attack/water/get - execute store result score $AttackWater Temporary run data get storage api: Return.Attack.Water 100 - scoreboard players operation $AttackWater Temporary -= $100 Const - execute store result storage api: Argument.Amount double 0.01 run scoreboard players get $AttackWater Temporary - - # 体力回復量補正に水攻撃補正を掛ける - data modify storage api: Argument.UUID set value [I;1,1,907,0] - data modify storage api: Argument.Operation set value "multiply" - execute as @p[tag=P8.Owner] run function api:modifier/heal/add - - # 範囲内のプレイヤーを使用者の最大体力の10%分回復 - execute as @p[tag=Object] run function api:modifier/max_health/get - execute store result storage api: Argument.Heal float 0.1 run data get storage api: Return.MaxHealth - execute as @p[tag=P8.Owner] run function api:heal/modifier - execute as @a[tag=P8.TargetEntity,distance=..10] run function api:heal/ - function api:heal/reset - - # 体力回復補正から水攻撃補正を取り除く - data modify storage api: Argument.UUID set value [I;1,1,907,0] - execute as @p[tag=P8.Owner] run function api:modifier/heal/remove - -# リセット - tag @e[type=#lib:living,tag=P8.TargetEntity,distance=..10] remove P8.TargetEntity - tag @s remove P8.This - tag @p[tag=P8.Owner] remove P8.Owner - scoreboard players reset $AttackWater Temporary diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/5.effect_vfx.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/5.effect_vfx.mcfunction deleted file mode 100644 index d4c880ebf4..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rain_cloud/5.effect_vfx.mcfunction +++ /dev/null @@ -1,108 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/rain_cloud/5.effect_vfx -# -# 効果発動時の演出 -# -# @within function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/4.effect - -# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmACwDsARrQEwCGtKAtAMyUCsADG5RQBGdrTgdubAJwAzXqV6061JtyFgCAOyYBbBMkBhigAJ1BGEwy6AzknAoA9oU0QkQ3rwIo4zuBltgANyZsQn1wAA8kDzAoKIBfOIJLUjRCG0RKADpuAisICxdEaLhsbDQYK303aIx7fIh9aLQrAFFS8sqWgEdCYOwoAGVzL3JEGWDKhIBdIA_3 -# 円 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0 ^ ^-4.5 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.28256 ^ ^-4.49112 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.564 ^ ^-4.46452 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.84322 ^ ^-4.42029 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.1191 ^ ^-4.35862 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.39058 ^ ^-4.27975 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.65656 ^ ^-4.18399 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.91601 ^ ^-4.07172 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.16789 ^ ^-3.94338 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.41122 ^ ^-3.79948 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.64503 ^ ^-3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.86841 ^ ^-3.46731 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.08046 ^ ^-3.28036 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.28036 ^ ^-3.08046 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.46731 ^ ^-2.86841 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.64058 ^ ^-2.64503 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.79948 ^ ^-2.41122 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.94338 ^ ^-2.16789 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.07172 ^ ^-1.91601 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.18399 ^ ^-1.65656 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.27975 ^ ^-1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.35862 ^ ^-1.1191 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.42029 ^ ^-0.84322 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.46452 ^ ^-0.564 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.49112 ^ ^-0.28256 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.5 ^ ^0 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.49112 ^ ^0.28256 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.46452 ^ ^0.564 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.42029 ^ ^0.84322 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.35862 ^ ^1.1191 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.27975 ^ ^1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.18399 ^ ^1.65656 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.07172 ^ ^1.91601 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.94338 ^ ^2.16789 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.79948 ^ ^2.41122 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.64058 ^ ^2.64503 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.46731 ^ ^2.86841 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.28036 ^ ^3.08046 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.08046 ^ ^3.28036 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.86841 ^ ^3.46731 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.64503 ^ ^3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.41122 ^ ^3.79948 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.16789 ^ ^3.94338 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.91601 ^ ^4.07172 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.65656 ^ ^4.18399 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.39058 ^ ^4.27975 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.1191 ^ ^4.35862 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.84322 ^ ^4.42029 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.564 ^ ^4.46452 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.28256 ^ ^4.49112 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^0 ^ ^4.5 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.28256 ^ ^4.49112 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.564 ^ ^4.46452 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.84322 ^ ^4.42029 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.1191 ^ ^4.35862 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.39058 ^ ^4.27975 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.65656 ^ ^4.18399 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.91601 ^ ^4.07172 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.16789 ^ ^3.94338 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.41122 ^ ^3.79948 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.64503 ^ ^3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.86841 ^ ^3.46731 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.08046 ^ ^3.28036 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.28036 ^ ^3.08046 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.46731 ^ ^2.86841 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.64058 ^ ^2.64503 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.79948 ^ ^2.41122 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.94338 ^ ^2.16789 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.07172 ^ ^1.91601 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.18399 ^ ^1.65656 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.27975 ^ ^1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.35862 ^ ^1.1191 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.42029 ^ ^0.84322 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.46452 ^ ^0.564 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.49112 ^ ^0.28256 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.5 ^ ^0 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.49112 ^ ^-0.28256 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.46452 ^ ^-0.564 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.42029 ^ ^-0.84322 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.35862 ^ ^-1.1191 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.27975 ^ ^-1.39058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.18399 ^ ^-1.65656 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.07172 ^ ^-1.91601 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.94338 ^ ^-2.16789 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.79948 ^ ^-2.41122 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.64058 ^ ^-2.64503 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.46731 ^ ^-2.86841 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.28036 ^ ^-3.08046 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.08046 ^ ^-3.28036 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.86841 ^ ^-3.46731 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.64503 ^ ^-3.64058 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.41122 ^ ^-3.79948 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.16789 ^ ^-3.94338 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.91601 ^ ^-4.07172 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.65656 ^ ^-4.18399 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.39058 ^ ^-4.27975 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.1191 ^ ^-4.35862 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.84322 ^ ^-4.42029 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.564 ^ ^-4.46452 0 0 0 0 1 -particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.28256 ^ ^-4.49112 0 0 0 0 1 diff --git a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rejoin_process.mcfunction b/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rejoin_process.mcfunction deleted file mode 100644 index 82332dfaec..0000000000 --- a/Asset/data/asset/functions/artifact/0907.rod_of_rain/trigger/rejoin_process.mcfunction +++ /dev/null @@ -1,8 +0,0 @@ -#> asset:artifact/0907.rod_of_rain/trigger/rejoin_process -# -# 使い方は必ずwikiを見ること -# -# @within tag/function asset:rejoin - -# スケジュールループ再開 - execute if entity @e[type=marker,tag=P8.RainCloud,limit=1] run schedule function asset:artifact/0907.rod_of_rain/trigger/rain_cloud/1.loop 1t replace diff --git a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/give/2.give.mcfunction index 9d3971cee3..6683aec28f 100644 --- a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/give/2.give.mcfunction @@ -52,9 +52,9 @@ # グローバルクールダウン (int) (オプション) # data modify storage asset:artifact SpecialCooldown set value # クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableCooldownMessage set value + data modify storage asset:artifact DisableCooldownMessage set value true # MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableMPMessage set value + data modify storage asset:artifact DisableMPMessage set value true # 扱える神 (string[]) Wikiを参照 data modify storage asset:artifact CanUsedGod set value ["Urban", "Rumor"] # カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション) diff --git a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/2.check_condition.mcfunction index 2170d2c704..b8063f63db 100644 --- a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/2.check_condition.mcfunction @@ -6,7 +6,13 @@ # 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く function asset:artifact/common/check_condition/head -# 他にアイテム等確認する場合はここに書く - + +# 発動ロックエフェクトがついてるか確認 + execute if entity @s[tag=CanUsed] run data modify storage api: Argument.ID set value 306 + execute if entity @s[tag=CanUsed] run function api:entity/mob/effect/get/from_id + +# 付与されていたらCanUsedを削除 + execute if entity @s[tag=CanUsed] if data storage api: Return.Effect run tag @s remove CanUsed + # CanUsedタグをチェックして3.main.mcfunctionを実行する - execute if entity @s[tag=CanUsed] run function asset:artifact/0911.reactive_armor_head/trigger/3.main \ No newline at end of file + execute if entity @s[tag=CanUsed] run function asset:artifact/0911.reactive_armor_head/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.1.explosion.mcfunction b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.1.explosion.mcfunction index f79a0dc80f..6a007204ca 100644 --- a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.1.explosion.mcfunction +++ b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.1.explosion.mcfunction @@ -13,9 +13,10 @@ function api:damage/reset # プレイヤーへのダメージ - data modify storage api: Argument.Damage set value 20f + data modify storage api: Argument.Damage set value 10f data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "Fire" + data modify storage api: Argument.FixedDamage set value true data modify storage api: Argument.DeathMessage set value ['[{"translate": "%1$sはリアクティブアーマーの爆発に巻き込まれた","with":[{"selector":"@s"}]}]'] function api:damage/modifier execute as @a[tag=!this,distance=..3] run function api:damage/ diff --git a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.main.mcfunction index 3529b0a1e3..8411185877 100644 --- a/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0911.reactive_armor_head/trigger/3.main.mcfunction @@ -11,5 +11,7 @@ # 爆発で周囲にダメージを与える function asset:artifact/0911.reactive_armor_head/trigger/3.1.explosion -# アーマータフネスと耐久値を減らす - item modify entity @s armor.head asset:artifact/0911.reactive_armor_head/decrease_toughness \ No newline at end of file +# 同一tickで1回しか爆発させないためにeffectをつけてもう発動したことをマーク + data modify storage api: Argument.ID set value 306 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/give/2.give.mcfunction index 2d79aeb7cd..c9ce8a9742 100644 --- a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/give/2.give.mcfunction @@ -52,9 +52,9 @@ # グローバルクールダウン (int) (オプション) # data modify storage asset:artifact SpecialCooldown set value # クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableCooldownMessage set value + data modify storage asset:artifact DisableCooldownMessage set value true # MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableMPMessage set value + data modify storage asset:artifact DisableMPMessage set value true # 扱える神 (string[]) Wikiを参照 data modify storage asset:artifact CanUsedGod set value ["Urban", "Rumor"] # カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション) diff --git a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/2.check_condition.mcfunction index a12d64c156..ef9212a5c8 100644 --- a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/2.check_condition.mcfunction @@ -6,7 +6,13 @@ # 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く function asset:artifact/common/check_condition/chest -# 他にアイテム等確認する場合はここに書く - + +# 発動ロックエフェクトがついてるか確認 + execute if entity @s[tag=CanUsed] run data modify storage api: Argument.ID set value 306 + execute if entity @s[tag=CanUsed] run function api:entity/mob/effect/get/from_id + +# 付与されていたらCanUsedを削除 + execute if entity @s[tag=CanUsed] if data storage api: Return.Effect run tag @s remove CanUsed + # CanUsedタグをチェックして3.main.mcfunctionを実行する - execute if entity @s[tag=CanUsed] run function asset:artifact/0912.reactive_armor_chest/trigger/3.main \ No newline at end of file + execute if entity @s[tag=CanUsed] run function asset:artifact/0912.reactive_armor_chest/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.1.explosion.mcfunction b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.1.explosion.mcfunction index 00459ca130..4567a6e49e 100644 --- a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.1.explosion.mcfunction +++ b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.1.explosion.mcfunction @@ -13,9 +13,10 @@ function api:damage/reset # プレイヤーへのダメージ - data modify storage api: Argument.Damage set value 20f + data modify storage api: Argument.Damage set value 10f data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "Fire" + data modify storage api: Argument.FixedDamage set value true data modify storage api: Argument.DeathMessage set value ['[{"translate": "%1$sはリアクティブアーマーの爆発に巻き込まれた","with":[{"selector":"@s"}]}]'] function api:damage/modifier execute as @a[tag=!this,distance=..3] run function api:damage/ diff --git a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.main.mcfunction index e6cbfca65b..668a17718e 100644 --- a/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0912.reactive_armor_chest/trigger/3.main.mcfunction @@ -11,5 +11,7 @@ # 爆発で周囲にダメージを与える function asset:artifact/0912.reactive_armor_chest/trigger/3.1.explosion -# アーマータフネスと耐久値を減らす - item modify entity @s armor.chest asset:artifact/0912.reactive_armor_chest/decrease_toughness \ No newline at end of file +# 同一tickで1回しか爆発させないためにeffectをつけてもう発動したことをマーク + data modify storage api: Argument.ID set value 306 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/give/2.give.mcfunction index 2c2eada23d..130305df18 100644 --- a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/give/2.give.mcfunction @@ -52,9 +52,9 @@ # グローバルクールダウン (int) (オプション) # data modify storage asset:artifact SpecialCooldown set value # クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableCooldownMessage set value + data modify storage asset:artifact DisableCooldownMessage set value true # MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableMPMessage set value + data modify storage asset:artifact DisableMPMessage set value true # 扱える神 (string[]) Wikiを参照 data modify storage asset:artifact CanUsedGod set value ["Urban", "Rumor"] # カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション) diff --git a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/2.check_condition.mcfunction index a831f5ec54..9055047eb3 100644 --- a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/2.check_condition.mcfunction @@ -6,7 +6,13 @@ # 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く function asset:artifact/common/check_condition/legs -# 他にアイテム等確認する場合はここに書く + +# 発動ロックエフェクトがついてるか確認 + execute if entity @s[tag=CanUsed] run data modify storage api: Argument.ID set value 306 + execute if entity @s[tag=CanUsed] run function api:entity/mob/effect/get/from_id + +# 付与されていたらCanUsedを削除 + execute if entity @s[tag=CanUsed] if data storage api: Return.Effect run tag @s remove CanUsed # CanUsedタグをチェックして3.main.mcfunctionを実行する - execute if entity @s[tag=CanUsed] run function asset:artifact/0913.reactive_armor_legs/trigger/3.main \ No newline at end of file + execute if entity @s[tag=CanUsed] run function asset:artifact/0913.reactive_armor_legs/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.1.explosion.mcfunction b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.1.explosion.mcfunction index 4ee571ec76..a2cf9119ec 100644 --- a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.1.explosion.mcfunction +++ b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.1.explosion.mcfunction @@ -13,9 +13,10 @@ function api:damage/reset # プレイヤーへのダメージ - data modify storage api: Argument.Damage set value 20f + data modify storage api: Argument.Damage set value 10f data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "Fire" + data modify storage api: Argument.FixedDamage set value true data modify storage api: Argument.DeathMessage set value ['[{"translate": "%1$sはリアクティブアーマーの爆発に巻き込まれた","with":[{"selector":"@s"}]}]'] function api:damage/modifier execute as @a[tag=!this,distance=..3] run function api:damage/ diff --git a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.main.mcfunction index 4fa28bae51..4c5fa779a0 100644 --- a/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0913.reactive_armor_legs/trigger/3.main.mcfunction @@ -11,5 +11,7 @@ # 爆発で周囲にダメージを与える function asset:artifact/0913.reactive_armor_legs/trigger/3.1.explosion -# アーマータフネスと耐久値を減らす - item modify entity @s armor.legs asset:artifact/0913.reactive_armor_legs/decrease_toughness \ No newline at end of file +# 同一tickで1回しか爆発させないためにeffectをつけてもう発動したことをマーク + data modify storage api: Argument.ID set value 306 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/give/2.give.mcfunction index 1e37773dff..4bdbd27ffc 100644 --- a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/give/2.give.mcfunction @@ -52,9 +52,9 @@ # グローバルクールダウン (int) (オプション) # data modify storage asset:artifact SpecialCooldown set value # クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableCooldownMessage set value + data modify storage asset:artifact DisableCooldownMessage set value true # MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) - # data modify storage asset:artifact DisableMPMessage set value + data modify storage asset:artifact DisableMPMessage set value true # 扱える神 (string[]) Wikiを参照 data modify storage asset:artifact CanUsedGod set value ["Urban", "Rumor"] # カスタムNBT (NBTCompound) 追加で指定したいNBT (オプション) diff --git a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/2.check_condition.mcfunction index ee26051863..8f7aa9fe36 100644 --- a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/2.check_condition.mcfunction @@ -6,7 +6,13 @@ # 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く function asset:artifact/common/check_condition/feet -# 他にアイテム等確認する場合はここに書く + +# 発動ロックエフェクトがついてるか確認 + execute if entity @s[tag=CanUsed] run data modify storage api: Argument.ID set value 306 + execute if entity @s[tag=CanUsed] run function api:entity/mob/effect/get/from_id + +# 付与されていたらCanUsedを削除 + execute if entity @s[tag=CanUsed] if data storage api: Return.Effect run tag @s remove CanUsed # CanUsedタグをチェックして3.main.mcfunctionを実行する - execute if entity @s[tag=CanUsed] run function asset:artifact/0914.reactive_armor_feet/trigger/3.main \ No newline at end of file + execute if entity @s[tag=CanUsed] run function asset:artifact/0914.reactive_armor_feet/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.1.explosion.mcfunction b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.1.explosion.mcfunction index fcc0227d99..78091bdfa4 100644 --- a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.1.explosion.mcfunction +++ b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.1.explosion.mcfunction @@ -13,9 +13,10 @@ function api:damage/reset # プレイヤーへのダメージ - data modify storage api: Argument.Damage set value 20f + data modify storage api: Argument.Damage set value 10f data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "Fire" + data modify storage api: Argument.FixedDamage set value true data modify storage api: Argument.DeathMessage set value ['[{"translate": "%1$sはリアクティブアーマーの爆発に巻き込まれた","with":[{"selector":"@s"}]}]'] function api:damage/modifier execute as @a[tag=!this,distance=..3] run function api:damage/ diff --git a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.main.mcfunction index 2abda37c8e..5c45e8e0f9 100644 --- a/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0914.reactive_armor_feet/trigger/3.main.mcfunction @@ -11,5 +11,7 @@ # 爆発で周囲にダメージを与える function asset:artifact/0914.reactive_armor_feet/trigger/3.1.explosion -# アーマータフネスと耐久値を減らす - item modify entity @s armor.feet asset:artifact/0914.reactive_armor_feet/decrease_toughness \ No newline at end of file +# 同一tickで1回しか爆発させないためにeffectをつけてもう発動したことをマーク + data modify storage api: Argument.ID set value 306 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0927.lexiel_s_oath/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0927.lexiel_s_oath/trigger/3.main.mcfunction index e3501ca25d..473977b83e 100644 --- a/Asset/data/asset/functions/artifact/0927.lexiel_s_oath/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0927.lexiel_s_oath/trigger/3.main.mcfunction @@ -21,20 +21,11 @@ playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.5 playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 + # ダメージ - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~100の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $100 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 720 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "None" + execute store result storage api: Argument.Damage float 1 run random value 720..820 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "None" # 確率で相手に9999ダメージ execute if predicate lib:random_pass_per/5 run function asset:artifact/0927.lexiel_s_oath/trigger/4.critical_hit @@ -50,4 +41,3 @@ # リセット function api:damage/reset scoreboard players reset $RandomDamage Temporary - scoreboard players reset $Rotate Temporary diff --git a/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/3.main.mcfunction index e4b4b1cd4a..f831c823f5 100644 --- a/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/3.main.mcfunction @@ -35,9 +35,7 @@ tag @s remove Landing # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # 向きを適当に変える execute unless predicate lib:is_sneaking if score $Random Temporary matches 0 run tp @s ~ ~ ~ ~ ~-1 execute unless predicate lib:is_sneaking if score $Random Temporary matches 1 run tp @s ~ ~ ~ ~-1 ~-1 diff --git a/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/hit.mcfunction b/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/hit.mcfunction index 7186376c3e..d5d84302b5 100644 --- a/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/hit.mcfunction +++ b/Asset/data/asset/functions/artifact/0948.ft_139_rifle/trigger/hit.mcfunction @@ -15,8 +15,8 @@ # ダメージ scoreboard players add $Damage Temporary 145 # 属性 - data modify storage lib: Argument.AttackType set value "Magic" - data modify storage lib: Argument.ElementType set value "Thunder" + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Thunder" # もし、適正距離じゃなかった場合、距離-適正距離=減少ダメージにする execute if score $Distance_Damping Temporary >= $Appropriate_Distance Temporary run function asset:artifact/0948.ft_139_rifle/trigger/damage_attenuation # ダメージ量確定 diff --git a/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/give/2.give.mcfunction index b1e5797369..124b9c66db 100644 --- a/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/give/2.give.mcfunction @@ -15,7 +15,7 @@ # 神器の名前 (TextComponentString) data modify storage asset:artifact Name set value '{"text":"カボチャの怨念の残滓","color":"#FFAA00"}' # 神器の説明文 (TextComponentString[]) - data modify storage asset:artifact Lore set value ['{"text":"満腹度を回復し","color":"white"}','[{"text":"移動速度上昇と暗視を30秒間得る。","color":"white"}]','[{"text":"僅かに残ったジャック・オ・ランタンの魂。","color":"gray"}]','[{"text":"魂を吸収することで妖しく幽かに輝く。","color":"gray"}]'] + data modify storage asset:artifact Lore set value ['{"text":"満腹度を回復し","color":"white"}','[{"text":"移動速度+20%と暗視を30秒間得る。","color":"white"}]','[{"text":"僅かに残ったジャック・オ・ランタンの魂。","color":"gray"}]','[{"text":"魂を吸収することで妖しく幽かに輝く。","color":"gray"}]'] # 消費アイテム ({Item: TextComponent, Count: int, Extra?: TextComponent}) (オプション) # data modify storage asset:artifact ConsumeItem.Item set value # data modify storage asset:artifact ConsumeItem.Count set value diff --git a/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/trigger/3.main.mcfunction index a00dabade3..71e36cc5fc 100644 --- a/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0950.residue_of_pumpkin/trigger/3.main.mcfunction @@ -14,7 +14,10 @@ particle dust 0.851 0 1 1 ~ ~1.2 ~ 0.6 0.4 0.6 0 100 normal @a playsound entity.witch.celebrate player @a ~ ~ ~ 0.8 1.8 0 -# 効果 - effect give @s speed 30 0 true - effect give @s night_vision 30 0 true +# 満腹度回復 effect give @s saturation 2 0 true + +# バフ + data modify storage api: Argument.ID set value 304 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/0983.icicle_blade/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/0983.icicle_blade/trigger/3.main.mcfunction index b03b725bc3..c293caaa82 100644 --- a/Asset/data/asset/functions/artifact/0983.icicle_blade/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/0983.icicle_blade/trigger/3.main.mcfunction @@ -4,10 +4,6 @@ # # @within function asset:artifact/0983.icicle_blade/trigger/2.check_condition -#> private -# @private - #declare score_holder $Random - # 基本的な使用時の処理(MP消費や使用回数の処理など)を行う function asset:artifact/common/use/mainhand @@ -20,9 +16,7 @@ # パーティクル # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $11 Const - execute store result storage asset:temp RB.Particle int 1 run scoreboard players add $Random Temporary 1 + execute store result storage asset:temp RB.Particle int 1 run random value 1..11 # 処理を呼び出す function asset:artifact/0983.icicle_blade/trigger/vfx/.m with storage asset:temp RB @@ -30,5 +24,4 @@ function asset:artifact/0983.icicle_blade/trigger/damage # リセット - scoreboard players reset $Random Temporary data remove storage asset:temp RB diff --git a/Asset/data/asset/functions/artifact/1027.fire_of_rebirth/trigger/summon.mcfunction b/Asset/data/asset/functions/artifact/1027.fire_of_rebirth/trigger/summon.mcfunction index d7a2ac9ca6..a6f800a4b1 100644 --- a/Asset/data/asset/functions/artifact/1027.fire_of_rebirth/trigger/summon.mcfunction +++ b/Asset/data/asset/functions/artifact/1027.fire_of_rebirth/trigger/summon.mcfunction @@ -16,9 +16,7 @@ # 魔法陣の召喚番号 execute store result storage api: Argument.FieldOverride.MagicID int 1 run scoreboard players get $SJ.MagicID Temporary # チャージタイム (乱数アリ) - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $20 Const - execute store result storage api: Argument.FieldOverride.ChargeTime short 1 run scoreboard players add $Random Temporary 5 + execute store result storage api: Argument.FieldOverride.ChargeTime short 1 run random value 5..24 # ダメージ data modify storage api: Argument.FieldOverride.Damage set value 350f diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/0.load.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/0.load.mcfunction deleted file mode 100644 index c85dfe6698..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/0.load.mcfunction +++ /dev/null @@ -1,12 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/0.load -# -# 神器に利用するスコアボード等の初期化処理 -# -# @within tag/function asset:artifact/load - -#> 定義類はここに -# @within function asset:artifact/1029.conviction_bone/trigger/** - scoreboard objectives add SL.SwordTime dummy - scoreboard objectives add SL.CoolTime dummy - scoreboard objectives add SL.ShotTime dummy - scoreboard objectives add SL.UserID dummy diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/2.check_condition.mcfunction index 2973788cf6..a35cde219c 100644 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/2.check_condition.mcfunction @@ -8,9 +8,5 @@ function asset:artifact/common/check_condition/auto # 他にアイテム等確認する場合はここに書く -# これはまあ予備というか念の為のやつ。 - execute if entity @e[type=item_display,tag=SL.Sword,limit=1] run schedule function asset:artifact/1029.conviction_bone/trigger/sword/schedule 1t replace - execute if entity @e[type=marker,tag=SL.Shot,limit=1] run schedule function asset:artifact/1029.conviction_bone/trigger/shot/schedule 1t replace - # CanUsedタグをチェックして3.main.mcfunctionを実行する execute if entity @s[tag=CanUsed] run function asset:artifact/1029.conviction_bone/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/3.main.mcfunction index 5387b914a3..568ea09e6e 100644 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/3.main.mcfunction @@ -14,17 +14,8 @@ particle squid_ink ~ ~ ~ 2 2 2 0 300 normal playsound minecraft:block.end_portal.spawn player @a ~ ~ ~ 1 0.8 -# 剣召喚 - summon item_display ~ ~ ~ {teleport_duration:1,Tags:["SL.Sword","SL.First","Object"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,4f,0f],scale:[5f,5f,5f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20349}}} - -# 剣の寿命を設定する - scoreboard players set @e[type=item_display,tag=SL.First] SL.SwordTime 60 - -# ユーザーID適応 - scoreboard players operation @e[type=item_display,tag=SL.First] SL.UserID = @s UserID - -# タグを消す - tag @e[type=item_display,tag=SL.First] remove SL.First - -# 再帰先へ飛ばす - execute as @e[type=item_display,tag=SL.Sword,limit=1] run function asset:artifact/1029.conviction_bone/trigger/sword/schedule +# Object召喚 + data modify storage api: Argument.ID set value 1099 + data modify storage api: Argument.FieldOverride.Damage set value {Sword:42f,Shot:42f} + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + function api:object/summon diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/_index.d.mcfunction deleted file mode 100644 index d59d847280..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/_index.d.mcfunction +++ /dev/null @@ -1,10 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/_index.d -# @private - -#> tag -# @within function -# asset:artifact/1029.conviction_bone/trigger/** - #declare tag SL.Sword - #declare tag SL.First - #declare tag SL.Shot - #declare tag SL.This diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/hit.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/hit.mcfunction deleted file mode 100644 index dd84c8c787..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/hit.mcfunction +++ /dev/null @@ -1,24 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/shot/hit -# -# -# -# @within function asset:artifact/1029.conviction_bone/trigger/shot/shot - -# 自分にタグ付与 - tag @s add SL.This - -# ダメージを与える - # 与えるダメージ - data modify storage api: Argument.Damage set value 42.0f - # 属性 - data modify storage api: Argument.AttackType set value "Physical" - data modify storage api: Argument.ElementType set value "None" - # 補正function - execute as @a if score @s UserID = @e[type=marker,tag=SL.This,limit=1] SL.UserID run function api:damage/modifier - # 対象に - execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..2,sort=nearest,limit=1] run function api:damage/ - -# リセット - function api:damage/reset - tag @s remove SL.This - scoreboard players set @s SL.CoolTime 0 diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/schedule.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/schedule.mcfunction deleted file mode 100644 index 6bcabadffe..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/schedule.mcfunction +++ /dev/null @@ -1,14 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/shot/schedule -# -# -# -# @within function -# asset:artifact/1029.conviction_bone/trigger/shot/summon -# asset:artifact/1029.conviction_bone/trigger/shot/schedule -# asset:artifact/1029.conviction_bone/trigger/2.check_condition - -# 実行 - execute as @e[type=marker,tag=SL.Shot] at @s run function asset:artifact/1029.conviction_bone/trigger/shot/shot - -# 再帰処理 - execute if entity @e[type=marker,tag=SL.Shot,limit=1] run schedule function asset:artifact/1029.conviction_bone/trigger/shot/schedule 1t replace diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/shot.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/shot.mcfunction deleted file mode 100644 index f46cfcb807..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/shot.mcfunction +++ /dev/null @@ -1,31 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/shot/shot -# -# -# -# @within function asset:artifact/1029.conviction_bone/trigger/shot/schedule - -# 自分にタグ付与 - tag @s add SL.This - -# 移動する - execute unless entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] run tp @s ^ ^ ^0.25 - execute if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] facing entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-200 facing entity @s eyes positioned as @s run tp @s ^ ^ ^0.5 ~ ~ - -# ぱーちくる - #particle soul_fire_flame ~ ~ ~ 0.1 0.1 0.1 0.005 5 force - #particle squid_ink ~ ~ ~ 0.1 0.1 0.1 0.005 2 force - particle dust 0.455 0.027 0.027 4 ~ ~ ~ 0.1 0.1 0.1 5 2 force - -# 寿命を減らす - scoreboard players remove @s SL.ShotTime 1 - -# クールを増やす - scoreboard players add @s SL.CoolTime 1 - -# ダメージ - execute if score @s SL.CoolTime matches 4.. if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..2,sort=nearest,limit=1] run function asset:artifact/1029.conviction_bone/trigger/shot/hit - -# 寿命が来たら発動するやつ。プレイヤーが発動する内容 - execute if score @s SL.ShotTime matches ..0 run kill @s - - tag @s remove SL.This diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/summon.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/summon.mcfunction deleted file mode 100644 index adb97ff3ca..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/shot/summon.mcfunction +++ /dev/null @@ -1,29 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/shot/summon -# -# -# -# @within function asset:artifact/1029.conviction_bone/trigger/sword/sword_kill - -# 演出 - particle minecraft:soul ~ ~ ~ 0 0 0 0.05 20 normal - -# 召喚 - summon marker ~ ~ ~ {Tags:["SL.Shot","SL.First","Object"]} -# 寿命を設定する - scoreboard players set @e[type=marker,tag=SL.First,distance=..10,sort=nearest] SL.ShotTime 60 - -# ユーザーID適応 - scoreboard players operation @e[type=marker,tag=SL.First,distance=..10,sort=nearest] SL.UserID = @s UserID - -# プレイヤーに一回タグ付け - tag @s add SL.This - -# プレイヤーと逆方向を見る - execute as @e[type=marker,tag=SL.First,distance=..10,sort=nearest] at @s facing entity @p[tag=SL.This,distance=..10] eyes rotated ~ 0 run tp @s ~ ~ ~ ~180 0 - -# タグを消す - tag @s remove SL.This - tag @e[type=marker,tag=SL.First,distance=..10,sort=nearest] remove SL.First - -# 再帰先へ飛ばす - execute as @e[type=marker,tag=SL.Shot,limit=1] run function asset:artifact/1029.conviction_bone/trigger/shot/schedule diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/hit.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/hit.mcfunction deleted file mode 100644 index 8754770193..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/hit.mcfunction +++ /dev/null @@ -1,27 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/sword/hit -# -# -# -# @within function asset:artifact/1029.conviction_bone/trigger/sword/sword - -# 自分にタグ付与 - tag @s add SL.This - -# 演出 - playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 - playsound minecraft:entity.player.attack.sweep player @a ~ ~ ~ 1 0 - playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.6 -# ダメージを与える - # 与えるダメージ - data modify storage api: Argument.Damage set value 42.0f - # 属性 - data modify storage api: Argument.AttackType set value "Physical" - data modify storage api: Argument.ElementType set value "None" - # 補正function - execute as @a if score @s UserID = @e[type=item_display,tag=SL.This,distance=..10,sort=nearest,limit=1] SL.UserID run function api:damage/modifier - # 対象に - execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..4] run function api:damage/ - -# リセット - function api:damage/reset - scoreboard players set @s SL.CoolTime 0 diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/schedule.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/schedule.mcfunction deleted file mode 100644 index a6febe2a4d..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/schedule.mcfunction +++ /dev/null @@ -1,14 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/sword/schedule -# -# -# -# @within function -# asset:artifact/1029.conviction_bone/trigger/3.main -# asset:artifact/1029.conviction_bone/trigger/sword/schedule -# asset:artifact/1029.conviction_bone/trigger/2.check_condition - -# 実行 - execute as @e[type=item_display,tag=SL.Sword] at @s run function asset:artifact/1029.conviction_bone/trigger/sword/sword - -# 再帰処理 - execute if entity @e[type=item_display,tag=SL.Sword,limit=1] run schedule function asset:artifact/1029.conviction_bone/trigger/sword/schedule 1t replace diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/sword.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/sword.mcfunction deleted file mode 100644 index f226061bc2..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/sword.mcfunction +++ /dev/null @@ -1,26 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/sword/sword -# -# -# -# @within function asset:artifact/1029.conviction_bone/trigger/sword/schedule - -# 自分にタグ付与 - tag @s add SL.This - -# 回転する -# 持ち主を起点にTP - execute as @a if score @s UserID = @e[type=item_display,tag=SL.This,limit=1] SL.UserID positioned as @s run tp @e[type=item_display,tag=SL.This,limit=1] ~ ~ ~ ~20 ~ - -# 寿命を減らす - scoreboard players remove @s SL.SwordTime 1 -# クールを増やす - scoreboard players add @s SL.CoolTime 1 - -# ダメージ - execute if score @s SL.CoolTime matches 4 run function asset:artifact/1029.conviction_bone/trigger/sword/hit - -# 寿命が来たら発動するやつ。プレイヤーが発動する内容 - execute if score @s SL.SwordTime matches 0 as @a if score @s UserID = @e[type=item_display,tag=SL.This,limit=1] SL.UserID run function asset:artifact/1029.conviction_bone/trigger/sword/sword_kill - execute if score @s SL.SwordTime matches ..0 run kill @s - - tag @s remove SL.This diff --git a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/sword_kill.mcfunction b/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/sword_kill.mcfunction deleted file mode 100644 index d84939b9dd..0000000000 --- a/Asset/data/asset/functions/artifact/1029.conviction_bone/trigger/sword/sword_kill.mcfunction +++ /dev/null @@ -1,23 +0,0 @@ -#> asset:artifact/1029.conviction_bone/trigger/sword/sword_kill -# -# -# -# @within function asset:artifact/1029.conviction_bone/trigger/sword/sword - - -# 弾を召喚 - execute rotated ~ 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - execute rotated ~45 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - execute rotated ~90 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - execute rotated ~135 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - execute rotated ~180 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - execute rotated ~225 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - execute rotated ~270 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - execute rotated ~315 0 positioned ^ ^ ^2 positioned ~ ~1.3 ~ run function asset:artifact/1029.conviction_bone/trigger/shot/summon - -# 演出 - playsound minecraft:item.trident.thunder player @a ~ ~ ~ 4 1 - playsound minecraft:block.respawn_anchor.set_spawn player @a ~ ~ ~ 4 0.7 - -# 自害 - kill @e[type=item_display,tag=SL.This,distance=..20,sort=nearest,limit=1] diff --git a/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/2.flying.mcfunction b/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/2.flying.mcfunction index 1a72b09100..a8c65e83b7 100644 --- a/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/2.flying.mcfunction +++ b/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/2.flying.mcfunction @@ -6,8 +6,8 @@ # 演出のためにランダムな方向を向かせる - execute store result entity @s Rotation[0] float 0.01 run function lib:random/ - execute store result entity @s Rotation[1] float 0.01 run function lib:random/ + execute store result entity @s Rotation[0] float 0.01 run random value 0..35999 + execute store result entity @s Rotation[1] float 0.01 run random value 0..35999 # 演出 execute at @s run function asset:artifact/1037.grand_flame/trigger/schedule/2.1.vfx @@ -17,4 +17,4 @@ # 飛翔時間を超過したエンティティを削除 execute if score @s ST.FlyingTick matches 0 on vehicle run kill @s - execute if score @s ST.FlyingTick matches 0 run kill @s \ No newline at end of file + execute if score @s ST.FlyingTick matches 0 run kill @s diff --git a/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/3.landing.mcfunction b/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/3.landing.mcfunction index 36b20bb40c..7a0d14eef4 100644 --- a/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/3.landing.mcfunction +++ b/Asset/data/asset/functions/artifact/1037.grand_flame/trigger/schedule/3.landing.mcfunction @@ -34,22 +34,22 @@ function asset:artifact/1037.grand_flame/trigger/schedule/3.1.vfx # 演出のためにランダムな方向を向かせる - execute store result entity @s Rotation[0] float 0.01 run function lib:random/ - execute store result entity @s Rotation[1] float 0.01 run function lib:random/ + execute store result entity @s Rotation[0] float 0.01 run random value 0..35999 + execute store result entity @s Rotation[1] float 0.01 run random value 0..35999 # 動的パーティクル演出 execute at @s run function asset:artifact/1037.grand_flame/trigger/schedule/3.2.random_vfx # 演出のためにランダムな方向を向かせる - execute store result entity @s Rotation[0] float 0.01 run function lib:random/ - execute store result entity @s Rotation[1] float 0.01 run function lib:random/ + execute store result entity @s Rotation[0] float 0.01 run random value 0..35999 + execute store result entity @s Rotation[1] float 0.01 run random value 0..35999 # 動的パーティクル演出 execute at @s run function asset:artifact/1037.grand_flame/trigger/schedule/3.2.random_vfx # 演出のためにランダムな方向を向かせる - execute store result entity @s Rotation[0] float 0.01 run function lib:random/ - execute store result entity @s Rotation[1] float 0.01 run function lib:random/ + execute store result entity @s Rotation[0] float 0.01 run random value 0..35999 + execute store result entity @s Rotation[1] float 0.01 run random value 0..35999 # 動的パーティクル演出 execute at @s run function asset:artifact/1037.grand_flame/trigger/schedule/3.2.random_vfx diff --git a/Asset/data/asset/functions/artifact/1045.mini_black_hole/trigger/schedule/2.flying.mcfunction b/Asset/data/asset/functions/artifact/1045.mini_black_hole/trigger/schedule/2.flying.mcfunction index d46dd8f443..58af5010b7 100644 --- a/Asset/data/asset/functions/artifact/1045.mini_black_hole/trigger/schedule/2.flying.mcfunction +++ b/Asset/data/asset/functions/artifact/1045.mini_black_hole/trigger/schedule/2.flying.mcfunction @@ -5,8 +5,8 @@ # @within function asset:artifact/1045.mini_black_hole/trigger/schedule/1.tick # 演出のためにランダムな方向を向かせる - execute store result entity @s Rotation[0] float 0.01 run function lib:random/ - execute store result entity @s Rotation[1] float 0.01 run function lib:random/ + execute store result entity @s Rotation[0] float 0.01 run random value 0..35999 + execute store result entity @s Rotation[1] float 0.01 run random value 0..35999 # 演出 execute at @s run function asset:artifact/1045.mini_black_hole/trigger/schedule/2.1.flying_vfx @@ -16,4 +16,4 @@ # 飛翔時間を超過した場合、キルする execute if score @s T1.FlyingTick matches 0 on vehicle run kill @s - execute if score @s T1.FlyingTick matches 0 run kill @s \ No newline at end of file + execute if score @s T1.FlyingTick matches 0 run kill @s diff --git a/Asset/data/asset/functions/artifact/1078.pigeon_blood/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1078.pigeon_blood/trigger/3.main.mcfunction index 58fa4665e6..b37d3e06bf 100644 --- a/Asset/data/asset/functions/artifact/1078.pigeon_blood/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1078.pigeon_blood/trigger/3.main.mcfunction @@ -21,8 +21,7 @@ scoreboard players add @s TY.Count 1 # 0~2の乱数を求める - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # 使用回数とランダムで斬撃演出を変える # 斬撃パターンは2種類で交互に変わる @@ -50,16 +49,6 @@ #> Private # @private #declare tag Critical - #declare score_holder $RandomDamage - #declare score_holder $301 - -# 301を定義 - scoreboard players set $301 Temporary 301 - -# ダメージのブレ(0~300) - execute store result score $RandomDamage Temporary run function lib:random/ - scoreboard players operation $RandomDamage Temporary %= $301 Temporary - scoreboard players add $RandomDamage Temporary 350 # クリティカル判定 execute if predicate lib:random_pass_per/20 run tag @s add Critical @@ -70,7 +59,7 @@ # ダメージ # クリティカルでダメージ上昇、共鳴時にダメージ上昇 - execute store result storage api: Argument.Damage int 1 run scoreboard players get $RandomDamage Temporary + execute store result storage api: Argument.Damage int 1 run random value 350..650 execute if entity @s[tag=Critical] store result storage api: Argument.Damage float 1.5 run data get storage api: Argument.Damage execute if entity @s[tag=Resonance] store result storage api: Argument.Damage float 1.2 run data get storage api: Argument.Damage data modify storage api: Argument.AttackType set value "Physical" @@ -85,5 +74,3 @@ tag @s[tag=Resonance] remove Resonance tag @s[tag=Critical] remove Critical scoreboard players reset $Random Temporary - scoreboard players reset $301 Temporary - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/artifact/1079.allochromatic/trigger/resonance_attack/5.attack.mcfunction b/Asset/data/asset/functions/artifact/1079.allochromatic/trigger/resonance_attack/5.attack.mcfunction index 0a3c26254d..bb0684769a 100644 --- a/Asset/data/asset/functions/artifact/1079.allochromatic/trigger/resonance_attack/5.attack.mcfunction +++ b/Asset/data/asset/functions/artifact/1079.allochromatic/trigger/resonance_attack/5.attack.mcfunction @@ -13,8 +13,7 @@ scoreboard players add @s TZ.Count 1 # 0~2の乱数を求める - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # 演出 execute positioned ^ ^ ^-0.3 run function asset:artifact/1079.allochromatic/trigger/resonance_attack/vfx/square diff --git a/Asset/data/asset/functions/artifact/1083.tablet_of_oracle/trigger/4.buff.mcfunction b/Asset/data/asset/functions/artifact/1083.tablet_of_oracle/trigger/4.buff.mcfunction index f70ca6e973..4af6a97a65 100644 --- a/Asset/data/asset/functions/artifact/1083.tablet_of_oracle/trigger/4.buff.mcfunction +++ b/Asset/data/asset/functions/artifact/1083.tablet_of_oracle/trigger/4.buff.mcfunction @@ -14,8 +14,7 @@ data modify storage asset:temp Random set value [248,249,250,251] # 0~3の乱数を取得する - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $4 Const + execute store result score $Random Temporary run random value 0..3 # (乱数)番目のIDのEffectのIDを代入する execute if score $Random Temporary matches 0 run data modify storage api: Argument.ID set from storage asset:temp Random[0] @@ -34,8 +33,7 @@ function api:entity/mob/effect/reset # 0~2の乱数を取得する - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # (乱数)番目のIDのEffectのIDを代入する execute if score $Random Temporary matches 0 run data modify storage api: Argument.ID set from storage asset:temp Random[0] diff --git a/Asset/data/asset/functions/artifact/1106.rainbow_candy/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1106.rainbow_candy/trigger/3.main.mcfunction index b2e05f9beb..0c92f56348 100644 --- a/Asset/data/asset/functions/artifact/1106.rainbow_candy/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1106.rainbow_candy/trigger/3.main.mcfunction @@ -9,10 +9,6 @@ # ここから先は神器側の効果の処理を書く -#> Private -# @private - #declare score_holder $Random - # 演出 particle minecraft:entity_effect ~ ~1.2 ~ 0.4 0.4 0.4 1 7 playsound ogg:random.levelup player @a ~ ~ ~ 0.3 2 @@ -20,18 +16,11 @@ # HPとMPを1~7回復する。HPとMPのランダム判定は独立している # HPを1~7回復する - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $7 Const - execute store result storage api: Argument.Heal int 1 run scoreboard players add $Random Temporary 1 + execute store result storage api: Argument.Heal int 1 run random value 1..7 function api:heal/modifier function api:heal/ function api:heal/reset # MPを1~7回復する - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $7 Const - execute store result storage api: Argument.Fluctuation int 1 run scoreboard players add $Random Temporary 1 + execute store result storage api: Argument.Fluctuation int 1 run random value 1..7 function api:mp/fluctuation - -# リセット - scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/artifact/1113.trick_and_treat/trigger/random_face.mcfunction b/Asset/data/asset/functions/artifact/1113.trick_and_treat/trigger/random_face.mcfunction index 171ae33839..ceae6042e3 100644 --- a/Asset/data/asset/functions/artifact/1113.trick_and_treat/trigger/random_face.mcfunction +++ b/Asset/data/asset/functions/artifact/1113.trick_and_treat/trigger/random_face.mcfunction @@ -5,8 +5,7 @@ # @within function asset:artifact/1113.trick_and_treat/trigger/summon_pumpkin # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $9 Const + execute store result score $Random Temporary run random value 0..8 # ID選択 execute if score $Random Temporary matches 0 run scoreboard players set $Temp Temporary 20201 diff --git a/Asset/data/asset/functions/artifact/1117.ghost_marshmallow/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1117.ghost_marshmallow/trigger/3.main.mcfunction index 9d5f0ab475..964b675644 100644 --- a/Asset/data/asset/functions/artifact/1117.ghost_marshmallow/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1117.ghost_marshmallow/trigger/3.main.mcfunction @@ -17,6 +17,7 @@ data modify storage api: Argument.Fluctuation set value 30 function api:mp/fluctuation -# 低速落下と透明化 - effect give @s slow_falling 15 0 true - effect give @s invisibility 15 0 true +# エフェクトを付与 + data modify storage api: Argument.ID set value 271 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/artifact/1166.airlift/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1166.airlift/give/1.trigger.mcfunction new file mode 100644 index 0000000000..bfd3ce35cd --- /dev/null +++ b/Asset/data/asset/functions/artifact/1166.airlift/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1166.airlift/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1166} run function asset:artifact/1166.airlift/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1166.airlift/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1166.airlift/give/2.give.mcfunction new file mode 100644 index 0000000000..a0eddf8416 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1166.airlift/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1166.airlift/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1166.airlift/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1166 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"ルフトブリュッケ","color":"white"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"輸送機が敵と対峙したプレイヤーに支援を与える。"}','{"text":"着陸地点周囲のプレイヤーのHPを最大HPの50%回復し、"}','{"text":"さらに支援物資をドロップする。"}','{"text":"時が立ち、その翼は死の代わりに生を運んだ。","color":"gray","italic":true}'] +# 消費アイテム ({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 "auto" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onClick" +# 神器の発動条件 (TextComponentString) (オプション) + data modify storage asset:artifact Condition set value '{"text":"半径30ブロック以内に敵がいる場合"}' +# 攻撃に関する情報 -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 [Fire,Water,Thunder,None] +# 攻撃に関する情報 -防御無視 (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 +# MP必要量 (int) (オプション) + data modify storage asset:artifact MPCost set value 50 +# MP回復量 (int) + # data modify storage asset:artifact MPHealWhenHit set value +# 神器のクールダウン (int) (オプション) + data modify storage asset:artifact LocalCooldown set value 600 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "heal" + data modify storage asset:artifact TypeCooldown.Duration set value 60 +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + #data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Flora", "Urban", "Nyaptov", "Wi-ki", "Rumor"] +# カスタム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/1166.airlift/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1166.airlift/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..9e367c578a --- /dev/null +++ b/Asset/data/asset/functions/artifact/1166.airlift/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1166.airlift/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのautoに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{auto:1166} run function asset:artifact/1166.airlift/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1166.airlift/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1166.airlift/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..b968407004 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1166.airlift/trigger/2.check_condition.mcfunction @@ -0,0 +1,15 @@ +#> asset:artifact/1166.airlift/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1166.airlift/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/auto + +# 他にアイテム等確認する場合はここに書く 今だと自然沸きmobをトリガーにされるが、今後廃止されるとのことなのでこれでいく + execute unless entity @e[type=#lib:living,tag=Enemy,distance=..30] if entity @s[tag=CanUsed] run tellraw @s [{"text":"近くに敵がいません。","color":"red"}] + execute unless entity @e[type=#lib:living,tag=Enemy,distance=..30] run tag @s remove CanUsed + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1166.airlift/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/1166.airlift/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1166.airlift/trigger/3.main.mcfunction new file mode 100644 index 0000000000..32d23a5552 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1166.airlift/trigger/3.main.mcfunction @@ -0,0 +1,20 @@ +#> asset:artifact/1166.airlift/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1166.airlift/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/auto + +# 召喚方向設定 + execute rotated ~ 0 positioned ^1 ^ ^2 rotated ~-135 0 positioned ^ ^ ^-5 rotated ~ 15 as 0-0-0-0-0 run tp @s ^ ^ ^-5 ~ -10 + data modify storage api: Argument.FieldOverride.SummonRotation set from entity 0-0-0-0-0 Rotation + +# 輸送機オブジェクトを召喚 + execute store result storage api: Argument.FieldOverride.OwnerID int 1 run scoreboard players get @s UserID + data modify storage api: Argument.ID set value 1076 + execute positioned as 0-0-0-0-0 run function api:object/summon + +# reset + execute in overworld run tp 0-0-0-0-0 0.0 0.0 0.0 diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/give/1.trigger.mcfunction new file mode 100644 index 0000000000..d9f9c8b15a --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1174.sanguis/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1174} run function asset:artifact/1174.sanguis/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/give/2.give.mcfunction new file mode 100644 index 0000000000..c9f4740228 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/give/2.give.mcfunction @@ -0,0 +1,66 @@ +#> asset:artifact/1174.sanguis/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1174.sanguis/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1174 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"サングイス","color":"#C2B3BE"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"3回攻撃するたびに連撃が発生する"}','{"text":"血は記憶を紡ぎ、魂は誓いを重ねる","color":"gray"}'] +# MP以外の消費物 (TextComponentString) (オプション) + # data modify storage asset:artifact CostText set value +# 使用回数 (int) (オプション) + # data modify storage asset:artifact RemainingCount set value +# 神器を発動できるスロット (string) Wikiを参照 + data modify storage asset:artifact Slot set value "mainhand" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onAttackByMelee" +# 神器の発動条件 (TextComponentString) (オプション) + # data modify storage asset:artifact Condition set value +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.Damage set value ["80-110"] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Magic] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [None] +# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.BypassResist set value +# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every" +# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.AttackRange set value +# MP消費量 (int) + # data modify storage asset:artifact MPCost set value 25 +# MP必要量 (int) (オプション) + # data modify storage asset:artifact MPRequire set value 100 +# MP回復量 + data modify storage asset:artifact MPHealWhenHit set value 2.6 +# 神器のクールダウン (int) (オプション) + # data modify storage asset:artifact LocalCooldown set value 5 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "shortRange" + data modify storage asset:artifact TypeCooldown.Duration set value 7 +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Urban", "Wi-ki", "Rumor"] +# カスタム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/1174.sanguis/register.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/register.mcfunction new file mode 100644 index 0000000000..f49907691e --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1174.sanguis/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[4] append value [1174] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/0.load.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/0.load.mcfunction new file mode 100644 index 0000000000..c0aaa81d71 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/0.load.mcfunction @@ -0,0 +1,9 @@ +#> asset:artifact/1174.sanguis/trigger/0.load +# +# 神器に利用するスコアボード等の初期化処理 +# +# @within tag/function asset:artifact/load + +#> 定義類はここに +# @within function asset:artifact/1174.sanguis/trigger/** + scoreboard objectives add WM.Combo dummy diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..f9f1fe6b48 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1174.sanguis/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのmainhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{mainhand:1174} run function asset:artifact/1174.sanguis/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..779016eb2d --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/1174.sanguis/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1174.sanguis/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/mainhand +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1174.sanguis/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/3.main.mcfunction new file mode 100644 index 0000000000..6ae2333138 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/3.main.mcfunction @@ -0,0 +1,43 @@ +#> asset:artifact/1174.sanguis/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1174.sanguis/trigger/2.check_condition + +# 基本的にブレイブソードのコピペっす +# 先にLatestUseTickを取っておく。mainhand分だけでいい + execute store result score $WM.LatestUseTick Temporary run data get storage asset:context Items.mainhand.tag.TSB.LatestUseTick + +# 使用時に前回の使用時のTickとの差が開いていた場合、コンボカウントをリセットする + execute unless score @s WM.Combo matches -2147483648..2147483647 run scoreboard players set @s WM.Combo 0 + execute store result score $WM.Temp Temporary run time query gametime + scoreboard players operation $WM.Temp Temporary -= $WM.LatestUseTick Temporary + execute unless score $WM.Temp Temporary matches ..30 run scoreboard players set @s WM.Combo 0 + +# コンボフィニッシュを出したあとは、コンボリセット。ブレイブソードと異なり、隠しCDは存在しない。 + execute if score @s WM.Combo matches 3.. run scoreboard players reset @s WM.Combo + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/mainhand + +# コンボカウント加算 + scoreboard players add @s WM.Combo 1 + +# 攻撃 + execute if score @s WM.Combo matches 1 anchored eyes run function asset:artifact/1174.sanguis/trigger/combo/slash1 + execute if score @s WM.Combo matches 2 anchored eyes run function asset:artifact/1174.sanguis/trigger/combo/slash2 + execute if score @s WM.Combo matches 3 anchored eyes run function asset:artifact/1174.sanguis/trigger/combo/slash3 + +# 攻撃判定 + execute store result storage api: Argument.Damage float 1 run random value 80..110 + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "None" +# 補正functionを実行 + function api:damage/modifier +# ダメージ実行 + execute at @e[type=#lib:living,tag=Enemy,tag=Victim,tag=!Uninterferable,distance=..5,sort=nearest,limit=1] as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..1.2] run function api:damage/ + function api:damage/reset + +# リセット + scoreboard players reset $WM.Temp Temporary + scoreboard players reset $WM.LatestUseTick Temporary diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/_index.d.mcfunction new file mode 100644 index 0000000000..a7be9376db --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/_index.d.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1174.sanguis/trigger/_index.d +# @private + +#> tag +# @within function asset:artifact/1174.sanguis/trigger/** + #declare score_holder $WM.Temp + #declare score_holder $WM.LatestUseTick diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash1.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash1.mcfunction new file mode 100644 index 0000000000..766b1a77bb --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash1.mcfunction @@ -0,0 +1,16 @@ +#> asset:artifact/1174.sanguis/trigger/combo/slash1 +# +# +# +# @within function asset:artifact/1174.sanguis/trigger/3.main + +# 演出 + playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 + playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.5 + playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 1.5 + +# 斬撃 + data modify storage api: Argument.ID set value 2001 + data modify storage api: Argument.FieldOverride set value {Color:14929614,Frames:[20335,20336,20337],Scale:[4f,4f,0.1f],Transformation:{left_rotation:[0.271f,-0.653f,0.271f,0.653f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f]}} + + execute positioned ^ ^ ^2 positioned ~ ~-0.5 ~ rotated ~ ~-10 run function api:object/summon diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash2.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash2.mcfunction new file mode 100644 index 0000000000..5cb17dacc3 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash2.mcfunction @@ -0,0 +1,17 @@ +#> asset:artifact/1174.sanguis/trigger/combo/slash2 +# +# +# +# @within function asset:artifact/1174.sanguis/trigger/3.main + +# 演出 + playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 + playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.5 + playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 1.5 + +# 斬撃 + data modify storage api: Argument.ID set value 2001 + data modify storage api: Argument.FieldOverride set value {Color:14929614,Frames:[20335,20336,20337],Scale:[4f,4f,0.1f],Transformation:{left_rotation:[-0.271f,-0.653f,-0.271f,0.653f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f]}} + + + execute positioned ^ ^ ^2 positioned ~ ~-0.5 ~ rotated ~ ~-10 run function api:object/summon diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash3.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash3.mcfunction new file mode 100644 index 0000000000..e43e71aba1 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/combo/slash3.mcfunction @@ -0,0 +1,22 @@ +#> asset:artifact/1174.sanguis/trigger/combo/slash3 +# +# +# +# @within function asset:artifact/1174.sanguis/trigger/3.main + +# 演出 + playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 + playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.5 + playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 1.5 + +# 斬撃 + data modify storage api: Argument.ID set value 2001 + data modify storage api: Argument.FieldOverride set value {Color:14929614,Frames:[20335,20336,20337],Scale:[4f,4f,0.1f],Transformation:{left_rotation:[0.5f,-0.5f,0.5f,0.5f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f]}} + execute positioned ^ ^ ^2 positioned ~ ~-0.5 ~ rotated ~ ~-10 run function api:object/summon + +# 追撃用オブジェクトを配置 + data modify storage api: Argument.ID set value 1085 + execute store result storage api: Argument.FieldOverride.Damage double 1 run random value 80..110 + data modify storage api: Argument.FieldOverride.AdditionalMPHeal set from storage api: PersistentArgument.AdditionalMPHeal + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + execute positioned as @e[type=#lib:living,tag=Enemy,tag=Victim,tag=!Uninterferable,distance=..5,sort=nearest,limit=1] run function api:object/summon diff --git a/Asset/data/asset/functions/artifact/1174.sanguis/trigger/damage.mcfunction b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/damage.mcfunction new file mode 100644 index 0000000000..d99497e659 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1174.sanguis/trigger/damage.mcfunction @@ -0,0 +1,18 @@ +#> asset:artifact/1174.sanguis/trigger/damage +# +# +# +# @within function asset:artifact/1174.sanguis/trigger/3.main + +# 引数の設定 + # ダメージ値設定 + execute store result storage api: Argument.Damage float 1 run random value 80..110 + # 第一属性 + data modify storage api: Argument.AttackType set value "Magic" + # 第二属性 + data modify storage api: Argument.ElementType set value "None" +# 補正functionを実行 + execute as @p[tag=this] run function api:damage/modifier +# ダメージ実行 + function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/give/2.give.mcfunction index a6f49bcc9e..c8839531b3 100644 --- a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/give/2.give.mcfunction +++ b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/give/2.give.mcfunction @@ -13,7 +13,7 @@ # 神器のベースアイテム data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" # 神器の名前 (TextComponentString) - data modify storage asset:artifact Name set value '{"text":"B.L.E.S.S","color":"aqua"}' + data modify storage asset:artifact Name set value '{"text":"B.L.E.S.S.","color":"aqua"}' # 神器の説明文 (TextComponentString[]) data modify storage asset:artifact Lore set value ['{"text":"クロスヘアに捉えた敵に向かってミサイルを発射する。","color":"white"}','{"text":"発射時の姿勢によってミサイルの性質が変化する。","color":"white"}','{"text":" スニーク:火属性の範囲ダメージ","color":"white"}','{"text":" 直立:耐性貫通の無属性単体ダメージ","color":"white"}','{"text":"ミサイルが一定距離飛翔すると最大火力となる。","color":"white"}','{"text":"?「正式名称は両用支援打撃弾","color":"dark_aqua","italic":true}','{"text":"(Bipurpose Launching Equipment for Support Strike)","color":"dark_aqua","italic":true}','{"text":"撃つも殴るもよし、対地対空両用の万能な兵器。","color":"dark_aqua","italic":true}','{"text":"魔力と適正さえあれば人でも天使でも、誰でも簡単に扱える。」","color":"dark_aqua","italic":true}'] @@ -30,7 +30,7 @@ # 神器の発動条件 (TextComponentString) (オプション) # data modify storage asset:artifact Condition set value # 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) - data modify storage asset:artifact AttackInfo.Damage set value ["600/1100","3000/5500"] + data modify storage asset:artifact AttackInfo.Damage set value ["520/840","2600/4200"] # 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) data modify storage asset:artifact AttackInfo.AttackType set value [Physical] # 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) @@ -42,16 +42,16 @@ # 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) data modify storage asset:artifact AttackInfo.AttackRange set value 50 # MP消費量 (int) - data modify storage asset:artifact MPCost set value 300 + data modify storage asset:artifact MPCost set value 220 # 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 + data modify storage asset:artifact LocalCooldown set value 240 # 種別クールダウン ({Type: string, Duration: int}) (オプション) data modify storage asset:artifact TypeCooldown.Type set value "longRange" - data modify storage asset:artifact TypeCooldown.Duration set value 60 + data modify storage asset:artifact TypeCooldown.Duration set value 100 # グローバルクールダウン (int) (オプション) # data modify storage asset:artifact SpecialCooldown set value # クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) diff --git a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/2.check_condition.mcfunction index bf77253ae8..026860cc86 100644 --- a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/2.check_condition.mcfunction +++ b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/2.check_condition.mcfunction @@ -10,6 +10,7 @@ # ターゲット選定 scoreboard players set $WO.TargetID Temporary 0 function asset:artifact/1176.b_l_e_s_s/trigger/select_target + execute if score $WO.TargetID Temporary matches 0 run tellraw @s [{"text": "ターゲットがいません","color": "red"}] execute if score $WO.TargetID Temporary matches 0 run tag @s remove CanUsed # CanUsedタグをチェックして3.main.mcfunctionを実行する diff --git a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/3.main.mcfunction index 5e2a07f0ff..5fd8871c65 100644 --- a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/3.main.mcfunction +++ b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/3.main.mcfunction @@ -10,12 +10,12 @@ # 発射 execute if predicate lib:is_sneaking run data modify storage api: Argument.ID set value 1094 - execute if predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.InitMotionDamage set value 600f - execute if predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.MaxDamage set value 3000f + execute if predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.InitMotionDamage set value 520f + execute if predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.MaxDamage set value 2600 execute unless predicate lib:is_sneaking run data modify storage api: Argument.ID set value 1095 - execute unless predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.InitMotionDamage set value 800f - execute unless predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.MaxDamage set value 4000f + execute unless predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.InitMotionDamage set value 820f + execute unless predicate lib:is_sneaking run data modify storage api: Argument.FieldOverride.MaxDamage set value 4200f execute store result storage api: Argument.FieldOverride.TargetID int 1 run scoreboard players get $WO.TargetID Temporary execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID diff --git a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/select_target.mcfunction b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/select_target.mcfunction index 64e93e04f7..9cb9cb95a3 100644 --- a/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/select_target.mcfunction +++ b/Asset/data/asset/functions/artifact/1176.b_l_e_s_s/trigger/select_target.mcfunction @@ -7,7 +7,7 @@ # クロスヘア中心15度以内のエンティティにタグ付け - execute anchored eyes positioned ^ ^ ^25 as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..25] positioned as @s facing entity @p[tag=this] eyes positioned ^ ^ ^1000 rotated as @p[tag=this] positioned ^ ^ ^1000 if entity @s[distance=..261.1] run tag @s add WO.Candidate + execute anchored eyes positioned ^ ^ ^25 as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..25] positioned as @s facing entity @p[tag=this] feet positioned ^ ^ ^1000 rotated as @p[tag=this] positioned ^ ^ ^1000 if entity @s[distance=..261.1] run tag @s add WO.Candidate #execute if entity @e[type=#lib:living,tag=Enemy,tag=WO.Candidate,tag=!Uninterferable] run say detect #execute unless entity @e[type=#lib:living,tag=Enemy,tag=WO.Candidate,tag=!Uninterferable] run say nodetect diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/give/1.trigger.mcfunction new file mode 100644 index 0000000000..193535119f --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1183.cosmo_site/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1183} run function asset:artifact/1183.cosmo_site/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/give/2.give.mcfunction new file mode 100644 index 0000000000..58bde0c755 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1183.cosmo_site/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1183.cosmo_site/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1183 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"CSL-V8 コズモサイト","color":"#FFDEAD"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"座標指定型軌道攻撃システムのリモコン"}','{"text":"地上管制から送信された標的座標を受信すると"}','{"text":"量子増幅型パルスレーザーが即座に起動し"}','{"text":"大気圏を貫通する白い光線を放射します"}','[{"text":"大体殺せます"},{"text":"(天使相手には威力が減衰する)","color":"dark_gray"}]'] +# 消費アイテム ({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 "auto" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onClick" +# 神器の発動条件 (TextComponentString) (オプション) + # data modify storage asset:artifact Condition set value +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.Damage set value ["2500÷(敵の数)×10"] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Physical] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [Thunder] +# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.BypassResist set value +# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.IsRangeAttack set value "every" +# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackRange set value 10 +# MP消費量 (int) + data modify storage asset:artifact MPCost set value 0 +# 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 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + # data modify storage asset:artifact TypeCooldown.Type set value + # data modify storage asset:artifact TypeCooldown.Duration set value +# グローバルクールダウン (int) (オプション) + data modify storage asset:artifact SpecialCooldown set value 3600 +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Urban", "Nyaptov", "Wi-ki", "Flora"] +# カスタム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/1183.cosmo_site/register.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/register.mcfunction new file mode 100644 index 0000000000..90c818a00a --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1183.cosmo_site/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[3] append value [1183] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..8aa7341858 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1183.cosmo_site/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのautoに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{auto:1183} run function asset:artifact/1183.cosmo_site/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..19587336fd --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/1183.cosmo_site/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1183.cosmo_site/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/auto +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1183.cosmo_site/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/3.main.mcfunction new file mode 100644 index 0000000000..720ed430ae --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/3.main.mcfunction @@ -0,0 +1,14 @@ +#> asset:artifact/1183.cosmo_site/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1183.cosmo_site/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/auto + +# ここから先は神器側の効果の処理を書く + +# 発砲 + execute anchored eyes positioned ^ ^ ^ run function asset:artifact/1183.cosmo_site/trigger/shot + tag @s remove Landing diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/_index.d.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/_index.d.mcfunction new file mode 100644 index 0000000000..b91ea2138e --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:artifact/1183.cosmo_site/trigger/_index.d +# @private + +#> tag +# @within function asset:artifact/1183.cosmo_site/trigger/** + #declare tag Landing diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/hit.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/hit.mcfunction new file mode 100644 index 0000000000..ff36f4da1d --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/hit.mcfunction @@ -0,0 +1,15 @@ +#> asset:artifact/1183.cosmo_site/trigger/hit +# +# +# +# @within function asset:artifact/1183.cosmo_site/trigger/shot + +# メインのやつ召喚 + data modify storage api: Argument.ID set value 1089 + data modify storage api: Argument.FieldOverride.Damage set value 2500 + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + function api:object/summon + +# 警告召喚 + data modify storage api: Argument.ID set value 1090 + function api:object/summon diff --git a/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/shot.mcfunction b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/shot.mcfunction new file mode 100644 index 0000000000..44dedc71fe --- /dev/null +++ b/Asset/data/asset/functions/artifact/1183.cosmo_site/trigger/shot.mcfunction @@ -0,0 +1,20 @@ +#> asset:artifact/1183.cosmo_site/trigger/shot +# +# +# +# @within function +# asset:artifact/1183.cosmo_site/trigger/3.main +# asset:artifact/1183.cosmo_site/trigger/shot + +# 着弾検知 + execute unless block ^ ^ ^0.5 #lib:no_collision run tag @s add Landing + execute if entity @s[tag=!Landing,distance=29..] run tag @s add Landing +# 演出 + particle minecraft:composter ~ ~ ~ 0.1 0.1 0.1 0 1 + particle minecraft:dust 0.075 0.604 0.063 0.7 ~ ~ ~ 0 0 0 0 0 + +# 着弾 + execute if entity @s[tag=Landing] run function asset:artifact/1183.cosmo_site/trigger/hit + +# 再起 + execute positioned ^ ^ ^0.5 if entity @s[tag=!Landing,distance=..30] run function asset:artifact/1183.cosmo_site/trigger/shot diff --git a/Asset/data/asset/functions/artifact/1193.firebrand/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1193.firebrand/give/1.trigger.mcfunction new file mode 100644 index 0000000000..fa896e568c --- /dev/null +++ b/Asset/data/asset/functions/artifact/1193.firebrand/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1193.firebrand/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1193} run function asset:artifact/1193.firebrand/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1193.firebrand/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1193.firebrand/give/2.give.mcfunction new file mode 100644 index 0000000000..99e636a83f --- /dev/null +++ b/Asset/data/asset/functions/artifact/1193.firebrand/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1193.firebrand/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1193.firebrand/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1193 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"ファイアブランド","color":"red"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"燃え盛る炎を宿した戦斧","color":"gray"}','{"text":"振るう度に秘められし炎が唸る","color":"gray"}'] +# 消費アイテム ({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 "mainhand" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onAttackByMelee" +# 神器の発動条件 (TextComponentString) (オプション) + data modify storage asset:artifact Condition set value '{"text":"クリティカル攻撃"}' +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.Damage set value [1100,1300] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Physical] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [Fire] +# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.BypassResist set value +# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.IsRangeAttack set value "never" +# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.AttackRange set value +# MP消費量 (int) + data modify storage asset:artifact MPCost set value 160 +# 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 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "shortRange" + data modify storage asset:artifact TypeCooldown.Duration set value 50 +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Urban", "Nyaptov", "Rumor"] +# カスタム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/1193.firebrand/register.mcfunction b/Asset/data/asset/functions/artifact/1193.firebrand/register.mcfunction new file mode 100644 index 0000000000..ef939977f0 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1193.firebrand/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1193.firebrand/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[3] append value [1193] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1193.firebrand/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..bc5bff490a --- /dev/null +++ b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1193.firebrand/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのmainhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{mainhand:1193} run function asset:artifact/1193.firebrand/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1193.firebrand/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..0d1d10e8f3 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/2.check_condition.mcfunction @@ -0,0 +1,15 @@ +#> asset:artifact/1193.firebrand/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1193.firebrand/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/mainhand +# 他にアイテム等確認する場合はここに書く + +# クリティカルチェック + execute unless data storage asset:context Attack{Crit:true} run tag @s remove CanUsed + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1193.firebrand/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/1193.firebrand/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/3.main.mcfunction new file mode 100644 index 0000000000..dda88977bd --- /dev/null +++ b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/3.main.mcfunction @@ -0,0 +1,21 @@ +#> asset:artifact/1193.firebrand/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1193.firebrand/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/mainhand + +# ここから先は神器側の効果の処理を書く + +# 演出 + execute at @e[type=#lib:living,type=!player,tag=Victim,tag=!Uninterferable,distance=..10] run function asset:artifact/1193.firebrand/trigger/vfx + +# ダメージ + execute store result storage api: Argument.Damage float 1 run random value 1100..1300 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" + function api:damage/modifier + execute as @e[type=#lib:living,type=!player,tag=Victim,tag=!Uninterferable,distance=..10] run function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/1193.firebrand/trigger/vfx.mcfunction b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/vfx.mcfunction new file mode 100644 index 0000000000..854f443432 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1193.firebrand/trigger/vfx.mcfunction @@ -0,0 +1,14 @@ +#> asset:artifact/1193.firebrand/trigger/vfx +# +# playsoundも使ってるので厳密にはvfxではない +# +# @within function asset:artifact/1193.firebrand/trigger/3.main + +# 演出 + particle flame ~ ~3 ~ 0.4 2 0.4 0.05 120 normal @a + particle lava ~ ~0.2 ~ 0.4 0 0.4 0.05 20 normal @a + playsound entity.blaze.shoot player @a ~ ~ ~ 1 0.7 0 + playsound entity.blaze.shoot player @a ~ ~ ~ 1 0.6 0 + playsound entity.blaze.hurt player @a ~ ~ ~ 0.6 0.7 0 + playsound entity.blaze.hurt player @a ~ ~ ~ 0.6 0.65 0 + playsound entity.blaze.hurt player @a ~ ~ ~ 0.6 0.6 0 diff --git a/Asset/data/asset/functions/artifact/1199.healer_trance/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1199.healer_trance/give/1.trigger.mcfunction new file mode 100644 index 0000000000..2094a8c63d --- /dev/null +++ b/Asset/data/asset/functions/artifact/1199.healer_trance/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1199.healer_trance/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1199} run function asset:artifact/1199.healer_trance/give/2.give diff --git a/Asset/data/asset/functions/artifact/1199.healer_trance/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1199.healer_trance/give/2.give.mcfunction new file mode 100644 index 0000000000..a5a5afeba8 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1199.healer_trance/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1199.healer_trance/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1199.healer_trance/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1199 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:carrot_on_a_stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '[{"text":"ヒーラ","color":"green"},{"text":"ー","color":"#E1FCB1"},{"text":"ト","color":"#FCD0B1"},{"text":"ランス","color":"red"}]' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"与回復量と被回復量の補正について"}','{"text":"20秒の間50%減少させる代わりに"}','{"text":"10秒の間合計の70%分与ダメージが上昇する"}'] +# 消費アイテム ({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 "auto" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onClick" +# 神器の発動条件 (TextComponentString) (オプション) + # data modify storage asset:artifact Condition set value +# 攻撃に関する情報 -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 [Fire,Water,Thunder,None] +# 攻撃に関する情報 -防御無視 (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 0 +# 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 600 +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + # data modify storage asset:artifact TypeCooldown.Type set value + # data modify storage asset:artifact TypeCooldown.Duration set value +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Nyaptov", "Wi-ki", "Rumor"] +# カスタム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/1199.healer_trance/register.mcfunction b/Asset/data/asset/functions/artifact/1199.healer_trance/register.mcfunction new file mode 100644 index 0000000000..999e686d81 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1199.healer_trance/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1199.healer_trance/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[2] append value [1199] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..15086f9deb --- /dev/null +++ b/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1199.healer_trance/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのautoに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{auto:1199} run function asset:artifact/1199.healer_trance/trigger/2.check_condition diff --git a/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..5e89141faa --- /dev/null +++ b/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/1199.healer_trance/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1199.healer_trance/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/auto +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1199.healer_trance/trigger/3.main diff --git a/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/3.main.mcfunction new file mode 100644 index 0000000000..2c1c708720 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1199.healer_trance/trigger/3.main.mcfunction @@ -0,0 +1,47 @@ +#> asset:artifact/1199.healer_trance/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1199.healer_trance/trigger/2.check_condition + +#> Private +# @private + #declare score_holder $Temp + #declare score_holder $Sum + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/auto + +# ここから先は神器側の効果の処理を書く + +# VFX + playsound minecraft:entity.illusioner.prepare_mirror player @a ~ ~ ~ 2 1.2 + playsound minecraft:entity.illusioner.prepare_mirror player @a ~ ~ ~ 2 1.1 + +# 与回復量と被回復量の合計を計算する + scoreboard players set $Sum Temporary 0 + + function api:modifier/heal/get + execute store result score $Temp Temporary run data get storage api: Return.Heal 1000 + scoreboard players operation $Sum Temporary += $Temp Temporary + + function api:modifier/receive_heal/get + execute store result score $Temp Temporary run data get storage api: Return.ReceiveHeal 1000 + scoreboard players operation $Sum Temporary += $Temp Temporary + + scoreboard players remove $Sum Temporary 2000 + +# バフ + data modify storage api: Argument.ID set value 308 + execute store result storage api: Argument.Stack int 0.7 run scoreboard players get $Sum Temporary + function api:entity/mob/effect/give + function api:entity/mob/effect/reset + +# デバフ + data modify storage api: Argument.ID set value 309 + function api:entity/mob/effect/give + function api:entity/mob/effect/reset + +# リセット + scoreboard players reset $Sum Temporary + scoreboard players reset $Temp Temporary diff --git a/Asset/data/asset/functions/artifact/1200.alchemy_hammer/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/give/1.trigger.mcfunction new file mode 100644 index 0000000000..6df481a902 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1200.alchemy_hammer/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1200} run function asset:artifact/1200.alchemy_hammer/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1200.alchemy_hammer/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/give/2.give.mcfunction new file mode 100644 index 0000000000..13a426a4f7 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1200.alchemy_hammer/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1200.alchemy_hammer/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1200 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"アルケミーハンマー","color":"#CF99FF"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['[{"text":"攻撃時、確率で","color":"white"},{"text":"光の柱","color":"#FFFFC7"},{"text":"を召喚する。","color":"white"}]','[{"text":"光の柱","color":"#FFFFC7"},{"text":"は周囲のMobに本来の50%分のダメージを与える。","color":"white"}]','[{"text":"錬金用のハンマーは万能なんだぜ!","color":"gray"}]'] +# 消費アイテム ({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 "mainhand" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onAttackByMelee" +# 神器の発動条件 (TextComponentString) (オプション) + # data modify storage asset:artifact Condition set value +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.Damage set value [1100,1200] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Magic] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [None] +# 攻撃に関する情報 -防御無視 (boolean) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.BypassResist set value +# 攻撃に関する情報 -範囲攻撃 (string) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.IsRangeAttack set value "probability" +# 攻撃に関する情報 -攻撃範囲 (literal) Wikiを参照 (オプション) + # data modify storage asset:artifact AttackInfo.AttackRange set value +# MP消費量 (int) + # data modify storage asset:artifact MPCost set value +# MP必要量 (int) (オプション) + # data modify storage asset:artifact MPRequire set value +# MP回復量 (int) + data modify storage asset:artifact MPHealWhenHit set value 35 +# 神器のクールダウン (int) (オプション) + # data modify storage asset:artifact LocalCooldown set value +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "shortRange" + data modify storage asset:artifact TypeCooldown.Duration set value 60 +# グローバルクールダウン (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 +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Urban", "Nyaptov", "Wi-ki"] +# カスタム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/1200.alchemy_hammer/register.mcfunction b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/register.mcfunction new file mode 100644 index 0000000000..a2bc05eacc --- /dev/null +++ b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1200.alchemy_hammer/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[4] append value [1200] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..d85ebedcba --- /dev/null +++ b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1200.alchemy_hammer/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのmainhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{mainhand:1200} run function asset:artifact/1200.alchemy_hammer/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..71763c4f7e --- /dev/null +++ b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/1200.alchemy_hammer/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1200.alchemy_hammer/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/mainhand +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1200.alchemy_hammer/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/3.main.mcfunction new file mode 100644 index 0000000000..f35434f737 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/3.main.mcfunction @@ -0,0 +1,43 @@ +#> asset:artifact/1200.alchemy_hammer/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1200.alchemy_hammer/trigger/2.check_condition + +#> damage +# @within function asset:artifact/1200.alchemy_hammer/trigger/** + #declare score_holder $Damage + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/mainhand + +# 演出 + execute at @e[type=#lib:living,tag=Victim,tag=!Uninterferable,distance=..6] run playsound minecraft:block.anvil.place player @a[distance=..6] ~ ~ ~ 1 1.25 0 + execute at @e[type=#lib:living,tag=Victim,tag=!Uninterferable,distance=..6] run playsound minecraft:block.anvil.place player @a[distance=..6] ~ ~ ~ 1 1.5 0 + execute at @e[type=#lib:living,tag=Victim,tag=!Uninterferable,distance=..6] run particle flash ~ ~ ~ 0 0 0 0 1 + +# ダメージ + # ダメージの数値設定(ブレあり) + execute store result score $Damage Temporary run random value 1100..1200 + +# 乱数調整 + execute store result score $Random Temporary run random value 1..6 + # 条件を満たしたなら光の柱を召喚 + # 現状2本召喚しているがここの調整はバランス班に任せます + execute if score $Random Temporary matches 6 at @e[type=#lib:living,type=!player,tag=Victim,distance=..6] run function asset:artifact/1200.alchemy_hammer/trigger/summon_laser + execute if score $Random Temporary matches 6 at @e[type=#lib:living,type=!player,tag=Victim,distance=..6] run function asset:artifact/1200.alchemy_hammer/trigger/summon_laser + + # ダメージ代入 + execute store result storage api: Argument.Damage float 1 run scoreboard players get $Damage Temporary + # 属性 + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "None" + # 補正 + function api:damage/modifier + # ダメージを与える + execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..6] run function api:damage/ + +# リセット + scoreboard players reset $Damage Temporary + scoreboard players reset $Random Temporary + function api:damage/reset diff --git a/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/summon_laser.mcfunction b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/summon_laser.mcfunction new file mode 100644 index 0000000000..e3c8bea80d --- /dev/null +++ b/Asset/data/asset/functions/artifact/1200.alchemy_hammer/trigger/summon_laser.mcfunction @@ -0,0 +1,24 @@ +#> asset:artifact/1200.alchemy_hammer/trigger/summon_laser +# +# 光の柱を召喚 +# +# @within function asset:artifact/1200.alchemy_hammer/trigger/3.main + +#> Private +# @private + #declare tag SpreadMarker + +# 前方拡散 + execute at @e[type=#lib:living,type=!player,tag=Victim,distance=..6] run summon marker ~ ~ ~ {Tags:["SpreadMarker"]} + data modify storage lib: Argument.Bounds set value [[2d,2d],[0d,0d],[2d,2d]] + execute as @e[type=marker,tag=SpreadMarker,distance=..10] at @s run function lib:spread_entity/ + +# 光の柱を召喚 + data modify storage api: Argument.ID set value 1098 + execute store result storage api: Argument.FieldOverride.Damage float 0.5 run scoreboard players get $Damage Temporary + data modify storage api: Argument.FieldOverride.AdditionalMPHeal set from storage api: PersistentArgument.AdditionalMPHeal + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + execute at @e[type=marker,tag=SpreadMarker,distance=..10] run function api:object/summon + +# リセット + kill @e[type=marker,tag=SpreadMarker,distance=..10] diff --git a/Asset/data/asset/functions/artifact/1202.scrap_maker/give/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1202.scrap_maker/give/1.trigger.mcfunction new file mode 100644 index 0000000000..606ec497aa --- /dev/null +++ b/Asset/data/asset/functions/artifact/1202.scrap_maker/give/1.trigger.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1202.scrap_maker/give/1.trigger +# +# 神器の取得処理の呼び出し時に実行されるfunction +# +# @within tag/function asset:artifact/give + +execute if data storage asset:context {id:1202} run function asset:artifact/1202.scrap_maker/give/2.give \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1202.scrap_maker/give/2.give.mcfunction b/Asset/data/asset/functions/artifact/1202.scrap_maker/give/2.give.mcfunction new file mode 100644 index 0000000000..feee7184c8 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1202.scrap_maker/give/2.give.mcfunction @@ -0,0 +1,68 @@ +#> asset:artifact/1202.scrap_maker/give/2.give +# +# 神器の作成部 ここでID等を定義する +# +# @user +# @within function asset:artifact/1202.scrap_maker/give/1.trigger + +# 神器の説明や消費MPなどをここで設定する。 +# 最後にasset:artifact/common/giveを実行することで入手可能。 + +# 神器のID (int) スプレッドシートの値を入れる + data modify storage asset:artifact ID set value 1202 +# 神器のベースアイテム + data modify storage asset:artifact Item set value "minecraft:stick" +# 神器の名前 (TextComponentString) + data modify storage asset:artifact Name set value '{"text":"スクラップメイカー","color":"#CF99FF"}' +# 神器の説明文 (TextComponentString[]) + data modify storage asset:artifact Lore set value ['{"text":"相手をすり潰し、持続ダメージを与える"}','{"text":"ぐちゃぐちゃのスクラップを作ろう"}','{"text":"\\"おい、これじゃミンチメイカーじゃねぇか!\\"","color":"gray"}'] +# 消費アイテム ({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 "mainhand" +# 神器のトリガー (string) Wikiを参照 + data modify storage asset:artifact Trigger set value "onAttackByMelee" +# 神器の発動条件 (TextComponentString) (オプション) + # data modify storage asset:artifact Condition set value +# 攻撃に関する情報 -Damage量 (literal[]/literal) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.Damage set value ["36*10"] +# 攻撃に関する情報 -攻撃タイプ (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.AttackType set value [Magic] +# 攻撃に関する情報 -攻撃属性 (string[]) Wikiを参照 (オプション) + data modify storage asset:artifact AttackInfo.ElementType set value [None] +# 攻撃に関する情報 -防御無視 (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 +# MP必要量 (int) (オプション) + # data modify storage asset:artifact MPRequire set value +# MP回復量 (int) + data modify storage asset:artifact MPHealWhenHit set value 3.2 +# 神器のクールダウン (int) (オプション) + # data modify storage asset:artifact LocalCooldown set value +# 種別クールダウン ({Type: string, Duration: int}) (オプション) + data modify storage asset:artifact TypeCooldown.Type set value "shortRange" + data modify storage asset:artifact TypeCooldown.Duration set value 40 +# グローバルクールダウン (int) (オプション) + # data modify storage asset:artifact SpecialCooldown set value +# クールダウンによる使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableCooldownMessage set value +# MP不足による使用不可のメッセージを非表示にするか否か (boolean) (オプション) + # data modify storage asset:artifact DisableMPMessage set value +# 破壊時の音を鳴らさないかどうか (boolean) (オプション) + # data modify storage asset:artifact DisableBreakSound set value +# 扱える神 (string[]) Wikiを参照 + data modify storage asset:artifact CanUsedGod set value ["Flora", "Nyaptov", "Wi-ki"] +# カスタム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/1202.scrap_maker/register.mcfunction b/Asset/data/asset/functions/artifact/1202.scrap_maker/register.mcfunction new file mode 100644 index 0000000000..7440e37457 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1202.scrap_maker/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:artifact/1202.scrap_maker/register +# +# 神器プールへの登録処理 +# +# @within tag/function asset:artifact/register + +data modify storage asset:artifact RarityRegistry[3] append value [1202] \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/1.trigger.mcfunction b/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/1.trigger.mcfunction new file mode 100644 index 0000000000..6e3d130094 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/1.trigger.mcfunction @@ -0,0 +1,8 @@ +#> asset:artifact/1202.scrap_maker/trigger/1.trigger +# +# 指定したイベントタイミングで実行されるfunction +# +# @within tag/function asset:artifact/** + +# storage asset:idのmainhandに装備している神器のIDが入っているので比較し、~/2.check_condition.mcfunctionを実行する + execute if data storage asset:context id{mainhand:1202} run function asset:artifact/1202.scrap_maker/trigger/2.check_condition \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/2.check_condition.mcfunction b/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/2.check_condition.mcfunction new file mode 100644 index 0000000000..f7ee59331e --- /dev/null +++ b/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/2.check_condition.mcfunction @@ -0,0 +1,12 @@ +#> asset:artifact/1202.scrap_maker/trigger/2.check_condition +# +# 神器の発動条件をチェックします +# +# @within function asset:artifact/1202.scrap_maker/trigger/1.trigger + +# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く + function asset:artifact/common/check_condition/mainhand +# 他にアイテム等確認する場合はここに書く + +# CanUsedタグをチェックして3.main.mcfunctionを実行する + execute if entity @s[tag=CanUsed] run function asset:artifact/1202.scrap_maker/trigger/3.main \ No newline at end of file diff --git a/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/3.main.mcfunction b/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/3.main.mcfunction new file mode 100644 index 0000000000..5f7fd31dd9 --- /dev/null +++ b/Asset/data/asset/functions/artifact/1202.scrap_maker/trigger/3.main.mcfunction @@ -0,0 +1,18 @@ +#> asset:artifact/1202.scrap_maker/trigger/3.main +# +# 神器のメイン処理部 +# +# @within function asset:artifact/1202.scrap_maker/trigger/2.check_condition + +# 基本的な使用時の処理(MP消費や使用回数の処理など)を行う + function asset:artifact/common/use/mainhand + +# ここから先は神器側の効果の処理を書く + +# エフェクト付与 + data modify storage api: Argument.ID set value 311 + data modify storage api: Argument.FieldOverride.Damage set value 36 + data modify storage api: Argument.FieldOverride.AdditionalMPHeal set from storage api: PersistentArgument.AdditionalMPHeal + execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID + execute as @e[type=#lib:living,tag=Victim,tag=!Uninterferable,distance=..10] run function api:entity/mob/effect/give + function api:entity/mob/effect/reset diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/end.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/end.mcfunction new file mode 100644 index 0000000000..64b34b7071 --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0014.receive_heal_debuff/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:14} run function asset:effect/0014.receive_heal_debuff/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/given.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/given.mcfunction new file mode 100644 index 0000000000..d67072afa8 --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0014.receive_heal_debuff/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:14} run function asset:effect/0014.receive_heal_debuff/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/re-given.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/re-given.mcfunction new file mode 100644 index 0000000000..cf41ee9c68 --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/re-given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0014.receive_heal_debuff/_/re-given +# +# Effectが上書きされた時に実行されるfunction +# +# @within tag/function asset:effect/re-given + +execute if data storage asset:context {id:14} run function asset:effect/0014.receive_heal_debuff/re-given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/register.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/register.mcfunction new file mode 100644 index 0000000000..d2eb23631f --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0014.receive_heal_debuff/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:14} run function asset:effect/0014.receive_heal_debuff/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/remove.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/remove.mcfunction new file mode 100644 index 0000000000..0919a2302a --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0014.receive_heal_debuff/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:14} run function asset:effect/0014.receive_heal_debuff/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/end/.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/end/.mcfunction new file mode 100644 index 0000000000..0247fbdfeb --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0014.receive_heal_debuff/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0014.receive_heal_debuff/_/end + +# 補正を削除する + function asset:effect/0014.receive_heal_debuff/modifier/remove diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/given/.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/given/.mcfunction new file mode 100644 index 0000000000..1973662618 --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0014.receive_heal_debuff/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0014.receive_heal_debuff/_/given + +# 補正を付与する + function asset:effect/0014.receive_heal_debuff/modifier/add diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/modifier/add.mcfunction new file mode 100644 index 0000000000..aa21e6650c --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/modifier/add.mcfunction @@ -0,0 +1,14 @@ +#> asset:effect/0014.receive_heal_debuff/modifier/add +# +# 補正を付与する +# +# @within function +# asset:effect/0014.receive_heal_debuff/given/ +# asset:effect/0014.receive_heal_debuff/re-given/ + +# 補正を付与する + data modify storage api: Argument.UUID set value [I;1,3,-1,0] + data modify storage api: Argument.UUID[2] set from storage asset:context id + execute store result storage api: Argument.Amount double -0.05 run data get storage asset:context Stack 1 + data modify storage api: Argument.Operation set value "multiply" + function api:modifier/receive_heal/add diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/modifier/remove.mcfunction new file mode 100644 index 0000000000..6fdd587bb9 --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/modifier/remove.mcfunction @@ -0,0 +1,13 @@ +#> asset:effect/0014.receive_heal_debuff/modifier/remove +# +# 補正を削除する +# +# @within function +# asset:effect/0014.receive_heal_debuff/end/ +# asset:effect/0014.receive_heal_debuff/re-given/ +# asset:effect/0014.receive_heal_debuff/remove/ + +# 補正を削除する + data modify storage api: Argument.UUID set value [I;1,3,-1,0] + data modify storage api: Argument.UUID[2] set from storage asset:context id + function api:modifier/receive_heal/remove diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/re-given/.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/re-given/.mcfunction new file mode 100644 index 0000000000..e9396aa06a --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/re-given/.mcfunction @@ -0,0 +1,9 @@ +#> asset:effect/0014.receive_heal_debuff/re-given/ +# +# Effectが上書きされた時の処理 +# +# @within function asset:effect/0014.receive_heal_debuff/_/re-given + +# 補正を削除し付与する + function asset:effect/0014.receive_heal_debuff/modifier/remove + function asset:effect/0014.receive_heal_debuff/modifier/add diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/register.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/register.mcfunction new file mode 100644 index 0000000000..61efa35e7f --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0014.receive_heal_debuff/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0014.receive_heal_debuff/_/register + +# ExtendsSafe (boolean) (default = false) + data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 14 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"被回復量低下"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"被回復量が低下する"}'] +# 効果時間 (int) (default = API || error) + # data modify storage asset:effect Duration set value +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 100 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value true +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 1 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + # data modify storage asset:effect StackVisible set value + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0014.receive_heal_debuff/remove/.mcfunction b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/remove/.mcfunction new file mode 100644 index 0000000000..b1e06b109d --- /dev/null +++ b/Asset/data/asset/functions/effect/0014.receive_heal_debuff/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0014.receive_heal_debuff/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0014.receive_heal_debuff/_/remove + +# 補正を削除する + function asset:effect/0014.receive_heal_debuff/modifier/remove diff --git a/Asset/data/asset/functions/effect/0064.receive_heal_debuff/_/register.mcfunction b/Asset/data/asset/functions/effect/0064.receive_heal_debuff/_/register.mcfunction new file mode 100644 index 0000000000..bdba68384c --- /dev/null +++ b/Asset/data/asset/functions/effect/0064.receive_heal_debuff/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0064.receive_heal_debuff/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:64} run function asset:effect/0064.receive_heal_debuff/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0064.receive_heal_debuff/register.mcfunction b/Asset/data/asset/functions/effect/0064.receive_heal_debuff/register.mcfunction new file mode 100644 index 0000000000..eb19f37a9d --- /dev/null +++ b/Asset/data/asset/functions/effect/0064.receive_heal_debuff/register.mcfunction @@ -0,0 +1,13 @@ +#> asset:effect/0064.receive_heal_debuff/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0064.receive_heal_debuff/_/register + +# 継承 (int) + data modify storage asset:effect Extends append value 14 + function asset:effect/extends +# ID (int) + data modify storage asset:effect ID set value 64 +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 2 diff --git a/Asset/data/asset/functions/effect/0114.receive_heal_debuff/_/register.mcfunction b/Asset/data/asset/functions/effect/0114.receive_heal_debuff/_/register.mcfunction new file mode 100644 index 0000000000..f25396290e --- /dev/null +++ b/Asset/data/asset/functions/effect/0114.receive_heal_debuff/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0114.receive_heal_debuff/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:114} run function asset:effect/0114.receive_heal_debuff/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0114.receive_heal_debuff/register.mcfunction b/Asset/data/asset/functions/effect/0114.receive_heal_debuff/register.mcfunction new file mode 100644 index 0000000000..ba1d12ed1f --- /dev/null +++ b/Asset/data/asset/functions/effect/0114.receive_heal_debuff/register.mcfunction @@ -0,0 +1,13 @@ +#> asset:effect/0114.receive_heal_debuff/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0114.receive_heal_debuff/_/register + +# 継承 (int) + data modify storage asset:effect Extends append value 14 + function asset:effect/extends +# ID (int) + data modify storage asset:effect ID set value 114 +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 diff --git a/Asset/data/asset/functions/effect/0191.night_vision/_/end.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/_/end.mcfunction new file mode 100644 index 0000000000..e9d4f937a4 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0191.night_vision/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:191} run function asset:effect/0191.night_vision/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0191.night_vision/_/given.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/_/given.mcfunction new file mode 100644 index 0000000000..25d615b431 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0191.night_vision/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:191} run function asset:effect/0191.night_vision/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0191.night_vision/_/register.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/_/register.mcfunction new file mode 100644 index 0000000000..89e6260915 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0191.night_vision/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:191} run function asset:effect/0191.night_vision/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0191.night_vision/_/remove.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/_/remove.mcfunction new file mode 100644 index 0000000000..f53d41f46d --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0191.night_vision/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:191} run function asset:effect/0191.night_vision/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0191.night_vision/_/tick.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/_/tick.mcfunction new file mode 100644 index 0000000000..23cc54afc9 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/_/tick.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0191.night_vision/_/tick +# +# Effectが発動している間毎tick実行されるfunction +# +# @within tag/function asset:effect/tick + +execute if data storage asset:context {id:191} run function asset:effect/0191.night_vision/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0191.night_vision/clear/.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/clear/.mcfunction new file mode 100644 index 0000000000..8d7c72031a --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/clear/.mcfunction @@ -0,0 +1,16 @@ +#> asset:effect/0191.night_vision/clear/ +# +# 暗視解除処理 +# +# @within function +# asset:effect/0191.night_vision/end/ +# asset:effect/0191.night_vision/remove/ + +# スコアを1減らす + scoreboard players remove @s 191.Count 1 + +# スコアが0なら暗視を解除 + execute if score @s 191.Count matches 0 run effect clear @s night_vision + +# スコアが0ならリセット + execute if score @s 191.Count matches 0 run scoreboard players reset @s 191.Count diff --git a/Asset/data/asset/functions/effect/0191.night_vision/end/.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/end/.mcfunction new file mode 100644 index 0000000000..b0fd582159 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0191.night_vision/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0191.night_vision/_/end + +# 共通解除処理 + function asset:effect/0191.night_vision/clear/ diff --git a/Asset/data/asset/functions/effect/0191.night_vision/given/.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/given/.mcfunction new file mode 100644 index 0000000000..9824afeed7 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/given/.mcfunction @@ -0,0 +1,14 @@ +#> asset:effect/0191.night_vision/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0191.night_vision/_/given + +# 継承される前提の処理 +# givenされる度にスコアを1増やす +# end/removeされる度に値を1減らす +# end/removeの際に、値が0なら暗視をclearする +# このような実装なのは、暗視バフAが効果時間中なのに暗視バフBが解除され、一瞬暗くなるのを防止するため + +# 1増やす + scoreboard players add @s 191.Count 1 diff --git a/Asset/data/asset/functions/effect/0191.night_vision/load.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/load.mcfunction new file mode 100644 index 0000000000..380837c5f6 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/load.mcfunction @@ -0,0 +1,10 @@ +#> asset:effect/0191.night_vision/load +# +# Effectに利用するスコアボード等の初期化処理 +# ※ExtendsSafeを有効化した状態での使用は非推奨です +# +# @within tag/function asset:effect/load + +#> 定義類はここに +# @within function asset:effect/0191.night_vision/** + scoreboard objectives add 191.Count dummy diff --git a/Asset/data/asset/functions/effect/0191.night_vision/register.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/register.mcfunction new file mode 100644 index 0000000000..2760bdd561 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0191.night_vision/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0191.night_vision/_/register + +# ExtendsSafe (boolean) (default = false) + data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 191 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"暗視"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value '{"text":"暗所でも視界が明るくなる"}' +# 効果時間 (int) (default = API || error) + # data modify storage asset:effect Duration set value +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0191.night_vision/remove/.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/remove/.mcfunction new file mode 100644 index 0000000000..353d318129 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0191.night_vision/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0191.night_vision/_/remove + +# 共通解除処理 + function asset:effect/0191.night_vision/clear/ diff --git a/Asset/data/asset/functions/effect/0191.night_vision/tick/.mcfunction b/Asset/data/asset/functions/effect/0191.night_vision/tick/.mcfunction new file mode 100644 index 0000000000..7fe13e9be1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0191.night_vision/tick/.mcfunction @@ -0,0 +1,21 @@ +#> asset:effect/0191.night_vision/tick/ +# +# Effectのtick処理 +# +# @within function asset:effect/0191.night_vision/_/tick + +#> Private +# @private + #declare score_holder $191.Duration + +# スコアへDurationを移す + execute store result score $191.Duration Temporary run data get storage asset:context Duration + +# $191.Durationが200以上なら暗視を毎tick付与 + execute if score $191.Duration Temporary >= $200 Const run effect give @s night_vision 11 0 true + +# $191.Durationが200未満かつ暗視が付与されていなければ、暗視を付与する + execute unless score $191.Duration Temporary >= $200 Const unless predicate asset:effect/0191.night_vision/night_vision run effect give @s night_vision 10 0 true + +# リセット + scoreboard players reset $191.Duration Temporary diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/_/end.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/end.mcfunction new file mode 100644 index 0000000000..a6a8648df1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0271.ghostly_texture/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:271} run function asset:effect/0271.ghostly_texture/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/_/register.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/register.mcfunction new file mode 100644 index 0000000000..2d7b65954c --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0271.ghostly_texture/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:271} run function asset:effect/0271.ghostly_texture/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/_/remove.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/remove.mcfunction new file mode 100644 index 0000000000..970063cb9e --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0271.ghostly_texture/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:271} run function asset:effect/0271.ghostly_texture/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/_/tick.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/tick.mcfunction new file mode 100644 index 0000000000..ff18717f7d --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/_/tick.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0271.ghostly_texture/_/tick +# +# Effectが発動している間毎tick実行されるfunction +# +# @within tag/function asset:effect/tick + +execute if data storage asset:context {id:271} run function asset:effect/0271.ghostly_texture/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/end/.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/end/.mcfunction new file mode 100644 index 0000000000..8b0e66e634 --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/end/.mcfunction @@ -0,0 +1,9 @@ +#> asset:effect/0271.ghostly_texture/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0271.ghostly_texture/_/end + +# 低速落下と透明化を解除 + effect clear @s slow_falling + effect clear @s invisibility diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/register.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/register.mcfunction new file mode 100644 index 0000000000..6798e11e2d --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0271.ghostly_texture/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0271.ghostly_texture/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 271 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"消えるような食感","color":"#B8D4D2"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"透明になり、ゆっくりと落ちるようになる","color":"white"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 300 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/remove/.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/remove/.mcfunction new file mode 100644 index 0000000000..f221f84345 --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/remove/.mcfunction @@ -0,0 +1,9 @@ +#> asset:effect/0271.ghostly_texture/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0271.ghostly_texture/_/remove + +# 低速落下と透明化を解除 + effect clear @s slow_falling + effect clear @s invisibility diff --git a/Asset/data/asset/functions/effect/0271.ghostly_texture/tick/.mcfunction b/Asset/data/asset/functions/effect/0271.ghostly_texture/tick/.mcfunction new file mode 100644 index 0000000000..fd9bcfd231 --- /dev/null +++ b/Asset/data/asset/functions/effect/0271.ghostly_texture/tick/.mcfunction @@ -0,0 +1,9 @@ +#> asset:effect/0271.ghostly_texture/tick/ +# +# Effectのtick処理 +# +# @within function asset:effect/0271.ghostly_texture/_/tick + +# 低速落下と透明化 + effect give @s slow_falling 1 0 true + effect give @s invisibility 1 0 true diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/_/end.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/end.mcfunction new file mode 100644 index 0000000000..06461dbe0f --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0286.dont_hit_me/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:286} run function asset:effect/0286.dont_hit_me/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/_/given.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/given.mcfunction new file mode 100644 index 0000000000..eb5572bdd3 --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0286.dont_hit_me/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:286} run function asset:effect/0286.dont_hit_me/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/_/register.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/register.mcfunction new file mode 100644 index 0000000000..3f7ea836a9 --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0286.dont_hit_me/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:286} run function asset:effect/0286.dont_hit_me/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/_/remove.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/remove.mcfunction new file mode 100644 index 0000000000..c88228af2c --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0286.dont_hit_me/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:286} run function asset:effect/0286.dont_hit_me/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/end/.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/end/.mcfunction new file mode 100644 index 0000000000..46f75e020d --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0286.dont_hit_me/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0286.dont_hit_me/_/end + +# 補正を削除する + function asset:effect/0286.dont_hit_me/modifier/remove diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/given/.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/given/.mcfunction new file mode 100644 index 0000000000..29b4526e5e --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0286.dont_hit_me/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0286.dont_hit_me/_/given + +# 補正を付与する + function asset:effect/0286.dont_hit_me/modifier/add diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/modifier/add.mcfunction new file mode 100644 index 0000000000..7b713a9105 --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/modifier/add.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0286.dont_hit_me/modifier/add +# +# +# +# @within function asset:effect/0286.dont_hit_me/given/ + +# 補正を付与する + attribute @s generic.movement_speed modifier add 00000001-0000-0003-0000-011e00000000 "286.Speed" 0.4 multiply diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/modifier/remove.mcfunction new file mode 100644 index 0000000000..6c5dee9bbd --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/modifier/remove.mcfunction @@ -0,0 +1,10 @@ +#> asset:effect/0286.dont_hit_me/modifier/remove +# +# +# +# @within function +# asset:effect/0286.dont_hit_me/end/ +# asset:effect/0286.dont_hit_me/remove/ + +# 補正を削除する + attribute @s generic.movement_speed modifier remove 00000001-0000-0003-0000-011e00000000 diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/register.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/register.mcfunction new file mode 100644 index 0000000000..d89d45c9d7 --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0286.dont_hit_me/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0286.dont_hit_me/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 286 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"叩かないで!","color":"gray"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"移動速度が大きく上昇する","color":"white"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 60 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0286.dont_hit_me/remove/.mcfunction b/Asset/data/asset/functions/effect/0286.dont_hit_me/remove/.mcfunction new file mode 100644 index 0000000000..fa461accf8 --- /dev/null +++ b/Asset/data/asset/functions/effect/0286.dont_hit_me/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0286.dont_hit_me/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0286.dont_hit_me/_/remove + +# 補正を削除する + function asset:effect/0286.dont_hit_me/modifier/remove diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/_/end.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/_/end.mcfunction new file mode 100644 index 0000000000..171b921f20 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0291.mine_soul/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:291} run function asset:effect/0291.mine_soul/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/_/register.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/_/register.mcfunction new file mode 100644 index 0000000000..84ee6cb173 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0291.mine_soul/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:291} run function asset:effect/0291.mine_soul/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/_/remove.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/_/remove.mcfunction new file mode 100644 index 0000000000..269e9d6897 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0291.mine_soul/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:291} run function asset:effect/0291.mine_soul/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/_/tick.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/_/tick.mcfunction new file mode 100644 index 0000000000..09f0d76ac5 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/_/tick.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0291.mine_soul/_/tick +# +# Effectが発動している間毎tick実行されるfunction +# +# @within tag/function asset:effect/tick + +execute if data storage asset:context {id:291} run function asset:effect/0291.mine_soul/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/end/.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/end/.mcfunction new file mode 100644 index 0000000000..a016b02698 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0291.mine_soul/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0291.mine_soul/_/end + +# 採掘速度上昇を削除 + effect clear @s haste diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/register.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/register.mcfunction new file mode 100644 index 0000000000..6cd12af3c9 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0291.mine_soul/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0291.mine_soul/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 291 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"マインソウル","color":"red"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"ブロックを掘る速度が大きく上昇する","color":"white"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 1200 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/remove/.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/remove/.mcfunction new file mode 100644 index 0000000000..f538b84e40 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0291.mine_soul/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0291.mine_soul/_/remove + +# 採掘速度上昇を削除 + effect clear @s haste diff --git a/Asset/data/asset/functions/effect/0291.mine_soul/tick/.mcfunction b/Asset/data/asset/functions/effect/0291.mine_soul/tick/.mcfunction new file mode 100644 index 0000000000..ff4e572d99 --- /dev/null +++ b/Asset/data/asset/functions/effect/0291.mine_soul/tick/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0291.mine_soul/tick/ +# +# Effectのtick処理 +# +# @within function asset:effect/0291.mine_soul/_/tick + +# 採掘速度上昇4 + effect give @s haste 1 3 true diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/end.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/end.mcfunction new file mode 100644 index 0000000000..ecfff9e601 --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0292.awaited_opportunity/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:292} run function asset:effect/0292.awaited_opportunity/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/given.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/given.mcfunction new file mode 100644 index 0000000000..e050ea319b --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0292.awaited_opportunity/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:292} run function asset:effect/0292.awaited_opportunity/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/register.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/register.mcfunction new file mode 100644 index 0000000000..e8f9e55ae2 --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0292.awaited_opportunity/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:292} run function asset:effect/0292.awaited_opportunity/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/remove.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/remove.mcfunction new file mode 100644 index 0000000000..d56776214a --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0292.awaited_opportunity/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:292} run function asset:effect/0292.awaited_opportunity/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/end/.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/end/.mcfunction new file mode 100644 index 0000000000..35cc503bf5 --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0292.awaited_opportunity/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0292.awaited_opportunity/_/end + +# 補正を削除する + function asset:effect/0292.awaited_opportunity/modifier/remove diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/given/.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/given/.mcfunction new file mode 100644 index 0000000000..7547d574b3 --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0292.awaited_opportunity/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0292.awaited_opportunity/_/given + +# 補正を付与する + function asset:effect/0292.awaited_opportunity/modifier/add diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/modifier/add.mcfunction new file mode 100644 index 0000000000..320a663789 --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/modifier/add.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0292.awaited_opportunity/modifier/add +# +# +# +# @within function asset:effect/0292.awaited_opportunity/given/ + +# 補正を付与する + attribute @s generic.movement_speed modifier add 00000001-0000-0003-0000-012400000000 "292.Speed" 0.6 multiply diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/modifier/remove.mcfunction new file mode 100644 index 0000000000..5a416cc3b5 --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/modifier/remove.mcfunction @@ -0,0 +1,10 @@ +#> asset:effect/0292.awaited_opportunity/modifier/remove +# +# +# +# @within function +# asset:effect/0292.awaited_opportunity/end/ +# asset:effect/0292.awaited_opportunity/remove/ + +# 補正を削除する + attribute @s generic.movement_speed modifier remove 00000001-0000-0003-0000-012400000000 diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/register.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/register.mcfunction new file mode 100644 index 0000000000..df94d90cfa --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0292.awaited_opportunity/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0292.awaited_opportunity/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 292 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"待望の瞬間","color":"red","bold":true}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"移動速度が大きく上昇する","color":"white"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 200 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0292.awaited_opportunity/remove/.mcfunction b/Asset/data/asset/functions/effect/0292.awaited_opportunity/remove/.mcfunction new file mode 100644 index 0000000000..b549abe9a1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0292.awaited_opportunity/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0292.awaited_opportunity/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0292.awaited_opportunity/_/remove + +# 補正を削除する + function asset:effect/0292.awaited_opportunity/modifier/remove diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/end.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/end.mcfunction new file mode 100644 index 0000000000..748b47047d --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0293.beyond_the_speed/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:293} run function asset:effect/0293.beyond_the_speed/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/given.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/given.mcfunction new file mode 100644 index 0000000000..977e63b971 --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0293.beyond_the_speed/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:293} run function asset:effect/0293.beyond_the_speed/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/register.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/register.mcfunction new file mode 100644 index 0000000000..604aad1a78 --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0293.beyond_the_speed/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:293} run function asset:effect/0293.beyond_the_speed/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/remove.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/remove.mcfunction new file mode 100644 index 0000000000..25a01e3a99 --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0293.beyond_the_speed/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:293} run function asset:effect/0293.beyond_the_speed/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/end/.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/end/.mcfunction new file mode 100644 index 0000000000..580b21096c --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0293.beyond_the_speed/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0293.beyond_the_speed/_/end + +# 補正を削除する + function asset:effect/0293.beyond_the_speed/modifier/remove diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/given/.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/given/.mcfunction new file mode 100644 index 0000000000..e59217ccd5 --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0293.beyond_the_speed/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0293.beyond_the_speed/_/given + +# 補正を付与する + function asset:effect/0293.beyond_the_speed/modifier/add diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/modifier/add.mcfunction new file mode 100644 index 0000000000..f9a530ac42 --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/modifier/add.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0293.beyond_the_speed/modifier/add +# +# +# +# @within function asset:effect/0293.beyond_the_speed/given/ + +# 補正を付与する + attribute @s generic.movement_speed modifier add 00000001-0000-0003-0000-012500000000 "293.Speed" 2.2 multiply diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/modifier/remove.mcfunction new file mode 100644 index 0000000000..adef95cd78 --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/modifier/remove.mcfunction @@ -0,0 +1,10 @@ +#> asset:effect/0293.beyond_the_speed/modifier/remove +# +# +# +# @within function +# asset:effect/0293.beyond_the_speed/end/ +# asset:effect/0293.beyond_the_speed/remove/ + +# 補正を削除する + attribute @s generic.movement_speed modifier remove 00000001-0000-0003-0000-012500000000 diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/register.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/register.mcfunction new file mode 100644 index 0000000000..2b8e399c3b --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0293.beyond_the_speed/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0293.beyond_the_speed/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 293 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"スピードの向こう側",}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"移動速度が極端に上昇する"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 600 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0293.beyond_the_speed/remove/.mcfunction b/Asset/data/asset/functions/effect/0293.beyond_the_speed/remove/.mcfunction new file mode 100644 index 0000000000..3349310a1a --- /dev/null +++ b/Asset/data/asset/functions/effect/0293.beyond_the_speed/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0293.beyond_the_speed/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0293.beyond_the_speed/_/remove + +# 補正を削除する + function asset:effect/0293.beyond_the_speed/modifier/remove diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/end.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/end.mcfunction new file mode 100644 index 0000000000..123761dddf --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0294.dance_with_hardluck/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:294} run function asset:effect/0294.dance_with_hardluck/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/register.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/register.mcfunction new file mode 100644 index 0000000000..99b5ff5105 --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0294.dance_with_hardluck/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:294} run function asset:effect/0294.dance_with_hardluck/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/remove.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/remove.mcfunction new file mode 100644 index 0000000000..156cb6ede4 --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0294.dance_with_hardluck/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:294} run function asset:effect/0294.dance_with_hardluck/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/tick.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/tick.mcfunction new file mode 100644 index 0000000000..d6304175f1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/_/tick.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0294.dance_with_hardluck/_/tick +# +# Effectが発動している間毎tick実行されるfunction +# +# @within tag/function asset:effect/tick + +execute if data storage asset:context {id:294} run function asset:effect/0294.dance_with_hardluck/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/end/.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/end/.mcfunction new file mode 100644 index 0000000000..4c0c887be6 --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0294.dance_with_hardluck/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0294.dance_with_hardluck/_/end + +# 不運を消す + effect clear @s unluck diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/register.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/register.mcfunction new file mode 100644 index 0000000000..c546bc87b5 --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0294.dance_with_hardluck/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0294.dance_with_hardluck/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 294 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"“不運”と“踊”る"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"運が悪くなる"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 600 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value true +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/remove/.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/remove/.mcfunction new file mode 100644 index 0000000000..acda01fba8 --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0294.dance_with_hardluck/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0294.dance_with_hardluck/_/remove + +# 不運を消す + effect clear @s unluck diff --git a/Asset/data/asset/functions/effect/0294.dance_with_hardluck/tick/.mcfunction b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/tick/.mcfunction new file mode 100644 index 0000000000..410ea4a87b --- /dev/null +++ b/Asset/data/asset/functions/effect/0294.dance_with_hardluck/tick/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0294.dance_with_hardluck/tick/ +# +# Effectのtick処理 +# +# @within function asset:effect/0294.dance_with_hardluck/_/tick + +# 不運を得る + effect give @s unluck 1 1 true diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/end.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/end.mcfunction new file mode 100644 index 0000000000..b4789ba727 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0304.residue_of_pumpkin/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:304} run function asset:effect/0304.residue_of_pumpkin/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/given.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/given.mcfunction new file mode 100644 index 0000000000..e2ad034ad7 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0304.residue_of_pumpkin/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:304} run function asset:effect/0304.residue_of_pumpkin/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/register.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/register.mcfunction new file mode 100644 index 0000000000..58723206e3 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0304.residue_of_pumpkin/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:304} run function asset:effect/0304.residue_of_pumpkin/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/remove.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/remove.mcfunction new file mode 100644 index 0000000000..abd657b72a --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0304.residue_of_pumpkin/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:304} run function asset:effect/0304.residue_of_pumpkin/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/end/.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/end/.mcfunction new file mode 100644 index 0000000000..8ed097127a --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/end/.mcfunction @@ -0,0 +1,14 @@ +#> asset:effect/0304.residue_of_pumpkin/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0304.residue_of_pumpkin/_/end + +# super.end + function asset:effect/super.end + +# 補正を削除する + function asset:effect/0304.residue_of_pumpkin/modifier/remove + +# Implement + data modify storage asset:effect Implement set value true diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/given/.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/given/.mcfunction new file mode 100644 index 0000000000..16a6c32437 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/given/.mcfunction @@ -0,0 +1,14 @@ +#> asset:effect/0304.residue_of_pumpkin/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0304.residue_of_pumpkin/_/given + +# super.given + function asset:effect/super.given + +# 補正を付与する + function asset:effect/0304.residue_of_pumpkin/modifier/add + +# Implement + data modify storage asset:effect Implement set value true diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/modifier/add.mcfunction new file mode 100644 index 0000000000..bc3d566f02 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/modifier/add.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0304.residue_of_pumpkin/modifier/add +# +# +# +# @within function asset:effect/0304.residue_of_pumpkin/given/ + +# 移動速度 + attribute @s generic.movement_speed modifier add 00000001-0000-0003-0000-013000000000 "0304.Speed" 0.2 multiply diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/modifier/remove.mcfunction new file mode 100644 index 0000000000..ed032f2bc1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/modifier/remove.mcfunction @@ -0,0 +1,10 @@ +#> asset:effect/0304.residue_of_pumpkin/modifier/remove +# +# +# +# @within function +# asset:effect/0304.residue_of_pumpkin/end/ +# asset:effect/0304.residue_of_pumpkin/remove/ + +# 移動速度 + attribute @s generic.movement_speed modifier remove 00000001-0000-0003-0000-013000000000 diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/register.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/register.mcfunction new file mode 100644 index 0000000000..e463668c93 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/register.mcfunction @@ -0,0 +1,23 @@ +#> asset:effect/0304.residue_of_pumpkin/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0304.residue_of_pumpkin/_/register + +# 継承 (int) + data modify storage asset:effect Extends append value 191 + function asset:effect/extends +# ID (int) + data modify storage asset:effect ID set value 304 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"カボチャの怨念","color":"#FFAA00"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"移動速度が上昇し、暗所でも視界が明るくなる"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 600 +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 diff --git a/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/remove/.mcfunction b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/remove/.mcfunction new file mode 100644 index 0000000000..296938d937 --- /dev/null +++ b/Asset/data/asset/functions/effect/0304.residue_of_pumpkin/remove/.mcfunction @@ -0,0 +1,14 @@ +#> asset:effect/0304.residue_of_pumpkin/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0304.residue_of_pumpkin/_/remove + +# super.remove + function asset:effect/super.remove + +# 補正を削除する + function asset:effect/0304.residue_of_pumpkin/modifier/remove + +# Implement + data modify storage asset:effect Implement set value true diff --git a/Asset/data/asset/functions/effect/0306.reactivearmor_lock/_/register.mcfunction b/Asset/data/asset/functions/effect/0306.reactivearmor_lock/_/register.mcfunction new file mode 100644 index 0000000000..6d2ab5c304 --- /dev/null +++ b/Asset/data/asset/functions/effect/0306.reactivearmor_lock/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0306.reactivearmor_lock/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:306} run function asset:effect/0306.reactivearmor_lock/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0306.reactivearmor_lock/register.mcfunction b/Asset/data/asset/functions/effect/0306.reactivearmor_lock/register.mcfunction new file mode 100644 index 0000000000..f4e4473576 --- /dev/null +++ b/Asset/data/asset/functions/effect/0306.reactivearmor_lock/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0306.reactivearmor_lock/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0306.reactivearmor_lock/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 306 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"リアクティブアーマー"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value '' +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 1 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + # data modify storage asset:effect MaxStack set value +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value true +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 4 +# エフェクトをUIに表示するか (boolean) (default = true) + data modify storage asset:effect Visible set value false +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/_/end.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/_/end.mcfunction new file mode 100644 index 0000000000..f81b4eedbd --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:308} run function asset:effect/0308.healer_trance/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/_/given.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/_/given.mcfunction new file mode 100644 index 0000000000..01bfb3667e --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:308} run function asset:effect/0308.healer_trance/given/ diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/_/re-given.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/_/re-given.mcfunction new file mode 100644 index 0000000000..17beff992f --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/_/re-given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/_/re-given +# +# Effectが上書きされた時に実行されるfunction +# +# @within tag/function asset:effect/re-given + +execute if data storage asset:context {id:308} run function asset:effect/0308.healer_trance/re-given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/_/register.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/_/register.mcfunction new file mode 100644 index 0000000000..879e78b076 --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:308} run function asset:effect/0308.healer_trance/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/_/remove.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/_/remove.mcfunction new file mode 100644 index 0000000000..4d9f798ad1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:308} run function asset:effect/0308.healer_trance/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/end/.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/end/.mcfunction new file mode 100644 index 0000000000..5a27a5af69 --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/end/.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0308.healer_trance/_/end + +function asset:effect/0308.healer_trance/modifier/remove diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/given/.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/given/.mcfunction new file mode 100644 index 0000000000..7b126fcef1 --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/given/.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0308.healer_trance/_/given + +function asset:effect/0308.healer_trance/modifier/add diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/modifier/add.mcfunction new file mode 100644 index 0000000000..56ac3c3985 --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/modifier/add.mcfunction @@ -0,0 +1,11 @@ +#> asset:effect/0308.healer_trance/modifier/add +# +# +# +# @within function asset:effect/0308.healer_trance/*/ + +# 攻撃 + data modify storage api: Argument.UUID set value [I;1,3,308,0] + execute store result storage api: Argument.Amount double 0.001 run data get storage asset:context Stack + data modify storage api: Argument.Operation set value "multiply" + function api:modifier/attack/base/add diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/modifier/remove.mcfunction new file mode 100644 index 0000000000..c0dc641eef --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/modifier/remove.mcfunction @@ -0,0 +1,9 @@ +#> asset:effect/0308.healer_trance/modifier/remove +# +# +# +# @within function asset:effect/0308.healer_trance/*/ + +# 攻撃 + data modify storage api: Argument.UUID set value [I;1,3,308,0] + function api:modifier/attack/base/remove diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/re-given/.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/re-given/.mcfunction new file mode 100644 index 0000000000..0311c66d56 --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/re-given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0308.healer_trance/re-given/ +# +# Effectが上書きされた時の処理 +# +# @within function asset:effect/0308.healer_trance/_/re-given + +function asset:effect/0308.healer_trance/modifier/remove +function asset:effect/0308.healer_trance/modifier/add diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/register.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/register.mcfunction new file mode 100644 index 0000000000..b7ed74afeb --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0308.healer_trance/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0308.healer_trance/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 308 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"ヒーラートランス"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value '{"text":"与回復量・被回復量に比例し、与ダメージが上昇する"}' +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 200 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + # data modify storage asset:effect MaxStack set value +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 3 +# エフェクトをUIに表示するか (boolean) (default = true) + data modify storage asset:effect Visible set value true +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0308.healer_trance/remove/.mcfunction b/Asset/data/asset/functions/effect/0308.healer_trance/remove/.mcfunction new file mode 100644 index 0000000000..da41d92ecf --- /dev/null +++ b/Asset/data/asset/functions/effect/0308.healer_trance/remove/.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0308.healer_trance/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0308.healer_trance/_/remove + +function asset:effect/0308.healer_trance/modifier/remove diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/_/end.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/_/end.mcfunction new file mode 100644 index 0000000000..c6fe875822 --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:309} run function asset:effect/0309.healer_trance/end/ diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/_/given.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/_/given.mcfunction new file mode 100644 index 0000000000..e3dcfbbe8b --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:309} run function asset:effect/0309.healer_trance/given/ diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/_/re-given.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/_/re-given.mcfunction new file mode 100644 index 0000000000..7f07ac5cc8 --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/_/re-given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/_/re-given +# +# Effectが上書きされた時に実行されるfunction +# +# @within tag/function asset:effect/re-given + +execute if data storage asset:context {id:309} run function asset:effect/0309.healer_trance/re-given/ diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/_/register.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/_/register.mcfunction new file mode 100644 index 0000000000..4152f62dcd --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:309} run function asset:effect/0309.healer_trance/register diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/_/remove.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/_/remove.mcfunction new file mode 100644 index 0000000000..6c15f055f7 --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:309} run function asset:effect/0309.healer_trance/remove/ diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/end/.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/end/.mcfunction new file mode 100644 index 0000000000..402987d7a6 --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/end/.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0309.healer_trance/_/end + +function asset:effect/0309.healer_trance/modifier/remove diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/given/.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/given/.mcfunction new file mode 100644 index 0000000000..0626a1a0fa --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/given/.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0309.healer_trance/_/given + +function asset:effect/0309.healer_trance/modifier/add diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/modifier/add.mcfunction new file mode 100644 index 0000000000..aedec2bd12 --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/modifier/add.mcfunction @@ -0,0 +1,17 @@ +#> asset:effect/0309.healer_trance/modifier/add +# +# +# +# @within function asset:effect/0309.healer_trance/*/ + +# 与回復量 + data modify storage api: Argument.UUID set value [I;1,3,309,0] + data modify storage api: Argument.Amount set value -0.5 + data modify storage api: Argument.Operation set value "multiply" + function api:modifier/heal/add + +# 被回復量 + data modify storage api: Argument.UUID set value [I;1,3,309,0] + data modify storage api: Argument.Amount set value -0.5 + data modify storage api: Argument.Operation set value "multiply" + function api:modifier/receive_heal/add diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/modifier/remove.mcfunction new file mode 100644 index 0000000000..e4895b1643 --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/modifier/remove.mcfunction @@ -0,0 +1,13 @@ +#> asset:effect/0309.healer_trance/modifier/remove +# +# +# +# @within function asset:effect/0309.healer_trance/*/ + +# 与回復量 + data modify storage api: Argument.UUID set value [I;1,3,309,0] + function api:modifier/heal/remove + +# 被回復量 + data modify storage api: Argument.UUID set value [I;1,3,309,0] + function api:modifier/receive_heal/remove diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/re-given/.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/re-given/.mcfunction new file mode 100644 index 0000000000..083884be72 --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/re-given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0309.healer_trance/re-given/ +# +# Effectが上書きされた時の処理 +# +# @within function asset:effect/0309.healer_trance/_/re-given + +function asset:effect/0309.healer_trance/modifier/remove +function asset:effect/0309.healer_trance/modifier/add diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/register.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/register.mcfunction new file mode 100644 index 0000000000..192276279e --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0309.healer_trance/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0309.healer_trance/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 309 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"ヒーラートランス"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value '{"text":"与回復量・被回復量が半減する"}' +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 400 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value true +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 4 +# エフェクトをUIに表示するか (boolean) (default = true) + data modify storage asset:effect Visible set value true +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0309.healer_trance/remove/.mcfunction b/Asset/data/asset/functions/effect/0309.healer_trance/remove/.mcfunction new file mode 100644 index 0000000000..d55f19c7ff --- /dev/null +++ b/Asset/data/asset/functions/effect/0309.healer_trance/remove/.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0309.healer_trance/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0309.healer_trance/_/remove + +function asset:effect/0309.healer_trance/modifier/remove diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/_/end.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/_/end.mcfunction new file mode 100644 index 0000000000..e6b99bc1fe --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/_/end.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0310.angel_wing/_/end +# +# Effectの効果の終了時に実行されるfunction +# +# @within tag/function asset:effect/end + +execute if data storage asset:context {id:310} run function asset:effect/0310.angel_wing/end/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/_/given.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/_/given.mcfunction new file mode 100644 index 0000000000..6e42631148 --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/_/given.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0310.angel_wing/_/given +# +# Effectが付与された時に実行されるfunction +# +# @within tag/function asset:effect/given + +execute if data storage asset:context {id:310} run function asset:effect/0310.angel_wing/given/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/_/register.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/_/register.mcfunction new file mode 100644 index 0000000000..cb88be8a05 --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0310.angel_wing/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:310} run function asset:effect/0310.angel_wing/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/_/remove.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/_/remove.mcfunction new file mode 100644 index 0000000000..d3803f37c5 --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/_/remove.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0310.angel_wing/_/remove +# +# Effectが神器や牛乳によって削除された時に実行されるfunction +# +# @within tag/function asset:effect/remove + +execute if data storage asset:context {id:310} run function asset:effect/0310.angel_wing/remove/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/_/tick.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/_/tick.mcfunction new file mode 100644 index 0000000000..3ea754bad0 --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/_/tick.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0310.angel_wing/_/tick +# +# Effectが発動している間毎tick実行されるfunction +# +# @within tag/function asset:effect/tick + +execute if data storage asset:context {id:310} run function asset:effect/0310.angel_wing/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/end/.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/end/.mcfunction new file mode 100644 index 0000000000..e8fb74c690 --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/end/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0310.angel_wing/end/ +# +# Effectの効果が切れた時の処理 +# +# @within function asset:effect/0310.angel_wing/_/end + +# 補正を削除する + function asset:effect/0310.angel_wing/modifier/remove diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/given/.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/given/.mcfunction new file mode 100644 index 0000000000..888b8a8240 --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/given/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0310.angel_wing/given/ +# +# Effectが付与された時の処理 +# +# @within function asset:effect/0310.angel_wing/_/given + +# 補正を付与する + function asset:effect/0310.angel_wing/modifier/add diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/modifier/add.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/modifier/add.mcfunction new file mode 100644 index 0000000000..3cbb8466ce --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/modifier/add.mcfunction @@ -0,0 +1,10 @@ +#> asset:effect/0310.angel_wing/modifier/add +# +# +# +# @within function asset:effect/0310.angel_wing/given/ + +# 補正を付与する +# multiply_baseなのは意図的 + attribute @s generic.movement_speed modifier add 00000001-0000-0003-0000-013600000000 "310.Speed" 0.4 multiply_base + diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/modifier/remove.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/modifier/remove.mcfunction new file mode 100644 index 0000000000..0036e5571f --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/modifier/remove.mcfunction @@ -0,0 +1,13 @@ +#> asset:effect/0310.angel_wing/modifier/remove +# +# +# +# @within function +# asset:effect/0310.angel_wing/end/ +# asset:effect/0310.angel_wing/remove/ + +# 補正を削除する + attribute @s generic.movement_speed modifier remove 00000001-0000-0003-0000-013600000000 + +# 跳躍も消す + effect clear @s jump_boost diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/register.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/register.mcfunction new file mode 100644 index 0000000000..e8cb78a889 --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0310.angel_wing/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0310.angel_wing/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 310 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"えんじぇるうぃんぐ","color":"#FFFFFF"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"移動速度とジャンプ力が大きく上昇する"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 2147483647 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + data modify storage asset:effect MaxStack set value 1 +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value false +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 4 +# エフェクトをUIに表示するか (boolean) (default = true) + data modify storage asset:effect Visible set value false +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/remove/.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/remove/.mcfunction new file mode 100644 index 0000000000..0fc48f464e --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/remove/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0310.angel_wing/remove/ +# +# Effectが削除された時の処理 +# +# @within function asset:effect/0310.angel_wing/_/remove + +# 補正を削除する + function asset:effect/0310.angel_wing/modifier/remove diff --git a/Asset/data/asset/functions/effect/0310.angel_wing/tick/.mcfunction b/Asset/data/asset/functions/effect/0310.angel_wing/tick/.mcfunction new file mode 100644 index 0000000000..01b6f61bea --- /dev/null +++ b/Asset/data/asset/functions/effect/0310.angel_wing/tick/.mcfunction @@ -0,0 +1,8 @@ +#> asset:effect/0310.angel_wing/tick/ +# +# Effectのtick処理 +# +# @within function asset:effect/0310.angel_wing/_/tick + +# 跳躍3 + effect give @s jump_boost 1 2 true diff --git a/Asset/data/asset/functions/effect/0311.scrap_maker/_/register.mcfunction b/Asset/data/asset/functions/effect/0311.scrap_maker/_/register.mcfunction new file mode 100644 index 0000000000..ec11184193 --- /dev/null +++ b/Asset/data/asset/functions/effect/0311.scrap_maker/_/register.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0311.scrap_maker/_/register +# +# +# +# @within tag/function asset:effect/register + +execute if data storage asset:context {id:311} run function asset:effect/0311.scrap_maker/register \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0311.scrap_maker/_/tick.mcfunction b/Asset/data/asset/functions/effect/0311.scrap_maker/_/tick.mcfunction new file mode 100644 index 0000000000..2e035b4f72 --- /dev/null +++ b/Asset/data/asset/functions/effect/0311.scrap_maker/_/tick.mcfunction @@ -0,0 +1,7 @@ +#> asset:effect/0311.scrap_maker/_/tick +# +# Effectが発動している間毎tick実行されるfunction +# +# @within tag/function asset:effect/tick + +execute if data storage asset:context {id:311} run function asset:effect/0311.scrap_maker/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/effect/0311.scrap_maker/register.mcfunction b/Asset/data/asset/functions/effect/0311.scrap_maker/register.mcfunction new file mode 100644 index 0000000000..888bb9a8a2 --- /dev/null +++ b/Asset/data/asset/functions/effect/0311.scrap_maker/register.mcfunction @@ -0,0 +1,39 @@ +#> asset:effect/0311.scrap_maker/register +# +# Effectのデータを指定 +# +# @within function asset:effect/0311.scrap_maker/_/register + +# ExtendsSafe (boolean) (default = false) + # data modify storage asset:effect ExtendsSafe set value true +# ID (int) + data modify storage asset:effect ID set value 311 +# 名前 (TextComponentString) + data modify storage asset:effect Name set value '{"text":"スクラップメイカー"}' +# 説明文 (TextComponentString[]) + data modify storage asset:effect Description set value ['{"text":"継続的に魔法無属性ダメージを受ける"}'] +# 効果時間 (int) (default = API || error) + data modify storage asset:effect Duration set value 20 +# スタック (int) (default = API || 1) + # data modify storage asset:effect Stack set value +# 効果時間の操作方法 (default = API || "replace") + # data modify storage asset:effect DurationOperation set value +# スタックの操作方法 (default = API || "replace") + # data modify storage asset:effect StackOperation set value +# 最大効果時間 (int) (default = 2147483647) + # data modify storage asset:effect MaxDuration set value +# 最大スタック (int) (default = 2147483647) + # data modify storage asset:effect MaxStack set value +# 悪い効果か否か (boolean) + data modify storage asset:effect IsBadEffect set value true +# 死亡時のエフェクトの処理 (default = "remove") + # data modify storage asset:effect ProcessOnDied set value +# 消すのに必要なレベル (int) (default = 1) + data modify storage asset:effect RequireClearLv set value 4 +# エフェクトをUIに表示するか (boolean) (default = true) + # data modify storage asset:effect Visible set value +# エフェクトのスタックををUIに表示するか (boolean) (default = true) + data modify storage asset:effect StackVisible set value false + +# フィールド + # data modify storage asset:effect Field set value {} diff --git a/Asset/data/asset/functions/effect/0311.scrap_maker/tick/.mcfunction b/Asset/data/asset/functions/effect/0311.scrap_maker/tick/.mcfunction new file mode 100644 index 0000000000..4681d85b5a --- /dev/null +++ b/Asset/data/asset/functions/effect/0311.scrap_maker/tick/.mcfunction @@ -0,0 +1,11 @@ +#> asset:effect/0311.scrap_maker/tick/ +# +# Effectのtick処理 +# +# @within function asset:effect/0311.scrap_maker/_/tick + +# デクリメント + execute store result storage asset:context this.Tick int 0.9999999999 run data get storage asset:context this.Tick 1 +# 2tickおきにダメージを与える + execute if data storage asset:context this{Tick:0} run function asset:effect/0311.scrap_maker/tick/deal_damage + execute if data storage asset:context this{Tick:0} run data modify storage asset:context this.Tick set value 2 diff --git a/Asset/data/asset/functions/effect/0311.scrap_maker/tick/deal_damage.mcfunction b/Asset/data/asset/functions/effect/0311.scrap_maker/tick/deal_damage.mcfunction new file mode 100644 index 0000000000..07115d0104 --- /dev/null +++ b/Asset/data/asset/functions/effect/0311.scrap_maker/tick/deal_damage.mcfunction @@ -0,0 +1,27 @@ +#> asset:effect/0311.scrap_maker/tick/deal_damage +# +# +# +# @within function asset:effect/0311.scrap_maker/tick/ + +#> Private +# @private +#declare score_holder $UserID + +# 演出 + playsound entity.blaze.hurt player @a ~ ~ ~ 1.2 0.1 + playsound block.sand.step player @a ~ ~ ~ 1.0 0.8 + particle block stone ~ ~1 ~ 0.2 1 0.2 0 10 + particle block redstone_block ~ ~1 ~ 0.2 1 0.2 0 2 + particle crit ~ ~1 ~ 0.2 1 0.2 0.1 3 + +# ダメージを与える + execute store result score $UserID Temporary run data get storage asset:context this.UserID + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AdditionalMPHeal set from storage asset:context this.AdditionalMPHeal + data modify storage api: Argument.AttackType set value "Magic" + execute as @a if score @s UserID = $UserID Temporary run function api:damage/modifier + function api:damage/ + function api:damage/reset +# リセット + scoreboard players reset $UserID Temporary diff --git a/Asset/data/asset/functions/mob/0019.horus_priest/0.load.mcfunction b/Asset/data/asset/functions/mob/0019.horus_priest/0.load.mcfunction deleted file mode 100644 index e4c364bd78..0000000000 --- a/Asset/data/asset/functions/mob/0019.horus_priest/0.load.mcfunction +++ /dev/null @@ -1,9 +0,0 @@ -#> asset:mob/0019.horus_priest/0.load -# -# MOBに利用するスコアボード等の初期化処理 -# -# @within tag/function asset:mob/load - -#> 定義類はここに -# @within function asset:mob/0019.horus_priest/** - scoreboard objectives add J.HealCool dummy diff --git a/Asset/data/asset/functions/mob/0019.horus_priest/init/.mcfunction b/Asset/data/asset/functions/mob/0019.horus_priest/init/.mcfunction new file mode 100644 index 0000000000..df70364cfc --- /dev/null +++ b/Asset/data/asset/functions/mob/0019.horus_priest/init/.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/0019.horus_priest/init/ +# +# Mobのinit時の処理 +# +# @within asset:mob/alias/19/init + +# スコア初期化 + scoreboard players set @s General.Mob.Tick -100 diff --git a/Asset/data/asset/functions/mob/0019.horus_priest/tick/.mcfunction b/Asset/data/asset/functions/mob/0019.horus_priest/tick/.mcfunction index dbae99b5a3..2491f3d903 100644 --- a/Asset/data/asset/functions/mob/0019.horus_priest/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0019.horus_priest/tick/.mcfunction @@ -5,9 +5,9 @@ # @within function asset:mob/alias/19/tick # スコアを増やしていく - scoreboard players add @s J.HealCool 1 + scoreboard players add @s General.Mob.Tick 1 # 特定のスコアに達したら効果発動 - execute if score @s J.HealCool matches 160 run playsound entity.elder_guardian.hurt hostile @a ~ ~ ~ 0.6 0.8 - execute if score @s J.HealCool matches 160 run particle minecraft:dragon_breath ~ ~ ~ 0.2 0.2 0.2 0.06 100 - execute if score @s J.HealCool matches 180 run function asset:mob/0019.horus_priest/tick/2.1.heal + execute if score @s General.Mob.Tick matches 0 run playsound entity.elder_guardian.hurt hostile @a ~ ~ ~ 0.6 0.8 + execute if score @s General.Mob.Tick matches 0 run particle minecraft:dragon_breath ~ ~ ~ 0.2 0.2 0.2 0.06 100 + execute if score @s General.Mob.Tick matches 20 run function asset:mob/0019.horus_priest/tick/heal diff --git a/Asset/data/asset/functions/mob/0019.horus_priest/tick/2.1.heal.mcfunction b/Asset/data/asset/functions/mob/0019.horus_priest/tick/2.1.heal.mcfunction deleted file mode 100644 index 415c5dc7e8..0000000000 --- a/Asset/data/asset/functions/mob/0019.horus_priest/tick/2.1.heal.mcfunction +++ /dev/null @@ -1,16 +0,0 @@ -#> asset:mob/0019.horus_priest/tick/2.1.heal -# -# Mobのtick時の処理 -# -# @within function asset:mob/0019.horus_priest/tick/ - -# 効果を発動する - data modify storage api: Argument.Heal set value 100f - function api:heal/modifier - execute as @e[tag=Enemy,tag=!Uninterferable,distance=..10] run function api:heal/ - execute as @e[tag=Enemy,tag=!Uninterferable,distance=..10] at @s run particle heart ~ ~1 ~ 0.3 0.3 0.3 0 10 - playsound minecraft:entity.arrow.hit_player hostile @a ~ ~ ~ 1 1 - -# リセット - function api:heal/reset - scoreboard players set @s J.HealCool 0 diff --git a/Asset/data/asset/functions/mob/0019.horus_priest/tick/heal.mcfunction b/Asset/data/asset/functions/mob/0019.horus_priest/tick/heal.mcfunction new file mode 100644 index 0000000000..4297cfa7e5 --- /dev/null +++ b/Asset/data/asset/functions/mob/0019.horus_priest/tick/heal.mcfunction @@ -0,0 +1,19 @@ +#> asset:mob/0019.horus_priest/tick/heal +# +# 回復 +# +# @within function asset:mob/0019.horus_priest/tick/ + +# 演出 + execute at @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=5] run particle heart ~ ~1 ~ 0.3 0.3 0.3 0 10 + playsound minecraft:entity.arrow.hit_player hostile @a ~ ~ ~ 1 1 + +# 回復 + function api:global_vars/get_difficulty + execute store result storage api: Argument.Heal int 50 run data get storage api: Return.Difficulty + function api:heal/modifier + execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=5] run function api:heal/ + function api:heal/reset + +# リセット + scoreboard players set @s General.Mob.Tick -160 diff --git a/Asset/data/asset/functions/mob/0046.clock_of_despair/tick/skill/11_oclock.mcfunction b/Asset/data/asset/functions/mob/0046.clock_of_despair/tick/skill/11_oclock.mcfunction index 9926feb8c5..52e2b540b0 100644 --- a/Asset/data/asset/functions/mob/0046.clock_of_despair/tick/skill/11_oclock.mcfunction +++ b/Asset/data/asset/functions/mob/0046.clock_of_despair/tick/skill/11_oclock.mcfunction @@ -14,8 +14,7 @@ #declare score_holder $IntervalTime # 時計レーザーの順序指定 - execute if score @s 1A.LifeTime matches 2205 store result score $LaserDirection Temporary run function lib:random/ - execute if score @s 1A.LifeTime matches 2205 run scoreboard players operation $LaserDirection Temporary %= $4 Const + execute if score @s 1A.LifeTime matches 2205 run random value 0..3 execute if score @s 1A.LifeTime matches 2205 if score $LaserDirection Temporary matches 0 run tag @s add 1A.LaserDirection1 execute if score @s 1A.LifeTime matches 2205 if score $LaserDirection Temporary matches 1 run tag @s add 1A.LaserDirection2 execute if score @s 1A.LifeTime matches 2205 if score $LaserDirection Temporary matches 2 run tag @s add 1A.LaserDirection3 diff --git a/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/.mcfunction b/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/.mcfunction index b77d23e9e3..202f33ce57 100644 --- a/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/.mcfunction +++ b/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/.mcfunction @@ -7,7 +7,6 @@ # バニラの攻撃じゃなかったら return execute unless data storage asset:context Attack{IsVanilla:true} run return fail - # 演出 particle minecraft:dust 1 1 0 2 ~ ~ ~ 0.8 0.8 0.8 0.1 20 normal @a particle minecraft:firework ~ ~1 ~ 0.5 0.5 0.5 0 10 normal @a diff --git a/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/mp_reduce.mcfunction b/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/mp_reduce.mcfunction index 6753141748..ef4d58c838 100644 --- a/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/mp_reduce.mcfunction +++ b/Asset/data/asset/functions/mob/0056.thunder_trifler/attack/mp_reduce.mcfunction @@ -9,15 +9,14 @@ #declare score_holder $Difficulty #declare score_holder $Base -# Field[1]の値を取得 +# this.MPReduceの値を取得 execute store result score $Base Temporary run data get storage asset:context this.MPReduce # 難易度値を取得し、1減らす function api:global_vars/get_difficulty - execute store result score $Difficulty Temporary run data get storage api: Return.Difficulty - scoreboard players remove $Difficulty Temporary 1 + execute store result score $Difficulty Temporary run data get storage api: Return.Difficulty 0.9999999999 -# Field[1] * (難易度値-1)、MPを減らす +# (this.MPReduce * Difficulty)、MPを減らす execute store result storage api: Argument.Fluctuation int -1 run scoreboard players operation $Base Temporary *= $Difficulty Temporary execute as @p[tag=Victim] run function api:mp/fluctuation diff --git a/Asset/data/asset/functions/mob/0056.thunder_trifler/register.mcfunction b/Asset/data/asset/functions/mob/0056.thunder_trifler/register.mcfunction index fd1f37eb47..d794ee1f88 100644 --- a/Asset/data/asset/functions/mob/0056.thunder_trifler/register.mcfunction +++ b/Asset/data/asset/functions/mob/0056.thunder_trifler/register.mcfunction @@ -61,6 +61,5 @@ data modify storage asset:mob Resist.Thunder set value 0.7 # フィールド -# [ダメージ量、MP減少量の計算に必要な値] data modify storage asset:mob Field.Damage set value 7 data modify storage asset:mob Field.MPReduce set value 4 diff --git a/Asset/data/asset/functions/mob/0089.decapitation/attack/.mcfunction b/Asset/data/asset/functions/mob/0089.decapitation/attack/.mcfunction index 1de4068247..a7d38e58ea 100644 --- a/Asset/data/asset/functions/mob/0089.decapitation/attack/.mcfunction +++ b/Asset/data/asset/functions/mob/0089.decapitation/attack/.mcfunction @@ -14,6 +14,14 @@ # 何故かこうするとプレイヤーと同じ剣の降り方をする item replace entity @s weapon with stick{CustomModelData:20022} +# 被回復低下 + function api:global_vars/get_difficulty + data modify storage api: Argument.ID set value 14 + execute store result storage api: Argument.Stack int 2 run data get storage api: Return.Difficulty + data modify storage api: Argument.Duration set value 200 + execute as @p[tag=Victim] run function api:entity/mob/effect/give + function api:entity/mob/effect/reset + # ダメージ data modify storage api: Argument.Damage set from storage asset:context this.Damage data modify storage api: Argument.AttackType set value "Physical" diff --git a/Asset/data/asset/functions/mob/0106.mini_shulker/tick/reset.mcfunction b/Asset/data/asset/functions/mob/0106.mini_shulker/tick/reset.mcfunction index 8bb0a78502..810be09dbf 100644 --- a/Asset/data/asset/functions/mob/0106.mini_shulker/tick/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0106.mini_shulker/tick/reset.mcfunction @@ -5,10 +5,7 @@ # @within function asset:mob/0106.mini_shulker/tick/** # クールダウン - execute store result score $2Y.Temp Temporary run function lib:random/ - scoreboard players operation $2Y.Temp Temporary %= $20 Const - execute store result score @s General.Mob.Tick run scoreboard players remove $2Y.Temp Temporary 30 - scoreboard players reset $2Y.Temp + execute store result score @s General.Mob.Tick run random value -30..-11 # 形態リセット data remove storage asset:context this.Target diff --git a/Asset/data/asset/functions/mob/0114.jewel_hunter/death/.mcfunction b/Asset/data/asset/functions/mob/0114.jewel_hunter/death/.mcfunction index a349a43d28..47067fb54c 100644 --- a/Asset/data/asset/functions/mob/0114.jewel_hunter/death/.mcfunction +++ b/Asset/data/asset/functions/mob/0114.jewel_hunter/death/.mcfunction @@ -13,9 +13,7 @@ playsound minecraft:block.amethyst_cluster.hit hostile @a ~ ~ ~ 2 0 0 # 確率で宝石系ドロップ - - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $4 Const + execute store result score $Random Temporary run random value 0..3 execute if score $Random Temporary matches 0 if predicate lib:random_pass_per/50 run summon item ~ ~ ~ {Item:{id:"minecraft:iron_block",Count:16b}} execute if score $Random Temporary matches 1 if predicate lib:random_pass_per/50 run summon item ~ ~ ~ {Item:{id:"minecraft:gold_block",Count:16b}} execute if score $Random Temporary matches 2 if predicate lib:random_pass_per/50 run summon item ~ ~ ~ {Item:{id:"minecraft:emerald_block",Count:16b}} diff --git a/Asset/data/asset/functions/mob/0138.combat_turret/tick/2.5.reset.mcfunction b/Asset/data/asset/functions/mob/0138.combat_turret/tick/2.5.reset.mcfunction index bd864f67ff..595a6a1279 100644 --- a/Asset/data/asset/functions/mob/0138.combat_turret/tick/2.5.reset.mcfunction +++ b/Asset/data/asset/functions/mob/0138.combat_turret/tick/2.5.reset.mcfunction @@ -3,19 +3,9 @@ # # # @within function asset:mob/0138.combat_turret/tick/2.1.near_player -#> Private -# @private - #declare score_holder $RandomDamage # 次に攻撃するタイミングをランダムにする -# 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ -# 剰余算する - scoreboard players operation $RandomDamage Temporary %= $31 Const -#スコアセットセット - scoreboard players operation @s 3U.Time = $RandomDamage Temporary - + execute store result score @s 3U.Time run random value 0..30 # リセット処理 data modify entity @s NoAI set value 0 - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/mob/0139.blast_eye/init/.mcfunction b/Asset/data/asset/functions/mob/0139.blast_eye/init/.mcfunction index 2bcffc13be..42bcc582bf 100644 --- a/Asset/data/asset/functions/mob/0139.blast_eye/init/.mcfunction +++ b/Asset/data/asset/functions/mob/0139.blast_eye/init/.mcfunction @@ -1,7 +1,4 @@ #> asset:mob/0139.blast_eye/init/ # @within asset:mob/alias/139/init -execute store result score $Random Temporary run function lib:random/ -scoreboard players operation $Random Temporary %= $100 Const -scoreboard players operation @s 3v.Time = $Random Temporary -scoreboard players reset $Random Temporary +execute store result score @s 3v.Time run random value 0..99 diff --git a/Asset/data/asset/functions/mob/0155.immorality/death/.mcfunction b/Asset/data/asset/functions/mob/0155.immorality/death/.mcfunction index 579a9b3611..a55dea1b15 100644 --- a/Asset/data/asset/functions/mob/0155.immorality/death/.mcfunction +++ b/Asset/data/asset/functions/mob/0155.immorality/death/.mcfunction @@ -8,9 +8,7 @@ #declare score_holder $Random # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $11 Const + execute store result score $Random Temporary run random value 0..10 # メッセージ出力 execute if score $Random Temporary matches 0 run summon area_effect_cloud ~ ~0.5 ~ {CustomNameVisible:1b,Particle:"block air",Duration:40,Tags:["Object"],CustomName:'{"text":"Crime?","color":"dark_red","bold":true,"underlined":true}'} execute if score $Random Temporary matches 1 run summon area_effect_cloud ~ ~0.5 ~ {CustomNameVisible:1b,Particle:"block air",Duration:40,Tags:["Object"],CustomName:'{"text":"Wickedness?","color":"dark_red","bold":true,"underlined":true}'} diff --git a/Asset/data/asset/functions/mob/0155.immorality/tick/shot/reset.mcfunction b/Asset/data/asset/functions/mob/0155.immorality/tick/shot/reset.mcfunction index ca1e8de252..3f60b800f1 100644 --- a/Asset/data/asset/functions/mob/0155.immorality/tick/shot/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0155.immorality/tick/shot/reset.mcfunction @@ -19,7 +19,7 @@ scoreboard players add $DivisionValue Temporary 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ + execute store result score $Random Temporary run random value 0..65535 # 剰余算する scoreboard players operation $Random Temporary %= $DivisionValue Temporary # スコアセット diff --git a/Asset/data/asset/functions/mob/0175.queen_bee/tick/3.skill_select.mcfunction b/Asset/data/asset/functions/mob/0175.queen_bee/tick/3.skill_select.mcfunction index ca1688a908..df1269e73b 100644 --- a/Asset/data/asset/functions/mob/0175.queen_bee/tick/3.skill_select.mcfunction +++ b/Asset/data/asset/functions/mob/0175.queen_bee/tick/3.skill_select.mcfunction @@ -6,9 +6,7 @@ # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # デバッグのコマンド #scoreboard players set $Random Temporary 2 # スキル選択 diff --git a/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/random_element.mcfunction b/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/random_element.mcfunction index 89a9354be3..00482dabe7 100644 --- a/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/random_element.mcfunction +++ b/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/random_element.mcfunction @@ -9,8 +9,7 @@ #declare score_holder $Random # 攻撃時に火、水、雷のどれかに分岐 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 execute if score $Random Temporary matches 0 run function asset:mob/0181.magic_bookshelf/attack/elements/fire execute if score $Random Temporary matches 1 run function asset:mob/0181.magic_bookshelf/attack/elements/water execute if score $Random Temporary matches 2 run function asset:mob/0181.magic_bookshelf/attack/elements/thunder diff --git a/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/weakness_element.mcfunction b/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/weakness_element.mcfunction index 20c4baf68e..e3ac8491cb 100644 --- a/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/weakness_element.mcfunction +++ b/Asset/data/asset/functions/mob/0181.magic_bookshelf/attack/weakness_element.mcfunction @@ -38,7 +38,7 @@ execute store result score $Length Temporary if data storage asset:temp Element[] # 乱数取得 - execute store result score $Random Temporary run function lib:random/ + execute store result score $Random Temporary run random value 0..65535 # 要素数で余剰算 scoreboard players operation $Random Temporary %= $Length Temporary diff --git a/Asset/data/asset/functions/mob/0187.flame_mage/tick/shoot_magic.mcfunction b/Asset/data/asset/functions/mob/0187.flame_mage/tick/shoot_magic.mcfunction index ef68921866..fdcff9e997 100644 --- a/Asset/data/asset/functions/mob/0187.flame_mage/tick/shoot_magic.mcfunction +++ b/Asset/data/asset/functions/mob/0187.flame_mage/tick/shoot_magic.mcfunction @@ -4,10 +4,6 @@ # # @within function asset:mob/0187.flame_mage/tick/ -#> Private -# @private - #declare score_holder $Random - # 演出 playsound entity.blaze.shoot hostile @a ~ ~ ~ 2 1.5 playsound minecraft:block.fire.ambient hostile @a ~ ~ ~ 2 1.5 @@ -18,10 +14,4 @@ execute anchored eyes facing entity @p[gamemode=!spectator,distance=..20] eyes positioned ^ ^ ^-0.25 run function asset:mob/0187.flame_mage/tick/summon # 次に攻撃するタイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 120 - -# リセット - scoreboard players reset $Random Temporary + execute store result score @s General.Mob.Tick run random value -120..-90 diff --git a/Asset/data/asset/functions/mob/0189.water_mage/tick/summon.mcfunction b/Asset/data/asset/functions/mob/0189.water_mage/tick/summon.mcfunction index 1558807a28..66233187cd 100644 --- a/Asset/data/asset/functions/mob/0189.water_mage/tick/summon.mcfunction +++ b/Asset/data/asset/functions/mob/0189.water_mage/tick/summon.mcfunction @@ -34,10 +34,7 @@ execute if predicate api:global_vars/difficulty/min/hard if data storage api: Argument.ID if entity @p[gamemode=!spectator,distance=6..30] facing entity @p[gamemode=!spectator,distance=6..30] feet positioned ^ ^ ^7 run function api:object/summon # 次に攻撃するタイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 120 + execute store result score @s General.Mob.Tick run random value -120..-90 # リセット scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/mob/0190.thunder_mage/tick/attack.mcfunction b/Asset/data/asset/functions/mob/0190.thunder_mage/tick/attack.mcfunction index 6289a2d2d5..e3065c6e0e 100644 --- a/Asset/data/asset/functions/mob/0190.thunder_mage/tick/attack.mcfunction +++ b/Asset/data/asset/functions/mob/0190.thunder_mage/tick/attack.mcfunction @@ -6,7 +6,6 @@ #> Private # @private - #declare score_holder $Random #declare tag Random # ノーマル以下なら、周囲のランダムなプレイヤーの位置に召喚(範囲内にいないなら不発) @@ -16,11 +15,7 @@ execute if entity @s[tag=Random] if entity @p[distance=..15] run function asset:mob/0190.thunder_mage/tick/predict_attack # 次に攻撃するタイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 80 + execute store result score @s General.Mob.Tick run random value -80..-50 # リセット - scoreboard players reset $Random Temporary tag @s[tag=Random] remove Random diff --git a/Asset/data/asset/functions/mob/0201.burnt_out_dream/tick/skill_select.mcfunction b/Asset/data/asset/functions/mob/0201.burnt_out_dream/tick/skill_select.mcfunction index f69bc251d3..6b774e89c2 100644 --- a/Asset/data/asset/functions/mob/0201.burnt_out_dream/tick/skill_select.mcfunction +++ b/Asset/data/asset/functions/mob/0201.burnt_out_dream/tick/skill_select.mcfunction @@ -5,9 +5,7 @@ # @within function asset:mob/0201.burnt_out_dream/tick/ # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $2 Const + execute store result score $Random Temporary run random value 0..1 # デバッグのコマンド #scoreboard players set $Random Temporary 0 diff --git a/Asset/data/asset/functions/mob/0202.hunters_dream/tick/3.skill_select.mcfunction b/Asset/data/asset/functions/mob/0202.hunters_dream/tick/3.skill_select.mcfunction index a655079e34..de5ac3af41 100644 --- a/Asset/data/asset/functions/mob/0202.hunters_dream/tick/3.skill_select.mcfunction +++ b/Asset/data/asset/functions/mob/0202.hunters_dream/tick/3.skill_select.mcfunction @@ -4,16 +4,12 @@ # # @within function asset:mob/0202.hunters_dream/tick/ - #> private # @private #declare score_holder $Random - # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $2 Const + execute store result score $Random Temporary run random value 0..1 # デバッグのコマンド #scoreboard players set $Random Temporary 0 # スキル選択 diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/_index.d.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/_index.d.mcfunction index a967942f44..a76aa2e5ba 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/_index.d.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/_index.d.mcfunction @@ -1,14 +1,33 @@ #> asset:mob/0213.terrible_sonic_bomber/_index.d # @private -#> tag +#> tag_common # @within # function asset:mob/0213.terrible_sonic_bomber/** # function asset:mob/0214.drone/** +# function asset:object/2204.sonicbomber_leftwing/** #declare tag 5X.Centre #旋回中心座標を示す、基本的には呪われた剣の位置と一致する。イギリス綴りなので誤字ではない + #declare tag 5X.StartAction #初期モーションが終わって行動開始している意味 + #declare tag 5X.WingStraight #直線翼になっているかどうか #> tag_inter_object # @within # function asset:mob/0213.terrible_sonic_bomber/** # function asset:object/2083.brimstone/** #declare tag 5X.BrimstoneTarget #旋回中心座標を示す、基本的には呪われた剣の位置と一致する。イギリス綴りなので誤字ではない + +#> aj +# @within +# function asset:mob/0213.terrible_sonic_bomber/** +# function asset:object/2203.sonicbomber_destroyed/** + #declare tag 5X.ModelRoot + #declare function animated_java:terrible_sonic_bomber/remove/this + #declare function animated_java:terrible_sonic_bomber/summon + #declare function animated_java:terrible_sonic_bomber/animations/default/play + #declare function animated_java:terrible_sonic_bomber/animations/roll_straight/play + #declare function animated_java:terrible_sonic_bomber/animations/roll_back/play + #declare function animated_java:terrible_sonic_bomber/animations/wing_back/play + #declare function animated_java:terrible_sonic_bomber/animations/wing_straight/play + #declare function animated_java:terrible_sonic_bomber/animations/destroy/play + #declare function animated_java:terrible_sonic_bomber/animations/roll_back_and_wing_straight/play + #declare function animated_java:terrible_sonic_bomber/animations/roll_straight_and_wing_back/play diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/death/.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/death/.mcfunction index b3bf9653c7..730b316225 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/death/.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/death/.mcfunction @@ -4,13 +4,20 @@ # # @within function asset:mob/alias/213/death +# remove aj model + execute on passengers as @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/remove/this + # super function asset:mob/super.death -# remove markers - kill @e[tag=5X.Centre] +# 死亡演出オブジェクト召喚 + data modify storage api: Argument.ID set value 2203 + function api:object/summon # remove objects and mobs + execute as @e[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/remove/this execute as @e[scores={ObjectID=2082..2088}] on passengers run kill @s execute as @e[scores={MobID=214}] run function api:mob/remove kill @e[scores={ObjectID=2082..2088}] + + diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/remove/.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/remove/.mcfunction index 5491954892..f73193bebf 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/remove/.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/remove/.mcfunction @@ -14,6 +14,7 @@ kill @e[tag=5X.Centre] # remove objects + execute as @e[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/remove/this execute as @e[scores={ObjectID=2082..2088}] on passengers run kill @s execute as @e[scores={MobID=214}] run function api:mob/remove kill @e[scores={ObjectID=2082..2088}] diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/summon/.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/summon/.mcfunction index 1d6ab9adbf..398d3eb621 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/summon/.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/summon/.mcfunction @@ -5,4 +5,4 @@ # @within asset:mob/alias/213/summon # 元となるEntityを召喚する - summon phantom ~ ~ ~ {Tags:["MobInit","ProcessCommonTag","AntiBurn"],DeathLootTable:"empty",NoAI:1b} + summon phantom ~ ~ ~ {Tags:["MobInit","ProcessCommonTag","AntiBurn","AlwaysInvisible"],DeathLootTable:"empty",NoAI:1b} diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/.mcfunction index be01da2e8e..2f9f3377af 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/.mcfunction @@ -20,23 +20,24 @@ # 初期モーション終了時間ぴったり -# モデルを表示 -# TBD +# 行動開始処理 + execute if score $initial_motion_end_time Temporary = $current_gametime Temporary store result score $next_attack_time Temporary run function asset:mob/0213.terrible_sonic_bomber/tick/motions/start_action # それ以降 - execute if score $initial_motion_end_time Temporary < $current_gametime Temporary store result score $next_attack_time Temporary run data get storage asset:context this.next_attack_time + execute if entity @e[tag=5X.StartAction] store result score $next_attack_time Temporary run data get storage asset:context this.next_attack_time # 巡行移動モーション - execute if score $initial_motion_end_time Temporary < $current_gametime Temporary if score $next_attack_time Temporary >= $current_gametime Temporary run function asset:mob/0213.terrible_sonic_bomber/tick/motions/cruise_motion + execute if entity @e[tag=5X.StartAction] if score $next_attack_time Temporary >= $current_gametime Temporary run function asset:mob/0213.terrible_sonic_bomber/tick/motions/cruise_motion # 攻撃モーション準備 - execute if score $initial_motion_end_time Temporary < $current_gametime Temporary if score $next_attack_time Temporary = $current_gametime Temporary run function asset:mob/0213.terrible_sonic_bomber/tick/motions/attack_motion_prepare + execute if entity @e[tag=5X.StartAction] if score $next_attack_time Temporary = $current_gametime Temporary run function asset:mob/0213.terrible_sonic_bomber/tick/motions/attack_motion_prepare # 攻撃モーション実行 - execute if score $initial_motion_end_time Temporary < $current_gametime Temporary if score $next_attack_time Temporary < $current_gametime Temporary run function asset:mob/0213.terrible_sonic_bomber/tick/motions/attack_motion + execute if entity @e[tag=5X.StartAction] if score $next_attack_time Temporary < $current_gametime Temporary run function asset:mob/0213.terrible_sonic_bomber/tick/motions/attack_motion # tellraw @a [{"score":{"objective":"Temporary","name":"$next_attack_time"}}] + #execute if entity @s[tag=5X.WingStraight] run say straight # reset scoreboard players reset $initial_motion_end_time Temporary diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion.mcfunction index 08ddf9f751..8c5039259f 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion.mcfunction @@ -11,23 +11,32 @@ #declare score_holder $attack_end_time #declare score_holder $use_weapon #declare score_holder $flare_time + #declare tag 5X.ShouldTurn + # 現在時間を記録 execute store result score $current_gametime_for_attack Temporary run time query gametime # 移動処理 # 中心座標を中心に旋回 - execute positioned ^ ^ ^1.5 unless entity @e[tag=5X.Centre,distance=..50] facing entity @e[tag=5X.Centre,distance=..128,limit=1] eyes rotated ~80 0 run tp @s ~ ~ ~ ~ ~ + execute positioned ^ ^ ^1.5 unless entity @e[tag=5X.Centre,distance=..50] run tag @s add 5X.ShouldTurn + execute if entity @s[tag=5X.ShouldTurn] facing entity @e[tag=5X.Centre,distance=..128,limit=1] eyes rotated ~60 0 run tp @s ~ ~ ~ ~ ~ + +# 直進(直線翼になるのでちょい遅い) + execute rotated as @s run tp @s ^ ^ ^1.3 -# 直進 - execute rotated as @s run tp @s ^ ^ ^1.5 +# AJ modelの向き合わせ + execute rotated as @s on passengers if entity @s[tag=5X.ModelRoot] run tp @s ~ ~ ~ ~ ~ -# 対空砲付近を飛ぶときはフレアを出す(3tickおき) +# 旋回してた場合旋回アニメーション + execute if entity @s[tag=5X.ShouldTurn,tag=5X.WingStraight] on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_straight/play + execute if entity @s[tag=5X.ShouldTurn,tag=!5X.WingStraight] on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_back/play + +# 対空砲付近を飛ぶときはフレアを出す(8tickおき) execute store result score $flare_time Temporary run time query gametime - scoreboard players operation $flare_time Temporary %= $3 Const + scoreboard players operation $flare_time Temporary %= $8 Const execute if entity @e[tag=5X.Centre,distance=..30] if score $flare_time Temporary matches 0 run particle minecraft:lava ^ ^-1 ^-2 1.5 0 1.5 1 24 force - # 攻撃処理 # 使用武器を取得 execute store result score $use_weapon Temporary run data get storage asset:context this.use_weapon @@ -45,6 +54,7 @@ #tellraw @a [{"text": "use_weapon"},{"score":{"objective":"Temporary","name":"$use_weapon"}}] #tellraw @a [{"text": "attack_start_time"},{"score":{"objective":"Temporary","name":"$use_weapon"}}] + #say attack # reset scoreboard players reset $current_gametime_for_attack Temporary @@ -52,3 +62,4 @@ scoreboard players reset $attack_end_time Temporary scoreboard players reset $use_weapon Temporary scoreboard players reset $flare_time Temporary + tag @s remove 5X.ShouldTurn diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion_prepare.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion_prepare.mcfunction index acbea6cfd9..1373c35787 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion_prepare.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/attack_motion_prepare.mcfunction @@ -25,7 +25,7 @@ # 対空砲が破壊されていた場合武器が変化する攻撃はIDを変更、将来的にも乱数の範囲に入らない負の値にしておく execute if entity @e[tag=PatriotLauncher.IsBroken,distance=..128] if score $weapon_num Temporary matches 4 run scoreboard players set $weapon_num Temporary -4 - #scoreboard players set $weapon_num Temporary -4 + #scoreboard players set $weapon_num Temporary 1 execute store result storage asset:context this.use_weapon int 1 run scoreboard players get $weapon_num Temporary # 攻撃開始と終了時間指定(デフォルト値) diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/cruise_motion.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/cruise_motion.mcfunction index 8f7041a8ac..bb3f19b96c 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/cruise_motion.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/cruise_motion.mcfunction @@ -7,21 +7,37 @@ #> prv # @private #declare score_holder $flare_time + #declare tag 5X.ShouldTurn # 中心座標を中心に旋回 - execute positioned ^ ^ ^1.5 unless entity @e[tag=5X.Centre,distance=..50] facing entity @e[tag=5X.Centre,distance=..128,limit=1] eyes rotated ~80 0 run tp @s ~ ~ ~ ~ ~ + execute positioned ^ ^ ^1.5 unless entity @e[tag=5X.Centre,distance=..50] run tag @s add 5X.ShouldTurn + execute if entity @s[tag=5X.ShouldTurn] facing entity @e[tag=5X.Centre,distance=..128,limit=1] eyes rotated ~60 0 run tp @s ~ ~ ~ ~ ~ # 直進 execute rotated as @s run tp @s ^ ^ ^1.5 +# AJ modelの向き合わせ + execute rotated as @s on passengers if entity @s[tag=5X.ModelRoot] run tp @s ~ ~ ~ ~ ~ + +# 後退翼状態で旋回してた場合の旋回アニメーション + execute if entity @s[tag=5X.ShouldTurn,tag=!5X.WingStraight] on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_back/play + +# 直線翼状態での旋回アニメーション + execute if entity @s[tag=5X.ShouldTurn,tag=5X.WingStraight] on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_straight_and_wing_back/play + +# 後退翼に戻ったことを記録 + execute if entity @s[tag=5X.ShouldTurn,tag=5X.WingStraight] run tag @s remove 5X.WingStraight + # 攻撃後などで低空にいた場合は上昇 execute at @e[tag=5X.Centre,distance=..128,limit=1] positioned ~-100 ~15 ~-100 if entity @s[dx=199,dy=-100,dz=199] at @s run tp @s ~ ~0.5 ~ -# 対空砲付近を飛ぶときはフレアを出す(3tickおき) +# 対空砲付近を飛ぶときはフレアを出す(8tickおき) execute store result score $flare_time Temporary run time query gametime - scoreboard players operation $flare_time Temporary %= $3 Const + scoreboard players operation $flare_time Temporary %= $8 Const execute if entity @e[tag=5X.Centre,distance=..30] if score $flare_time Temporary matches 0 run particle minecraft:lava ^ ^-1 ^-2 1.5 0 1.5 1 24 force + #say cruise # reset scoreboard players reset $flare_time Temporary + tag @s remove 5X.ShouldTurn diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/escape_after_attack.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/escape_after_attack.mcfunction index 6f09001d9e..dc2ca001cd 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/escape_after_attack.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/escape_after_attack.mcfunction @@ -7,16 +7,25 @@ #> prv # @private #declare score_holder $use_weapon + #declare tag 5X.ShouldTurn + #離脱 execute store result score $use_weapon Temporary run data get storage asset:context this.use_weapon - execute if score $use_weapon Temporary matches 1 run tp @s ~ ~ ~ ~60 ~ - execute if score $use_weapon Temporary matches 2 run tp @s ~ ~ ~ ~ ~ - execute if score $use_weapon Temporary matches 3 run tp @s ~ ~ ~ ~ ~ - execute if score $use_weapon Temporary matches 4 run tp @s ~ ~ ~ ~ ~ - execute if score $use_weapon Temporary matches -4 run tp @s ~ ~ ~ ~ ~ + #execute if score $use_weapon Temporary matches 1 run tp @s ~ ~ ~ ~ ~ + #execute if score $use_weapon Temporary matches 2 run tp @s ~ ~ ~ ~ ~ + #execute if score $use_weapon Temporary matches 3 run tp @s ~ ~ ~ ~ ~ + #execute if score $use_weapon Temporary matches 4 run tp @s ~ ~ ~ ~ ~ + #execute if score $use_weapon Temporary matches -4 run tp @s ~ ~ ~ ~ ~ execute if score $use_weapon Temporary matches -4 run playsound minecraft:entity.donkey.death hostile @a[distance=..128] ~ ~ ~ 8.0 0.7 1 +# AJ modelの向き合わせ +# execute rotated as @s on passengers if entity @s[tag=5X.ModelRoot] run tp @s ~ ~ ~ ~ ~ + +# 旋回してた場合旋回アニメーション +# execute if entity @s[tag=5X.ShouldTurn] on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_straight/play + # reset scoreboard players reset $use_weapon Temporary + tag @s remove 5X.ShouldTurn diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/initial_motion.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/initial_motion.mcfunction index ac58f26fab..3abd5fc2de 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/initial_motion.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/initial_motion.mcfunction @@ -4,4 +4,8 @@ # # @within function asset:mob/0213.terrible_sonic_bomber/tick/ -tp @s ~ ~1 ~ +# 飛行高度まで登らせる + tp @s ~ ~1 ~ + +# モデル出すまで何も見えないのでキラキラさせとく + particle minecraft:electric_spark ~ ~1 ~ 0.2 0.2 0.2 0 10 diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/set_next_attack_time.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/set_next_attack_time.mcfunction index 82a22dad99..0d2329f5bf 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/set_next_attack_time.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/set_next_attack_time.mcfunction @@ -19,3 +19,4 @@ # reset scoreboard players reset $next_attack_time Temporary + scoreboard players reset $current_next_attack_time Temporary diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/start_action.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/start_action.mcfunction new file mode 100644 index 0000000000..bb689e08e2 --- /dev/null +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/motions/start_action.mcfunction @@ -0,0 +1,22 @@ +#> asset:mob/0213.terrible_sonic_bomber/tick/motions/start_action +# +# +# +# @within function asset:mob/0213.terrible_sonic_bomber/tick/ + +# 爆発パーティクル + particle minecraft:explosion ~ ~1 ~ 0.5 0.5 0.5 0 10 + +# 音 + playsound entity.generic.explode hostile @a[distance=..32] ~ ~ ~ 1 1 1 + +# AJ model召喚 + execute rotated ~ 0 run function animated_java:terrible_sonic_bomber/summon {args:{}} + execute as @e[tag=5X.ModelRoot,limit=1] run function animated_java:terrible_sonic_bomber/animations/default/play + execute as @e[tag=5X.ModelRoot,limit=1] run function animated_java:terrible_sonic_bomber/animations/wing_back/play + +# phantomにride + ride @e[tag=5X.ModelRoot,limit=1] mount @s + +# 行動開始したことを示すタグ付与 + tag @s add 5X.StartAction diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_prepare.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_prepare.mcfunction index 712696d869..0a2cd02126 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_prepare.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_prepare.mcfunction @@ -16,12 +16,18 @@ # 本体の向きを変更 execute facing entity @e[tag=5X.Centre,limit=1] eyes rotated ~ 0 run tp @s ~ ~ ~ ~ ~ +# 旋回アニメーション + execute on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_back_and_wing_straight/play + +# 直線翼になったことを記録 + tag @s add 5X.WingStraight + # 対象候補指定(最大6人) tag @a remove 5X.BrimstoneTarget tag @a[distance=..256,sort=nearest,limit=6] add 5X.BrimstoneTarget # 攻撃箇所表示 - execute at @a[tag=5X.BrimstoneTarget] run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_target_display + execute as @a[tag=5X.BrimstoneTarget] at @s run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_target_display # reset scoreboard players reset $attack_start_time Temporary diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_target_display.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_target_display.mcfunction index 4d15ebf9a1..ba7e4f4108 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_target_display.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_target_display.mcfunction @@ -4,10 +4,8 @@ # # @within function asset:mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_prepare -# 実行位置にdisplayを出す(地面とZファイティングしないように少し上にずらして出す) - data modify storage asset:temp args set value {Color:15453454,Tick:30,Scale:"[10f,10f,1f]"} - data modify storage asset:temp args.RotationX set value 0 - execute positioned ~ ~0.01 ~-5 run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m with storage asset:temp args - -# reset - data remove storage asset:temp args +# 実行位置にdisplayを出す + data modify storage api: Argument.FieldOverride set value {Color:15453454,Tick:30,Scale:10f} + execute store result storage api: Argument.FieldOverride.PlayerID int 1 run scoreboard players get @s UserID + data modify storage api: Argument.ID set value 2202 + function api:object/summon diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/drone_prepare.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/drone_prepare.mcfunction index dbaf989648..465d9298fe 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/drone_prepare.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/drone_prepare.mcfunction @@ -14,7 +14,11 @@ execute store result storage asset:context this.attack_end_time int 1 run scoreboard players add $attack_start_time Temporary 1 # 攻撃箇所表示 - execute at @e[tag=5X.Centre,limit=1] positioned ~ ~0.01 ~-5 run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m {Color:14234401,Tick:200,Scale:"[10f,10f,10f]",RotationX:0} + #execute at @e[tag=5X.Centre,limit=1] positioned ~ ~0.01 ~-5 run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m {Color:14234401,Tick:200,Scale:"[10f,10f,10f]",RotationX:0} +# 攻撃箇所表示 + data modify storage api: Argument.FieldOverride set value {Color:14234401,Tick:400,Scale:10f} + data modify storage api: Argument.ID set value 2205 + execute at @e[tag=5X.Centre,limit=1] positioned ~ ~0.01 ~ run function api:object/summon # reset scoreboard players reset $attack_start_time Temporary diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/gatling_prepare.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/gatling_prepare.mcfunction index 4440ab39c3..91e20d383e 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/gatling_prepare.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/gatling_prepare.mcfunction @@ -14,7 +14,13 @@ execute store result storage asset:context this.attack_end_time int 1 run scoreboard players add $attack_start_time Temporary 28 # 本体の向きを変える - execute facing entity @p eyes rotated ~ 0 run tp @s ~ ~ ~ ~ ~ + execute facing entity @p eyes rotated ~ 15 run tp @s ~ ~ ~ ~ ~ + +# 旋回アニメーション + execute on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_back_and_wing_straight/play + +# 直線翼になったことを記録 + tag @s add 5X.WingStraight # 攻撃座標指定 execute positioned as @p rotated as @s rotated ~ 0 positioned ^ ^ ^-20 run tp 0-0-0-0-0 ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m.mcfunction index 121f7cd78d..c24e004ef7 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m.mcfunction @@ -3,8 +3,6 @@ # # # @within -# function asset:mob/0213.terrible_sonic_bomber/tick/weapons/brimstone_target_display -# function asset:mob/0213.terrible_sonic_bomber/tick/weapons/storm_shadow_prepare # function asset:mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye_prepare # function asset:mob/0213.terrible_sonic_bomber/tick/weapons/drone_prepare # function asset:mob/0213.terrible_sonic_bomber/tick/weapons/gatling_prepare @@ -13,9 +11,6 @@ # データ設定 $data modify storage api: Argument.FieldOverride set value {Color:$(Color),Interpolation:1,Tick:$(Tick),Scale:$(Scale)} -# 見てる方向へRotationXを設定 - $data modify storage api: Argument.FieldOverride.RotationX set value $(RotationX) - # 召喚 data modify storage api: Argument.ID set value 2113 function api:object/summon diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye.mcfunction index 925f3effc2..a48670c7d9 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye.mcfunction @@ -19,7 +19,7 @@ # 次回攻撃開始時間指定 execute store result score $attack_start_time Temporary run time query gametime - execute store result storage asset:context this.attack_start_time int 1 run scoreboard players add $attack_start_time Temporary 3 + execute store result storage asset:context this.attack_start_time int 1 run scoreboard players add $attack_start_time Temporary 4 # reset scoreboard players reset $attack_start_time Temporary diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye_prepare.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye_prepare.mcfunction index 7230123659..8c92931733 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye_prepare.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/snakeeye_prepare.mcfunction @@ -10,17 +10,21 @@ # 攻撃開始と終了時間指定 execute store result score $attack_start_time Temporary run time query gametime - execute store result storage asset:context this.attack_start_time int 1 run scoreboard players add $attack_start_time Temporary 20 - execute store result storage asset:context this.attack_end_time int 1 run scoreboard players add $attack_start_time Temporary 18 + execute store result storage asset:context this.attack_start_time int 1 run scoreboard players add $attack_start_time Temporary 10 + execute store result storage asset:context this.attack_end_time int 1 run scoreboard players add $attack_start_time Temporary 24 # 本体の向きを変える - execute facing entity @p eyes rotated ~ 0 run tp @s ~ ~ ~ ~ ~ + execute facing entity @p eyes rotated ~ ~-10 run tp @s ~ ~ ~ ~ ~ + +# 旋回アニメーション + execute on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_back_and_wing_straight/play + +# 直線翼になったことを記録 + tag @s add 5X.WingStraight # 攻撃箇所表示 data modify storage asset:temp args set value {Color:15453454,Tick:70,Scale:"[20f,60f,1f]"} - data modify storage asset:temp args.RotationX set from entity @s Rotation[0] - execute rotated as @s positioned as @p positioned ^ ^ ^-30 positioned ~ ~0.01 ~ run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m with storage asset:temp args - + execute rotated as @s rotated ~ 0 positioned as @p positioned ^ ^ ^-30 positioned ~ ~0.01 ~ run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m with storage asset:temp args # reset scoreboard players reset $attack_start_time Temporary diff --git a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/storm_shadow_prepare.mcfunction b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/storm_shadow_prepare.mcfunction index 8359638a6b..0e957da8f6 100644 --- a/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/storm_shadow_prepare.mcfunction +++ b/Asset/data/asset/functions/mob/0213.terrible_sonic_bomber/tick/weapons/storm_shadow_prepare.mcfunction @@ -11,20 +11,30 @@ # 攻撃開始と終了時間指定 execute store result score $attack_start_time Temporary run time query gametime - execute store result storage asset:context this.attack_start_time int 1 run scoreboard players add $attack_start_time Temporary 20 + execute store result storage asset:context this.attack_start_time int 1 run scoreboard players add $attack_start_time Temporary 10 execute store result storage asset:context this.attack_end_time int 1 run scoreboard players add $attack_start_time Temporary 1 # 本体の向きを変える - execute facing entity @e[tag=5X.Centre,limit=1] eyes rotated ~ 0 run tp @s ~ ~ ~ ~ ~ +# execute facing entity @e[tag=5X.Centre,limit=1] eyes rotated ~ 0 run tp @s ~ ~ ~ ~ ~ + +# 旋回アニメーション +# execute on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/animations/roll_back_and_wing_straight/play + +# 直線翼になったことを記録 +# tag @s add 5X.WingStraight # 攻撃座標指定 対空砲の1番近くにいるプレイヤーの座標が攻撃目標 execute at @e[tag=5X.Centre,limit=1] run tag @p add 5X.StormShadowTarget data modify storage asset:context this.storm_shadow.target_pos set from entity @p[tag=5X.StormShadowTarget] Pos # 攻撃箇所表示 - data modify storage asset:temp args set value {Color:15453454,Tick:50,Scale:"[10f,10f,1f]"} - data modify storage asset:temp args.RotationX set value 0 - execute at @p[tag=5X.StormShadowTarget] positioned ~ ~0.01 ~-5 run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m with storage asset:temp args + #data modify storage asset:temp args set value {Color:15453454,Tick:50,Scale:"[10f,10f,1f]"} + #data modify storage asset:temp args.RotationX set value 0 + #execute at @p[tag=5X.StormShadowTarget] positioned ~ ~0.01 ~-5 run function asset:mob/0213.terrible_sonic_bomber/tick/weapons/set_attack_position_display.m with storage asset:temp args +# 攻撃箇所表示 + data modify storage api: Argument.FieldOverride set value {Color:15453454,Tick:50,Scale:10f} + data modify storage api: Argument.ID set value 2201 + execute at @p[tag=5X.StormShadowTarget] positioned ~ ~0.01 ~ run function api:object/summon # reset diff --git a/Asset/data/asset/functions/mob/0214.drone/damage.mcfunction b/Asset/data/asset/functions/mob/0214.drone/damage.mcfunction index 0329dcfcd9..edf36cc453 100644 --- a/Asset/data/asset/functions/mob/0214.drone/damage.mcfunction +++ b/Asset/data/asset/functions/mob/0214.drone/damage.mcfunction @@ -11,6 +11,9 @@ particle minecraft:large_smoke ~ ~ ~ 1.2 0.8 1.2 0.1 100 normal particle minecraft:flame ~ ~ ~ 0.6 0.3 0.6 0.05 50 normal +# sound + playsound entity.generic.explode hostile @a[distance=..16] ~ ~ ~ 1 1 1 + # damage data modify storage api: Argument.Damage set value 10f data modify storage api: Argument.AttackType set value "Physical" diff --git a/Asset/data/asset/functions/mob/0214.drone/death/.mcfunction b/Asset/data/asset/functions/mob/0214.drone/death/.mcfunction index 62500ae89d..3bbee9c4b3 100644 --- a/Asset/data/asset/functions/mob/0214.drone/death/.mcfunction +++ b/Asset/data/asset/functions/mob/0214.drone/death/.mcfunction @@ -8,5 +8,8 @@ # particle execute unless entity @s[tag=5Y.Suicide] run function asset:mob/0214.drone/damage +# 上に乗ってるモデル削除(死亡時にすぐにモデルに消えてほしいためここで削除) + execute on passengers run kill @s + # エンジン音停止 stopsound @a[distance=..128] hostile minecraft:entity.bee.loop diff --git a/Asset/data/asset/functions/mob/0214.drone/init/.mcfunction b/Asset/data/asset/functions/mob/0214.drone/init/.mcfunction index 7607730f02..5ebe1362fa 100644 --- a/Asset/data/asset/functions/mob/0214.drone/init/.mcfunction +++ b/Asset/data/asset/functions/mob/0214.drone/init/.mcfunction @@ -9,3 +9,11 @@ # 発射母機のMobUUID設定(modifier適用のため) execute store result storage asset:context this.MobUUID int 1 run scoreboard players get @e[tag=Enemy.Boss,scores={MobID=213},limit=1] MobUUID + +# 見た目召喚 + execute rotated as @s 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:mob/0214.drone/init/summon_model.m with storage asset:temp Args + +# reset + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/mob/0214.drone/init/summon_model.m.mcfunction b/Asset/data/asset/functions/mob/0214.drone/init/summon_model.m.mcfunction new file mode 100644 index 0000000000..4da980a29b --- /dev/null +++ b/Asset/data/asset/functions/mob/0214.drone/init/summon_model.m.mcfunction @@ -0,0 +1,18 @@ +#> asset:mob/0214.drone/init/summon_model.m +# +# +# +# @within function asset:mob/0214.drone/init/ + +#> prv +# @private + #declare tag 5Y.ModelInit + +# 召喚 + $summon item_display ~ ~ ~ {Tags:["5Y.ModelInit","ProcessCommonTag","AutoKillWhenDieVehicle"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,-0.25f,0f],scale:[1.25f,1.25f,1.25f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20485}},teleport_duration:1,item_display:"thirdperson_righthand",Rotation:$(Rotation)} + +# 乗せる + ride @e[tag=5Y.ModelInit,distance=..1,limit=1] mount @s + +# reset + tag @e[tag=5Y.ModelInit,distance=..1] remove 5Y.ModelInit diff --git a/Asset/data/asset/functions/mob/0214.drone/summon/.mcfunction b/Asset/data/asset/functions/mob/0214.drone/summon/.mcfunction index 1e39b5bdc8..00a7a4545a 100644 --- a/Asset/data/asset/functions/mob/0214.drone/summon/.mcfunction +++ b/Asset/data/asset/functions/mob/0214.drone/summon/.mcfunction @@ -5,4 +5,4 @@ # @within asset:mob/alias/214/summon # 元となるEntityを召喚する - summon phantom ~ ~ ~ {Tags:["MobInit","ProcessCommonTag","AntiBurn"],DeathLootTable:"empty",NoAI:1b} + summon phantom ~ ~ ~ {Tags:["MobInit","ProcessCommonTag","AntiBurn","AlwaysInvisible"],DeathLootTable:"empty",Silent:1b,NoAI:1b} diff --git a/Asset/data/asset/functions/mob/0214.drone/tick/attack_motion.mcfunction b/Asset/data/asset/functions/mob/0214.drone/tick/attack_motion.mcfunction index 1bc7bd3e5a..82c170823b 100644 --- a/Asset/data/asset/functions/mob/0214.drone/tick/attack_motion.mcfunction +++ b/Asset/data/asset/functions/mob/0214.drone/tick/attack_motion.mcfunction @@ -4,11 +4,17 @@ # # @within function asset:mob/0214.drone/tick/ -# 中心座標を向く - execute facing entity @e[tag=5X.Centre,distance=..128,limit=1] eyes rotated ~ 0 run tp @s ~ ~ ~ ~ ~ +# 中心座標を向く(arctan(0.05) = 2.86度/tickぐらいの速度で旋回) + execute at @s positioned ^ ^ ^1000 facing entity @e[tag=5X.Centre,limit=1] feet positioned ^ ^ ^1000 facing entity @s feet positioned as @s positioned ^ ^ ^0.05 rotated as @s positioned ^ ^ ^-1 facing entity @s feet positioned as @s run tp @s ^ ^ ^ ~ ~ + +# 中心座標の高さにくるまで下降、到達したら水平飛行 + execute at @e[tag=5X.Centre,distance=..128,limit=1] positioned ~-100 ~1 ~-100 if entity @s[dx=199,dy=100,dz=199] at @s run tp @s ~ ~ ~ ~ 60 + execute at @e[tag=5X.Centre,distance=..128,limit=1] positioned ~-100 ~1 ~-100 unless entity @s[dx=199,dy=100,dz=199] at @s run tp @s ~ ~ ~ ~ 0 # 直進 - execute at @s run tp @s ^ ^ ^0.25 + execute at @s run tp @s ^ ^ ^0.3 + +# モデルの向きを合わせる + execute rotated as @s on passengers positioned as @s run tp @s ~ ~ ~ ~ ~ -# 中心座標の高さにくるまで下降 - execute at @e[tag=5X.Centre,distance=..128,limit=1] positioned ~-100 ~1 ~-100 if entity @s[dx=199,dy=100,dz=199] at @s run tp @s ~ ~-0.5 ~ + \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/0214.drone/tick/cruise_motion.mcfunction b/Asset/data/asset/functions/mob/0214.drone/tick/cruise_motion.mcfunction index 9fa2216e4b..3230efa23c 100644 --- a/Asset/data/asset/functions/mob/0214.drone/tick/cruise_motion.mcfunction +++ b/Asset/data/asset/functions/mob/0214.drone/tick/cruise_motion.mcfunction @@ -9,3 +9,6 @@ # 直進 tp @s ^ ^ ^0.25 + +# モデルの向きを合わせる + execute rotated as @s on passengers positioned as @s run tp @s ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/mob/0235.orange_thrower/tick/reset.mcfunction b/Asset/data/asset/functions/mob/0235.orange_thrower/tick/reset.mcfunction index 8d495401c9..f4104f2ccf 100644 --- a/Asset/data/asset/functions/mob/0235.orange_thrower/tick/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0235.orange_thrower/tick/reset.mcfunction @@ -4,18 +4,8 @@ # # @within function asset:mob/0235.orange_thrower/tick/attack -#> Private -# @private - #declare score_holder $Random - # スコアをリセット scoreboard players reset @s 6J.ResetTick # 次の攻撃タイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 80 - -# リセット - scoreboard players reset $Random Temporary + execute store result score @s General.Mob.Tick run random value -80..-50 diff --git a/Asset/data/asset/functions/mob/0262.frestchika/death/text_summon.mcfunction b/Asset/data/asset/functions/mob/0262.frestchika/death/text_summon.mcfunction index 97df0e4c41..e80e991380 100644 --- a/Asset/data/asset/functions/mob/0262.frestchika/death/text_summon.mcfunction +++ b/Asset/data/asset/functions/mob/0262.frestchika/death/text_summon.mcfunction @@ -12,9 +12,7 @@ execute as @e[type=marker,tag=7A.This,distance=..10] at @s run function lib:spread_entity/ # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $9 Const + execute store result score $Random Temporary run random value 0..8 # メッセージ execute if score $Random Temporary matches 0 at @e[type=marker,tag=7A.This,distance=..3.5] run summon area_effect_cloud ^ ^ ^ {CustomNameVisible:1b,Particle:"block air",Duration:40,Tags:["Object"],CustomName:'[{"text":"0110110","font":"mob/262/01"},{"text":"#","font":"invisible_bg"}]'} execute if score $Random Temporary matches 1 at @e[type=marker,tag=7A.This,distance=..3.5] run summon area_effect_cloud ^ ^ ^ {CustomNameVisible:1b,Particle:"block air",Duration:40,Tags:["Object"],CustomName:'[{"text":"0110001","font":"mob/262/01"},{"text":"#","font":"invisible_bg"}]'} diff --git a/Asset/data/asset/functions/mob/0262.frestchika/tick/3.skill_select.mcfunction b/Asset/data/asset/functions/mob/0262.frestchika/tick/3.skill_select.mcfunction index 2e2c599f0d..59493e8e35 100644 --- a/Asset/data/asset/functions/mob/0262.frestchika/tick/3.skill_select.mcfunction +++ b/Asset/data/asset/functions/mob/0262.frestchika/tick/3.skill_select.mcfunction @@ -8,9 +8,7 @@ #declare score_holder $Random # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算するやーつ - scoreboard players operation $Random Temporary %= $4 Const + execute store result score $Random Temporary run random value 0..3 # デバッグのコマンド #scoreboard players set $Random Temporary 3 diff --git a/Asset/data/asset/functions/mob/0273.hell_blade/init/.mcfunction b/Asset/data/asset/functions/mob/0273.hell_blade/init/.mcfunction index ffdce99871..bd8a2b1cd9 100644 --- a/Asset/data/asset/functions/mob/0273.hell_blade/init/.mcfunction +++ b/Asset/data/asset/functions/mob/0273.hell_blade/init/.mcfunction @@ -3,9 +3,7 @@ # 向きを90°刻みのランダムに # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - # ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $4 Const + execute store result score $Random Temporary run random value 0..3 # 角度を出す scoreboard players set @s 7L.FallingRotation 90 scoreboard players operation @s 7L.FallingRotation *= $Random Temporary diff --git a/Asset/data/asset/functions/mob/0286.456_dice_entity/init/.mcfunction b/Asset/data/asset/functions/mob/0286.456_dice_entity/init/.mcfunction index 5d2f30f12c..902f932b62 100644 --- a/Asset/data/asset/functions/mob/0286.456_dice_entity/init/.mcfunction +++ b/Asset/data/asset/functions/mob/0286.456_dice_entity/init/.mcfunction @@ -3,15 +3,5 @@ scoreboard players operation @s CU.UserID = @p[tag=this] UserID -# 乱数決定生成 - # 疑似乱数取得 - execute store result score @s Temporary run function lib:random/ - # ほしい範囲に剰余算 - scoreboard players operation @s Temporary %= $3 Const - # 0~2の値を4~6になるように4加算 - scoreboard players add @s Temporary 4 - # 保持 - scoreboard players operation @s CU.RandomCount = @s Temporary - -# リセット - scoreboard players reset @s Temporary +# 4-6の乱数 + execute store result score @s CU.RandomCount run random value 4..6 diff --git a/Asset/data/asset/functions/mob/0286.456_dice_entity/tick/event/hit.mcfunction b/Asset/data/asset/functions/mob/0286.456_dice_entity/tick/event/hit.mcfunction index 5cad1364db..764d9436b6 100644 --- a/Asset/data/asset/functions/mob/0286.456_dice_entity/tick/event/hit.mcfunction +++ b/Asset/data/asset/functions/mob/0286.456_dice_entity/tick/event/hit.mcfunction @@ -18,9 +18,7 @@ # 第二属性 # 属性をランダムに決定する # 疑似乱数取得 - execute store result score @s Temporary run function lib:random/ - # ほしい範囲に剰余算 - scoreboard players operation @s Temporary %= $3 Const + execute store result score @s Temporary run random value 0..2 # 火 execute if score @s Temporary matches 0 run data modify storage api: Argument.ElementType set value "Fire" diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_10.select_skill_latter_after_move.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_10.select_skill_latter_after_move.mcfunction index 9f6fe1829e..f2f7b6c221 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_10.select_skill_latter_after_move.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_10.select_skill_latter_after_move.mcfunction @@ -5,9 +5,7 @@ # @within function asset:mob/0327.eclael/tick/app.skill_events/** # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # 袈裟斬り execute if score $Random Temporary matches 0 run tag @s add 93.Skill.Latter.MoveSlash diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_4.select_skill_latter_attack_near.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_4.select_skill_latter_attack_near.mcfunction index 7aa9cb9e9b..c3a2d0a701 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_4.select_skill_latter_attack_near.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_4.select_skill_latter_attack_near.mcfunction @@ -5,11 +5,9 @@ # @within function asset:mob/0327.eclael/tick/app.1_7.select_skill_latter_attack_switch # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 # プレイヤーが単体の場合は電光石火は選択しない - execute unless score $PlayerCount Global matches 2.. run scoreboard players operation $Random Temporary %= $4 Const - execute if score $PlayerCount Global matches 2.. run scoreboard players operation $Random Temporary %= $5 Const + execute unless score $PlayerCount Global matches 2.. run random value 0..3 + execute if score $PlayerCount Global matches 2.. run random value 0..4 # 袈裟斬り execute if score $Random Temporary matches 0 run tag @s add 93.Skill.Latter.MoveSlash diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_5.select_skill_latter_attack_far.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_5.select_skill_latter_attack_far.mcfunction index fcde5bb637..8bd89e4bc7 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_5.select_skill_latter_attack_far.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.1_5.select_skill_latter_attack_far.mcfunction @@ -5,9 +5,7 @@ # @within function asset:mob/0327.eclael/tick/app.1_7.select_skill_latter_attack_switch # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # 居合斬り execute if score $Random Temporary matches 0 run tag @s add 93.Skill.Latter.Iai diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.general/16.thunderstorm_attack.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.general/16.thunderstorm_attack.mcfunction index eec9807055..1a082630d1 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.general/16.thunderstorm_attack.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.general/16.thunderstorm_attack.mcfunction @@ -10,10 +10,8 @@ playsound entity.lightning_bolt.thunder hostile @a ~ ~ ~ 1 1 particle flash ~ ~0.5 ~ 0 0 0 0 1 -# 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const +# 乱数による分岐 + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 execute if score $Random Temporary matches 2 rotated ~180 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.3.2.attack_0_magic.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.3.2.attack_0_magic.mcfunction index 105dac5d4c..8ac285310c 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.3.2.attack_0_magic.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.3.2.attack_0_magic.mcfunction @@ -10,9 +10,7 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.4.2.attack_1_magic.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.4.2.attack_1_magic.mcfunction index 04667d0c02..b2896f3052 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.4.2.attack_1_magic.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.4.2.attack_1_magic.mcfunction @@ -10,9 +10,7 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.5.2.attack_2_magic.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.5.2.attack_2_magic.mcfunction index 5f093fd95b..59b865a2e9 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.5.2.attack_2_magic.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/05_former_magic/4.5.2.attack_2_magic.mcfunction @@ -10,9 +10,7 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.1.attack_0.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.1.attack_0.mcfunction index aa31a51075..db8d6bc1a6 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.1.attack_0.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.1.attack_0.mcfunction @@ -12,9 +12,8 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 + execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 execute if score $Random Temporary matches 2 rotated ~180 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.2.attack_1.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.2.attack_1.mcfunction index 6feffd579b..e4a7ba2e07 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.2.attack_1.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/06_former_shortmagic/4.1.2.attack_1.mcfunction @@ -11,9 +11,7 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 execute if score $Random Temporary matches 2 rotated ~180 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.1.attack_thunder_0.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.1.attack_thunder_0.mcfunction index 5ff631b289..886f677e19 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.1.attack_thunder_0.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.1.attack_thunder_0.mcfunction @@ -10,9 +10,7 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.2.attack_thunder_1.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.2.attack_thunder_1.mcfunction index f0e9bd76ef..8a4db77675 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.2.attack_thunder_1.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.2.attack_thunder_1.mcfunction @@ -10,9 +10,7 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.3.attack_thunder_2.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.3.attack_thunder_2.mcfunction index 056811c93f..90db68eeac 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.3.attack_thunder_2.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/12_latter_whip/4.5.3.attack_thunder_2.mcfunction @@ -10,9 +10,7 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 diff --git a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/21_latter_magic/4.1.attack.mcfunction b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/21_latter_magic/4.1.attack.mcfunction index 78af426edf..4abb62b116 100644 --- a/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/21_latter_magic/4.1.attack.mcfunction +++ b/Asset/data/asset/functions/mob/0327.eclael/tick/app.skill_events/21_latter_magic/4.1.attack.mcfunction @@ -10,9 +10,8 @@ particle flash ~ ~0.5 ~ 0 0 0 0 1 # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 + execute if score $Random Temporary matches 0 rotated ~ 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.1.1.particle_green_0 execute if score $Random Temporary matches 1 rotated ~90 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.2.1.particle_cyan_0 execute if score $Random Temporary matches 2 rotated ~180 90 run function asset:mob/0327.eclael/tick/app.skill_events/05_former_magic/5.3.1.particle_blue_0 diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/0.load.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/0.load.mcfunction deleted file mode 100644 index 8becff8761..0000000000 --- a/Asset/data/asset/functions/mob/0330.aurora_reaper/0.load.mcfunction +++ /dev/null @@ -1,9 +0,0 @@ -#> asset:mob/0330.aurora_reaper/0.load -# -# MOBに利用するスコアボード等の初期化処理 -# -# @within tag/function asset:mob/load - -#> 定義類はここに -# @within function asset:mob/0330.aurora_reaper/** - scoreboard objectives add 96.MotionCT dummy diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/.mcfunction index 14a1f0f7bc..7e4aad2bf4 100644 --- a/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/.mcfunction +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/.mcfunction @@ -8,8 +8,11 @@ particle dust_color_transition 0.000 1.000 0.886 1.3 0 0.235 1 ~ ~1.4 ~ 0.5 0.6 0.5 0 30 normal @a playsound entity.evoker.prepare_summon hostile @a ~ ~ ~ 0.3 1.4 0 +# MotionCT中ならreturn + execute unless data storage asset:context this{MotionCT:0} run return 0 + # プレイヤーが近くにいるとき、確率でバックステップする - execute unless entity @s[scores={96.MotionCT=1..}] if entity @p[tag=Attacker,distance=..6] if predicate lib:random_pass_per/40 run function asset:mob/0330.aurora_reaper/hurt/3.step + execute if entity @p[tag=Attacker,distance=..6] if predicate lib:random_pass_per/40 run function asset:mob/0330.aurora_reaper/hurt/step # プレイヤーが離れている時、確率で前進する - execute unless entity @s[scores={96.MotionCT=1..}] unless entity @p[tag=Attacker,distance=..6] if predicate lib:random_pass_per/70 run function asset:mob/0330.aurora_reaper/hurt/4.foward_step + execute unless entity @p[tag=Attacker,distance=..6] if predicate lib:random_pass_per/70 run function asset:mob/0330.aurora_reaper/hurt/forward_step diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/4.foward_step.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/forward_step.mcfunction similarity index 67% rename from Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/4.foward_step.mcfunction rename to Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/forward_step.mcfunction index 7b62de4f54..e1ef8ba8eb 100644 --- a/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/4.foward_step.mcfunction +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/forward_step.mcfunction @@ -1,12 +1,11 @@ -#> asset:mob/0330.aurora_reaper/hurt/4.foward_step +#> asset:mob/0330.aurora_reaper/hurt/forward_step # # 前進する # # @within function asset:mob/0330.aurora_reaper/hurt/ # 乱数取得 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # motionする data modify storage lib: Argument.VectorMagnitude set value 1.5 @@ -18,4 +17,7 @@ scoreboard players reset $Random Temporary # CTをセット - scoreboard players set @s 96.MotionCT 20 + data modify storage asset:context this.MotionCT set value 10 + +# 空中ジャンプ可能な回数をセット + # data modify storage asset:context this.AirJumpCount set value 5 diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/3.step.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/step.mcfunction similarity index 66% rename from Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/3.step.mcfunction rename to Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/step.mcfunction index 91cd5473f3..9162d731af 100644 --- a/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/3.step.mcfunction +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/hurt/step.mcfunction @@ -1,21 +1,24 @@ -#> asset:mob/0330.aurora_reaper/hurt/3.step +#> asset:mob/0330.aurora_reaper/hurt/step # # ステップ&移動速度バフ # # @within function asset:mob/0330.aurora_reaper/hurt/ # 乱数取得 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # 乱数ごとに角度の違うステップ data modify storage lib: Argument.VectorMagnitude set value 1.2 execute if score $Random Temporary matches 0 facing entity @p[tag=Attacker] eyes rotated ~-180 -13 run function lib:motion/ execute if score $Random Temporary matches 1 facing entity @p[tag=Attacker] eyes rotated ~90 -13 run function lib:motion/ execute if score $Random Temporary matches 2 facing entity @p[tag=Attacker] eyes rotated ~-90 -13 run function lib:motion/ + scoreboard players reset $Random Temporary # 移動速度付与 effect give @s speed 2 0 true # CTをセット - scoreboard players set @s 96.MotionCT 20 + data modify storage asset:context this.MotionCT set value 10 + +# 空中ジャンプ可能な回数をセット + # data modify storage asset:context this.AirJumpCount set value 5 diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/register.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/register.mcfunction index 1857ff6cd6..fc838668f1 100644 --- a/Asset/data/asset/functions/mob/0330.aurora_reaper/register.mcfunction +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/register.mcfunction @@ -52,3 +52,6 @@ # data modify storage asset:mob Resist.Water set value # 雷倍率 (float) (オプション) data modify storage asset:mob Resist.Thunder set value 0.6 +# フィールド + data modify storage asset:mob Field.MotionCT set value 20 + # data modify storage asset:mob Field.AirJumpCount set value 5 diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/summon/.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/summon/.mcfunction index 7be49ee573..23c0c754d9 100644 --- a/Asset/data/asset/functions/mob/0330.aurora_reaper/summon/.mcfunction +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/summon/.mcfunction @@ -1,4 +1,4 @@ #> asset:mob/0330.aurora_reaper/summon/ # @within asset:mob/alias/330/summon -summon skeleton ~ ~ ~ {Silent:1b,Tags:["MobInit","ProcessCommonTag","AlwaysInvisible"],DeathLootTable:"empty"} +summon skeleton ~ ~ ~ {Silent:1b,Tags:["MobInit","ProcessCommonTag","AlwaysInvisible","AntiFallDamage"],DeathLootTable:"empty"} diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/.mcfunction index b49cd3f18b..b5fa0d2a37 100644 --- a/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/.mcfunction +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/.mcfunction @@ -8,7 +8,8 @@ particle dust_color_transition 0.000 1.000 0.886 1.3 0 0.235 1 ~ ~1.7 ~ 0.1 0.1 0.1 0 2 normal @a # motionCTの処理 - execute if entity @s[scores={96.MotionCT=0..}] run scoreboard players remove @s 96.MotionCT 1 + execute store result storage asset:context this.MotionCT int 0.9999999999 run data get storage asset:context this.MotionCT -# ハード以上で鈍足の無効化 (コメントアウトだけ) - # execute if predicate api:global_vars/difficulty/min/hard run effect clear @s slowness +# motionCTが0かつ、周囲64mにプレイヤーがいるかつ、空中ならプレイヤーの方へmotionする + # execute if data storage asset:context this{MotionCT:0} unless data storage asset:context this{AirJumpCount:0} if block ~ ~-1 ~ #lib:no_collision_without_fluid if block ~ ~-2 ~ #lib:no_collision_without_fluid if block ~ ~-3 ~ #lib:no_collision_without_fluid run function asset:mob/0330.aurora_reaper/tick/air_jump + execute if data storage asset:context this{MotionCT:0} if entity @p[gamemode=!spectator,distance=..64] if block ~ ~-1 ~ #lib:no_collision_without_fluid if block ~ ~-2 ~ #lib:no_collision_without_fluid if block ~ ~-3 ~ #lib:no_collision_without_fluid run function asset:mob/0330.aurora_reaper/tick/air_jump diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/air_jump.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/air_jump.mcfunction new file mode 100644 index 0000000000..7e52b4e577 --- /dev/null +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/air_jump.mcfunction @@ -0,0 +1,24 @@ +#> asset:mob/0330.aurora_reaper/tick/air_jump +# +# 空中ジャンプする +# +# @within function asset:mob/0330.aurora_reaper/tick/ + +# 演出 + playsound entity.evoker.prepare_summon hostile @a ~ ~ ~ 0.1 1.9 0 + execute positioned ~ ~-0.2 ~ rotated ~ 0 run function asset:mob/0330.aurora_reaper/tick/vfx + +# tpして向き合わせ + tp @s ~ ~ ~ facing entity @p[gamemode=!spectator,distance=..64] eyes + +# 近くのプレイヤーにmotion + data modify storage lib: Argument.VectorMagnitude set value 1.0 + execute facing entity @p[gamemode=!spectator,distance=..64] eyes rotated ~ ~-13 run function lib:motion/ + + + +# CT設定 + data modify storage asset:context this.MotionCT set value 15 + +# カウントを減らす + # execute store result storage asset:context this.AirJumpCount int 0.9999999999 run data get storage asset:context this.AirJumpCount diff --git a/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/vfx.mcfunction b/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/vfx.mcfunction new file mode 100644 index 0000000000..d2f681d128 --- /dev/null +++ b/Asset/data/asset/functions/mob/0330.aurora_reaper/tick/vfx.mcfunction @@ -0,0 +1,83 @@ +#> asset:mob/0330.aurora_reaper/tick/vfx +# +# +# +# @within function asset:mob/0330.aurora_reaper/tick/air_jump + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmAGwCGArCtQMwCcALALTXMBMADO61oBGSuwBGAdgBmHXqXrdatZrV5ihYAgDtqAWwTJAYYoACDQRjUMegM5JwKAPaEtEJK14EUcF3Ax2wAG7U2IQG4AAeSB5gUFEAvnEEVqRohLaIjATWEJauiNFw2NhoMNYGQrzRGA45EAbRaNYAokUlZU0AjoTB2FAAyhZe5IhSwWUJeODQ8BToWLiaRCTDVHAAHKTczMxSAmKMu6w7tOLUpGLscNyMa6xrEtxCErTUizr6FCbcixZWuun2JwuJCMbiebx1PyIcBBEJhMCRfIEWL5CZgZKpdJgsDZXJRAiFYqlcqVJI1ah1fFgRotIntLo9fqDODDUbYcaJKawAyoTA4fBLMizFASRhyZTsFSUZgCOBCDjMRiMITsFC8MXyRgoVRwKRvPQ8kyMH6WGz+RzOPLcVjgnxQmHBUL+RHRFG8NEYtJIIRZHIYPIFVrE72k9HkylI6nNIP07pFJnUIZINkcyaQbmzPkLAjEIXIMRyq4SCQXIQqC6sOAscS0biiW5y7hrRikK6MCT6j5GYysE1-AGoIF5ES2yH+WFO6EIqluj1nTFRAB0tF9eMjhLaJKq4fqBBpMbgnTjvQGiZZybGcASAF0gA_3 +# 円 2 +particle dust 0.000 1.000 0.918 3 ^0 ^ ^-2 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^0.39018 ^ ^-1.96157 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^0.76537 ^ ^-1.84776 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.11114 ^ ^-1.66294 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.41421 ^ ^-1.41421 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.66294 ^ ^-1.11114 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.84776 ^ ^-0.76537 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.96157 ^ ^-0.39018 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^2 ^ ^0 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.96157 ^ ^0.39018 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.84776 ^ ^0.76537 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.66294 ^ ^1.11114 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.41421 ^ ^1.41421 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^1.11114 ^ ^1.66294 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^0.76537 ^ ^1.84776 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^0.39018 ^ ^1.96157 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^0 ^ ^2 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-0.39018 ^ ^1.96157 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-0.76537 ^ ^1.84776 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.11114 ^ ^1.66294 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.41421 ^ ^1.41421 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.66294 ^ ^1.11114 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.84776 ^ ^0.76537 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.96157 ^ ^0.39018 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-2 ^ ^0 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.96157 ^ ^-0.39018 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.84776 ^ ^-0.76537 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.66294 ^ ^-1.11114 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.41421 ^ ^-1.41421 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-1.11114 ^ ^-1.66294 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-0.76537 ^ ^-1.84776 0 0 0 0 1 +particle dust 0.000 1.000 0.918 3 ^-0.39018 ^ ^-1.96157 0 0 0 0 1 +# 円 3 +particle dust 0.000 0.878 0.914 3 ^0 ^ ^-1 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.25882 ^ ^-0.96593 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.5 ^ ^-0.86603 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.70711 ^ ^-0.70711 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.86603 ^ ^-0.5 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.96593 ^ ^-0.25882 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^1 ^ ^0 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.96593 ^ ^0.25882 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.86603 ^ ^0.5 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.70711 ^ ^0.70711 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.5 ^ ^0.86603 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0.25882 ^ ^0.96593 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^0 ^ ^1 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.25882 ^ ^0.96593 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.5 ^ ^0.86603 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.70711 ^ ^0.70711 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.86603 ^ ^0.5 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.96593 ^ ^0.25882 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-1 ^ ^0 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.96593 ^ ^-0.25882 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.86603 ^ ^-0.5 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.70711 ^ ^-0.70711 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.5 ^ ^-0.86603 0 0 0 0 1 +particle dust 0.000 0.878 0.914 3 ^-0.25882 ^ ^-0.96593 0 0 0 0 1 + +# 円 4 +particle dust 0.000 0.545 1.000 3 ^0 ^ ^-0.5 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0.19134 ^ ^-0.46194 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0.35355 ^ ^-0.35355 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0.46194 ^ ^-0.19134 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0.5 ^ ^0 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0.46194 ^ ^0.19134 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0.35355 ^ ^0.35355 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0.19134 ^ ^0.46194 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^0 ^ ^0.5 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^-0.19134 ^ ^0.46194 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^-0.35355 ^ ^0.35355 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^-0.46194 ^ ^0.19134 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^-0.5 ^ ^0 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^-0.46194 ^ ^-0.19134 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^-0.35355 ^ ^-0.35355 0 0 0 0 1 +particle dust 0.000 0.545 1.000 3 ^-0.19134 ^ ^-0.46194 0 0 0 0 1 diff --git a/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/1.init.mcfunction b/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/1.init.mcfunction index 5138fe8c6d..3f119b1a20 100644 --- a/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/1.init.mcfunction +++ b/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/1.init.mcfunction @@ -21,10 +21,7 @@ # 最初のフェーズ決定 execute if predicate lib:random_pass_per/50 run tag @s add 9E.State.Phase.Sapphiel execute unless entity @s[tag=9E.State.Phase.Sapphiel] run tag @s add 9E.State.Phase.Rubiel - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const - scoreboard players operation @s 9E.ActionCount = $Random Temporary - scoreboard players reset $Random Temporary + execute store result score @s 9E.ActionCount run random value 0..2 # リセット scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/3.get_uid.mcfunction b/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/3.get_uid.mcfunction index 2f55d8106f..e5329918d3 100644 --- a/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/3.get_uid.mcfunction +++ b/Asset/data/asset/functions/mob/0338.corundum_twins/init/app/3.get_uid.mcfunction @@ -7,7 +7,7 @@ # function asset:mob/0338.corundum_twins/init/app/3.get_uid # uid決定 - execute store result score $Random Temporary run function lib:random/ + execute store result score $Random Temporary run random value 0..65535 # uid被りがいる場合、再度実行 execute as @e[type=slime,tag=9E.Root,tag=9E.Init] if score @s 9E.Uid = $Random Temporary run function asset:mob/0338.corundum_twins/init/app/3.get_uid diff --git a/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.1.hg_normal.mcfunction b/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.1.hg_normal.mcfunction index 6e8a7843b8..bc98307e87 100644 --- a/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.1.hg_normal.mcfunction +++ b/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.1.hg_normal.mcfunction @@ -5,8 +5,7 @@ # @within function asset:mob/0339.twins_sapphiel/tick/app/skill/select/5.1.interrupt_hg # ランダム - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $6 Const + execute store result score $Random Temporary run random value 0..5 # 射撃 * 2 execute if score $Random Temporary matches 0 run tag @s add 9F.Skill.Hg.Shot diff --git a/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.2.hg_move.mcfunction b/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.2.hg_move.mcfunction index 9af76b1df8..630a66a203 100644 --- a/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.2.hg_move.mcfunction +++ b/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.2.hg_move.mcfunction @@ -5,8 +5,7 @@ # @within function asset:mob/0339.twins_sapphiel/tick/app/skill/select/5.1.interrupt_hg # ランダム - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $8 Const + execute store result score $Random Temporary run random value 0..7 # 引き撃ち execute if score $Random Temporary matches 0 run tag @s add 9F.Skill.Hg.BackShot diff --git a/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.3.hg_strong.mcfunction b/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.3.hg_strong.mcfunction index 0c90e40359..deb14508e5 100644 --- a/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.3.hg_strong.mcfunction +++ b/Asset/data/asset/functions/mob/0339.twins_sapphiel/tick/app/skill/select/6.3.hg_strong.mcfunction @@ -5,8 +5,7 @@ # @within function asset:mob/0339.twins_sapphiel/tick/app/skill/select/5.1.interrupt_hg # ランダム - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # ワープポイント設置 execute if score $Random Temporary matches 0 run tag @s add 9F.Skill.Hg.Warp.Shot diff --git a/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.2.kt_feeling.mcfunction b/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.2.kt_feeling.mcfunction index 2bcc0d8b63..d435634f34 100644 --- a/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.2.kt_feeling.mcfunction +++ b/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.2.kt_feeling.mcfunction @@ -6,8 +6,7 @@ # @within function asset:mob/0340.twins_rubiel/tick/app/skill/select/5.1.interrupt_kt # ランダム - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 # カウンター増加 scoreboard players operation @s 9G.ActionCount.Feeling += $Random Temporary diff --git a/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.3.kt_strong.mcfunction b/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.3.kt_strong.mcfunction index f80af48301..f01b25ba2b 100644 --- a/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.3.kt_strong.mcfunction +++ b/Asset/data/asset/functions/mob/0340.twins_rubiel/tick/app/skill/select/6.3.kt_strong.mcfunction @@ -5,11 +5,11 @@ # @within function asset:mob/0340.twins_rubiel/tick/app/skill/select/5.1.interrupt_kt # ランダム - execute store result score $Random Temporary run function lib:random/ + execute store result score $Random Temporary run random value 0..2 # プレイヤーが近くにいない場合は掴みを使用しない - execute if entity @a[distance=..10] run scoreboard players operation $Random Temporary %= $3 Const - execute unless entity @a[distance=..10] run scoreboard players operation $Random Temporary %= $2 Const + execute if entity @a[distance=..10] store result score $Random Temporary run random value 0..2 + execute unless entity @a[distance=..10] store result score $Random Temporary run random value 0..1 # 納刀 execute if score $Random Temporary matches 0 run tag @s add 9G.Skill.Kt.Sheathe diff --git a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/iai_tp.mcfunction b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/iai_tp.mcfunction index d0a79758c8..3cc3bfba71 100644 --- a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/iai_tp.mcfunction +++ b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/iai_tp.mcfunction @@ -1,6 +1,6 @@ #> asset:mob/0341.louvert/tick/animation/15_2_final_spell_iai/iai_tp # -# +# # # @within function asset:mob/0341.louvert/tick/animation/15_2_final_spell_iai/ @@ -8,10 +8,10 @@ tp 0-0-0-0-0 ^ ^ ^ ~ 0 execute at @a[tag=!PlayerShouldInvulnerable,distance=..64,sort=nearest,limit=1] run tp 0-0-0-0-0 ^ ^ ^ ~ 0 # ランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 execute at 0-0-0-0-0 positioned ^ ^ ^8 facing ^ ^ ^-1 run tp 0-0-0-0-0 ^ ^ ^ ~ 0 # TPする execute at 0-0-0-0-0 run function asset:mob/0341.louvert/tick/general/1.teleport function asset:mob/0341.louvert/tick/general/3.teleport_effect # Makerを戻してあげる - execute in overworld run tp 0-0-0-0-0 0.0 0.0 0.0 \ No newline at end of file + execute in overworld run tp 0-0-0-0-0 0.0 0.0 0.0 diff --git a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/soul_blast.mcfunction b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/soul_blast.mcfunction index cd0cfae5bc..79089847fa 100644 --- a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/soul_blast.mcfunction +++ b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/15_2_final_spell_iai/soul_blast.mcfunction @@ -11,7 +11,7 @@ # 拡散する execute as 0-0-0-0-0 at @s run function lib:spread_entity/ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 # ソウルブラスト召喚 execute at 0-0-0-0-0 run function asset:mob/0341.louvert/tick/general/5.soul_blast # ソウルブラストを90度回転 diff --git a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/3_2_slash_end/slash.mcfunction b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/3_2_slash_end/slash.mcfunction index 01d40f2efa..abaf9b7260 100644 --- a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/3_2_slash_end/slash.mcfunction +++ b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/3_2_slash_end/slash.mcfunction @@ -8,15 +8,15 @@ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0341.louvert/tick/animation/3_2_slash_end/vfx # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0341.louvert/tick/animation/3_2_slash_end/vfx # Makerを戻してあげる diff --git a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/6_4_moving_attack/slash.mcfunction b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/6_4_moving_attack/slash.mcfunction index c65408f52b..b971bd03a6 100644 --- a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/6_4_moving_attack/slash.mcfunction +++ b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/6_4_moving_attack/slash.mcfunction @@ -8,8 +8,8 @@ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0341.louvert/tick/animation/6_4_moving_attack/slash_vfx # Makerを戻してあげる diff --git a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/7_1_soul_cast/soul_summon.mcfunction b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/7_1_soul_cast/soul_summon.mcfunction index a98aed8820..d77bc70558 100644 --- a/Asset/data/asset/functions/mob/0341.louvert/tick/animation/7_1_soul_cast/soul_summon.mcfunction +++ b/Asset/data/asset/functions/mob/0341.louvert/tick/animation/7_1_soul_cast/soul_summon.mcfunction @@ -11,7 +11,7 @@ # 拡散する execute as 0-0-0-0-0 at @s run function lib:spread_entity/ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 # ソウルブラスト召喚 execute at 0-0-0-0-0 run function asset:mob/0341.louvert/tick/general/5.soul_blast # ソウルブラストの位置調整 @@ -27,7 +27,7 @@ # ソウルブラスト召喚 execute at 0-0-0-0-0 run function asset:mob/0341.louvert/tick/general/5.soul_blast # ソウルブラストの位置調整 - execute at 0-0-0-0-0 as @e[tag=2145.SoulBlast,distance=..0.01,limit=1] run tp @s ^ ^ ^-7.5 ~ ~ + execute at 0-0-0-0-0 as @e[tag=2145.SoulBlast,distance=..0.01,limit=1] run tp @s ^ ^ ^-7.5 ~ ~ # ソウルブラスト召喚 execute if predicate api:global_vars/difficulty/min/hard at 0-0-0-0-0 run function asset:mob/0341.louvert/tick/general/5.soul_blast # ソウルブラストの位置調整 diff --git a/Asset/data/asset/functions/mob/0341.louvert/tick/skill_select.mcfunction b/Asset/data/asset/functions/mob/0341.louvert/tick/skill_select.mcfunction index c0ae86f02b..2a8fdd0a74 100644 --- a/Asset/data/asset/functions/mob/0341.louvert/tick/skill_select.mcfunction +++ b/Asset/data/asset/functions/mob/0341.louvert/tick/skill_select.mcfunction @@ -5,13 +5,11 @@ # @within function asset:mob/0341.louvert/tick/ # スキルを選択する - execute store result score @s 9H.SkillSelect run function lib:random/ - execute if score @s 9H.HPPer matches 80..100 run scoreboard players operation @s 9H.SkillSelect %= $4 Const - execute if score @s 9H.HPPer matches 60..79 run scoreboard players operation @s 9H.SkillSelect %= $5 Const - execute if score @s 9H.HPPer matches 40..59 run scoreboard players operation @s 9H.SkillSelect %= $6 Const - execute if score @s 9H.HPPer matches 20..39 run scoreboard players operation @s 9H.SkillSelect %= $7 Const - execute if score @s 9H.HPPer matches ..19 run scoreboard players operation @s 9H.SkillSelect %= $8 Const - scoreboard players add @s 9H.SkillSelect 1 + execute if score @s 9H.HPPer matches 80..100 store result score @s 9H.SkillSelect run random value 1..4 + execute if score @s 9H.HPPer matches 60..79 store result score @s 9H.SkillSelect run random value 1..5 + execute if score @s 9H.HPPer matches 40..59 store result score @s 9H.SkillSelect run random value 1..6 + execute if score @s 9H.HPPer matches 20..39 store result score @s 9H.SkillSelect run random value 1..7 + execute if score @s 9H.HPPer matches ..19 store result score @s 9H.SkillSelect run random value 1..8 # 移動モーションに以降 scoreboard players set @s 9H.AnimationTick 0 diff --git a/Asset/data/asset/functions/mob/0363.white_spellbook/tick/magic.mcfunction b/Asset/data/asset/functions/mob/0363.white_spellbook/tick/magic.mcfunction index 5565253c5c..e55894664f 100644 --- a/Asset/data/asset/functions/mob/0363.white_spellbook/tick/magic.mcfunction +++ b/Asset/data/asset/functions/mob/0363.white_spellbook/tick/magic.mcfunction @@ -7,7 +7,6 @@ #> Private # @private #declare tag Random - #declare score_holder $Random # ハード以上なら確率で座標攻撃か自機外しに分岐する # Tagが付与されてないなら座標攻撃 @@ -17,11 +16,7 @@ execute if entity @s[tag=Random] at @p[distance=..10] run function asset:mob/0363.white_spellbook/tick/spread # 次に攻撃するタイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 120 + execute store result score @s General.Mob.Tick run random value -120..-90 # リセット tag @s remove Random - scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/mob/0369.prominence_spellbook/tick/reset.mcfunction b/Asset/data/asset/functions/mob/0369.prominence_spellbook/tick/reset.mcfunction index 7e7911cd3e..4f84d8727b 100644 --- a/Asset/data/asset/functions/mob/0369.prominence_spellbook/tick/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0369.prominence_spellbook/tick/reset.mcfunction @@ -5,15 +5,5 @@ # @within function # asset:mob/0369.prominence_spellbook/tick/ready -#> Private -# @private - #declare score_holder $Random - # 次に攻撃するタイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 100 - -# リセット - scoreboard players reset $Random Temporary + execute store result score @s General.Mob.Tick run random value -100..-70 diff --git a/Asset/data/asset/functions/mob/0370.wave_spellbook/tick/reset.mcfunction b/Asset/data/asset/functions/mob/0370.wave_spellbook/tick/reset.mcfunction index 1b7aaaa9a1..fca9b128f8 100644 --- a/Asset/data/asset/functions/mob/0370.wave_spellbook/tick/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0370.wave_spellbook/tick/reset.mcfunction @@ -6,15 +6,5 @@ # asset:mob/0370.wave_spellbook/tick/ready # asset:mob/0370.wave_spellbook/tick/summon -#> Private -# @private - #declare score_holder $Random - # 次に攻撃するタイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 120 - -# リセット - scoreboard players reset $Random Temporary + execute store result score @s General.Mob.Tick run random value -120..-90 diff --git a/Asset/data/asset/functions/mob/0371.lightning_spellbook/tick/reset.mcfunction b/Asset/data/asset/functions/mob/0371.lightning_spellbook/tick/reset.mcfunction index 833fe07e37..6e35d0dea1 100644 --- a/Asset/data/asset/functions/mob/0371.lightning_spellbook/tick/reset.mcfunction +++ b/Asset/data/asset/functions/mob/0371.lightning_spellbook/tick/reset.mcfunction @@ -6,15 +6,5 @@ # asset:mob/0371.lightning_spellbook/tick/ready # asset:mob/0371.lightning_spellbook/tick/summon -#> Private -# @private - #declare score_holder $Random - # 次に攻撃するタイミングをランダムにする - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $31 Const - scoreboard players operation @s General.Mob.Tick = $Random Temporary - scoreboard players remove @s General.Mob.Tick 120 - -# リセット - scoreboard players reset $Random Temporary + execute store result score @s General.Mob.Tick run random value -120..-90 diff --git a/Asset/data/asset/functions/mob/0372.tutankhamen/tick/skill/many_shoot/summon.mcfunction b/Asset/data/asset/functions/mob/0372.tutankhamen/tick/skill/many_shoot/summon.mcfunction index 86f4cb9940..c7ff5880ab 100644 --- a/Asset/data/asset/functions/mob/0372.tutankhamen/tick/skill/many_shoot/summon.mcfunction +++ b/Asset/data/asset/functions/mob/0372.tutankhamen/tick/skill/many_shoot/summon.mcfunction @@ -18,9 +18,7 @@ scoreboard players operation $StartDelay Temporary -= @s General.Mob.Tick # 発射タイミングのランダム性 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $10 Const - scoreboard players remove $Random Temporary 20 + execute store result score $Random Temporary run random value -20..-11 scoreboard players operation $StartDelay Temporary += $Random Temporary # 召喚 diff --git a/Asset/data/asset/functions/mob/0377.grey_guardian_v2/tick/skill_select.mcfunction b/Asset/data/asset/functions/mob/0377.grey_guardian_v2/tick/skill_select.mcfunction index 341a86bb08..03dfdb91bc 100644 --- a/Asset/data/asset/functions/mob/0377.grey_guardian_v2/tick/skill_select.mcfunction +++ b/Asset/data/asset/functions/mob/0377.grey_guardian_v2/tick/skill_select.mcfunction @@ -5,9 +5,7 @@ # @within function asset:mob/0377.grey_guardian_v2/tick/ # ランダム - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $5 Const + execute store result score $Random Temporary run random value 0..4 # デバッグスキル固定 #scoreboard players set $Random Temporary 3 @@ -19,7 +17,5 @@ execute if score $Random Temporary matches 3 run tag @s add AH.Skill04 execute if score $Random Temporary matches 4 run tag @s add AH.Skill05 - - # リセット scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/2_0_normal_slash/vfx_start.mcfunction b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/2_0_normal_slash/vfx_start.mcfunction index 106b1f2698..fea4872d5d 100644 --- a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/2_0_normal_slash/vfx_start.mcfunction +++ b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/2_0_normal_slash/vfx_start.mcfunction @@ -10,15 +10,15 @@ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0391.axia_first/ai/animation/2_0_normal_slash/vfx # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0391.axia_first/ai/animation/2_0_normal_slash/vfx # マーカーを戻してあげる diff --git a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/4_0_naginagi/vfx/start.mcfunction b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/4_0_naginagi/vfx/start.mcfunction index cf9c5221c6..55c3a8cd30 100644 --- a/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/4_0_naginagi/vfx/start.mcfunction +++ b/Asset/data/asset/functions/mob/0391.axia_first/ai/animation/4_0_naginagi/vfx/start.mcfunction @@ -8,20 +8,20 @@ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0391.axia_first/ai/animation/4_0_naginagi/vfx/ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0391.axia_first/ai/animation/4_0_naginagi/vfx/ # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ - execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 + execute store result entity 0-0-0-0-0 Rotation[1] float 0.01 run random value 0..35999 # 球体演出 execute at 0-0-0-0-0 positioned ~ ~1 ~ run function asset:mob/0391.axia_first/ai/animation/4_0_naginagi/vfx/ # マーカーを戻してあげる diff --git a/Asset/data/asset/functions/mob/0416.ahssat/_index.d.mcfunction b/Asset/data/asset/functions/mob/0416.ahssat/_index.d.mcfunction deleted file mode 100644 index 2e7a830273..0000000000 --- a/Asset/data/asset/functions/mob/0416.ahssat/_index.d.mcfunction +++ /dev/null @@ -1,6 +0,0 @@ -#> asset:mob/0416.ahssat/_index.d -# @private - -#> tag -# @within function asset:mob/0416.ahssat/** - #declare score_holder $BK.Temp diff --git a/Asset/data/asset/functions/mob/0416.ahssat/death/.mcfunction b/Asset/data/asset/functions/mob/0416.ahssat/death/.mcfunction index d4cf2efd87..2d2d90be8a 100644 --- a/Asset/data/asset/functions/mob/0416.ahssat/death/.mcfunction +++ b/Asset/data/asset/functions/mob/0416.ahssat/death/.mcfunction @@ -4,26 +4,15 @@ # # @within function asset:mob/alias/416/death -# DeathCountを取り出す - execute store result score $BK.Temp Temporary run data get storage asset:context this.DeathCount +# Split を 1 以上持っていないなら打ち切り + execute if data storage asset:context this{Split:0} run return fail -# DeathCountが2以上なら打ち切り - execute if score $BK.Temp Temporary matches 2.. run return run scoreboard players reset $BK.Temp Temporary - -# DeathCountを+1 - scoreboard players add $BK.Temp Temporary 1 - -# DeathCountを引き継いで召喚させる - execute store result storage api: Argument.FieldOverride.DeathCount int 1 run scoreboard players get $BK.Temp Temporary -# 召喚 - data modify storage api: Argument.ID set value 416 - function api:mob/summon - -# DeathCountを引き継いで召喚させる - execute store result storage api: Argument.FieldOverride.DeathCount int 1 run scoreboard players get $BK.Temp Temporary -# 召喚 - data modify storage api: Argument.ID set value 416 - function api:mob/summon - -# リセット - scoreboard players reset $BK.Temp Temporary +# Split を 1 減算して分裂 + # 召喚 + execute store result storage api: Argument.FieldOverride.Split int 0.9999999999 run data get storage asset:context this.Split + data modify storage api: Argument.ID set value 427 + function api:mob/summon + # 召喚 + execute store result storage api: Argument.FieldOverride.Split int 0.9999999999 run data get storage asset:context this.Split + data modify storage api: Argument.ID set value 427 + function api:mob/summon diff --git a/Asset/data/asset/functions/mob/0416.ahssat/register.mcfunction b/Asset/data/asset/functions/mob/0416.ahssat/register.mcfunction index 3860e4c7ba..e0583a4d3b 100644 --- a/Asset/data/asset/functions/mob/0416.ahssat/register.mcfunction +++ b/Asset/data/asset/functions/mob/0416.ahssat/register.mcfunction @@ -5,7 +5,7 @@ # @within function asset:mob/alias/416/register # 他のモブに継承されることを許可するか (boolean) (オプション) - # data modify storage asset:mob ExtendsSafe set value + data modify storage asset:mob ExtendsSafe set value true # 継承されることを前提とした、抽象的なモブであるかどうか(boolean) data modify storage asset:mob IsAbstract set value false # ID (int) @@ -62,4 +62,4 @@ # 雷倍率 (float) (オプション) data modify storage asset:mob Resist.Thunder set value 1 # フィールド - data modify storage asset:mob Field set value {DeathCount:0} + data modify storage asset:mob Field.Split set value 2 diff --git a/Asset/data/asset/functions/mob/0427.ahssat_split/register.mcfunction b/Asset/data/asset/functions/mob/0427.ahssat_split/register.mcfunction new file mode 100644 index 0000000000..59c8e56018 --- /dev/null +++ b/Asset/data/asset/functions/mob/0427.ahssat_split/register.mcfunction @@ -0,0 +1,13 @@ +#> asset:mob/0427.ahssat_split/register +# +# Mobのデータを指定 +# +# @within function asset:mob/alias/427/register + +# 継承 + data modify storage asset:mob Extends append value 416 + function asset:mob/extends +# ID (int) + data modify storage asset:mob ID set value 427 +# フィールド + # data modify storage asset:mob Field.Split set value 1 diff --git a/Asset/data/asset/functions/mob/0427.ahssat_split/summon/debug.mcfunction b/Asset/data/asset/functions/mob/0427.ahssat_split/summon/debug.mcfunction new file mode 100644 index 0000000000..03ebc9cdfe --- /dev/null +++ b/Asset/data/asset/functions/mob/0427.ahssat_split/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:mob/0427.ahssat_split/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 427 + function api:mob/summon diff --git a/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/fire/meteor_rain/windup.mcfunction b/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/fire/meteor_rain/windup.mcfunction index 0e2e9dbdd8..8a828f00a4 100644 --- a/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/fire/meteor_rain/windup.mcfunction +++ b/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/fire/meteor_rain/windup.mcfunction @@ -11,10 +11,7 @@ # execute if score @s RW.Phase matches 3.. run function asset:mob/1004.tultaria/tick/skill/fire/meteor_rain/break_platform # 行動をランダムに選択 - # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - # フェイズ1 - scoreboard players operation $Random Temporary %= $2 Const + execute store result score $Random Temporary run random value 0..1 # デバッグ用、実行する技を確定させる # scoreboard players set $Random Temporary 1 @@ -28,3 +25,6 @@ execute if score $Random Temporary matches 2 run tag @s add RW.Skill.Meteor.3 # 4 execute if score $Random Temporary matches 3 run tag @s add RW.Skill.Meteor.4 + +# リセット + scoreboard players reset $Random Temporary diff --git a/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/water/sword_rain/windup.mcfunction b/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/water/sword_rain/windup.mcfunction index f642e57d64..45c3bd154a 100644 --- a/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/water/sword_rain/windup.mcfunction +++ b/Asset/data/asset/functions/mob/1004.tultaria/tick/skill/water/sword_rain/windup.mcfunction @@ -14,12 +14,10 @@ execute as @e[type=item_display,tag=RW.ModelRoot.Target,distance=..8,sort=nearest,limit=1] run function animated_java:tultaria/animations/attack_magic_2_left/tween {to_frame:0,duration:1} # 行動をランダムに選択 - # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ # フェイズ1 - execute if score @s RW.Phase matches 1 run scoreboard players operation $Random Temporary %= $2 Const + execute if score @s RW.Phase matches 1 store result score $Random Temporary run random value 0..1 # フェイズ2.. - execute if score @s RW.Phase matches 2.. run scoreboard players operation $Random Temporary %= $3 Const + execute if score @s RW.Phase matches 2.. store result score $Random Temporary run random value 0..2 # デバッグ用、実行する技を確定させる # scoreboard players set $Random Temporary 3 diff --git a/Asset/data/asset/functions/mob/alias/19/init.mcfunction b/Asset/data/asset/functions/mob/alias/19/init.mcfunction new file mode 100644 index 0000000000..1ae3413028 --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/19/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/19/init +# +# Init処理のエイリアス +# +# @within asset_manager:mob/triggers/init/init.m + +# 元のInit処理を呼び出す + function asset:mob/0019.horus_priest/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/mob/alias/427/register.mcfunction b/Asset/data/asset/functions/mob/alias/427/register.mcfunction new file mode 100644 index 0000000000..2e3164e72f --- /dev/null +++ b/Asset/data/asset/functions/mob/alias/427/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:mob/alias/427/register +# +# Mobのデータ指定処理のエイリアス +# +# @within asset_manager:mob/triggers/summon/register.m + +# 元の登録処理を呼び出す + function asset:mob/0427.ahssat_split/register diff --git a/Asset/data/asset/functions/object/1027.rain_area/register.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/register.mcfunction new file mode 100644 index 0000000000..3d238ceb7a --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/register.mcfunction @@ -0,0 +1,22 @@ +#> asset:object/1027.rain_area/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1027/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 1027 +# フィールド(オプション) + data modify storage asset:object Field.Damage set value 1 + data modify storage asset:object Field.HealPer set value 5 + data modify storage asset:object Field.UserID set value -1 diff --git a/Asset/data/asset/functions/object/1027.rain_area/summon/.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/summon/.mcfunction new file mode 100644 index 0000000000..56c61d0534 --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1027.rain_area/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1027/summon + +# 元となるEntityを召喚する + summon marker ~ ~ ~ {Tags:["ObjectInit"]} diff --git a/Asset/data/asset/functions/object/1027.rain_area/summon/debug.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/summon/debug.mcfunction new file mode 100644 index 0000000000..a4f6b7da76 --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1027.rain_area/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1027 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1027.rain_area/tick/.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/tick/.mcfunction new file mode 100644 index 0000000000..c5a372eb42 --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/tick/.mcfunction @@ -0,0 +1,42 @@ +#> asset:object/1027.rain_area/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1027/tick + +#> Private +# @private + #declare score_holder $Interval + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 回転 + tp @s ~ ~ ~ ~2 ~ + +# 演出 + particle minecraft:rain ~ ~6 ~ 2.5 0 2.5 0 40 normal @a + particle dolphin ~ ~3 ~ 3 2 3 0 20 normal @a + particle dolphin ~ ~0.3 ~ 3 0.1 3 0 20 normal @a + particle dust 0.4 0.7 100000000 2 ~ ~6 ~ 2.5 0.2 2.5 0 8 + +# 音 + scoreboard players operation $Interval Temporary = @s General.Object.Tick + scoreboard players operation $Interval Temporary %= $22 Const + execute if score $Interval Temporary matches 0 run playsound weather.rain neutral @a ~ ~ ~ 0.5 1.5 0 + +# 範囲の演出 + scoreboard players operation $Interval Temporary = @s General.Object.Tick + scoreboard players operation $Interval Temporary %= $3 Const + execute if score $Interval Temporary matches 0 positioned ~ ~0.2 ~ run function asset:object/1027.rain_area/tick/vfx/1 + +# 効果発動処理 + scoreboard players operation $Interval Temporary = @s General.Object.Tick + scoreboard players operation $Interval Temporary %= $40 Const + execute if score $Interval Temporary matches 0 positioned ~ ~ ~ run function asset:object/1027.rain_area/tick/damage_and_heal + +# リセット + scoreboard players reset $Interval Temporary + +# 消滅 + execute if score @s General.Object.Tick matches 400.. run kill @s diff --git a/Asset/data/asset/functions/object/1027.rain_area/tick/damage_and_heal.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/tick/damage_and_heal.mcfunction new file mode 100644 index 0000000000..3252fde6b7 --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/tick/damage_and_heal.mcfunction @@ -0,0 +1,65 @@ +#> asset:object/1027.rain_area/tick/damage_and_heal +# +# ダメージと回復の処理 +# +# @within function asset:object/1027.rain_area/tick/ + +#> Private +# @private + #declare tag Owner + #declare tag 1027.TargetEntity + #declare score_holder $UserID + #declare score_holder $AttackWater + +# 演出 + playsound entity.dolphin.swim neutral @a ~ ~ ~ 0.7 1.5 0 + playsound entity.dolphin.swim neutral @a ~ ~ ~ 0.7 1.8 0 + playsound ogg:ambient.underwater.additions.bubbles6 neutral @a ~ ~ ~ 0.5 1.5 0 + execute positioned ~ ~0.25 ~ run function asset:object/1027.rain_area/tick/vfx/2 + execute positioned ~ ~0.8 ~ run function asset:object/1027.rain_area/tick/vfx/2 + +# 使用者にTagを付与 + 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 + +# ターゲットとなるEntityにTagを付与 + execute if score $Interval Temporary matches 0 positioned ~ ~ ~ run tag @e[type=#lib:living,tag=!Uninterferable,tag=!Object,distance=..7] add 1027.TargetEntity + execute if score $Interval Temporary matches 0 positioned ~ ~3 ~ run tag @e[type=#lib:living,tag=!Uninterferable,tag=!Object,distance=..7] add 1027.TargetEntity + +# ダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "Water" + execute as @p[tag=Owner] run function api:damage/modifier + execute as @e[type=#lib:living,tag=Enemy,tag=1027.TargetEntity,tag=!Uninterferable,distance=..20] run function api:damage/ + function api:damage/reset + +# 回復 + # 水攻撃補正をstorageに入れる (補正1.2の場合、0.2になるように計算) + execute as @p[tag=Owner] run function api:modifier/attack/water/get + execute store result score $AttackWater Temporary run data get storage api: Return.Attack.Water 100 + scoreboard players operation $AttackWater Temporary -= $100 Const + execute store result storage api: Argument.Amount double 0.01 run scoreboard players get $AttackWater Temporary + + # 体力回復量補正に水攻撃補正を掛ける + data modify storage api: Argument.UUID set value [I;1,1,907,0] + data modify storage api: Argument.Operation set value "multiply" + execute as @p[tag=Owner] run function api:modifier/heal/add + + # 範囲内のプレイヤーを使用者の最大体力に比例して回復 + # 調整を容易にするために割合はフィールドから取得する + execute as @p[tag=Owner] run function api:modifier/max_health/get + execute store result storage api: Argument.Heal double 0.01 run function asset:object/1027.rain_area/tick/get_heal_per.m with storage asset:context this + execute as @p[tag=Owner] run function api:heal/modifier + execute as @a[tag=1027.TargetEntity,distance=..20] run function api:heal/ + function api:heal/reset + + # 体力回復補正から水攻撃補正分の補正を取り除く + data modify storage api: Argument.UUID set value [I;1,1,907,0] + execute as @p[tag=Owner] run function api:modifier/heal/remove + +# リセット + tag @e[type=#lib:living,tag=1027.TargetEntity,distance=..20] remove 1027.TargetEntity + tag @p[tag=Owner] remove Owner + scoreboard players reset $UserID Temporary + scoreboard players reset $AttackWater Temporary diff --git a/Asset/data/asset/functions/object/1027.rain_area/tick/get_heal_per.m.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/tick/get_heal_per.m.mcfunction new file mode 100644 index 0000000000..5a86b0ad5f --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/tick/get_heal_per.m.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1027.rain_area/tick/get_heal_per.m +# +# マクロで回復量を直接取得する +# +# @input args: +# HealPer : float +# @within function asset:object/1027.rain_area/tick/damage_and_heal + +$return run data get storage api: Return.MaxHealth $(HealPer) diff --git a/Asset/data/asset/functions/object/1027.rain_area/tick/vfx/1.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/tick/vfx/1.mcfunction new file mode 100644 index 0000000000..aa60ac38ec --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/tick/vfx/1.mcfunction @@ -0,0 +1,40 @@ +#> asset:object/1027.rain_area/tick/vfx/1 +# +# +# +# @within function asset:object/1027.rain_area/tick/ + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmAJwDM1ADAIyUBszAtA3AOwAsbPlAEwAONpR7MGbAGbSU04XB5c4KStLAEAdgEMAtgmSAwxQAEDTWBg6M+gM5JwKAPaEtEJNUEEUcN3AwOYABuOtiEhuAAHkh0BFAxAL4JBDakaIT2iFwEthDW7oixYHDY2GgwtoYMdEUYTnkQhkVotgCipeWVrQCOhKHYUADKVj7kiNKhlUkAukA_3 +# 円 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0 ^ ^-7 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.36563 ^ ^-6.8655 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.67878 ^ ^-6.46716 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.88899 ^ ^-5.82029 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.94975 ^ ^-4.94975 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.82029 ^ ^-3.88899 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.46716 ^ ^-2.67878 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.8655 ^ ^-1.36563 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^7 ^ ^0 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.8655 ^ ^1.36563 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.46716 ^ ^2.67878 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.82029 ^ ^3.88899 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.94975 ^ ^4.94975 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.88899 ^ ^5.82029 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.67878 ^ ^6.46716 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.36563 ^ ^6.8655 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0 ^ ^7 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.36563 ^ ^6.8655 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.67878 ^ ^6.46716 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.88899 ^ ^5.82029 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.94975 ^ ^4.94975 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.82029 ^ ^3.88899 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.46716 ^ ^2.67878 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.8655 ^ ^1.36563 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-7 ^ ^0 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.8655 ^ ^-1.36563 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.46716 ^ ^-2.67878 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.82029 ^ ^-3.88899 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.94975 ^ ^-4.94975 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.88899 ^ ^-5.82029 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.67878 ^ ^-6.46716 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.36563 ^ ^-6.8655 0 0 0 0 1 diff --git a/Asset/data/asset/functions/object/1027.rain_area/tick/vfx/2.mcfunction b/Asset/data/asset/functions/object/1027.rain_area/tick/vfx/2.mcfunction new file mode 100644 index 0000000000..7898be18a3 --- /dev/null +++ b/Asset/data/asset/functions/object/1027.rain_area/tick/vfx/2.mcfunction @@ -0,0 +1,108 @@ +#> asset:object/1027.rain_area/tick/vfx/2 +# +# +# +# @within function asset:object/1027.rain_area/tick/damage_and_heal + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmAJwDM1ADAIyUBszAtA3AOwAsbPlAEwAONpR7MGbAGbSU04XB5c4KStLAEAdgEMAtgmSAwxQAEDTWBg6M+gM5JwKAPaEtEJAzp0CKOG7gYDmAAbjrYhIbgAB5I3mBQsQC+iQQ2pGiE9ohcBLYQ1u6IcXDY2GgwtoaecRhO+RCGcWi2AKKl5ZUtAI6EYdhQAMpWvuSI0mGVyQC6QA_3 +# 円 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0 ^ ^-7 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.43953 ^ ^-6.98619 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.87733 ^ ^-6.9448 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.31167 ^ ^-6.87601 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.74083 ^ ^-6.78008 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.16312 ^ ^-6.6574 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.57687 ^ ^-6.50844 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.98046 ^ ^-6.33379 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.37228 ^ ^-6.13415 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.75079 ^ ^-5.9103 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.1145 ^ ^-5.66312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.46197 ^ ^-5.39359 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.79183 ^ ^-5.10278 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.10278 ^ ^-4.79183 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.39359 ^ ^-4.46197 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.66312 ^ ^-4.1145 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.9103 ^ ^-3.75079 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.13415 ^ ^-3.37228 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.33379 ^ ^-2.98046 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.50844 ^ ^-2.57687 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.6574 ^ ^-2.16312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.78008 ^ ^-1.74083 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.87601 ^ ^-1.31167 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.9448 ^ ^-0.87733 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.98619 ^ ^-0.43953 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^7 ^ ^0 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.98619 ^ ^0.43953 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.9448 ^ ^0.87733 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.87601 ^ ^1.31167 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.78008 ^ ^1.74083 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.6574 ^ ^2.16312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.50844 ^ ^2.57687 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.33379 ^ ^2.98046 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^6.13415 ^ ^3.37228 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.9103 ^ ^3.75079 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.66312 ^ ^4.1145 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.39359 ^ ^4.46197 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^5.10278 ^ ^4.79183 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.79183 ^ ^5.10278 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.46197 ^ ^5.39359 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^4.1145 ^ ^5.66312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.75079 ^ ^5.9103 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^3.37228 ^ ^6.13415 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.98046 ^ ^6.33379 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.57687 ^ ^6.50844 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^2.16312 ^ ^6.6574 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.74083 ^ ^6.78008 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^1.31167 ^ ^6.87601 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.87733 ^ ^6.9448 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0.43953 ^ ^6.98619 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^0 ^ ^7 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.43953 ^ ^6.98619 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.87733 ^ ^6.9448 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.31167 ^ ^6.87601 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.74083 ^ ^6.78008 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.16312 ^ ^6.6574 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.57687 ^ ^6.50844 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.98046 ^ ^6.33379 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.37228 ^ ^6.13415 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.75079 ^ ^5.9103 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.1145 ^ ^5.66312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.46197 ^ ^5.39359 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.79183 ^ ^5.10278 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.10278 ^ ^4.79183 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.39359 ^ ^4.46197 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.66312 ^ ^4.1145 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.9103 ^ ^3.75079 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.13415 ^ ^3.37228 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.33379 ^ ^2.98046 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.50844 ^ ^2.57687 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.6574 ^ ^2.16312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.78008 ^ ^1.74083 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.87601 ^ ^1.31167 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.9448 ^ ^0.87733 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.98619 ^ ^0.43953 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-7 ^ ^0 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.98619 ^ ^-0.43953 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.9448 ^ ^-0.87733 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.87601 ^ ^-1.31167 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.78008 ^ ^-1.74083 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.6574 ^ ^-2.16312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.50844 ^ ^-2.57687 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.33379 ^ ^-2.98046 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-6.13415 ^ ^-3.37228 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.9103 ^ ^-3.75079 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.66312 ^ ^-4.1145 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.39359 ^ ^-4.46197 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-5.10278 ^ ^-4.79183 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.79183 ^ ^-5.10278 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.46197 ^ ^-5.39359 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-4.1145 ^ ^-5.66312 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.75079 ^ ^-5.9103 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-3.37228 ^ ^-6.13415 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.98046 ^ ^-6.33379 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.57687 ^ ^-6.50844 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-2.16312 ^ ^-6.6574 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.74083 ^ ^-6.78008 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-1.31167 ^ ^-6.87601 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.87733 ^ ^-6.9448 0 0 0 0 1 +particle dust_color_transition 0 1 1 1.5 0 0 1 ^-0.43953 ^ ^-6.98619 0 0 0 0 1 diff --git a/Asset/data/asset/functions/object/1029.barrage_spirit/init/.mcfunction b/Asset/data/asset/functions/object/1029.barrage_spirit/init/.mcfunction index c7f2871a2a..ab374f319e 100644 --- a/Asset/data/asset/functions/object/1029.barrage_spirit/init/.mcfunction +++ b/Asset/data/asset/functions/object/1029.barrage_spirit/init/.mcfunction @@ -20,10 +20,7 @@ execute as @e[type=armor_stand,scores={ObjectID=1029}] at @s if score @p[tag=1029.OwnerPlayer] UserID = @e[type=armor_stand,scores={ObjectID=1029},distance=..0.01,sort=nearest,limit=1] 1029.UserID run kill @s[tag=!1029.SpiritInit] # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $6 Const + execute store result score $Random Temporary run random value 0..5 # メッセージ execute if score $Random Temporary matches 0 run tellraw @p[tag=1029.OwnerPlayer] [{"text":"<","color":"white"},{"text":"Spirit","color":"#a9b9ca"},{"text":"> ","color":"white"},{"text":"Hello!","font":"illageralt"}] diff --git a/Asset/data/asset/functions/object/1030.barrage_spirit_bullet/kill/damage.mcfunction b/Asset/data/asset/functions/object/1030.barrage_spirit_bullet/kill/damage.mcfunction index 43f4c6e7d3..263e71953f 100644 --- a/Asset/data/asset/functions/object/1030.barrage_spirit_bullet/kill/damage.mcfunction +++ b/Asset/data/asset/functions/object/1030.barrage_spirit_bullet/kill/damage.mcfunction @@ -6,21 +6,10 @@ #> private # @private - #declare score_holder $RandomDamage #declare score_holder $OwnerID -# ダメージ値設定 - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。0~10の追加ダメージ - scoreboard players operation $RandomDamage Temporary %= $41 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 95 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - -# 魔法、無属性のダメージをぶちかます +# ダメージ + execute store result storage api: Argument.Damage float 1 run random value 95..135 data modify storage api: Argument.AttackType set value "Magic" data modify storage api: Argument.ElementType set value "None" @@ -33,5 +22,4 @@ # リセット function api:damage/reset - scoreboard players reset $RandomDamage Temporary scoreboard players reset $OwnerID Temporary diff --git a/Asset/data/asset/functions/object/1050.call_fulstuka/tick/skill_select.mcfunction b/Asset/data/asset/functions/object/1050.call_fulstuka/tick/skill_select.mcfunction index 39005f2aa4..66e4afc58f 100644 --- a/Asset/data/asset/functions/object/1050.call_fulstuka/tick/skill_select.mcfunction +++ b/Asset/data/asset/functions/object/1050.call_fulstuka/tick/skill_select.mcfunction @@ -9,9 +9,7 @@ #declare score_holder $Random # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算する - scoreboard players operation $Random Temporary %= $2 Const + execute store result score $Random Temporary run random value 0..1 # デバッグのコマンド # scoreboard players set $Random Temporary 1 diff --git a/Asset/data/asset/functions/object/1052.maid/init/.mcfunction b/Asset/data/asset/functions/object/1052.maid/init/.mcfunction index 1cc1430ea1..81fb31fcd5 100644 --- a/Asset/data/asset/functions/object/1052.maid/init/.mcfunction +++ b/Asset/data/asset/functions/object/1052.maid/init/.mcfunction @@ -21,9 +21,7 @@ # 頭をランダムにするぅ! # 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ -# ほしい範囲に剰余算するやーつ - scoreboard players operation $Random Temporary %= $4 Const + execute store result score $Random Temporary run random value 0..3 # デバッグのコマンド #scoreboard players set $Random Temporary 0 diff --git a/Asset/data/asset/functions/object/1057.giant_pumpkin/hit_entity/give_sweets/give.mcfunction b/Asset/data/asset/functions/object/1057.giant_pumpkin/hit_entity/give_sweets/give.mcfunction index c503a124fc..b9591aa165 100644 --- a/Asset/data/asset/functions/object/1057.giant_pumpkin/hit_entity/give_sweets/give.mcfunction +++ b/Asset/data/asset/functions/object/1057.giant_pumpkin/hit_entity/give_sweets/give.mcfunction @@ -9,8 +9,7 @@ #declare score_holder $Random # ランダムにIDを設定 - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $5 Const + execute store result score $Random Temporary run random value 0..4 execute if score $Random Temporary matches 0 run data modify storage api: Argument.ID set value 1106 execute if score $Random Temporary matches 1 run data modify storage api: Argument.ID set value 1114 execute if score $Random Temporary matches 2 run data modify storage api: Argument.ID set value 1115 diff --git a/Asset/data/asset/functions/object/1058.brave_knight/init/.mcfunction b/Asset/data/asset/functions/object/1058.brave_knight/init/.mcfunction index 602b8ec322..a2b1cdc1ca 100644 --- a/Asset/data/asset/functions/object/1058.brave_knight/init/.mcfunction +++ b/Asset/data/asset/functions/object/1058.brave_knight/init/.mcfunction @@ -14,11 +14,8 @@ # 自身にもIDをいれる scoreboard players operation @s 1058.OwnerID = @p[tag=1058.OwnerPlayer] UserID -# 疑似乱数取得 - execute store result score $Random Temporary run function lib:random/ - -# ほしい範囲に剰余算 - scoreboard players operation $Random Temporary %= $4 Const +# 乱数取得 + execute store result score $Random Temporary run random value 0..3 # メッセージ execute if score $Random Temporary matches 0 run tellraw @p[tag=1058.OwnerPlayer] [{"text":"<","color":"white"},{"text":"Brave Knight","color":"#a9b9ca"},{"text":"> ","color":"white"},{"text":"With courage in my heart","font":"illageralt"}] diff --git a/Asset/data/asset/functions/object/1058.brave_knight/tick/event/combo/damage.mcfunction b/Asset/data/asset/functions/object/1058.brave_knight/tick/event/combo/damage.mcfunction index b496c9bb78..ef15b37aef 100644 --- a/Asset/data/asset/functions/object/1058.brave_knight/tick/event/combo/damage.mcfunction +++ b/Asset/data/asset/functions/object/1058.brave_knight/tick/event/combo/damage.mcfunction @@ -6,15 +6,8 @@ # asset:object/1058.brave_knight/tick/event/combo/0 # asset:object/1058.brave_knight/tick/event/combo/1 -#> Private -# @private - #declare score_holder $RandomDamage - # ダメージ - execute store result score $RandomDamage Temporary run function lib:random/ - scoreboard players operation $RandomDamage Temporary %= $51 Const - scoreboard players add $RandomDamage Temporary 100 - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary + execute store result storage api: Argument.Damage float 1 run random value 100..150 data modify storage api: Argument.AttackType set value "Physical" data modify storage api: Argument.ElementType set value "None" execute as @p[tag=1058.OwnerPlayer] run function api:damage/modifier @@ -25,6 +18,3 @@ data modify storage lib: Argument.VectorMagnitude set value -0.3 data modify storage lib: Argument.KnockbackResist set value true execute facing entity @e[type=armor_stand,tag=this,scores={ObjectID=1058},limit=1] feet rotated ~ ~25 run function lib:motion/ - -# リセット - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/object/1075.inferno_rush_arm/tick/hit.mcfunction b/Asset/data/asset/functions/object/1075.inferno_rush_arm/tick/hit.mcfunction index d30c33851d..c0e9a939f3 100644 --- a/Asset/data/asset/functions/object/1075.inferno_rush_arm/tick/hit.mcfunction +++ b/Asset/data/asset/functions/object/1075.inferno_rush_arm/tick/hit.mcfunction @@ -15,23 +15,11 @@ playsound entity.player.attack.knockback neutral @a ~ ~ ~ 1 1 -# 引数の設定 - #ダメージブレのための処理 - # 疑似乱数取得 - execute store result score $RandomDamage Temporary run function lib:random/ - # 剰余算する。追加ダメージ。 - scoreboard players operation $RandomDamage Temporary %= $11 Const - # 最低ダメージ設定 - scoreboard players add $RandomDamage Temporary 25 - #ダメージセット - execute store result storage api: Argument.Damage float 1 run scoreboard players get $RandomDamage Temporary - # 第一属性 - data modify storage api: Argument.AttackType set value "Physical" - # 第二属性 - data modify storage api: Argument.ElementType set value "Fire" -# 補正functionを実行 +# ダメージ + execute store result storage api: Argument.Damage float 1 run random value 25..35 + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" execute as @p[tag=1075.Owner] run function api:damage/modifier -# ダメージ実行 execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..2] run function api:damage/ function api:damage/reset @@ -39,7 +27,3 @@ data modify storage lib: Argument.VectorMagnitude set value -0.1 data modify storage lib: Argument.KnockbackResist set value true execute facing entity @p[tag=1075.Owner] eyes as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..2] run function lib:motion/ - - -# リセット - scoreboard players reset $RandomDamage Temporary diff --git a/Asset/data/asset/functions/object/1076.airlift/init/.mcfunction b/Asset/data/asset/functions/object/1076.airlift/init/.mcfunction new file mode 100644 index 0000000000..a2c08dbbb0 --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/init/.mcfunction @@ -0,0 +1,19 @@ +#> asset:object/1076.airlift/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1076/init + +#> prv +# @private + #declare tag SoundSource + +# エンジン音 + tag @s add SoundSource + execute as @a[distance=..32] at @s facing entity @e[type=item_display,tag=SoundSource,distance=..32,limit=1] eyes positioned ^ ^ ^0.1 run playsound minecraft:entity.bee.loop neutral @s ~ ~ ~ 3 0.68 1 + +# パーティクル + particle happy_villager ~ ~ ~ 1 1 1 0 50 + +# reset + tag @s remove SoundSource diff --git a/Asset/data/asset/functions/object/1076.airlift/register.mcfunction b/Asset/data/asset/functions/object/1076.airlift/register.mcfunction new file mode 100644 index 0000000000..45fd78f6ac --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/register.mcfunction @@ -0,0 +1,21 @@ +#> asset:object/1076.airlift/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1076/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 1076 +# フィールド(オプション) + data modify storage asset:object Field.OwnerID set value 0 + data modify storage asset:object Field.SummonRotation set value [0f,0f] diff --git a/Asset/data/asset/functions/object/1076.airlift/summon/.m.mcfunction b/Asset/data/asset/functions/object/1076.airlift/summon/.m.mcfunction new file mode 100644 index 0000000000..8a7ec8f36f --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/summon/.m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1076.airlift/summon/.m +# +# +# +# @within function asset:object/1076.airlift/summon/ + +# 元となるEntityを召喚する + $summon item_display ~ ~ ~ {Tags:["ObjectInit","Friend"],item_display:"thirdperson_righthand",transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0.27f,0f],scale:[1.5f,1.5f,1.5f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20499}},Rotation:$(SummonRotation),teleport_duration:1} diff --git a/Asset/data/asset/functions/object/1076.airlift/summon/.mcfunction b/Asset/data/asset/functions/object/1076.airlift/summon/.mcfunction new file mode 100644 index 0000000000..f2a5cf077c --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1076.airlift/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1076/summon + + +function asset:object/1076.airlift/summon/.m with storage asset:context this diff --git a/Asset/data/asset/functions/object/1076.airlift/summon/debug.mcfunction b/Asset/data/asset/functions/object/1076.airlift/summon/debug.mcfunction new file mode 100644 index 0000000000..2fcd989553 --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1076.airlift/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1076 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1076.airlift/tick/.mcfunction b/Asset/data/asset/functions/object/1076.airlift/tick/.mcfunction new file mode 100644 index 0000000000..e2cf1282ba --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/tick/.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1076.airlift/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1076/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# アプローチ開始 + execute if score @s General.Object.Tick matches 1..20 run function asset:object/1076.airlift/tick/approach + +# 着地タイミングで滑走動作へ + execute if score @s General.Object.Tick matches 21..60 run function asset:object/1076.airlift/tick/landing + +# 停止タイミングで補給 + execute if score @s General.Object.Tick matches 80 run function asset:object/1076.airlift/tick/supply + +# 消滅処理 + kill @s[scores={General.Object.Tick=150..}] diff --git a/Asset/data/asset/functions/object/1076.airlift/tick/approach.mcfunction b/Asset/data/asset/functions/object/1076.airlift/tick/approach.mcfunction new file mode 100644 index 0000000000..35dc8cf5f8 --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/tick/approach.mcfunction @@ -0,0 +1,13 @@ +#> asset:object/1076.airlift/tick/approach +# +# +# +# @within function asset:object/1076.airlift/tick/ + +# 移動 + execute rotated ~ 15 run tp @s ^ ^ ^0.25 + +# vfx +# particle + particle minecraft:dust 0.9 0.9 0.9 0.3 ^1.5 ^0.35 ^ 0 0 0 0 1 + particle minecraft:dust 0.9 0.9 0.9 0.3 ^-1.5 ^0.35 ^ 0 0 0 0 1 diff --git a/Asset/data/asset/functions/object/1076.airlift/tick/give_load.mcfunction b/Asset/data/asset/functions/object/1076.airlift/tick/give_load.mcfunction new file mode 100644 index 0000000000..39d81eaaaf --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/tick/give_load.mcfunction @@ -0,0 +1,15 @@ +#> asset:object/1076.airlift/tick/give_load +# +# +# +# @within function asset:object/1076.airlift/tick/supply + +# 回復薬をスポーン(これだけを拾いやすいように発動者側へ寄せて出す) + data modify storage api: Argument.ID set value 145 + data modify storage api: Argument.Important set value true + $execute facing entity @p[scores={UserID=$(OwnerID)}] feet positioned ^ ^ ^1 positioned ~ ~1 ~ run function api:artifact/spawn/from_id + +# 食料をスポーン + summon item ~ ~1 ~ {NoGravity:1b,Fire:2s,Glowing:1b,Age:-32768s,Invulnerable:1b,Item:{id:"minecraft:baked_potato",Count:5b}} + summon item ~ ~1 ~ {NoGravity:1b,Fire:2s,Glowing:1b,Age:-32768s,Invulnerable:1b,Item:{id:"minecraft:bread",Count:5b}} + summon item ~ ~1 ~ {NoGravity:1b,Fire:2s,Glowing:1b,Age:-32768s,Invulnerable:1b,Item:{id:"minecraft:coal",Count:5b}} diff --git a/Asset/data/asset/functions/object/1076.airlift/tick/heal.mcfunction b/Asset/data/asset/functions/object/1076.airlift/tick/heal.mcfunction new file mode 100644 index 0000000000..c8bb5832dc --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/tick/heal.mcfunction @@ -0,0 +1,13 @@ +#> asset:object/1076.airlift/tick/heal +# +# +# +# @within function asset:object/1076.airlift/tick/supply + +# 回復 +# HP回復 + function api:modifier/max_health/get + execute store result storage api: Argument.Heal double 0.0050 run data get storage api: Return.MaxHealth 100 + $execute as @p[scores={UserID=$(OwnerID)}] run function api:heal/modifier + function api:heal/ + function api:heal/reset diff --git a/Asset/data/asset/functions/object/1076.airlift/tick/landing.mcfunction b/Asset/data/asset/functions/object/1076.airlift/tick/landing.mcfunction new file mode 100644 index 0000000000..84c1660a76 --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/tick/landing.mcfunction @@ -0,0 +1,16 @@ +#> asset:object/1076.airlift/tick/landing +# +# +# +# @within function asset:object/1076.airlift/tick/ + +# 移動 + tp @s ~ ~ ~ ~ ~0.25 + execute at @s rotated ~ 0 run tp @s ^ ^ ^0.1 + +# vfx +# particle + particle minecraft:dust 0.9 0.9 0.9 0.3 ^1.5 ^0.35 ^ 0 0 0 0 1 + particle minecraft:dust 0.9 0.9 0.9 0.3 ^-1.5 ^0.35 ^ 0 0 0 0 1 + particle minecraft:dust 0.3 0.3 0.3 0.3 ^0.33 ^0.05 ^-0.1 0 0 0 0 1 + particle minecraft:dust 0.3 0.3 0.3 0.3 ^-0.33 ^0.05 ^-0.1 0 0 0 0 1 diff --git a/Asset/data/asset/functions/object/1076.airlift/tick/supply.mcfunction b/Asset/data/asset/functions/object/1076.airlift/tick/supply.mcfunction new file mode 100644 index 0000000000..e9f8f5ab85 --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/tick/supply.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/1076.airlift/tick/supply +# +# +# +# @within function asset:object/1076.airlift/tick/ + +# 回復 + execute as @a[distance=..15] run function asset:object/1076.airlift/tick/heal with storage asset:context this + +# 補給 + function asset:object/1076.airlift/tick/give_load with storage asset:context this + +# vfx + execute positioned ~ ~0.5 ~ run function asset:object/1076.airlift/tick/vfx diff --git a/Asset/data/asset/functions/object/1076.airlift/tick/vfx.mcfunction b/Asset/data/asset/functions/object/1076.airlift/tick/vfx.mcfunction new file mode 100644 index 0000000000..e6b20f75ab --- /dev/null +++ b/Asset/data/asset/functions/object/1076.airlift/tick/vfx.mcfunction @@ -0,0 +1,41 @@ +#> asset:object/1076.airlift/tick/vfx +# +# +# +# @within function asset:object/1076.airlift/tick/supply + +# particle + # [ImportKey]: NobwRALgngDgpmAXGANgSwHYIDRgK55oAmSYARgIwDsALAGYUU0C0ArPQBzM0DMVVzMlQCcLKgGNqHAIYUAbAAYATHOlhcGaQFsEyQFu+AAiXqwMaQCdtAZyThxAezwYISHgtx1z9rbbAA3aRQ8XXAADyR3MCgIgF8Y3Ah7XwCgkLBwxB4aDlxoxAU43Hs6Ois4F3zcMjgALzQ4cwjcNCsAIVr68wBRAEc8QJQoAGUzcTgSRDpAsriAXSA_3 + execute rotated ~0 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~12 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~24 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~36 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~48 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~60 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~72 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~84 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~96 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~108 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~120 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~132 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~144 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~156 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~168 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~180 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~192 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~204 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~216 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~228 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~240 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~252 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~264 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~276 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~288 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~300 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~312 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~324 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~336 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + execute rotated ~348 ~ run particle end_rod ^ ^ ^3 ^ ^ ^1000000000 0.0000000005 0 normal + +# 音 + playsound ogg:random.levelup player @a ~ ~ ~ 1 1.1 diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/init/.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/init/.mcfunction new file mode 100644 index 0000000000..525ade8c42 --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/init/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1085.sanguis_obj/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1085/init + +# 向きだけ合わせる + tp @s ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/register.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/register.mcfunction new file mode 100644 index 0000000000..81204140e3 --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1085.sanguis_obj/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1085/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 1085 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/summon/.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/summon/.mcfunction new file mode 100644 index 0000000000..6b69d37943 --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1085.sanguis_obj/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1085/summon + +# 元となるEntityを召喚する + summon marker ~ ~ ~ {Tags:["ObjectInit"]} diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/summon/debug.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/summon/debug.mcfunction new file mode 100644 index 0000000000..ccb8e8c28d --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1085.sanguis_obj/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1085 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/tick/.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/.mcfunction new file mode 100644 index 0000000000..c141ce8560 --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/.mcfunction @@ -0,0 +1,12 @@ +#> asset:object/1085.sanguis_obj/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1085/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 斬る + execute if score @s General.Object.Tick matches 2 run function asset:object/1085.sanguis_obj/tick/slash1 + execute if score @s General.Object.Tick matches 5 run function asset:object/1085.sanguis_obj/tick/slash2 diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/tick/damage.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/damage.mcfunction new file mode 100644 index 0000000000..f1ae79e9e6 --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/damage.mcfunction @@ -0,0 +1,28 @@ +#> asset:object/1085.sanguis_obj/tick/damage +# +# +# +# @within function asset:object/1085.sanguis_obj/tick/** + +#> Private +# @private + #declare score_holder $UserID + #declare tag 1085.Player + +# プレイヤー特定 + 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 1085.Player + scoreboard players reset $UserID Temporary +# ダメージ設定 + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "None" + execute if data storage asset:context this.AdditionalMPHeal run data modify storage api: Argument.AdditionalMPHeal set from storage asset:context this.AdditionalMPHeal +# modifier をかける + execute as @a[tag=1085.Player] run function api:damage/modifier +# ダメージを与える + function api:damage/ + function api:damage/reset + +# タグ削除 + tag @a[tag=1085.Player] remove 1085.Player diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/tick/slash1.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/slash1.mcfunction new file mode 100644 index 0000000000..f620be171e --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/slash1.mcfunction @@ -0,0 +1,18 @@ +#> asset:object/1085.sanguis_obj/tick/slash1 +# +# +# +# @within function asset:object/1085.sanguis_obj/tick/ + +# 演出 + playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 + playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.5 + playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 1.5 + +# 斬撃 + data modify storage api: Argument.ID set value 2001 + data modify storage api: Argument.FieldOverride set value {Color:14929614,Frames:[20335,20336,20337],Scale:[4f,4f,0.1f],Transformation:{left_rotation:[0.271f,-0.653f,0.271f,0.653f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f]}} + execute positioned ~ ~1 ~ run function api:object/summon + +# 攻撃判定 + execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..1.2] run function asset:object/1085.sanguis_obj/tick/damage diff --git a/Asset/data/asset/functions/object/1085.sanguis_obj/tick/slash2.mcfunction b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/slash2.mcfunction new file mode 100644 index 0000000000..0686344cd2 --- /dev/null +++ b/Asset/data/asset/functions/object/1085.sanguis_obj/tick/slash2.mcfunction @@ -0,0 +1,21 @@ +#> asset:object/1085.sanguis_obj/tick/slash2 +# +# +# +# @within function asset:object/1085.sanguis_obj/tick/ + +# 演出 + playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 + playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.5 + playsound minecraft:item.axe.scrape player @a ~ ~ ~ 1 1.5 + +# 斬撃 + data modify storage api: Argument.ID set value 2001 + data modify storage api: Argument.FieldOverride set value {Color:14929614,Frames:[20335,20336,20337],Scale:[4f,4f,0.1f],Transformation:{left_rotation:[-0.271f,-0.653f,-0.271f,0.653f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f]}} + execute positioned ~ ~1 ~ run function api:object/summon + +# 攻撃判定 + execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..1.2] run function asset:object/1085.sanguis_obj/tick/damage + +# 消える + kill @s diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/_index.d.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/_index.d.mcfunction new file mode 100644 index 0000000000..e0b47a3a54 --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:object/1086.lightning_exploit/_index.d +# @private + +#> tag +# @within function asset:object/1086.lightning_exploit/** + #declare tag 1086.Owner diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/init/.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/init/.mcfunction new file mode 100644 index 0000000000..f0b477923b --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/init/.mcfunction @@ -0,0 +1,12 @@ +#> asset:object/1086.lightning_exploit/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1086/init + +# 雪玉を殴る(描画更新で) + execute on vehicle run damage @s 1 + +# モーションでぶっ飛ばす。飛ぶのは下の雪玉 + data modify storage lib: Argument.VectorMagnitude set value 0.8 + execute on vehicle run function lib:motion/ diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/register.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/register.mcfunction new file mode 100644 index 0000000000..4d15750c5c --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1086.lightning_exploit/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1086/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 1086 +# フィールド(オプション) + data modify storage asset:object Field.AttackCount set value 15 diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/summon/.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/summon/.mcfunction new file mode 100644 index 0000000000..a95b2ffbbe --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/summon/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1086.lightning_exploit/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1086/summon + +# 元となるEntityを召喚する + 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/1086.lightning_exploit/summon/m with storage asset:temp Args + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/summon/debug.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/summon/debug.mcfunction new file mode 100644 index 0000000000..e606bf4d4a --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1086.lightning_exploit/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1086 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/summon/m.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/summon/m.mcfunction new file mode 100644 index 0000000000..6afd7fd650 --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/summon/m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1086.lightning_exploit/summon/m +# +# @input args: +# Rotation : float @ 2 +# @within function asset:object/1086.lightning_exploit/summon/ + +# 元となるEntityを召喚する + $summon snowball ~ ~ ~ {Rotation:$(Rotation),Silent:1b,Tags:["Uninterferable"],Passengers:[{id:"minecraft:item_display",interpolation_duration:1,teleport_duration:1,Tags:["ObjectInit"],item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20409}}}],Item:{id:"minecraft:stone",Count:1b,tag:{CustomModelData:20019}}} diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/tick/.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/.mcfunction new file mode 100644 index 0000000000..08af67aa4d --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/.mcfunction @@ -0,0 +1,15 @@ +#> asset:object/1086.lightning_exploit/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1086/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 雪玉がいない場合ヒット + execute unless predicate lib:is_vehicle run function asset:object/1086.lightning_exploit/tick/landing/main + +# 消滅処理 + execute if score @s General.Object.Tick matches 140.. on vehicle run kill @s + execute if score @s General.Object.Tick matches 140.. run kill @s diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/tick/landing/main.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/landing/main.mcfunction new file mode 100644 index 0000000000..8e1c72d051 --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/landing/main.mcfunction @@ -0,0 +1,40 @@ +#> asset:object/1086.lightning_exploit/tick/landing/main +# +# +# +# @within function asset:object/1086.lightning_exploit/tick/ + +#> private +# @private + #declare score_holder $OwnerID + +# 紐づけ + execute store result score $OwnerID Temporary run data get storage asset:context this.UserID + execute as @a if score @s UserID = $OwnerID Temporary run tag @s add 1086.Owner + scoreboard players reset $OwnerID Temporary + +# 演出 + particle dust 1 0.941 0.102 1 ~ ~ ~ 0.5 0.5 0.5 0 30 + function asset:object/1086.lightning_exploit/tick/vfx/main + function asset:object/1086.lightning_exploit/tick/vfx/main + playsound minecraft:block.chain.place player @a ~ ~ ~ 1 2 + playsound minecraft:item.flintandsteel.use player @a ~ ~ ~ 1 2 + playsound minecraft:entity.generic.hurt player @a ~ ~ ~ 1 1.3 + playsound minecraft:entity.breeze.death player @a ~ ~ ~ 1 1 + + +# ダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Thunder" +# 補正functionを実行 + execute as @a[tag=1086.Owner,sort=nearest,limit=1] run function api:damage/modifier +# ダメージを与える + execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..3] run function api:damage/ +# リセット + function api:damage/reset + tag @a[tag=1086.Owner] remove 1086.Owner + +# 残り攻撃回数が0になったら消える + execute store result storage asset:context this.AttackCount int 0.9999999999 run data get storage asset:context this.AttackCount + execute if data storage asset:context this{AttackCount:0} run kill @s diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/main.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/main.mcfunction new file mode 100644 index 0000000000..f6b0df38cc --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/main.mcfunction @@ -0,0 +1,15 @@ +#> asset:object/1086.lightning_exploit/tick/vfx/main +# +# +# +# @within function asset:object/1086.lightning_exploit/tick/landing/main + +# ランダムにする + execute store result storage asset:temp Args.X int 1 run random value 0..359 + execute store result storage asset:temp Args.Y int 1 run random value 0..359 + +# + function asset:object/1086.lightning_exploit/tick/vfx/vfx.m with storage asset:temp Args + +# リセット + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/particle.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/particle.mcfunction new file mode 100644 index 0000000000..86d6ec03d7 --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/particle.mcfunction @@ -0,0 +1,68 @@ +#> asset:object/1086.lightning_exploit/tick/vfx/particle +# +# +# +# @within function asset:object/1086.lightning_exploit/tick/vfx/vfx.m + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmAIykCslcATAGwBGAtEwwwBxsAsfAGYBONsOaC2KSgENSABhGCAzAHZKwsAQB2MgLYJkgMMUABJS1gYMjPoDOScCgD2hbRCRN5BFHDdwMDmAAbjLYhIbgAB5IXmBQMQC+CQQ2pGiE9ojKAHQ0BLYQ1u6IsXDY2GgwtoaU8rEYToUQhrFotgCi5ZXV7QCOhKHYUADKVj7kiIKh1UkAukA_3 +# 円 1 +particle dust 0.808 0.973 1 1 ^0 ^ ^-3.5 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^0.36585 ^ ^-3.48083 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^0.72769 ^ ^-3.42352 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^1.08156 ^ ^-3.3287 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^1.42358 ^ ^-3.19741 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^1.75 ^ ^-3.03109 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.05725 ^ ^-2.83156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.34196 ^ ^-2.60101 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.60101 ^ ^-2.34196 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.83156 ^ ^-2.05725 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.03109 ^ ^-1.75 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.19741 ^ ^-1.42358 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.3287 ^ ^-1.08156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.42352 ^ ^-0.72769 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.48083 ^ ^-0.36585 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.5 ^ ^0 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.48083 ^ ^0.36585 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.42352 ^ ^0.72769 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.3287 ^ ^1.08156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.19741 ^ ^1.42358 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^3.03109 ^ ^1.75 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.83156 ^ ^2.05725 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.60101 ^ ^2.34196 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.34196 ^ ^2.60101 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^2.05725 ^ ^2.83156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^1.75 ^ ^3.03109 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^1.42358 ^ ^3.19741 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^1.08156 ^ ^3.3287 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^0.72769 ^ ^3.42352 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^0.36585 ^ ^3.48083 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^0 ^ ^3.5 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-0.36585 ^ ^3.48083 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-0.72769 ^ ^3.42352 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-1.08156 ^ ^3.3287 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-1.42358 ^ ^3.19741 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-1.75 ^ ^3.03109 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.05725 ^ ^2.83156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.34196 ^ ^2.60101 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.60101 ^ ^2.34196 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.83156 ^ ^2.05725 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.03109 ^ ^1.75 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.19741 ^ ^1.42358 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.3287 ^ ^1.08156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.42352 ^ ^0.72769 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.48083 ^ ^0.36585 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.5 ^ ^0 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.48083 ^ ^-0.36585 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.42352 ^ ^-0.72769 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.3287 ^ ^-1.08156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.19741 ^ ^-1.42358 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-3.03109 ^ ^-1.75 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.83156 ^ ^-2.05725 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.60101 ^ ^-2.34196 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.34196 ^ ^-2.60101 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-2.05725 ^ ^-2.83156 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-1.75 ^ ^-3.03109 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-1.42358 ^ ^-3.19741 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-1.08156 ^ ^-3.3287 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-0.72769 ^ ^-3.42352 0 0 0 0 1 +particle dust 0.808 0.973 1 1 ^-0.36585 ^ ^-3.48083 0 0 0 0 1 diff --git a/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/vfx.m.mcfunction b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/vfx.m.mcfunction new file mode 100644 index 0000000000..dadd07a0dd --- /dev/null +++ b/Asset/data/asset/functions/object/1086.lightning_exploit/tick/vfx/vfx.m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1086.lightning_exploit/tick/vfx/vfx.m +# +# +# +# @within function asset:object/1086.lightning_exploit/tick/vfx/main + +$execute rotated $(X) $(Y) run function asset:object/1086.lightning_exploit/tick/vfx/particle diff --git a/Asset/data/asset/functions/object/1089.cosmo_beam/register.mcfunction b/Asset/data/asset/functions/object/1089.cosmo_beam/register.mcfunction new file mode 100644 index 0000000000..5873fc26ff --- /dev/null +++ b/Asset/data/asset/functions/object/1089.cosmo_beam/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1089.cosmo_beam/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1089/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 1089 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1089.cosmo_beam/summon/.mcfunction b/Asset/data/asset/functions/object/1089.cosmo_beam/summon/.mcfunction new file mode 100644 index 0000000000..1ff1499853 --- /dev/null +++ b/Asset/data/asset/functions/object/1089.cosmo_beam/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1089.cosmo_beam/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1089/summon + +# 元となるEntityを召喚する + summon item_display ~ ~ ~ {Tags:["ObjectInit"],brightness:{sky:15,block:15},interpolation_duration:1,start_interpolation:0,transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[0f,400f,0f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20384}}} diff --git a/Asset/data/asset/functions/object/1089.cosmo_beam/summon/debug.mcfunction b/Asset/data/asset/functions/object/1089.cosmo_beam/summon/debug.mcfunction new file mode 100644 index 0000000000..47a34d889b --- /dev/null +++ b/Asset/data/asset/functions/object/1089.cosmo_beam/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1089.cosmo_beam/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1089 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1089.cosmo_beam/tick/.mcfunction b/Asset/data/asset/functions/object/1089.cosmo_beam/tick/.mcfunction new file mode 100644 index 0000000000..85e939139c --- /dev/null +++ b/Asset/data/asset/functions/object/1089.cosmo_beam/tick/.mcfunction @@ -0,0 +1,25 @@ +#> asset:object/1089.cosmo_beam/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1089/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + + execute if score @s General.Object.Tick matches 5 run data modify entity @s start_interpolation set value 0 + execute if score @s General.Object.Tick matches 5 run data modify entity @s transformation.scale set value [0.1f,400f,0.1f] + +# レーザー出る + execute if score @s General.Object.Tick matches 50 run data modify entity @s interpolation_duration set value 3 + execute if score @s General.Object.Tick matches 50 run data modify entity @s start_interpolation set value 0 + execute if score @s General.Object.Tick matches 50 run data modify entity @s transformation.scale set value [19f,400f,19f] + execute if score @s General.Object.Tick matches 50 positioned ~-8 ~-105 ~-8 run playsound minecraft:block.end_portal.spawn player @a[dx=15,dy=200,dz=15] ~ ~ ~ 1 1 1 + execute if score @s General.Object.Tick matches 50..60 run function asset:object/1089.cosmo_beam/tick/shot + + execute if score @s General.Object.Tick matches 65 run data modify entity @s interpolation_duration set value 30 + execute if score @s General.Object.Tick matches 65 run data modify entity @s start_interpolation set value 0 + execute if score @s General.Object.Tick matches 65 run data modify entity @s transformation.scale set value [0f,400f,0f] + +# 消滅処理 + kill @s[scores={General.Object.Tick=95..}] diff --git a/Asset/data/asset/functions/object/1089.cosmo_beam/tick/angel_damage.mcfunction b/Asset/data/asset/functions/object/1089.cosmo_beam/tick/angel_damage.mcfunction new file mode 100644 index 0000000000..f25f10cd5e --- /dev/null +++ b/Asset/data/asset/functions/object/1089.cosmo_beam/tick/angel_damage.mcfunction @@ -0,0 +1,29 @@ +#> asset:object/1089.cosmo_beam/tick/angel_damage +# +# +# +# @within function asset:object/1089.cosmo_beam/tick/shot + +#> Private +# @private + #declare score_holder $UserID + #declare score_holder $Count + #declare score_holder $Damage + +# 数をカウントして、ダメージを割る + execute store result score $Count Temporary positioned ~-8 ~-105 ~-8 if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,scores={MobID=0..},dx=16,dy=200,dz=16] + execute store result score $Damage Temporary run data get storage asset:context this.Damage + scoreboard players operation $Damage Temporary /= $Count Temporary +# 更に10で割る + scoreboard players operation $Damage Temporary /= $10 Const + execute store result storage api: Argument.Damage float 1 run scoreboard players get $Damage Temporary +# 属性とか + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Tunder" + execute as @a if score @s UserID = $UserID Temporary run function api:damage/modifier +# ダメージ + execute positioned ~-8 ~-105 ~-8 as @e[type=#lib:living,tag=Enemy,tag=Enemy.Boss,tag=!Uninterferable,dx=16,dy=200,dz=16] run function api:damage/ +# リセット + function api:damage/reset + scoreboard players reset $Count + scoreboard players reset $Damage diff --git a/Asset/data/asset/functions/object/1089.cosmo_beam/tick/shot.mcfunction b/Asset/data/asset/functions/object/1089.cosmo_beam/tick/shot.mcfunction new file mode 100644 index 0000000000..96f4fd23fd --- /dev/null +++ b/Asset/data/asset/functions/object/1089.cosmo_beam/tick/shot.mcfunction @@ -0,0 +1,46 @@ +#> asset:object/1089.cosmo_beam/tick/shot +# +# +# +# @within function asset:object/1089.cosmo_beam/tick/ + +#> Private +# @private + #declare score_holder $UserID + #declare score_holder $Count + #declare score_holder $Damage + + +# 演出 + execute positioned ~-8 ~-105 ~-8 run playsound minecraft:entity.generic.explode player @a[dx=15,dy=200,dz=15] ~ ~ ~ 1 2 1 + particle explosion ~ ~4 ~ 3 4 3 0 5 + particle flash ~ ~4 ~ 3 4 3 0 5 + particle wax_off ~ ~5 ~ 4 10 4 0 100 + +# 画面エフェクト + execute positioned ~-8 ~-105 ~-8 as @a[dx=15,dy=200,dz=15] run title @s times 0 8 20 + execute positioned ~-8 ~-105 ~-8 as @a[dx=15,dy=200,dz=15] run title @s title {"text":"\uE010","font":"screen_effect","color":"#E8E8E8"} + +# ダメージ設定 + + +# 数をカウントして、ダメージを割る + execute store result score $Count Temporary positioned ~-8 ~-105 ~-8 if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,scores={MobID=0..},dx=16,dy=200,dz=16] + execute store result score $Damage Temporary run data get storage asset:context this.Damage + scoreboard players operation $Damage Temporary /= $Count Temporary + # debug tellraw @a {"score":{"name":"$Damage","objective":"Temporary"}} + execute store result storage api: Argument.Damage float 1 run scoreboard players get $Damage Temporary +# 属性とか + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Tunder" + execute as @a if score @s UserID = $UserID Temporary run function api:damage/modifier + +# ダメージ + execute positioned ~-8 ~-105 ~-8 as @e[type=#lib:living,tag=Enemy,tag=!Enemy.Boss,tag=!Uninterferable,dx=16,dy=200,dz=16] run function api:damage/ +# リセット + function api:damage/reset + scoreboard players reset $Count + scoreboard players reset $Damage + +# もし天使がいるなら、天使には軽減したダメージを与える + execute positioned ~-8 ~-105 ~-8 if entity @e[type=#lib:living,tag=Enemy.Boss,tag=!Uninterferable,dx=16,dy=200,dz=16] run function asset:object/1089.cosmo_beam/tick/angel_damage diff --git a/Asset/data/asset/functions/object/1090.cosmo_text/register.mcfunction b/Asset/data/asset/functions/object/1090.cosmo_text/register.mcfunction new file mode 100644 index 0000000000..357bc7d022 --- /dev/null +++ b/Asset/data/asset/functions/object/1090.cosmo_text/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1090.cosmo_text/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1090/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 1090 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1090.cosmo_text/summon/.mcfunction b/Asset/data/asset/functions/object/1090.cosmo_text/summon/.mcfunction new file mode 100644 index 0000000000..07c4a3c6d5 --- /dev/null +++ b/Asset/data/asset/functions/object/1090.cosmo_text/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1090.cosmo_text/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1090/summon + +# 元となるEntityを召喚する + summon text_display ~ ~ ~ {billboard:"center",default_background:0b,shadow:0b,alignment:"center",Tags:["ObjectInit"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,1f,0f],scale:[1f,1f,1f]},text:'[{"text":"WARNING","color":"aqua","bold":true,"underlined":true},{"text":"\\n(๑˃́ꇴ˂̀๑)","color":"white","bold":false,"italic":false,"underlined":false},{"text":"\\n視界が吹き飛びます!","color":"white","bold":false,"italic":false},{"text":"\\nWARNING","color":"aqua","bold":true,"underlined":true}]'} diff --git a/Asset/data/asset/functions/object/1090.cosmo_text/summon/debug.mcfunction b/Asset/data/asset/functions/object/1090.cosmo_text/summon/debug.mcfunction new file mode 100644 index 0000000000..e4d1ee3843 --- /dev/null +++ b/Asset/data/asset/functions/object/1090.cosmo_text/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1090.cosmo_text/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1090 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1090.cosmo_text/tick/.mcfunction b/Asset/data/asset/functions/object/1090.cosmo_text/tick/.mcfunction new file mode 100644 index 0000000000..a4c8a75b0e --- /dev/null +++ b/Asset/data/asset/functions/object/1090.cosmo_text/tick/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1090.cosmo_text/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1090/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 消滅処理 + kill @s[scores={General.Object.Tick=50..}] diff --git a/Asset/data/asset/functions/object/1094.aa_missile/register.mcfunction b/Asset/data/asset/functions/object/1094.aa_missile/register.mcfunction index 8636869b81..342e98aa58 100644 --- a/Asset/data/asset/functions/object/1094.aa_missile/register.mcfunction +++ b/Asset/data/asset/functions/object/1094.aa_missile/register.mcfunction @@ -20,5 +20,5 @@ # フィールド(オプション)  data modify storage asset:object Field.TargetID set value 0 data modify storage asset:object Field.UserID set value 0 - data modify storage asset:object Field.MaxDamage set value 3000f - data modify storage asset:object Field.InitMotionDamage set value 600f + data modify storage asset:object Field.MaxDamage set value 0f + data modify storage asset:object Field.InitMotionDamage set value 0f diff --git a/Asset/data/asset/functions/object/1095.ag_missile/register.mcfunction b/Asset/data/asset/functions/object/1095.ag_missile/register.mcfunction index 1a1bf955b3..4ccec73af8 100644 --- a/Asset/data/asset/functions/object/1095.ag_missile/register.mcfunction +++ b/Asset/data/asset/functions/object/1095.ag_missile/register.mcfunction @@ -19,5 +19,5 @@ # フィールド(オプション) data modify storage asset:object Field.TargetID set value 0 data modify storage asset:object Field.UserID set value 0 - data modify storage asset:object Field.MaxDamage set value 4000f - data modify storage asset:object Field.InitMotionDamage set value 800f + data modify storage asset:object Field.MaxDamage set value 0f + data modify storage asset:object Field.InitMotionDamage set value 0f diff --git a/Asset/data/asset/functions/object/1095.ag_missile/tick/.mcfunction b/Asset/data/asset/functions/object/1095.ag_missile/tick/.mcfunction index 839b5d0679..d206c0d8d7 100644 --- a/Asset/data/asset/functions/object/1095.ag_missile/tick/.mcfunction +++ b/Asset/data/asset/functions/object/1095.ag_missile/tick/.mcfunction @@ -4,6 +4,12 @@ # # @within asset:object/alias/1095/tick +#> seeker_check +# @within +# function asset:object/1095.ag_missile/tick/ +# function asset:object/1095.ag_missile/tick/target_check + #declare tag TargetOutOfSight + # Tick加算 scoreboard players add @s General.Object.Tick 1 @@ -13,9 +19,13 @@ # 加速開始音 execute if score @s General.Object.Tick matches 7 run playsound minecraft:entity.breeze.death neutral @a[distance=..16] ~ ~ ~ 2 0.5 1 +# 上昇モーションを終了させるべきかどうかのチェック + function asset:object/1095.ag_missile/tick/target_check with storage asset:context this + # 加速時の移動 - execute if score @s General.Object.Tick matches 7..12 run function asset:object/1095.ag_missile/tick/accel_motion1 with storage asset:context this - execute if score @s General.Object.Tick matches 13..26 run function asset:object/1095.ag_missile/tick/accel_motion2 with storage asset:context this + execute unless entity @s[tag=TargetOutOfSight] if score @s General.Object.Tick matches 7..12 run function asset:object/1095.ag_missile/tick/accel_motion1 with storage asset:context this + execute unless entity @s[tag=TargetOutOfSight] if score @s General.Object.Tick matches 13..26 run function asset:object/1095.ag_missile/tick/accel_motion2 with storage asset:context this + execute if entity @s[tag=TargetOutOfSight] if score @s General.Object.Tick matches 7..26 run function asset:object/1095.ag_missile/tick/accel_motion3 with storage asset:context this # 加速後の移動 execute if score @s General.Object.Tick matches 27.. run function asset:object/1095.ag_missile/tick/inertia_motion with storage asset:context this diff --git a/Asset/data/asset/functions/object/1095.ag_missile/tick/accel_motion3.mcfunction b/Asset/data/asset/functions/object/1095.ag_missile/tick/accel_motion3.mcfunction new file mode 100644 index 0000000000..e59826cc87 --- /dev/null +++ b/Asset/data/asset/functions/object/1095.ag_missile/tick/accel_motion3.mcfunction @@ -0,0 +1,12 @@ +#> asset:object/1095.ag_missile/tick/accel_motion3 +# +# +# +# @within function asset:object/1095.ag_missile/tick/ + +# 移動 + $execute facing entity @e[type=#lib:living,scores={MobUUID=$(TargetID)},distance=..128] eyes run tp @s ^ ^ ^0.7 ~ ~ + +# particle + particle minecraft:cloud ^ ^ ^-1 0.1 0.1 0.1 0.03 1 + particle minecraft:flame ^ ^ ^-1 0.1 0.1 0.1 0.001 1 diff --git a/Asset/data/asset/functions/object/1095.ag_missile/tick/target_check.mcfunction b/Asset/data/asset/functions/object/1095.ag_missile/tick/target_check.mcfunction new file mode 100644 index 0000000000..cb8f5eb61f --- /dev/null +++ b/Asset/data/asset/functions/object/1095.ag_missile/tick/target_check.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1095.ag_missile/tick/target_check +# +# ターゲットが視界外にいるかチェック、視界外だったら強制的に当たりに行くフラグをたてる +# +# @within function asset:object/1095.ag_missile/tick/ + +# 対象が左右45度の角度内にいるかチェック + $execute facing entity @e[type=#lib:living,scores={MobUUID=$(TargetID)},distance=..128,limit=1] eyes positioned ^ ^ ^4 rotated as @s rotated ~45 0 positioned ^-3 ^ ^ unless entity @s[distance=..5] run tag @s add TargetOutOfSight + $execute facing entity @e[type=#lib:living,scores={MobUUID=$(TargetID)},distance=..128,limit=1] eyes positioned ^ ^ ^4 rotated as @s rotated ~-45 0 positioned ^3 ^ ^ unless entity @s[distance=..5] run tag @s add TargetOutOfSight diff --git a/Asset/data/asset/functions/object/1098.alchemy_laser/init/.mcfunction b/Asset/data/asset/functions/object/1098.alchemy_laser/init/.mcfunction new file mode 100644 index 0000000000..ffab1b94e0 --- /dev/null +++ b/Asset/data/asset/functions/object/1098.alchemy_laser/init/.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/1098.alchemy_laser/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1098/init + +# normalize + tp @s ~ ~ ~ ~ 0 + +# 範囲表示 + execute at @s positioned ~ ~0.5 ~ run function asset:object/1098.alchemy_laser/init/area + +# サウンド + playsound entity.zombie_villager.converted hostile @a[distance=..32] ~ ~ ~ 1 2 0 diff --git a/Asset/data/asset/functions/object/1098.alchemy_laser/init/area.mcfunction b/Asset/data/asset/functions/object/1098.alchemy_laser/init/area.mcfunction new file mode 100644 index 0000000000..c36b359abf --- /dev/null +++ b/Asset/data/asset/functions/object/1098.alchemy_laser/init/area.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1098.alchemy_laser/init/area +# +# 範囲表示 +# +# @within function asset:object/1098.alchemy_laser/init/ + +# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmAGwoAMAhgBylwBmAtPQEYCsbALAEYaAJjYBOOAGZ2dUjx5walAQHYVYAgDs6AWwTJAYYoACARrAw6GXQGck4FAHtCmiEgHCCKOC7gY7YADc6bEJ9cAAPJBoCKCiAXziCK1I0QltEAQA6bgJrCEtXRGiwOGxsNBhrfSFijAd8iH1itGsAUTKKqtaAR0Jg7CgAZQsvckQWYKqEgF0gA_3 +# 円 1 + particle end_rod ^0 ^ ^-1.5 0 0 0 0 1 + particle end_rod ^0.75 ^ ^-1.29904 0 0 0 0 1 + particle end_rod ^1.29904 ^ ^-0.75 0 0 0 0 1 + particle end_rod ^1.5 ^ ^0 0 0 0 0 1 + particle end_rod ^1.29904 ^ ^0.75 0 0 0 0 1 + particle end_rod ^0.75 ^ ^1.29904 0 0 0 0 1 + particle end_rod ^0 ^ ^1.5 0 0 0 0 1 + particle end_rod ^-0.75 ^ ^1.29904 0 0 0 0 1 + particle end_rod ^-1.29904 ^ ^0.75 0 0 0 0 1 + particle end_rod ^-1.5 ^ ^0 0 0 0 0 1 + particle end_rod ^-1.29904 ^ ^-0.75 0 0 0 0 1 + particle end_rod ^-0.75 ^ ^-1.29904 0 0 0 0 1 diff --git a/Asset/data/asset/functions/object/1098.alchemy_laser/register.mcfunction b/Asset/data/asset/functions/object/1098.alchemy_laser/register.mcfunction new file mode 100644 index 0000000000..11ba5ddd5d --- /dev/null +++ b/Asset/data/asset/functions/object/1098.alchemy_laser/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1098.alchemy_laser/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1098/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 1098 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1098.alchemy_laser/summon/.mcfunction b/Asset/data/asset/functions/object/1098.alchemy_laser/summon/.mcfunction new file mode 100644 index 0000000000..004d898d4e --- /dev/null +++ b/Asset/data/asset/functions/object/1098.alchemy_laser/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1098.alchemy_laser/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1098/summon + +# 元となるEntityを召喚する + summon item_display ~ ~ ~ {Tags:["ObjectInit"],brightness:{sky:15,block:15},interpolation_duration:1,transformation:{left_rotation:[0.707f,0f,0f,0.707f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[0f,0f,20f]},item:{id:"minecraft:leather_horse_armor",Count:1b,tag:{display:{color:16711610},CustomModelData:20376}}} diff --git a/Asset/data/asset/functions/object/1098.alchemy_laser/summon/debug.mcfunction b/Asset/data/asset/functions/object/1098.alchemy_laser/summon/debug.mcfunction new file mode 100644 index 0000000000..7ef03784c4 --- /dev/null +++ b/Asset/data/asset/functions/object/1098.alchemy_laser/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1098.alchemy_laser/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1098 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1098.alchemy_laser/tick/.mcfunction b/Asset/data/asset/functions/object/1098.alchemy_laser/tick/.mcfunction new file mode 100644 index 0000000000..34824f67b2 --- /dev/null +++ b/Asset/data/asset/functions/object/1098.alchemy_laser/tick/.mcfunction @@ -0,0 +1,17 @@ +#> asset:object/1098.alchemy_laser/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1098/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 発動 + execute if score @s General.Object.Tick matches 10 run function asset:object/1098.alchemy_laser/tick/shot + +# 消える演出 + execute if score @s General.Object.Tick matches 15 run data merge entity @s {interpolation_duration:5,start_interpolation:0,transformation:{left_rotation:[0.707f,0f,0f,0.707f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[0f,0f,20f]}} + +# 消滅処理 + kill @s[scores={General.Object.Tick=21..}] diff --git a/Asset/data/asset/functions/object/1098.alchemy_laser/tick/shot.mcfunction b/Asset/data/asset/functions/object/1098.alchemy_laser/tick/shot.mcfunction new file mode 100644 index 0000000000..9926fc7c56 --- /dev/null +++ b/Asset/data/asset/functions/object/1098.alchemy_laser/tick/shot.mcfunction @@ -0,0 +1,25 @@ +#> asset:object/1098.alchemy_laser/tick/shot +# +# 発動 +# +# @within function asset:object/1098.alchemy_laser/tick/ + +# 演出 + playsound minecraft:block.respawn_anchor.deplete hostile @a ~ ~ ~ 1 2 + particle flash ~ ~ ~ 0 0 0 0 1 + +# 演出 + data merge entity @s {start_interpolation:0,transformation:{left_rotation:[0.707f,0f,0f,0.707f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[3f,3f,20f]}} + +# ダメージ適用 + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Magic" + data modify storage api: Argument.ElementType set value "None" + data modify storage api: Argument.AdditionalMPHeal set from storage asset:context this.AdditionalMPHeal + execute store result score $UserID Temporary run data get storage asset:context this.UserID + execute as @a if score @s UserID = $UserID Temporary run function api:damage/modifier + execute as @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..1.5] run function api:damage/ + function api:damage/reset + +# リセット + scoreboard players reset $UserID Temporary diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/_index.d.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/_index.d.mcfunction new file mode 100644 index 0000000000..b77a1c39fe --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/_index.d.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1099.conviction_sword/_index.d +# @private + +#> tag +# @within function asset:object/1099.conviction_sword/** + #declare score_holder $UserID + #declare tag Owner diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/register.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/register.mcfunction new file mode 100644 index 0000000000..8f1c85a101 --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/register.mcfunction @@ -0,0 +1,21 @@ +#> asset:object/1099.conviction_sword/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1099/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 1099 +# フィールド(オプション) + data modify storage asset:object Field.Damage set value {Sword:1f,Shot:1f} + data modify storage asset:object Field.UserID set value -1 diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/summon/.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/summon/.mcfunction new file mode 100644 index 0000000000..dfe2178460 --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1099.conviction_sword/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1099/summon + +# 元となるEntityを召喚する + summon item_display ~ ~ ~ {Tags:["ObjectInit"],teleport_duration:1,transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,4f,0f],scale:[5f,5f,5f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20349}}} diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/summon/debug.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/summon/debug.mcfunction new file mode 100644 index 0000000000..22b020d9f4 --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1099.conviction_sword/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1099 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/tick/.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/tick/.mcfunction new file mode 100644 index 0000000000..fef9db1c82 --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/tick/.mcfunction @@ -0,0 +1,32 @@ +#> asset:object/1099.conviction_sword/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1099/tick + +#> Private +# @private + #declare score_holder $Interval + +# 使用者とTagで紐付け + 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 + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 持ち主を起点に回転する + execute positioned as @p[tag=Owner] run tp @s ~ ~ ~ ~20 ~ + +# 一定tick毎にダメージ + scoreboard players operation $Interval Temporary = @s General.Object.Tick + scoreboard players operation $Interval Temporary %= $4 Const + execute if score $Interval Temporary matches 0 at @s run function asset:object/1099.conviction_sword/tick/damage + scoreboard players reset $Interval Temporary + +# 消滅 & 弾召喚 + execute if score @s General.Object.Tick matches 60.. at @s run function asset:object/1099.conviction_sword/tick/kill + +# リセット + scoreboard players reset $UserID Temporary + tag @p[tag=Owner] remove Owner diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/tick/damage.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/tick/damage.mcfunction new file mode 100644 index 0000000000..dbe3c12edf --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/tick/damage.mcfunction @@ -0,0 +1,18 @@ +#> asset:object/1099.conviction_sword/tick/damage +# +# ダメージ処理 +# +# @within function asset:object/1099.conviction_sword/tick/ + +# 演出 + playsound minecraft:item.trident.return player @a ~ ~ ~ 1 2 + playsound minecraft:entity.player.attack.sweep player @a ~ ~ ~ 1 0 + playsound minecraft:item.trident.throw player @a ~ ~ ~ 1 0.6 + +# ダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage.Sword + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "None" + execute as @p[tag=Owner] run function api:damage/modifier + execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..4] run function api:damage/ + function api:damage/reset diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/tick/kill.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/tick/kill.mcfunction new file mode 100644 index 0000000000..869f1fb198 --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/tick/kill.mcfunction @@ -0,0 +1,22 @@ +#> asset:object/1099.conviction_sword/tick/kill +# +# 消滅時の処理 +# +# @within function asset:object/1099.conviction_sword/tick/ + +# 演出 + playsound minecraft:item.trident.thunder player @a ~ ~ ~ 4 1 + playsound minecraft:block.respawn_anchor.set_spawn player @a ~ ~ ~ 4 0.7 + +# 弾を召喚 + execute rotated ~ 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + execute rotated ~45 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + execute rotated ~90 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + execute rotated ~135 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + execute rotated ~180 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + execute rotated ~225 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + execute rotated ~270 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + execute rotated ~315 0 positioned ^ ^1.3 ^2 run function asset:object/1099.conviction_sword/tick/shot_summon + +# 消滅 + kill @s diff --git a/Asset/data/asset/functions/object/1099.conviction_sword/tick/shot_summon.mcfunction b/Asset/data/asset/functions/object/1099.conviction_sword/tick/shot_summon.mcfunction new file mode 100644 index 0000000000..7e68cbb72d --- /dev/null +++ b/Asset/data/asset/functions/object/1099.conviction_sword/tick/shot_summon.mcfunction @@ -0,0 +1,13 @@ +#> asset:object/1099.conviction_sword/tick/shot_summon +# +# 弾召喚の処理 +# +# @within function asset:object/1099.conviction_sword/tick/kill + +# 召喚のデータ設定 + data modify storage api: Argument.ID set value 1100 + data modify storage api: Argument.FieldOverride.Damage set from storage asset:context this.Damage.Shot + data modify storage api: Argument.FieldOverride.UserID set from storage asset:context this.UserID + +# Ownerと真逆の方向を見て召喚 + execute facing entity @p[tag=Owner] eyes facing ^ ^ ^-1 run function api:object/summon diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/_index.d.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/_index.d.mcfunction new file mode 100644 index 0000000000..053c85fd96 --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:object/1100.conviction_shot/_index.d +# @private + +#> tag +# @within function asset:object/1100.conviction_shot/** + #declare tag 1100.Damage diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/detect_hit_entity/.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/detect_hit_entity/.mcfunction new file mode 100644 index 0000000000..55c46f4a14 --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/detect_hit_entity/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1100.conviction_shot/detect_hit_entity/ +# +# 継承先などから実行される処理 +# +# @within asset:object/alias/1100/detect_hit_entity + +# Tagがあればヒット判定 割と大きめ + execute if entity @s[tag=1100.Damage] positioned ~-0.75 ~-0.75 ~-0.75 if entity @e[type=#lib:living,type=!player,tag=Enemy,tag=!Uninterferable,dx=0.5,dy=0.5,dz=0.5,limit=1] run data modify storage asset:context IsHitEntity set value true diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/hit_entity/.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/hit_entity/.mcfunction new file mode 100644 index 0000000000..0cf1b61a5b --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/hit_entity/.mcfunction @@ -0,0 +1,23 @@ +#> asset:object/1100.conviction_shot/hit_entity/ +# +# 継承先などから実行される処理 +# +# @within asset:object/alias/1100/hit_entity + +#> Private +# @private + #declare score_holder $UserID + +# User特定 + execute store result score $UserID Temporary run data get storage asset:context this.UserID + +# ダメージ + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "None" + execute as @a if score @s UserID = $UserID Temporary run function api:damage/modifier + execute positioned ~-0.75 ~-0.75 ~-0.75 as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=0.5,dy=0.5,dz=0.5,sort=nearest,limit=1] run function api:damage/ + function api:damage/reset + +# リセット + scoreboard players reset $UserID Temporary diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/init/.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/init/.mcfunction new file mode 100644 index 0000000000..8f97222e1c --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/init/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1100.conviction_shot/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1100/init + +# vfx + particle minecraft:soul ~ ~ ~ 0 0 0 0.05 20 normal + +# super.init + function asset:object/super.init diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/register.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/register.mcfunction new file mode 100644 index 0000000000..5f74e77bf6 --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/register.mcfunction @@ -0,0 +1,24 @@ +#> asset:object/1100.conviction_shot/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1100/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 1100 +# フィールド(オプション) + data modify storage asset:object Field.Speed set value 1 + data modify storage asset:object Field.Range set value 60 + data modify storage asset:object Field.MovePerStep set value 0.25 + data modify storage asset:object Field.Damage set value 1f + data modify storage asset:object Field.UserID set value -1 diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/summon/.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/summon/.mcfunction new file mode 100644 index 0000000000..4cc9064aff --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/summon/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1100.conviction_shot/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1100/summon + +# 元となるEntityを召喚する + 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/1100.conviction_shot/summon/m with storage asset:temp Args + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/summon/debug.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/summon/debug.mcfunction new file mode 100644 index 0000000000..7c9470d8a6 --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1100.conviction_shot/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1100 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/summon/m.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/summon/m.mcfunction new file mode 100644 index 0000000000..af5214491f --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/summon/m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1100.conviction_shot/summon/m +# +# @input args: +# Rotation : float @ 2 +# @within function asset:object/1100.conviction_shot/summon/ + +# 元となるEntityを召喚する + $summon marker ~ ~ ~ {Tags:["ObjectInit"],Rotation:$(Rotation)} diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/tick/.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/tick/.mcfunction new file mode 100644 index 0000000000..beaef8914b --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/tick/.mcfunction @@ -0,0 +1,33 @@ +#> asset:object/1100.conviction_shot/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1100/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# vfx + particle dust 0.455 0.027 0.027 2 ~ ~ ~ 0.1 0.1 0.1 5 2 force + +# 周囲に敵がいなければ、MovePerStepを0.25に戻す + execute unless entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] run data modify storage asset:context this.MovePerStep set value 0.25 + +# 周囲に敵がいれば追尾 & MovePerStepを0.5に変更 + execute if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] facing entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] eyes positioned ^ ^ ^-100 rotated as @s positioned ^ ^ ^-200 facing entity @s eyes positioned as @s run tp @s ^ ^ ^ ~ ~ + execute if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] run data modify storage asset:context this.MovePerStep set value 0.5 + +# 前方に壁があればMovePerStepを0に変更 + execute at @s run function asset:object/1100.conviction_shot/tick/check_forward_block with storage asset:context this + +# 4Tickごとにダメージ間隔用Tagを付与 + scoreboard players operation $Interval Temporary = @s General.Object.Tick + scoreboard players operation $Interval Temporary %= $4 Const + execute if score $Interval Temporary matches 0 run tag @s add 1100.Damage + scoreboard players reset $Interval Temporary + +# super.tick + execute at @s run function asset:object/super.tick + +# リセット + tag @s[tag=1100.Damage] remove 1100.Damage diff --git a/Asset/data/asset/functions/object/1100.conviction_shot/tick/check_forward_block.mcfunction b/Asset/data/asset/functions/object/1100.conviction_shot/tick/check_forward_block.mcfunction new file mode 100644 index 0000000000..cb49bb3984 --- /dev/null +++ b/Asset/data/asset/functions/object/1100.conviction_shot/tick/check_forward_block.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1100.conviction_shot/tick/check_forward_block +# +# +# +# @within function asset:object/1100.conviction_shot/tick/ + +# 前方に壁があればMovePerStepを0に + $execute unless block ^ ^ ^$(MovePerStep) #lib:no_collision run data modify storage asset:context this.MovePerStep set value 0 diff --git a/Asset/data/asset/functions/object/1101.tnt/_index.d.mcfunction b/Asset/data/asset/functions/object/1101.tnt/_index.d.mcfunction new file mode 100644 index 0000000000..c98d01e2d1 --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/_index.d.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1101.tnt/_index.d +# @private + +#> tag +# @within function asset:object/1101.tnt/tick/damage/** + #declare tag 1101.Hit + #declare tag 1101.AlreadyHit + #declare score_holder $UserID diff --git a/Asset/data/asset/functions/object/1101.tnt/init/.mcfunction b/Asset/data/asset/functions/object/1101.tnt/init/.mcfunction new file mode 100644 index 0000000000..33259c6f11 --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/init/.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1101.tnt/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1101/init + +# motion + data modify storage lib: Argument.VectorMagnitude set value 2.0 + execute on vehicle run function lib:motion/ diff --git a/Asset/data/asset/functions/object/1101.tnt/register.mcfunction b/Asset/data/asset/functions/object/1101.tnt/register.mcfunction new file mode 100644 index 0000000000..04703f69dc --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/register.mcfunction @@ -0,0 +1,21 @@ +#> asset:object/1101.tnt/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1101/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 1101 +# フィールド(オプション) + data modify storage asset:object Field.Damage set value 1 + data modify storage asset:object Field.UserID set value -1 diff --git a/Asset/data/asset/functions/object/1101.tnt/summon/.mcfunction b/Asset/data/asset/functions/object/1101.tnt/summon/.mcfunction new file mode 100644 index 0000000000..5be6719346 --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/summon/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1101.tnt/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1101/summon + +# 元となるEntityを召喚する + 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/1101.tnt/summon/m with storage asset:temp Args + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1101.tnt/summon/debug.mcfunction b/Asset/data/asset/functions/object/1101.tnt/summon/debug.mcfunction new file mode 100644 index 0000000000..58fcc0df8d --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1101.tnt/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1101 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1101.tnt/summon/m.mcfunction b/Asset/data/asset/functions/object/1101.tnt/summon/m.mcfunction new file mode 100644 index 0000000000..456176d45a --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/summon/m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1101.tnt/summon/m +# +# @input args: +# Rotation : float @ 2 +# @within function asset:object/1101.tnt/summon/ + +# 元となるEntityを召喚する + $summon tnt ~ ~ ~ {Rotation:$(Rotation),fuse:40s,Passengers:[{id:"minecraft:marker",Tags:["ObjectInit"]}]} diff --git a/Asset/data/asset/functions/object/1101.tnt/tick/.mcfunction b/Asset/data/asset/functions/object/1101.tnt/tick/.mcfunction new file mode 100644 index 0000000000..960021e7a4 --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/tick/.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/1101.tnt/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1101/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 近くにMobがいれば、Motionをリセットして自身にTagを付与 + execute on vehicle at @s run function asset:object/1101.tnt/tick/on_vehicle + +# vehicleがいなくなったら = TNTが爆破したらダメージを与えて消滅 + execute unless predicate lib:is_vehicle at @s run function asset:object/1101.tnt/tick/damage/ diff --git a/Asset/data/asset/functions/object/1101.tnt/tick/damage/.mcfunction b/Asset/data/asset/functions/object/1101.tnt/tick/damage/.mcfunction new file mode 100644 index 0000000000..eded4af541 --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/tick/damage/.mcfunction @@ -0,0 +1,29 @@ +#> asset:object/1101.tnt/tick/damage/ +# +# ダメージを与えて消滅 +# +# @within function asset:object/1101.tnt/tick/ + +#> Private +# @private + #declare score_holder $UserID + +# 範囲内のMobに再帰で壁貫通をしてないかチェック + execute as @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..8] at @s facing entity @e[type=marker,tag=this,distance=..8.1] feet run function asset:object/1101.tnt/tick/damage/check_block + +# User特定 + execute store result score $UserID Temporary run data get storage asset:context this.UserID + +# ダメージ + function asset:object/1101.tnt/tick/damage/deal_damage.m {DamagePer:1.0,Distance:"0.0..1.5"} + function asset:object/1101.tnt/tick/damage/deal_damage.m {DamagePer:0.7,Distance:"1.5..2.5"} + function asset:object/1101.tnt/tick/damage/deal_damage.m {DamagePer:0.2,Distance:"2.5..5.0"} + function asset:object/1101.tnt/tick/damage/deal_damage.m {DamagePer:0.1,Distance:"5.0..8.0"} + +# リセット + scoreboard players reset $UserID Temporary + tag @e[type=#lib:living,type=!player,tag=1101.Hit,distance=..8] remove 1101.Hit + tag @e[type=#lib:living,type=!player,tag=1101.AlreadyHit,distance=..8] remove 1101.AlreadyHit + +# 消滅 + kill @s diff --git a/Asset/data/asset/functions/object/1101.tnt/tick/damage/check_block.mcfunction b/Asset/data/asset/functions/object/1101.tnt/tick/damage/check_block.mcfunction new file mode 100644 index 0000000000..390881f149 --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/tick/damage/check_block.mcfunction @@ -0,0 +1,16 @@ +#> asset:object/1101.tnt/tick/damage/check_block +# +# 再帰して壁貫通をチェックする +# +# @within function +# asset:object/1101.tnt/tick/damage/ +# asset:object/1101.tnt/tick/damage/check_block + +# 現座標がブロックならreturn + execute unless block ~ ~ ~ #lib:no_collision run return fail + +# thisに接触したならTagを付与してreturn + execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @e[type=marker,tag=this,dx=0] run return run tag @s add 1101.Hit + +# 再帰する + execute if entity @s[distance=..8.1] positioned ^ ^ ^1 run function asset:object/1101.tnt/tick/damage/check_block diff --git a/Asset/data/asset/functions/object/1101.tnt/tick/damage/deal_damage.m.mcfunction b/Asset/data/asset/functions/object/1101.tnt/tick/damage/deal_damage.m.mcfunction new file mode 100644 index 0000000000..cae32e74f8 --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/tick/damage/deal_damage.m.mcfunction @@ -0,0 +1,17 @@ +#> asset:object/1101.tnt/tick/damage/deal_damage.m +# +# @input args: +# DamagePer : float +# Distance : String +# @within function asset:object/1101.tnt/tick/damage/ + +# ダメージ + $execute store result storage api: Argument.Damage float $(DamagePer) run data get storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "Fire" + execute as @a if score @s UserID = $UserID Temporary run function api:damage/modifier + $execute as @e[type=#lib:living,type=!player,tag=1101.Hit,tag=!AlreadyHit,distance=$(Distance)] run function api:damage/ + function api:damage/reset + +# 重複ヒット防止Tag + $tag @e[type=#lib:living,type=!player,tag=1101.Hit,distance=$(Distance)] add 1101.AldreadyHit diff --git a/Asset/data/asset/functions/object/1101.tnt/tick/on_vehicle.mcfunction b/Asset/data/asset/functions/object/1101.tnt/tick/on_vehicle.mcfunction new file mode 100644 index 0000000000..311b2e51fe --- /dev/null +++ b/Asset/data/asset/functions/object/1101.tnt/tick/on_vehicle.mcfunction @@ -0,0 +1,19 @@ +#> asset:object/1101.tnt/tick/on_vehicle +# +# +# +# @within function asset:object/1101.tnt/tick/ + +#> Private +# @private + #declare tag 1101.IsNearMob + +# 近くにMobがいれば、Motionをリセットして自身にTagを付与 + execute if entity @s[tag=!1101.IsNearMob] if entity @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..2,limit=1] run data modify entity @s Motion set value [0f,0f,0f] + execute if entity @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..2,limit=1] run tag @s add 1101.IsNearMob + +# Tagがある状態で近くに敵がいなければTagを削除 + execute if entity @s[tag=1101.IsNearMob] unless entity @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..2,limit=1] run tag @s remove 1101.IsNearMob + +# Tagがあれば敵にtpし続ける + execute if entity @s[tag=1101.IsNearMob] run tp @s @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..2,sort=nearest,limit=1] diff --git a/Asset/data/asset/functions/object/1102.turret/init/.mcfunction b/Asset/data/asset/functions/object/1102.turret/init/.mcfunction new file mode 100644 index 0000000000..24a5917015 --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/init/.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1102.turret/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1102/init + +# 演出 + playsound entity.iron_golem.death neutral @a ~ ~ ~ 1 1.5 + +# イースター的な要素で見た目ランダムにしたかったけどやる気なかった。保留で diff --git a/Asset/data/asset/functions/object/1102.turret/load.mcfunction b/Asset/data/asset/functions/object/1102.turret/load.mcfunction new file mode 100644 index 0000000000..a14a75ac78 --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/load.mcfunction @@ -0,0 +1,9 @@ +#> asset:object/1102.turret/load +# +# Objectに利用するスコアボード等の初期化処理 +# +# @within tag/function asset:object/load + +#> 定義類はここに +# @within function asset:object/1102.turret/** + scoreboard objectives add 1102.Shot dummy diff --git a/Asset/data/asset/functions/object/1102.turret/register.mcfunction b/Asset/data/asset/functions/object/1102.turret/register.mcfunction new file mode 100644 index 0000000000..65da967ed4 --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1102.turret/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1102/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 1102 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1102.turret/summon/.mcfunction b/Asset/data/asset/functions/object/1102.turret/summon/.mcfunction new file mode 100644 index 0000000000..089ca4db2a --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/summon/.mcfunction @@ -0,0 +1,11 @@ +#> asset:object/1102.turret/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1102/summon + +# 元となるEntityを召喚する + execute as 0-0-0-0-0 in minecraft:overworld positioned as @s rotated ~ 0 run tp @s ~ ~ ~ ~ ~ + data modify storage asset:temp Args.Rotation set from entity 0-0-0-0-0 Rotation + function asset:object/1102.turret/summon/macro.m with storage asset:temp Args + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/1102.turret/summon/debug.mcfunction b/Asset/data/asset/functions/object/1102.turret/summon/debug.mcfunction new file mode 100644 index 0000000000..8f66a5478a --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/1102.turret/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 1102 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/1102.turret/summon/macro.m.mcfunction b/Asset/data/asset/functions/object/1102.turret/summon/macro.m.mcfunction new file mode 100644 index 0000000000..52d081ba46 --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/summon/macro.m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/1102.turret/summon/macro.m +# +# +# +# @within function asset:object/1102.turret/summon/ + +$summon item_display ~ ~ ~ {Rotation:$(Rotation),Tags:["ObjectInit","Friend"],item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20387}},teleport_duration:1} diff --git a/Asset/data/asset/functions/object/1102.turret/tick/.mcfunction b/Asset/data/asset/functions/object/1102.turret/tick/.mcfunction new file mode 100644 index 0000000000..b61925f803 --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/tick/.mcfunction @@ -0,0 +1,39 @@ +#> asset:object/1102.turret/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1102/tick + +#> tag +# @private + #declare tag 1102.Target + #declare tag 1102.Even + #declare score_holder $1102.ShotCount + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 奇数偶数チェック + execute store result score $1102.ShotCount Temporary run scoreboard players get @s 1102.Shot + scoreboard players operation $1102.ShotCount Temporary %= $2 Const + execute if score $1102.ShotCount Temporary matches 0 run tag @s add 1102.Even + scoreboard players reset $1102.ShotCount + +# 敵がいたらそっち向く + execute if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10] positioned ~-5 ~ ~-5 as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..20,dx=9,dy=0,dz=9] run tag @s add 1102.Target + execute if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..10] facing entity @e[type=#lib:living,tag=Enemy,tag=1102.Target,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] eyes rotated ~ 0 run tp @s ~ ~ ~ ~ ~ + +# 4tickおきに実行するやつ +# 実行時間を移す + scoreboard players operation $Interval Temporary = @s General.Object.Tick +# 4tickおきに実行 + scoreboard players operation $Interval Temporary %= $2 Const + execute if entity @e[type=#lib:living,tag=Enemy,tag=1102.Target,distance=..10] if score $Interval Temporary matches 0 if entity @s[tag=1102.Even] positioned ~ ~0.3 ~ positioned ^-0.4 ^ ^ run function asset:object/1102.turret/tick/shot/shot + execute if entity @e[type=#lib:living,tag=Enemy,tag=1102.Target,distance=..10] if score $Interval Temporary matches 0 unless entity @s[tag=1102.Even] positioned ~ ~0.3 ~ positioned ^0.4 ^ ^ run function asset:object/1102.turret/tick/shot/shot +# リセット + scoreboard players reset $Interval + tag @s remove 1102.Even +# ターゲットのタグを消す + tag @e[type=#lib:living,tag=Enemy,tag=1102.Target,tag=!Uninterferable,distance=..40] remove 1102.Target +# 消滅処理 + kill @s[scores={General.Object.Tick=120..}] diff --git a/Asset/data/asset/functions/object/1102.turret/tick/shot/bullet_rec.mcfunction b/Asset/data/asset/functions/object/1102.turret/tick/shot/bullet_rec.mcfunction new file mode 100644 index 0000000000..78fc4d9d8c --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/tick/shot/bullet_rec.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/1102.turret/tick/shot/bullet_rec +# +# +# +# @within function +# asset:object/1102.turret/tick/shot/shot +# asset:object/1102.turret/tick/shot/bullet_rec + +# 着弾検知 + execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @e[type=#lib:living,type=!player,tag=!Uninterferable,dx=0] run tag @s add Landing + execute unless block ^ ^ ^0.5 #lib:no_collision run tag @s add Landing + +# 演出 + particle dust 0.345 0.345 0.345 0.4 ~ ~ ~ 0 0 0 0 6 + +# 着弾 + execute if entity @s[tag=Landing] positioned ~-0.5 ~-0.5 ~-0.5 as @e[type=#lib:living,type=!player,tag=!Uninterferable,dx=0,limit=1] at @s run function asset:object/1102.turret/tick/shot/deal_damage + +# 再帰 + execute positioned ^ ^ ^0.5 if entity @s[tag=!Landing,distance=..30] run function asset:object/1102.turret/tick/shot/bullet_rec diff --git a/Asset/data/asset/functions/object/1102.turret/tick/shot/deal_damage.mcfunction b/Asset/data/asset/functions/object/1102.turret/tick/shot/deal_damage.mcfunction new file mode 100644 index 0000000000..26d4227c78 --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/tick/shot/deal_damage.mcfunction @@ -0,0 +1,23 @@ +#> asset:object/1102.turret/tick/shot/deal_damage +# +# +# +# @within function asset:object/1102.turret/tick/shot/bullet_rec + +#> Private +# @private +#declare score_holder $UserID + +# UserID 取得 + execute store result score $UserID Temporary run data get storage asset:context this.UserID + +# ダメージ設定 + data modify storage api: Argument.Damage set from storage asset:context this.Damage + data modify storage api: Argument.AttackType set value "Physical" + data modify storage api: Argument.ElementType set value "None" + execute as @a if score @s UserID = $UserID Temporary run function api:damage/modifier + function api:damage/ + +# リセット + function api:damage/reset + scoreboard players reset $UserID Temporary diff --git a/Asset/data/asset/functions/object/1102.turret/tick/shot/shot.mcfunction b/Asset/data/asset/functions/object/1102.turret/tick/shot/shot.mcfunction new file mode 100644 index 0000000000..34e54e1ff3 --- /dev/null +++ b/Asset/data/asset/functions/object/1102.turret/tick/shot/shot.mcfunction @@ -0,0 +1,32 @@ +#> asset:object/1102.turret/tick/shot/shot +# +# +# +# @within function asset:object/1102.turret/tick/ + +#> tag +# @private + #declare tag SpreadMarker + + +# 前方拡散設定 + summon marker ~ ~ ~ {Tags:["SpreadMarker"]} + data modify storage lib: Argument.Distance set value 2.0 + data modify storage lib: Argument.Spread set value 0.3 + +# 前方拡散を実行する + execute as @e[type=marker,tag=SpreadMarker,distance=..0.5,limit=1] run function lib:forward_spreader/circle + +# 発砲 + execute facing entity @e[type=marker,tag=SpreadMarker,distance=..10,limit=1] eyes positioned ^ ^ ^0.4 run function asset:object/1102.turret/tick/shot/bullet_rec + +# 演出 + playsound entity.wither.shoot neutral @a ~ ~ ~ 0.3 1.6 0 + playsound entity.firework_rocket.blast neutral @a ~ ~ ~ 0.7 0.5 + playsound entity.shulker.shoot neutral @a ~ ~ ~ 1 1.6 +# リセット + kill @e[type=marker,tag=SpreadMarker,distance=..10,limit=1] + tag @s remove Landing + +# 発射回数を記録 + scoreboard players add @s 1102.Shot 1 diff --git a/Asset/data/asset/functions/object/1103.light_ball/_index.d.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/_index.d.mcfunction new file mode 100644 index 0000000000..defc254604 --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:object/1103.light_ball/_index.d +# @private + +#> temp +# @within function asset:object/1103.light_ball/** + #declare score_holder $UN.Temp diff --git a/Asset/data/asset/functions/object/1103.light_ball/init/.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/init/.mcfunction new file mode 100644 index 0000000000..84ec5798fd --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/init/.mcfunction @@ -0,0 +1,12 @@ +#> asset:object/1103.light_ball/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/1103/init + +# validation + execute unless data storage asset:context this.Duration run tellraw @a [{"storage":"global","nbt":"Prefix.ERROR"},{"text":"引数が足りません"},{"text":" Duration","color":"red"}] + +# 演出 + particle end_rod ~ ~ ~ 0 0 0 0.2 60 force @a[distance=..30] + playsound minecraft:entity.arrow.hit_player player @a ~ ~ ~ 1 1 diff --git a/Asset/data/asset/functions/object/1103.light_ball/register.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/register.mcfunction new file mode 100644 index 0000000000..ae79766a05 --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/register.mcfunction @@ -0,0 +1,22 @@ +#> asset:object/1103.light_ball/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/1103/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 1103 +# フィールド(オプション) + data modify storage asset:object Field.Track set value false + # data modify storage asset:object Field.TargetID set value -1 + # data modify storage asset:object Field.Duration set value 200 diff --git a/Asset/data/asset/functions/object/1103.light_ball/summon/.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/summon/.mcfunction new file mode 100644 index 0000000000..9bd03103b5 --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/summon/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1103.light_ball/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/1103/summon + +# 元となるEntityを召喚する + summon item_display ~ ~ ~ {Tags:["ObjectInit"],Glowing:1b,transformation:[0.55f,0f,0f,0f,0f,0.55f,0f,0f,0f,0f,0.55f,0f,0f,0f,0f,1f],item:{id:"leather_horse_armor",Count:1b,tag:{display:{color:16773970},CustomModelData:20157}},brightness:{sky:10,block:15},billboard:"center"} diff --git a/Asset/data/asset/functions/object/1103.light_ball/summon/debug.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/summon/debug.mcfunction new file mode 100644 index 0000000000..a7a45cbb4d --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/summon/debug.mcfunction @@ -0,0 +1,12 @@ +#> asset:object/1103.light_ball/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + # data modify storage api: Argument.FieldOverride.Track set value false + data modify storage api: Argument.FieldOverride.Duration set value 200 + data modify storage api: Argument.ID set value 1103 + function api:object/summon diff --git a/Asset/data/asset/functions/object/1103.light_ball/tick/.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/tick/.mcfunction new file mode 100644 index 0000000000..2215770896 --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/tick/.mcfunction @@ -0,0 +1,18 @@ +#> asset:object/1103.light_ball/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/1103/tick + +# 敵追従 + execute if data storage asset:context this{Track:true} run function asset:object/1103.light_ball/tick/track.m with storage asset:context this + execute unless entity @s run return 0 + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 +# 消滅処理 + execute store result score $UN.Temp Temporary run data get storage asset:context this.Duration + execute if score @s General.Object.Tick >= $UN.Temp Temporary run function asset:object/1103.light_ball/tick/kill + scoreboard players reset $UN.Temp Temporary + + # kill @s[scores={General.Object.Tick=1000..}] diff --git a/Asset/data/asset/functions/object/1103.light_ball/tick/kill.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/tick/kill.mcfunction new file mode 100644 index 0000000000..2b0d208c6a --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/tick/kill.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1103.light_ball/tick/kill +# +# +# +# @within function asset:object/1103.light_ball/tick/ + +particle end_rod ~ ~ ~ 0 0 0 0.1 10 normal +kill @s diff --git a/Asset/data/asset/functions/object/1103.light_ball/tick/track.m.mcfunction b/Asset/data/asset/functions/object/1103.light_ball/tick/track.m.mcfunction new file mode 100644 index 0000000000..5d9f355c3d --- /dev/null +++ b/Asset/data/asset/functions/object/1103.light_ball/tick/track.m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/1103.light_ball/tick/track.m +# +# +# +# @within function asset:object/1103.light_ball/tick/ + +$execute as @e[type=#lib:living,type=!player,tag=!Death,tag=!Uninterferable,scores={MobUUID=$(TargetID)},distance=..50,limit=1] at @s anchored eyes run return run tp @e[type=item_display,tag=this,limit=1] ^ ^ ^ +kill @s diff --git a/Asset/data/asset/functions/object/2014.dimension_sword/init/.mcfunction b/Asset/data/asset/functions/object/2014.dimension_sword/init/.mcfunction index 4682b258b7..46da0393e8 100644 --- a/Asset/data/asset/functions/object/2014.dimension_sword/init/.mcfunction +++ b/Asset/data/asset/functions/object/2014.dimension_sword/init/.mcfunction @@ -6,9 +6,9 @@ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ - + # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 # TP execute at 0-0-0-0-0 run tp @s ~ ~ ~ ~ 0 diff --git a/Asset/data/asset/functions/object/2015.axia_shock_wave/init/.mcfunction b/Asset/data/asset/functions/object/2015.axia_shock_wave/init/.mcfunction index 1e21a7d81b..e67494c0cc 100644 --- a/Asset/data/asset/functions/object/2015.axia_shock_wave/init/.mcfunction +++ b/Asset/data/asset/functions/object/2015.axia_shock_wave/init/.mcfunction @@ -6,9 +6,9 @@ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ - + # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 # TP execute at 0-0-0-0-0 run tp @s ~ ~ ~ ~ 0 diff --git a/Asset/data/asset/functions/object/2016.axia_critical/init/.mcfunction b/Asset/data/asset/functions/object/2016.axia_critical/init/.mcfunction index 6b5348e4c7..247fd0e87e 100644 --- a/Asset/data/asset/functions/object/2016.axia_critical/init/.mcfunction +++ b/Asset/data/asset/functions/object/2016.axia_critical/init/.mcfunction @@ -6,9 +6,9 @@ # マーカーを呼ぶ tp 0-0-0-0-0 ^ ^ ^ ~ ~ - + # 演出のためにランダムな方向を向かせる - execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run function lib:random/ + execute store result entity 0-0-0-0-0 Rotation[0] float 0.01 run random value 0..35999 # TP execute at 0-0-0-0-0 run tp @s ~ ~ ~ ~ 0 diff --git a/Asset/data/asset/functions/object/2030.lastboss_stellar_fury/init/.mcfunction b/Asset/data/asset/functions/object/2030.lastboss_stellar_fury/init/.mcfunction index 5d6b28cc5f..ee4a46674d 100644 --- a/Asset/data/asset/functions/object/2030.lastboss_stellar_fury/init/.mcfunction +++ b/Asset/data/asset/functions/object/2030.lastboss_stellar_fury/init/.mcfunction @@ -5,8 +5,7 @@ # @within asset:object/alias/2030/init # 自身の属性をランダムで決定する - execute store result score $Random Temporary run function lib:random/ - scoreboard players operation $Random Temporary %= $3 Const + execute store result score $Random Temporary run random value 0..2 execute if score $Random Temporary matches 0 run tag @s add 2030.Fire execute if score $Random Temporary matches 1 run tag @s add 2030.Water execute if score $Random Temporary matches 2 run tag @s add 2030.Thunder diff --git a/Asset/data/asset/functions/object/2082.storm_shadow/_index.d.mcfunction b/Asset/data/asset/functions/object/2082.storm_shadow/_index.d.mcfunction new file mode 100644 index 0000000000..a42e257b0c --- /dev/null +++ b/Asset/data/asset/functions/object/2082.storm_shadow/_index.d.mcfunction @@ -0,0 +1,6 @@ +#> asset:object/2082.storm_shadow/_index.d +# @private + +#> tag +# @within function asset:object/2082.storm_shadow/** + #declare tag 2082.TopAttack diff --git a/Asset/data/asset/functions/object/2082.storm_shadow/init/.mcfunction b/Asset/data/asset/functions/object/2082.storm_shadow/init/.mcfunction index 1cea372881..0f2ef4fd49 100644 --- a/Asset/data/asset/functions/object/2082.storm_shadow/init/.mcfunction +++ b/Asset/data/asset/functions/object/2082.storm_shadow/init/.mcfunction @@ -5,8 +5,8 @@ # @within asset:object/alias/2082/init # スピード設定 - data modify storage asset:context this.Speed set value 4 - data modify storage asset:context this.Range set value 256 + data modify storage asset:context this.Speed set value 7 + data modify storage asset:context this.Range set value 1024 data modify storage asset:context this.MovePerStep set value 0.5 # super.init呼び出し @@ -15,10 +15,10 @@ # 向きを指定座標へ向ける # tellraw @p [{"storage":"asset:context","nbt":"this.target_pos"}] - data modify storage asset:temp args.x set from storage asset:context this.target_pos[0] - data modify storage asset:temp args.y set from storage asset:context this.target_pos[1] - data modify storage asset:temp args.z set from storage asset:context this.target_pos[2] - function asset:object/2082.storm_shadow/init/facing_target_pos.m with storage asset:temp args + #data modify storage asset:temp args.x set from storage asset:context this.target_pos[0] + #data modify storage asset:temp args.y set from storage asset:context this.target_pos[1] + #data modify storage asset:temp args.z set from storage asset:context this.target_pos[2] + #function asset:object/2082.storm_shadow/init/facing_target_pos.m with storage asset:temp args - data remove storage asset:temp args + #data remove storage asset:temp args \ No newline at end of file diff --git a/Asset/data/asset/functions/object/2082.storm_shadow/kill/.mcfunction b/Asset/data/asset/functions/object/2082.storm_shadow/kill/.mcfunction index 493e838256..980691c004 100644 --- a/Asset/data/asset/functions/object/2082.storm_shadow/kill/.mcfunction +++ b/Asset/data/asset/functions/object/2082.storm_shadow/kill/.mcfunction @@ -10,8 +10,8 @@ playsound entity.generic.explode hostile @a[distance=..16] ~ ~ ~ 1 0.5 1 # particle - particle minecraft:large_smoke ~ ~ ~ 1.2 0.8 1.2 0.1 200 normal - particle minecraft:flame ~ ~ ~ 0.6 0.3 0.6 0.05 100 normal + particle minecraft:large_smoke ~ ~0.7 ~ 2.5 1.4 2.5 0.1 400 normal + particle minecraft:flame ~ ~0.3 ~ 1 0.6 1 0.05 200 normal # damage data modify storage api: Argument.Damage set value 40f diff --git a/Asset/data/asset/functions/object/2082.storm_shadow/summon/.m.mcfunction b/Asset/data/asset/functions/object/2082.storm_shadow/summon/.m.mcfunction new file mode 100644 index 0000000000..6be0942624 --- /dev/null +++ b/Asset/data/asset/functions/object/2082.storm_shadow/summon/.m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/2082.storm_shadow/summon/.m +# +# +# +# @within function asset:object/2082.storm_shadow/summon/ + +# 召喚 + $summon item_display ~ ~ ~ {Tags:["ObjectInit"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[5.1f,5.1f,5.1f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20486}},item_display:"thirdperson_righthand",teleport_duration:1,Rotation:$(Rotation)} diff --git a/Asset/data/asset/functions/object/2082.storm_shadow/summon/.mcfunction b/Asset/data/asset/functions/object/2082.storm_shadow/summon/.mcfunction index 38d7bcef7c..8c92249624 100644 --- a/Asset/data/asset/functions/object/2082.storm_shadow/summon/.mcfunction +++ b/Asset/data/asset/functions/object/2082.storm_shadow/summon/.mcfunction @@ -5,4 +5,10 @@ # @within asset:object/alias/2082/summon # 元となるEntityを召喚する - summon item_display ~ ~ ~ {Tags:["ObjectInit"],item:{id:"minecraft:tnt",Count:1b},teleport_duration:1} + 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/2082.storm_shadow/summon/.m with storage asset:temp Args + +# reset + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/2082.storm_shadow/tick/.mcfunction b/Asset/data/asset/functions/object/2082.storm_shadow/tick/.mcfunction index a7a255caeb..b9268148c1 100644 --- a/Asset/data/asset/functions/object/2082.storm_shadow/tick/.mcfunction +++ b/Asset/data/asset/functions/object/2082.storm_shadow/tick/.mcfunction @@ -7,8 +7,27 @@ # Tick加算 scoreboard players add @s General.Object.Tick 1 +# 目標座標へ向け旋回(旋回する距離を取るため最初は直進させる) + data modify storage asset:temp args.x set from storage asset:context this.target_pos[0] + data modify storage asset:temp args.y set from storage asset:context this.target_pos[1] + data modify storage asset:temp args.z set from storage asset:context this.target_pos[2] + execute if score @s General.Object.Tick matches 15.. run function asset:object/2082.storm_shadow/tick/turn with storage asset:temp args + # super - function asset:object/super.tick + execute at @s run function asset:object/super.tick + +# 噴煙のパーティクル + execute at @s run particle cloud ^ ^0.2 ^-2.7 0 0 0 0.01 2 force + execute at @s run particle cloud ^ ^0.2 ^-2.9 0 0 0 0.01 2 force + execute at @s run particle cloud ^ ^0.2 ^-3.1 0 0 0 0.01 2 force + execute at @s run particle cloud ^ ^0.2 ^-3.3 0 0 0 0.01 2 force + execute at @s run particle cloud ^ ^0.2 ^-3.5 0 0 0 0.01 2 force + execute at @s run particle cloud ^ ^0.2 ^-3.7 0 0 0 0.01 2 force + execute at @s run particle cloud ^ ^0.2 ^-3.9 0 0 0 0.01 2 force + execute at @s run particle cloud ^ ^0.2 ^-4.1 0 0 0 0.01 2 force # 消滅処理 kill @s[scores={General.Object.Tick=1000..}] + +# reset + data remove storage asset:temp args diff --git a/Asset/data/asset/functions/object/2082.storm_shadow/tick/turn.mcfunction b/Asset/data/asset/functions/object/2082.storm_shadow/tick/turn.mcfunction new file mode 100644 index 0000000000..3923d33090 --- /dev/null +++ b/Asset/data/asset/functions/object/2082.storm_shadow/tick/turn.mcfunction @@ -0,0 +1,16 @@ +#> asset:object/2082.storm_shadow/tick/turn +# +# +# +# @within function asset:object/2082.storm_shadow/tick/ + + +# 目標上空座標を向く(arctan(0.2) = 11度/tickぐらいの速度で旋回) + $execute at @s[tag=!2082.TopAttack] positioned ^ ^ ^1000 facing $(x) ~ $(z) positioned ^ ^ ^1000 facing entity @s feet positioned as @s positioned ^ ^ ^0.2 rotated as @s positioned ^ ^ ^-1 facing entity @s feet positioned as @s run tp @s ^ ^ ^ ~ ~ + +# おおよそ目標上空の方を向いていたら(12度)目標位置にぴったり合わせる + $execute facing $(x) ~ $(z) positioned ^ ^ ^1000 rotated as @s positioned ^ ^ ^-1000 if entity @s[distance=..210] at @s facing $(x) $(y) $(z) run tag @s add 2082.TopAttack + $execute as @s[tag=2082.TopAttack] facing $(x) $(y) $(z) run tp @s ~ ~ ~ ~ ~ + +# 対空時間が長すぎたら強制的に目標の方を向く + $execute as @s[scores={General.Object.Tick=50..}] facing $(x) $(y) $(z) run tp @s ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/object/2083.brimstone/summon/.m.mcfunction b/Asset/data/asset/functions/object/2083.brimstone/summon/.m.mcfunction new file mode 100644 index 0000000000..f1c164e541 --- /dev/null +++ b/Asset/data/asset/functions/object/2083.brimstone/summon/.m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/2083.brimstone/summon/.m +# +# +# +# @within function asset:object/2083.brimstone/summon/ + + $summon item_display ~ ~ ~ {Tags:["ObjectInit"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[1.7f,1.7f,1.7f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20487}},item_display:"thirdperson_righthand",teleport_duration:1,Rotation:$(Rotation)} diff --git a/Asset/data/asset/functions/object/2083.brimstone/summon/.mcfunction b/Asset/data/asset/functions/object/2083.brimstone/summon/.mcfunction index 8b85348c50..68be95e962 100644 --- a/Asset/data/asset/functions/object/2083.brimstone/summon/.mcfunction +++ b/Asset/data/asset/functions/object/2083.brimstone/summon/.mcfunction @@ -5,4 +5,11 @@ # @within asset:object/alias/2083/summon # 元となるEntityを召喚する - summon item_display ~ ~ ~ {Tags:["ObjectInit"],item:{id:"minecraft:honey_block",Count:1b},teleport_duration:1} +# 元となるEntityを召喚する + 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/2083.brimstone/summon/.m with storage asset:temp Args + +# reset + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/2083.brimstone/tick/.mcfunction b/Asset/data/asset/functions/object/2083.brimstone/tick/.mcfunction index d861772064..b3dc591fb1 100644 --- a/Asset/data/asset/functions/object/2083.brimstone/tick/.mcfunction +++ b/Asset/data/asset/functions/object/2083.brimstone/tick/.mcfunction @@ -10,9 +10,15 @@ # 方向転換 function asset:object/2083.brimstone/turn with storage asset:context this -# ターゲット方向へパーティクル射出 +# ターゲット方向へパーティクル射出 execute at @s run particle minecraft:wax_on ~ ~1 ~ ^ ^ ^10000000 0.00005 0 force @a +# 噴煙のパーティクル + execute at @s[scores={General.Object.Tick=..10}] run particle flame ^ ^0.2 ^-1.2 0 0 0 0.02 2 force + execute at @s[scores={General.Object.Tick=..10}] run particle flame ^ ^0.2 ^-1.3 0 0 0 0.02 2 force + execute at @s[scores={General.Object.Tick=..10}] run particle cloud ^ ^0.2 ^-1.3 0 0 0 0.06 2 force + execute at @s[scores={General.Object.Tick=..10}] run particle cloud ^ ^0.2 ^-1.4 0 0 0 0.06 2 force + # super execute at @s run function asset:object/super.tick diff --git a/Asset/data/asset/functions/object/2084.snake_eye/init/.mcfunction b/Asset/data/asset/functions/object/2084.snake_eye/init/.mcfunction index ec99dd68f4..7b4d0df27b 100644 --- a/Asset/data/asset/functions/object/2084.snake_eye/init/.mcfunction +++ b/Asset/data/asset/functions/object/2084.snake_eye/init/.mcfunction @@ -15,4 +15,4 @@ # 向きを発射母機と合わせる # tellraw @p [{"storage":"asset:context","nbt":"this.target_pos"}] - execute rotated as @e[tag=Enemy.Boss,tag=!Uninterferable,sort=nearest,limit=1] run tp @s ~ ~ ~ ~ 80 + execute rotated as @e[tag=Enemy.Boss,tag=!Uninterferable,sort=nearest,limit=1] run tp @s ~ ~ ~ ~ ~30 diff --git a/Asset/data/asset/functions/object/2084.snake_eye/kill/.mcfunction b/Asset/data/asset/functions/object/2084.snake_eye/kill/.mcfunction index 7da9ae6612..8f3ecb0edb 100644 --- a/Asset/data/asset/functions/object/2084.snake_eye/kill/.mcfunction +++ b/Asset/data/asset/functions/object/2084.snake_eye/kill/.mcfunction @@ -6,7 +6,7 @@ # hit entityとhit block両方で同じ処理書くのも冗長なのでここで書く # plausound - playsound entity.generic.explode hostile @a[distance=..16] ~ ~ ~ 1 0.5 1 + playsound entity.generic.explode hostile @a[distance=..32] ~ ~ ~ 1 0.5 1 # particle particle minecraft:large_smoke ~ ~ ~ 2 1 2 0.1 200 normal diff --git a/Asset/data/asset/functions/object/2084.snake_eye/summon/.m.mcfunction b/Asset/data/asset/functions/object/2084.snake_eye/summon/.m.mcfunction new file mode 100644 index 0000000000..12a1488e22 --- /dev/null +++ b/Asset/data/asset/functions/object/2084.snake_eye/summon/.m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/2084.snake_eye/summon/.m +# +# +# +# @within function asset:object/2084.snake_eye/summon/ + + $summon item_display ~ ~ ~ {Tags:["ObjectInit"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[2.2f,2.2f,2.2f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20488}},item_display:"thirdperson_righthand",teleport_duration:1,Rotation:$(Rotation)} diff --git a/Asset/data/asset/functions/object/2084.snake_eye/summon/.mcfunction b/Asset/data/asset/functions/object/2084.snake_eye/summon/.mcfunction index da97b88243..9a473edf03 100644 --- a/Asset/data/asset/functions/object/2084.snake_eye/summon/.mcfunction +++ b/Asset/data/asset/functions/object/2084.snake_eye/summon/.mcfunction @@ -5,4 +5,10 @@ # @within asset:object/alias/2084/summon # 元となるEntityを召喚する - summon item_display ~ ~ ~ {Tags:["ObjectInit"],item:{id:"minecraft:slime_block",Count:1b},teleport_duration:1} + 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/2084.snake_eye/summon/.m with storage asset:temp Args + +# reset + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/2087.patriot/hit_entity/.mcfunction b/Asset/data/asset/functions/object/2087.patriot/hit_entity/.mcfunction index 1ecfa80e0e..8a1adf4ecc 100644 --- a/Asset/data/asset/functions/object/2087.patriot/hit_entity/.mcfunction +++ b/Asset/data/asset/functions/object/2087.patriot/hit_entity/.mcfunction @@ -19,7 +19,9 @@ playsound minecraft:entity.firework_rocket.large_blast_far master @a[distance=..128] ~ ~ ~ 1.0 0.61 1 # particle - particle minecraft:large_smoke ~ ~ ~ 1.5 0.8 1.5 0.1 200 force + particle minecraft:large_smoke ~ ~ ~ 2 1 2 0.1 200 force + particle minecraft:flame ~ ~ ~ 1.5 0.8 1.5 0.3 200 force + particle minecraft:lava ~ ~-1 ~ 2 0 2 1 24 force # super呼び出し function asset:object/super.method diff --git a/Asset/data/asset/functions/object/2087.patriot/init/.mcfunction b/Asset/data/asset/functions/object/2087.patriot/init/.mcfunction index 54249ccab2..bfa5fb221b 100644 --- a/Asset/data/asset/functions/object/2087.patriot/init/.mcfunction +++ b/Asset/data/asset/functions/object/2087.patriot/init/.mcfunction @@ -5,7 +5,7 @@ # @within asset:object/alias/2087/init # スピード設定 - data modify storage asset:context this.Speed set value 8 + data modify storage asset:context this.Speed set value 1 data modify storage asset:context this.Range set value 1024 data modify storage asset:context this.MovePerStep set value 0.5 @@ -13,4 +13,4 @@ function asset:object/super.init # 向きをボスへ向ける - execute facing entity @e[tag=Enemy.Boss,tag=!Uninterferable,distance=..128,limit=1] eyes run tp @s ~ ~ ~ ~ ~ + #execute facing entity @e[tag=Enemy.Boss,tag=!Uninterferable,distance=..128,limit=1] eyes run tp @s ~ ~ ~ ~ ~ diff --git a/Asset/data/asset/functions/object/2087.patriot/summon/.m.mcfunction b/Asset/data/asset/functions/object/2087.patriot/summon/.m.mcfunction new file mode 100644 index 0000000000..4a6d2e4cdb --- /dev/null +++ b/Asset/data/asset/functions/object/2087.patriot/summon/.m.mcfunction @@ -0,0 +1,7 @@ +#> asset:object/2087.patriot/summon/.m +# +# +# +# @within function asset:object/2087.patriot/summon/ + + $summon item_display ~ ~ ~ {Tags:["ObjectInit"],transformation:{left_rotation:{axis:[0,0,1],angle:0.7854f},right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[6f,6f,6f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20490}},item_display:"thirdperson_righthand",teleport_duration:1,Rotation:$(Rotation)} diff --git a/Asset/data/asset/functions/object/2087.patriot/summon/.mcfunction b/Asset/data/asset/functions/object/2087.patriot/summon/.mcfunction index c79b85aa08..5b66e7347f 100644 --- a/Asset/data/asset/functions/object/2087.patriot/summon/.mcfunction +++ b/Asset/data/asset/functions/object/2087.patriot/summon/.mcfunction @@ -5,4 +5,10 @@ # @within asset:object/alias/2087/summon # 元となるEntityを召喚する - summon item_display ~ ~ ~ {Tags:["ObjectInit"],transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[3f,3f,3f]},item:{id:"minecraft:firework_rocket",Count:1b}} + execute facing entity @e[tag=Enemy.Boss,distance=..128,limit=1] eyes rotated ~ 0 as 0-0-0-0-0 in minecraft:overworld positioned as @s run tp @s ~ ~ ~ ~ 0 + data modify storage asset:temp Args.Rotation set from entity 0-0-0-0-0 Rotation + + function asset:object/2087.patriot/summon/.m with storage asset:temp Args + +# reset + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/2087.patriot/tick/.mcfunction b/Asset/data/asset/functions/object/2087.patriot/tick/.mcfunction index e8d8a61042..890105a554 100644 --- a/Asset/data/asset/functions/object/2087.patriot/tick/.mcfunction +++ b/Asset/data/asset/functions/object/2087.patriot/tick/.mcfunction @@ -4,14 +4,35 @@ # # @within asset:object/alias/2087/tick +#> prv +# @private + #declare score_holder $Accelerate + # Tick加算 scoreboard players add @s General.Object.Tick 1 -# 向きをボスへ向ける - execute facing entity @e[tag=Enemy.Boss,tag=!Uninterferable,distance=..128,limit=1] eyes run tp @s ~ ~ ~ ~ ~ +# 加速 + execute store result score $Accelerate Temporary run data get storage asset:context this.Speed 10 + execute if score $Accelerate Temporary matches ..75 store result storage asset:context this.Speed float 0.1 run scoreboard players add $Accelerate Temporary 5 + +# particle + particle minecraft:flame ^ ^0.1 ^-1.3 0.2 0.2 0.2 0 2 force + particle minecraft:flame ^ ^0.1 ^-1.9 0.2 0.2 0.2 0 2 force + particle minecraft:flame ^ ^0.1 ^-2.5 0.2 0.2 0.2 0 2 force + particle minecraft:flame ^ ^0.1 ^-3.1 0.2 0.2 0.2 0 2 force + particle minecraft:cloud ^ ^ ^-2.5 0.2 0.2 0.2 0 2 force + particle minecraft:cloud ^ ^ ^-3.5 0.2 0.2 0.2 0 2 force + particle minecraft:cloud ^ ^ ^-4.5 0.2 0.2 0.2 0 2 force + particle minecraft:cloud ^ ^ ^-5.5 0.2 0.2 0.2 0 2 force + +# 誘導開始したら向きをボスへ向ける + execute if score @s General.Object.Tick matches 3.. facing entity @e[tag=Enemy.Boss,tag=!Uninterferable,distance=..128,limit=1] eyes run tp @s ~ ~ ~ ~ ~ #命中判定 execute at @s run function asset:object/super.tick # 消滅処理 kill @s[scores={General.Object.Tick=1000..}] + +# reset + scoreboard players reset $Accelerate Temporary diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/_index.d.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/_index.d.mcfunction index d08fb7cbe0..2e45f6285f 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/_index.d.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/_index.d.mcfunction @@ -3,23 +3,39 @@ #> patriot_launcher # @within -# function asset:object/2088.patriot_launcher/** +# function asset:object/2088.patriot_launcher/** #declare tag PatriotLauncher.Body #declare tag PatriotLauncher.DisplayName #declare tag PatriotLauncher.Gauge +#> AJ +# @within +# function asset:object/2088.patriot_launcher/** +# function asset:mob/0213.terrible_sonic_bomber/** + #declare function animated_java:patriot_launcher/summon/default + #declare function animated_java:patriot_launcher/animations/default/play + #declare function animated_java:patriot_launcher/remove/this + #declare function animated_java:patriot_launcher/animations/rotation/apply_frame + #declare function animated_java:patriot_launcher/animations/reload/play + #declare function animated_java:patriot_launcher/animations/rotation_no_missile/tween + #declare function animated_java:patriot_launcher/animations/rotation_no_missile/stop + #declare function animated_java:patriot_launcher/animations/launch/play + #declare function animated_java:patriot_launcher/animations/destroy/tween + #declare function animated_java:patriot_launcher/variants/destroyed/apply + #declare function animated_java:patriot_launcher/variants/default/apply + #declare tag PatriotLauncherRoot #> suffer_damage # @within -# function asset:mob/0214.drone/** -# function asset:object/2088.patriot_launcher/** -# function asset:object/2082.storm_shadow/** -# function asset:object/2083.brimstone/** -# function asset:object/2084.snake_eye/** +# function asset:mob/0214.drone/** +# function asset:object/2088.patriot_launcher/** +# function asset:object/2082.storm_shadow/** +# function asset:object/2083.brimstone/** +# function asset:object/2084.snake_eye/** #declare tag PatriotLauncher.HitMissile #> is_broken # @within -# function asset:object/2088.patriot_launcher/** -# function asset:mob/0213.terrible_sonic_bomber/** +# function asset:object/2088.patriot_launcher/** +# function asset:mob/0213.terrible_sonic_bomber/** #declare tag PatriotLauncher.IsBroken diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/init/.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/init/.mcfunction index e128757bb4..86c62fe230 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/init/.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/init/.mcfunction @@ -9,10 +9,8 @@ #declare tag PatriotLauncher.ObjectInit # 見た目召喚 - summon block_display ~ ~ ~ {transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[2f,2f,4f]},block_state:{Name:"minecraft:white_concrete"},Tags:["PatriotLauncher.ObjectInit","PatriotLauncher.Body"]} summon text_display ~ ~ ~ {transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,4f,0f],scale:[2f,2f,4f]},billboard:"center",text:'{"color":"#ffffff","text":"対空砲"}',Tags:["PatriotLauncher.ObjectInit","PatriotLauncher.DisplayName"]} summon text_display ~ ~ ~ {transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,5f,0f],scale:[2f,2f,4f]},billboard:"center",text:'{"color":"#ffffff","text":""}',Tags:["PatriotLauncher.ObjectInit","PatriotLauncher.Gauge"]} - ride @e[type=block_display,tag=PatriotLauncher.ObjectInit,tag=PatriotLauncher.Body,limit=1] mount @s ride @e[type=text_display,tag=PatriotLauncher.ObjectInit,tag=PatriotLauncher.DisplayName,limit=1] mount @s ride @e[type=text_display,tag=PatriotLauncher.ObjectInit,tag=PatriotLauncher.Gauge,limit=1] mount @s diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/register.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/register.mcfunction index 537e773144..69af45e54f 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/register.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/register.mcfunction @@ -24,3 +24,7 @@ data modify storage asset:object Field.IsActive set value 1b data modify storage asset:object Field.MissileCooltime set value 0 data modify storage asset:object Field.MaxMissileCooltime set value 140 + data modify storage asset:object Field.ReloadStartTime set value 120 + data modify storage asset:object Field.ReloadEndTime set value 35 + data modify storage asset:object Field.TurretResetStartTime set value 125 + data modify storage asset:object Field.TurretResetEndTime set value 120 diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/summon/.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/summon/.mcfunction index 9adb41d614..3623e0b5db 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/summon/.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/summon/.mcfunction @@ -6,3 +6,10 @@ # 元となるEntityを召喚する summon item_display ~ ~ ~ {Tags:["ObjectInit"]} + +# AJモデル召喚 + execute rotated 0 0 run function animated_java:patriot_launcher/summon/default {args:{}} + execute as @e[tag=PatriotLauncherRoot,limit=1] run function animated_java:patriot_launcher/animations/default/play + +# ride + ride @e[tag=PatriotLauncherRoot,distance=..1,limit=1] mount @e[tag=ObjectInit,distance=..1,limit=1] diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/missile_launch.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/missile_launch.mcfunction index e2739fc4d9..e8145d2dc5 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/missile_launch.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/missile_launch.mcfunction @@ -5,10 +5,13 @@ # @within function asset:object/2088.patriot_launcher/tick/tick_active +# 発射アニメーション + execute on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/animations/launch/play + # sound playsound entity.generic.explode neutral @a[distance=..50] ~ ~ ~ 1 2 1 playsound minecraft:entity.breeze.death master @a[distance=..50] ~ ~ ~ 1.0 0.5 1 # オブジェクト召喚 data modify storage api: Argument.ID set value 2087 - function api:object/summon + execute on passengers if entity @s[tag=PatriotLauncherRoot] at @s positioned ^-0.63 ^2.71 ^-1.3 run function api:object/summon diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/set_repair_gauge.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/set_repair_gauge.mcfunction index 6f77903722..5827308946 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/set_repair_gauge.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/set_repair_gauge.mcfunction @@ -29,3 +29,7 @@ execute if score $RepairRatioE1 Temporary matches 8 on passengers if entity @s[type=text_display,tag=PatriotLauncher.Gauge] run data modify entity @s text set value '{"color":"#ffffff","text":"修理:■■■■■■■■□□"}' execute if score $RepairRatioE1 Temporary matches 9 on passengers if entity @s[type=text_display,tag=PatriotLauncher.Gauge] run data modify entity @s text set value '{"color":"#ffffff","text":"修理:■■■■■■■■■□"}' execute if score $RepairRatioE1 Temporary matches 10 on passengers if entity @s[type=text_display,tag=PatriotLauncher.Gauge] run data modify entity @s text set value '{"color":"#ffffff","text":"修理:■■■■■■■■■■"}' + +# reset + scoreboard players reset $RepairRatioE1 Temporary + scoreboard players reset $MaxRepairTimeE1 Temporary diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_active.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_active.mcfunction index cbd81713c5..7d61ca7261 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_active.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_active.mcfunction @@ -7,6 +7,11 @@ #> prv # @private #declare score_holder $MissileCooltime + #declare score_holder $ReloadStartTime + #declare score_holder $ReloadEndTime + #declare score_holder $MaxMissileCooltime + #declare score_holder $TurretResetStartTime + #declare score_holder $TurretResetEndTime #> within # @within @@ -24,25 +29,45 @@ # 耐久が0の場合死亡状態へ遷移して処理をキャンセル # 回復までの時間は修理者無しで20秒想定(tickごとに128回復 128*20tick*20s) - execute if score $CurrentDurability Temporary matches ..0 on passengers run data modify entity @s block_state.Name set value "minecraft:black_concrete" - execute if score $CurrentDurability Temporary matches ..0 on passengers run tag @s add PatriotLauncher.IsBroken + execute if score $CurrentDurability Temporary matches ..0 run tag @s add PatriotLauncher.IsBroken execute if score $CurrentDurability Temporary matches ..0 run data modify storage asset:context this.IsBroken set value 1b execute if score $CurrentDurability Temporary matches ..0 run data modify storage asset:context this.RepairTime set from storage asset:context this.MaxRepairTime execute if score $CurrentDurability Temporary matches ..0 on passengers if entity @s[type=text_display,tag=PatriotLauncher.DisplayName] run data modify entity @s text set value '[{"bold":true,"color":"#FFFFFF","text":"PRESS "},{"color":"#FFFFFF","keybind":"key.sneak"},{"bold":true,"color":"#FFFFFF","text":": 修理支援"}]' + execute if score $CurrentDurability Temporary matches ..0 on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/animations/destroy/tween {to_frame: 0, duration: 1} + execute if score $CurrentDurability Temporary matches ..0 on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/variants/destroyed/apply execute if score $CurrentDurability Temporary matches ..0 run return run scoreboard players reset $CurrentDurability Temporary -# 向きを敵の方へ向ける - execute facing entity @e[tag=Enemy.Boss,tag=!Uninterferable,distance=..128,limit=1] eyes run tp @s ~ ~ ~ ~ ~ - execute on passengers facing entity @e[tag=Enemy.Boss,tag=!Uninterferable,distance=..128,limit=1] eyes run tp @s ~ ~ ~ ~ ~ +# 生存している場合のtick処理 + # 各種実行時間取得 + execute store result score $MissileCooltime Temporary run data get storage asset:context this.MissileCooltime + execute store result score $ReloadStartTime Temporary run data get storage asset:context this.ReloadStartTime + execute store result score $ReloadEndTime Temporary run data get storage asset:context this.ReloadEndTime + execute store result score $MaxMissileCooltime Temporary run data get storage asset:context this.MaxMissileCooltime + execute store result score $TurretResetStartTime Temporary run data get storage asset:context this.TurretResetStartTime + execute store result score $TurretResetEndTime Temporary run data get storage asset:context this.TurretResetEndTime -# 次の発射までのカウント - execute store result score $MissileCooltime Temporary run data get storage asset:context this.MissileCooltime - execute store result storage asset:context this.MissileCooltime int 1 run scoreboard players remove $MissileCooltime Temporary 1 + # 発射直後に砲塔位置をリセット + execute if score $MissileCooltime Temporary = $TurretResetStartTime Temporary on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/animations/rotation_no_missile/tween {duration:5, to_frame:0} + execute if score $MissileCooltime Temporary = $TurretResetEndTime Temporary on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/animations/rotation_no_missile/stop -# 発射時間が来ていた場合ミサイル発射 - execute if score $MissileCooltime Temporary matches 0 run function asset:object/2088.patriot_launcher/tick/missile_launch - execute if score $MissileCooltime Temporary matches 0 run data modify storage asset:context this.MissileCooltime set from storage asset:context this.MaxMissileCooltime + # リロード開始時間になったらリロードモーション + execute if score $MissileCooltime Temporary = $ReloadStartTime Temporary on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/animations/reload/play + + # 向きを敵の方へ向ける + execute if score $MissileCooltime Temporary < $ReloadEndTime Temporary facing entity @e[tag=Enemy.Boss,tag=!Uninterferable,distance=..128,limit=1] eyes run tp @s ~ ~ ~ ~ ~ + execute if score $MissileCooltime Temporary < $ReloadEndTime Temporary run function asset:object/2088.patriot_launcher/tick/turn_turret + + # 次の発射までのカウント + execute store result storage asset:context this.MissileCooltime int 1 run scoreboard players remove $MissileCooltime Temporary 1 + + # 発射時間が来ていた場合ミサイル発射 + execute if score $MissileCooltime Temporary matches 0 run function asset:object/2088.patriot_launcher/tick/missile_launch + execute if score $MissileCooltime Temporary matches 0 run data modify storage asset:context this.MissileCooltime set from storage asset:context this.MaxMissileCooltime # reset scoreboard players reset $MissileCooltime Temporary scoreboard players reset $CurrentDurability Temporary + scoreboard players reset $ReloadStartTime Temporary + scoreboard players reset $ReloadEndTime Temporary + scoreboard players reset $TurretResetStartTime Temporary + scoreboard players reset $MaxMissileCooltime Temporary diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_broken.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_broken.mcfunction index 52caa71949..2793a88407 100644 --- a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_broken.mcfunction +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/tick_broken.mcfunction @@ -41,15 +41,17 @@ execute if score $RepairTime Temporary matches ..0 run data modify storage asset:context this.IsBroken set value 0b execute if score $RepairTime Temporary matches ..0 run data modify storage asset:context this.IsActive set value 1b execute if score $RepairTime Temporary matches ..0 run data modify storage asset:context this.MissileCooltime set from storage asset:context this.MaxMissileCooltime - execute if score $RepairTime Temporary matches ..0 on passengers run data modify entity @s block_state.Name set value "minecraft:white_concrete" - execute if score $RepairTime Temporary matches ..0 on passengers run tag @s remove PatriotLauncher.IsBroken + execute if score $RepairTime Temporary matches ..0 run tag @s remove PatriotLauncher.IsBroken execute if score $RepairTime Temporary matches ..0 on passengers if entity @s[type=text_display,tag=PatriotLauncher.DisplayName] run data modify entity @s text set value '{"color":"#ffffff","text":"対空砲"}' execute if score $RepairTime Temporary matches ..0 on passengers if entity @s[type=text_display,tag=PatriotLauncher.Gauge] run data modify entity @s text set value '{"color":"#ffffff","text":""}' + execute if score $RepairTime Temporary matches ..0 on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/animations/default/play + execute if score $RepairTime Temporary matches ..0 on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/variants/default/apply # reset scoreboard players reset $RepairValue Temporary scoreboard players reset $RepairTime Temporary scoreboard players reset $RepairPlayer Temporary + scoreboard players reset $MaxRepairTime Temporary #プレイヤーが修理中の場合修理値をn+m*p増加 #修理値gはmaxになったら修理状態へ戻す diff --git a/Asset/data/asset/functions/object/2088.patriot_launcher/tick/turn_turret.mcfunction b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/turn_turret.mcfunction new file mode 100644 index 0000000000..113a7680af --- /dev/null +++ b/Asset/data/asset/functions/object/2088.patriot_launcher/tick/turn_turret.mcfunction @@ -0,0 +1,26 @@ +#> asset:object/2088.patriot_launcher/tick/turn_turret +# +# +# +# @within function asset:object/2088.patriot_launcher/tick/tick_active + +#> prv +#> @private + #declare score_holder $2088.TurretRotation + +# 敵のいる方向の数値を取得 + execute facing entity @e[tag=Enemy.Boss,distance=..256,limit=1] eyes in overworld positioned 0.0 0.0 0.0 run tp 0-0-0-0-0 ~ ~ ~ ~ ~ + execute store result score $2088.TurretRotation Temporary run data get entity 0-0-0-0-0 Rotation[0] + #tellraw @a [{"score":{"objective":"Temporary","name":"$2088.TurretRotation"}}] + +# score範囲を0-360に丸める + execute if score $2088.TurretRotation Temporary matches ..-1 run scoreboard players add $2088.TurretRotation Temporary 360 + #tellraw @a [{"score":{"objective":"Temporary","name":"$2088.TurretRotation"}}] + +# 回転させる + execute store result storage asset:temp args.frame int 1 run scoreboard players get $2088.TurretRotation Temporary + execute on passengers if entity @s[tag=PatriotLauncherRoot] run function animated_java:patriot_launcher/animations/rotation/apply_frame with storage asset:temp args + +# reset + execute in overworld run tp 0-0-0-0-0 0.0 0.0 0.0 0.0 0.0 + scoreboard players reset $2088.TurretRotation Temporary diff --git a/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/register.mcfunction b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/register.mcfunction new file mode 100644 index 0000000000..29a210ee3c --- /dev/null +++ b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/2203.sonicbomber_destroyed/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/2203/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 2203 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/.m.mcfunction b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/.m.mcfunction new file mode 100644 index 0000000000..63e135e997 --- /dev/null +++ b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/.m.mcfunction @@ -0,0 +1,15 @@ +#> asset:object/2203.sonicbomber_destroyed/summon/.m +# +# +# +# @within function asset:object/2203.sonicbomber_destroyed/summon/ + +# 元となるEntityを召喚する + $summon item_display ~ ~ ~ {Tags:["ObjectInit"],teleport_duration:1,Rotation:$(Rotation)} + +# AJモデル召喚 + execute at @e[tag=ObjectInit,distance=..1,limit=1] run function animated_java:terrible_sonic_bomber/summon {args:{}} + execute as @e[tag=5X.ModelRoot,limit=1] run function animated_java:terrible_sonic_bomber/animations/destroy/play + +# ride + ride @e[tag=5X.ModelRoot,distance=..1,limit=1] mount @e[tag=ObjectInit,distance=..1,limit=1] diff --git a/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/.mcfunction b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/.mcfunction new file mode 100644 index 0000000000..a7b0310160 --- /dev/null +++ b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/2203.sonicbomber_destroyed/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/2203/summon + +# 元となるEntityを召喚する + execute as 0-0-0-0-0 in minecraft:overworld positioned as @s run tp @s ~ ~ ~ ~ 0 + data modify storage asset:temp Args.Rotation set from entity 0-0-0-0-0 Rotation + + function asset:object/2203.sonicbomber_destroyed/summon/.m with storage asset:temp Args + +# reset + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/debug.mcfunction b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/debug.mcfunction new file mode 100644 index 0000000000..90c0d65b93 --- /dev/null +++ b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/2203.sonicbomber_destroyed/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 2203 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/tick/.mcfunction b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/tick/.mcfunction new file mode 100644 index 0000000000..1b95e05a56 --- /dev/null +++ b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/tick/.mcfunction @@ -0,0 +1,24 @@ +#> asset:object/2203.sonicbomber_destroyed/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/2203/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 爆発処理 + execute if entity @s[scores={General.Object.Tick=80..}] at @s run function asset:object/2203.sonicbomber_destroyed/tick/explode + +# 移動 + execute positioned ~ ~-0.1 ~ run tp @s ^ ^ ^0.8 + +# 炎上パーティクル + particle flame ^1 ^0.8 ^0.3 0 0 0 0.03 10 force + particle flame ^1 ^0.8 ^-0.7 0 0 0 0.03 10 force + particle flame ^1 ^0.8 ^-1.7 0 0 0 0.03 10 force + particle smoke ^1 ^0.8 ^-1.7 0.4 0.2 0.4 0.03 50 force + particle smoke ^1 ^0.8 ^0.3 0.4 0.2 0.4 0.03 50 force + +# 消滅処理 + kill @s[scores={General.Object.Tick=1000..}] diff --git a/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/tick/explode.mcfunction b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/tick/explode.mcfunction new file mode 100644 index 0000000000..82f85b0917 --- /dev/null +++ b/Asset/data/asset/functions/object/2203.sonicbomber_destroyed/tick/explode.mcfunction @@ -0,0 +1,23 @@ +#> asset:object/2203.sonicbomber_destroyed/tick/explode +# +# +# +# @within function asset:object/2203.sonicbomber_destroyed/tick/ + +# 音 + playsound entity.generic.explode hostile @a[distance=..128] ~ ~ ~ 1 0.5 1 + playsound minecraft:entity.breeze.death master @a[distance=..128] ~ ~ ~ 1 0.5 1 + +# particle + particle flame ~ ~ ~ 1 1 1 0.1 500 force + particle minecraft:large_smoke ~ ~0.5 ~ 1.2 1 1.2 0.1 500 force + +# 破片召喚 + data modify storage api: Argument.ID set value 2204 + function api:object/summon + +# remove aj + execute on passengers if entity @s[tag=5X.ModelRoot] run function animated_java:terrible_sonic_bomber/remove/this + +# kill + kill @s diff --git a/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/init/.mcfunction b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/init/.mcfunction new file mode 100644 index 0000000000..3b930a6936 --- /dev/null +++ b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/init/.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/2204.sonicbomber_leftwing/init/ +# +# Objectのinit時の処理 +# +# @within asset:object/alias/2204/init + +# 目標位置へ移動 + execute positioned as @e[tag=5X.Centre] run tp @s ~ ~ ~ ~ 0 diff --git a/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/register.mcfunction b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/register.mcfunction new file mode 100644 index 0000000000..2c41e7d3cb --- /dev/null +++ b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/2204.sonicbomber_leftwing/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/2204/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 2204 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value \ No newline at end of file diff --git a/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/.m.mcfunction b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/.m.mcfunction new file mode 100644 index 0000000000..43d412de0d --- /dev/null +++ b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/.m.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/2204.sonicbomber_leftwing/summon/.m +# +# +# +# @within function asset:object/2204.sonicbomber_leftwing/summon/ + +# 元となるエンティティを召喚する + $summon item_display ~ ~ ~ {Tags:["ObjectInit"],item_display:"thirdperson_righthand",transformation:{left_rotation:[0f,0f,0f,1f],right_rotation:[0f,0f,0f,1f],translation:[0f,0f,0f],scale:[3f,3f,3f]},item:{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20489}},teleport_duration:20,Rotation:$(Rotation)} diff --git a/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/.mcfunction b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/.mcfunction new file mode 100644 index 0000000000..619d35c195 --- /dev/null +++ b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/.mcfunction @@ -0,0 +1,14 @@ +#> asset:object/2204.sonicbomber_leftwing/summon/ +# +# Object召喚処理の呼び出し時に実行されるfunction +# +# @within asset:object/alias/2204/summon + +# 元となるEntityを召喚する + 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/2204.sonicbomber_leftwing/summon/.m with storage asset:temp Args + +# reset + data remove storage asset:temp Args diff --git a/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/debug.mcfunction b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/debug.mcfunction new file mode 100644 index 0000000000..bb03751991 --- /dev/null +++ b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/2204.sonicbomber_leftwing/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 2204 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/tick/.mcfunction b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/tick/.mcfunction new file mode 100644 index 0000000000..de4749939f --- /dev/null +++ b/Asset/data/asset/functions/object/2204.sonicbomber_leftwing/tick/.mcfunction @@ -0,0 +1,12 @@ +#> asset:object/2204.sonicbomber_leftwing/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/2204/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 消滅処理 + execute if entity @s[scores={General.Object.Tick=100..}] run kill @e[tag=5X.Centre] + kill @s[scores={General.Object.Tick=100..}] diff --git a/Asset/data/asset/functions/object/2205.circle_announce_drone/register.mcfunction b/Asset/data/asset/functions/object/2205.circle_announce_drone/register.mcfunction new file mode 100644 index 0000000000..0744ffeb3d --- /dev/null +++ b/Asset/data/asset/functions/object/2205.circle_announce_drone/register.mcfunction @@ -0,0 +1,20 @@ +#> asset:object/2205.circle_announce_drone/register +# +# Objectのデータを指定 +# +# @within function asset:object/alias/2205/register + +# 継承(オプション) + data modify storage asset:object Extends append value 2201 + 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 2205 +# フィールド(オプション) + # data modify storage asset:object Field.myValue set value diff --git a/Asset/data/asset/functions/object/2205.circle_announce_drone/summon/debug.mcfunction b/Asset/data/asset/functions/object/2205.circle_announce_drone/summon/debug.mcfunction new file mode 100644 index 0000000000..6918ee87cb --- /dev/null +++ b/Asset/data/asset/functions/object/2205.circle_announce_drone/summon/debug.mcfunction @@ -0,0 +1,10 @@ +#> asset:object/2205.circle_announce_drone/summon/debug +# +# 動作チェック用の召喚処理 使い終わったら消してもいいかも +# +# @user +# @private + +# 召喚 + data modify storage api: Argument.ID set value 2205 + function api:object/summon \ No newline at end of file diff --git a/Asset/data/asset/functions/object/2205.circle_announce_drone/tick/.mcfunction b/Asset/data/asset/functions/object/2205.circle_announce_drone/tick/.mcfunction new file mode 100644 index 0000000000..a225918924 --- /dev/null +++ b/Asset/data/asset/functions/object/2205.circle_announce_drone/tick/.mcfunction @@ -0,0 +1,15 @@ +#> asset:object/2205.circle_announce_drone/tick/ +# +# Objectのtick時の処理 +# +# @within asset:object/alias/2205/tick + +# Tick加算 + scoreboard players add @s General.Object.Tick 1 + +# 消滅処理 + kill @s[scores={General.Object.Tick=1000..}] + +# 召喚後2秒経過後にチェック開始、ドローンが周囲にいなければ消滅 + #execute if score @s General.Object.Tick matches 40.. unless entity @e[scores={MobID=214},distance=..64] run say test + execute if score @s General.Object.Tick matches 40.. unless entity @e[scores={MobID=214},distance=..64] run kill @s diff --git a/Asset/data/asset/functions/object/alias/1027/register.mcfunction b/Asset/data/asset/functions/object/alias/1027/register.mcfunction new file mode 100644 index 0000000000..03229ae773 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1027/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1027/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1027.rain_area/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1027/summon.mcfunction b/Asset/data/asset/functions/object/alias/1027/summon.mcfunction new file mode 100644 index 0000000000..1cfcacb8c6 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1027/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1027/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1027.rain_area/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1027/tick.mcfunction b/Asset/data/asset/functions/object/alias/1027/tick.mcfunction new file mode 100644 index 0000000000..838420a6f0 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1027/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1027/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1027.rain_area/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1076/init.mcfunction b/Asset/data/asset/functions/object/alias/1076/init.mcfunction new file mode 100644 index 0000000000..04566b4667 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1076/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1076/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1076.airlift/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1076/register.mcfunction b/Asset/data/asset/functions/object/alias/1076/register.mcfunction new file mode 100644 index 0000000000..db0802374a --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1076/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1076/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1076.airlift/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1076/summon.mcfunction b/Asset/data/asset/functions/object/alias/1076/summon.mcfunction new file mode 100644 index 0000000000..9a313ccadc --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1076/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1076/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1076.airlift/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1076/tick.mcfunction b/Asset/data/asset/functions/object/alias/1076/tick.mcfunction new file mode 100644 index 0000000000..d2d4c42339 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1076/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1076/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1076.airlift/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1085/init.mcfunction b/Asset/data/asset/functions/object/alias/1085/init.mcfunction new file mode 100644 index 0000000000..017d9b9163 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1085/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1085/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1085.sanguis_obj/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1085/register.mcfunction b/Asset/data/asset/functions/object/alias/1085/register.mcfunction new file mode 100644 index 0000000000..f07c34ef06 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1085/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1085/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1085.sanguis_obj/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1085/summon.mcfunction b/Asset/data/asset/functions/object/alias/1085/summon.mcfunction new file mode 100644 index 0000000000..d5b1bd624d --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1085/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1085/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1085.sanguis_obj/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1085/tick.mcfunction b/Asset/data/asset/functions/object/alias/1085/tick.mcfunction new file mode 100644 index 0000000000..f22973006d --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1085/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1085/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1085.sanguis_obj/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1086/init.mcfunction b/Asset/data/asset/functions/object/alias/1086/init.mcfunction new file mode 100644 index 0000000000..b8f4143a49 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1086/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1086/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1086.lightning_exploit/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1086/register.mcfunction b/Asset/data/asset/functions/object/alias/1086/register.mcfunction new file mode 100644 index 0000000000..441cde039b --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1086/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1086/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1086.lightning_exploit/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1086/summon.mcfunction b/Asset/data/asset/functions/object/alias/1086/summon.mcfunction new file mode 100644 index 0000000000..4308973833 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1086/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1086/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1086.lightning_exploit/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1086/tick.mcfunction b/Asset/data/asset/functions/object/alias/1086/tick.mcfunction new file mode 100644 index 0000000000..ee6b2e8af3 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1086/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1086/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1086.lightning_exploit/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1089/register.mcfunction b/Asset/data/asset/functions/object/alias/1089/register.mcfunction new file mode 100644 index 0000000000..3b92225203 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1089/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1089/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1089.cosmo_beam/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1089/summon.mcfunction b/Asset/data/asset/functions/object/alias/1089/summon.mcfunction new file mode 100644 index 0000000000..bade77ca48 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1089/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1089/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1089.cosmo_beam/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1089/tick.mcfunction b/Asset/data/asset/functions/object/alias/1089/tick.mcfunction new file mode 100644 index 0000000000..376c434fa0 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1089/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1089/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1089.cosmo_beam/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1090/register.mcfunction b/Asset/data/asset/functions/object/alias/1090/register.mcfunction new file mode 100644 index 0000000000..3d00ebb2b0 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1090/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1090/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1090.cosmo_text/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1090/summon.mcfunction b/Asset/data/asset/functions/object/alias/1090/summon.mcfunction new file mode 100644 index 0000000000..a9ceed0f44 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1090/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1090/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1090.cosmo_text/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1090/tick.mcfunction b/Asset/data/asset/functions/object/alias/1090/tick.mcfunction new file mode 100644 index 0000000000..dc555c14da --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1090/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1090/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1090.cosmo_text/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1098/init.mcfunction b/Asset/data/asset/functions/object/alias/1098/init.mcfunction new file mode 100644 index 0000000000..759f8b1d9f --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1098/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1098/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1098.alchemy_laser/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1098/register.mcfunction b/Asset/data/asset/functions/object/alias/1098/register.mcfunction new file mode 100644 index 0000000000..4c0354584c --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1098/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1098/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1098.alchemy_laser/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1098/summon.mcfunction b/Asset/data/asset/functions/object/alias/1098/summon.mcfunction new file mode 100644 index 0000000000..f3597edaa9 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1098/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1098/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1098.alchemy_laser/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1098/tick.mcfunction b/Asset/data/asset/functions/object/alias/1098/tick.mcfunction new file mode 100644 index 0000000000..da94033b9c --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1098/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1098/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1098.alchemy_laser/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1099/register.mcfunction b/Asset/data/asset/functions/object/alias/1099/register.mcfunction new file mode 100644 index 0000000000..44cb7f607d --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1099/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1099/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1099.conviction_sword/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1099/summon.mcfunction b/Asset/data/asset/functions/object/alias/1099/summon.mcfunction new file mode 100644 index 0000000000..91d401339c --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1099/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1099/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1099.conviction_sword/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1099/tick.mcfunction b/Asset/data/asset/functions/object/alias/1099/tick.mcfunction new file mode 100644 index 0000000000..68895abe51 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1099/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1099/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1099.conviction_sword/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1100/detect_hit_entity.mcfunction b/Asset/data/asset/functions/object/alias/1100/detect_hit_entity.mcfunction new file mode 100644 index 0000000000..dbe1f6f33b --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1100/detect_hit_entity.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1100/detect_hit_entity +# +# メソッド処理のエイリアス +# +# @within asset_manager:object/call_method/run_method.m + +# 元のメソッド処理を呼び出す + function asset:object/1100.conviction_shot/detect_hit_entity/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1100/hit_entity.mcfunction b/Asset/data/asset/functions/object/alias/1100/hit_entity.mcfunction new file mode 100644 index 0000000000..5106f47cb7 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1100/hit_entity.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1100/hit_entity +# +# メソッド処理のエイリアス +# +# @within asset_manager:object/call_method/run_method.m + +# 元のメソッド処理を呼び出す + function asset:object/1100.conviction_shot/hit_entity/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1100/init.mcfunction b/Asset/data/asset/functions/object/alias/1100/init.mcfunction new file mode 100644 index 0000000000..b50df8a8af --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1100/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1100/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1100.conviction_shot/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1100/register.mcfunction b/Asset/data/asset/functions/object/alias/1100/register.mcfunction new file mode 100644 index 0000000000..897cb6ffd9 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1100/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1100/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1100.conviction_shot/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1100/summon.mcfunction b/Asset/data/asset/functions/object/alias/1100/summon.mcfunction new file mode 100644 index 0000000000..437052d371 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1100/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1100/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1100.conviction_shot/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1100/tick.mcfunction b/Asset/data/asset/functions/object/alias/1100/tick.mcfunction new file mode 100644 index 0000000000..d1fd6f0903 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1100/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1100/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1100.conviction_shot/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1101/init.mcfunction b/Asset/data/asset/functions/object/alias/1101/init.mcfunction new file mode 100644 index 0000000000..9a4e2eb5c5 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1101/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1101/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1101.tnt/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1101/register.mcfunction b/Asset/data/asset/functions/object/alias/1101/register.mcfunction new file mode 100644 index 0000000000..a656666806 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1101/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1101/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1101.tnt/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1101/summon.mcfunction b/Asset/data/asset/functions/object/alias/1101/summon.mcfunction new file mode 100644 index 0000000000..bd285134fe --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1101/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1101/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1101.tnt/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1101/tick.mcfunction b/Asset/data/asset/functions/object/alias/1101/tick.mcfunction new file mode 100644 index 0000000000..d20c6ddf14 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1101/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1101/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1101.tnt/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1102/init.mcfunction b/Asset/data/asset/functions/object/alias/1102/init.mcfunction new file mode 100644 index 0000000000..484b3556f7 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1102/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1102/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1102.turret/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1102/register.mcfunction b/Asset/data/asset/functions/object/alias/1102/register.mcfunction new file mode 100644 index 0000000000..91dedbb8fe --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1102/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1102/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1102.turret/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1102/summon.mcfunction b/Asset/data/asset/functions/object/alias/1102/summon.mcfunction new file mode 100644 index 0000000000..95404aed95 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1102/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1102/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1102.turret/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1102/tick.mcfunction b/Asset/data/asset/functions/object/alias/1102/tick.mcfunction new file mode 100644 index 0000000000..021ce82958 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1102/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1102/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1102.turret/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1103/init.mcfunction b/Asset/data/asset/functions/object/alias/1103/init.mcfunction new file mode 100644 index 0000000000..e0acdffedd --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1103/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1103/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/1103.light_ball/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1103/register.mcfunction b/Asset/data/asset/functions/object/alias/1103/register.mcfunction new file mode 100644 index 0000000000..b5df7e8ef4 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1103/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1103/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/1103.light_ball/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1103/summon.mcfunction b/Asset/data/asset/functions/object/alias/1103/summon.mcfunction new file mode 100644 index 0000000000..6ca300c44a --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1103/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1103/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/1103.light_ball/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/1103/tick.mcfunction b/Asset/data/asset/functions/object/alias/1103/tick.mcfunction new file mode 100644 index 0000000000..a10a70d896 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/1103/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/1103/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/1103.light_ball/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2203/register.mcfunction b/Asset/data/asset/functions/object/alias/2203/register.mcfunction new file mode 100644 index 0000000000..c967047f6d --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2203/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2203/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/2203.sonicbomber_destroyed/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2203/summon.mcfunction b/Asset/data/asset/functions/object/alias/2203/summon.mcfunction new file mode 100644 index 0000000000..aee6f4c505 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2203/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2203/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/2203.sonicbomber_destroyed/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2203/tick.mcfunction b/Asset/data/asset/functions/object/alias/2203/tick.mcfunction new file mode 100644 index 0000000000..ae317b8624 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2203/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2203/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/2203.sonicbomber_destroyed/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2204/init.mcfunction b/Asset/data/asset/functions/object/alias/2204/init.mcfunction new file mode 100644 index 0000000000..4d66efb268 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2204/init.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2204/init +# +# Init処理のエイリアス +# +# @within asset_manager:object/init/init.m + +# 元のInit処理を呼び出す + function asset:object/2204.sonicbomber_leftwing/init/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2204/register.mcfunction b/Asset/data/asset/functions/object/alias/2204/register.mcfunction new file mode 100644 index 0000000000..dfbeedafe6 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2204/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2204/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/2204.sonicbomber_leftwing/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2204/summon.mcfunction b/Asset/data/asset/functions/object/alias/2204/summon.mcfunction new file mode 100644 index 0000000000..bc6e863675 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2204/summon.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2204/summon +# +# Object召喚処理のエイリアス +# +# @within asset_manager:object/summon/summon.m + +# 元の召喚処理を呼び出す + function asset:object/2204.sonicbomber_leftwing/summon/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2204/tick.mcfunction b/Asset/data/asset/functions/object/alias/2204/tick.mcfunction new file mode 100644 index 0000000000..da27927915 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2204/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2204/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/2204.sonicbomber_leftwing/tick/ \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2205/register.mcfunction b/Asset/data/asset/functions/object/alias/2205/register.mcfunction new file mode 100644 index 0000000000..da4163207d --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2205/register.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2205/register +# +# Objectのデータ指定処理のエイリアス +# +# @within asset_manager:object/summon/register.m + +# 元の登録処理を呼び出す + function asset:object/2205.circle_announce_drone/register \ No newline at end of file diff --git a/Asset/data/asset/functions/object/alias/2205/tick.mcfunction b/Asset/data/asset/functions/object/alias/2205/tick.mcfunction new file mode 100644 index 0000000000..8d43a669e4 --- /dev/null +++ b/Asset/data/asset/functions/object/alias/2205/tick.mcfunction @@ -0,0 +1,8 @@ +#> asset:object/alias/2205/tick +# +# Tick時処理のエイリアス +# +# @within asset_manager:object/tick/tick.m + +# 元のTick処理を呼び出す + function asset:object/2205.circle_announce_drone/tick/ \ No newline at end of file diff --git a/Asset/data/asset/item_modifiers/artifact/0911.reactive_armor_head/decrease_toughness.json b/Asset/data/asset/item_modifiers/artifact/0911.reactive_armor_head/decrease_toughness.json deleted file mode 100644 index a0e3ed50c1..0000000000 --- a/Asset/data/asset/item_modifiers/artifact/0911.reactive_armor_head/decrease_toughness.json +++ /dev/null @@ -1,19 +0,0 @@ -[ - { - "function": "set_attributes", - "modifiers": [ - { - "attribute": "generic.armor_toughness", - "amount": -0.5, - "operation": "addition", - "slot": "head", - "name": "decrease_toughness" - } - ] - }, - { - "function": "set_damage", - "damage": -0.125, - "add": true - } -] \ No newline at end of file diff --git a/Asset/data/asset/item_modifiers/artifact/0912.reactive_armor_chest/decrease_toughness.json b/Asset/data/asset/item_modifiers/artifact/0912.reactive_armor_chest/decrease_toughness.json deleted file mode 100644 index 3893bb0d16..0000000000 --- a/Asset/data/asset/item_modifiers/artifact/0912.reactive_armor_chest/decrease_toughness.json +++ /dev/null @@ -1,19 +0,0 @@ -[ - { - "function": "set_attributes", - "modifiers": [ - { - "attribute": "generic.armor_toughness", - "amount": -0.5, - "operation": "addition", - "slot": "chest", - "name": "decrease_toughness" - } - ] - }, - { - "function": "set_damage", - "damage": -0.125, - "add": true - } -] \ No newline at end of file diff --git a/Asset/data/asset/item_modifiers/artifact/0913.reactive_armor_legs/decrease_toughness.json b/Asset/data/asset/item_modifiers/artifact/0913.reactive_armor_legs/decrease_toughness.json deleted file mode 100644 index ad350cf357..0000000000 --- a/Asset/data/asset/item_modifiers/artifact/0913.reactive_armor_legs/decrease_toughness.json +++ /dev/null @@ -1,19 +0,0 @@ -[ - { - "function": "set_attributes", - "modifiers": [ - { - "attribute": "generic.armor_toughness", - "amount": -0.5, - "operation": "addition", - "slot": "legs", - "name": "decrease_toughness" - } - ] - }, - { - "function": "set_damage", - "damage": -0.125, - "add": true - } -] \ No newline at end of file diff --git a/Asset/data/asset/item_modifiers/artifact/0914.reactive_armor_feet/decrease_toughness.json b/Asset/data/asset/item_modifiers/artifact/0914.reactive_armor_feet/decrease_toughness.json deleted file mode 100644 index cd177eb22f..0000000000 --- a/Asset/data/asset/item_modifiers/artifact/0914.reactive_armor_feet/decrease_toughness.json +++ /dev/null @@ -1,19 +0,0 @@ -[ - { - "function": "set_attributes", - "modifiers": [ - { - "attribute": "generic.armor_toughness", - "amount": -0.5, - "operation": "addition", - "slot": "feet", - "name": "decrease_toughness" - } - ] - }, - { - "function": "set_damage", - "damage": -0.125, - "add": true - } -] \ No newline at end of file diff --git a/Asset/data/asset/predicates/effect/0191.night_vision/night_vision.json b/Asset/data/asset/predicates/effect/0191.night_vision/night_vision.json new file mode 100644 index 0000000000..fe8c869e53 --- /dev/null +++ b/Asset/data/asset/predicates/effect/0191.night_vision/night_vision.json @@ -0,0 +1,9 @@ +{ + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "effects": { + "minecraft:night_vision": {} + } + } +} diff --git a/Asset/data/asset/tags/functions/artifact/attack.json b/Asset/data/asset/tags/functions/artifact/attack.json index 6a086598d2..2b7a270151 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/0897.lightning_broach/trigger/1.trigger", "asset:artifact/0554.catastrophe/trigger/fullset/attack/1.trigger", "asset:artifact/1110.lantern_of_firefly/trigger/1.trigger", "asset:artifact/1149.afterglow_of_thunder/trigger/1.trigger", diff --git a/Asset/data/asset/tags/functions/artifact/attack/melee.json b/Asset/data/asset/tags/functions/artifact/attack/melee.json index c53b3241df..1d16f8f958 100644 --- a/Asset/data/asset/tags/functions/artifact/attack/melee.json +++ b/Asset/data/asset/tags/functions/artifact/attack/melee.json @@ -1,5 +1,9 @@ { "values": [ + "asset:artifact/1193.firebrand/trigger/1.trigger", + "asset:artifact/1202.scrap_maker/trigger/1.trigger", + "asset:artifact/1174.sanguis/trigger/1.trigger", + "asset:artifact/1200.alchemy_hammer/trigger/1.trigger", "asset:artifact/1175.rubber_mallet/trigger/1.trigger", "asset:artifact/1192.celestial_harmony/trigger/1.trigger", "asset:artifact/1216.sharpened_netherite_axe/trigger/1.trigger", @@ -29,7 +33,6 @@ "asset:artifact/0959.whirlwind_scabbard/trigger/1.trigger", "asset:artifact/0927.lexiel_s_oath/trigger/1.trigger", "asset:artifact/0931.d_u_t_y/trigger/1.trigger", - "asset:artifact/0897.lightning_broach/trigger/1.trigger", "asset:artifact/0756.sakura_hubuki/trigger/1.trigger", "asset:artifact/0910.ignite/trigger/1.trigger", "asset:artifact/0077.swords_of_waterfall_climbing/trigger/1.trigger", @@ -67,4 +70,4 @@ "asset:artifact/0672.aurora_blade/trigger/1.trigger", "asset:artifact/0745.blade_of_whirlwind/trigger/1.trigger" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json b/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json index f0e5c1d824..429f89c125 100644 --- a/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json +++ b/Asset/data/asset/tags/functions/artifact/click.carrot_on_a_stick.json @@ -1,6 +1,10 @@ { "values": [ "asset:artifact/0797.heartbleed/trigger/1.trigger", + "asset:artifact/0294.turret/trigger/1.trigger", + "asset:artifact/0464.lightning_exploit/trigger/1.trigger", + "asset:artifact/1199.healer_trance/trigger/1.trigger", + "asset:artifact/1183.cosmo_site/trigger/1.trigger", "asset:artifact/1176.b_l_e_s_s/trigger/1.trigger", "asset:artifact/1121.inferno_rush/trigger/1.trigger", "asset:artifact/1029.conviction_bone/trigger/1.trigger", @@ -140,4 +144,4 @@ "asset:artifact/0269.holy_symbol_lv.10/trigger/1.trigger", "asset:artifact/0270.angel_ray_lv.10/trigger/1.trigger" ] -} \ No newline at end of file +} diff --git a/Asset/data/asset/tags/functions/artifact/dis_equip.json b/Asset/data/asset/tags/functions/artifact/dis_equip.json index a5b116189d..104ccc4fc9 100644 --- a/Asset/data/asset/tags/functions/artifact/dis_equip.json +++ b/Asset/data/asset/tags/functions/artifact/dis_equip.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/0860.angel_wing/trigger/dis_equip/", "asset:artifact/0207.life_is_transitory/trigger/dis_equip/", "asset:artifact/0561.solitariness/trigger/dis_equip/", "asset:artifact/0991.soul_mate/dis_equip/", diff --git a/Asset/data/asset/tags/functions/artifact/equip.json b/Asset/data/asset/tags/functions/artifact/equip.json index be05a5dceb..0f93f21f71 100644 --- a/Asset/data/asset/tags/functions/artifact/equip.json +++ b/Asset/data/asset/tags/functions/artifact/equip.json @@ -1,5 +1,6 @@ { "values": [ + "asset:artifact/0860.angel_wing/trigger/1.trigger", "asset:artifact/0207.life_is_transitory/trigger/1.trigger", "asset:artifact/0561.solitariness/trigger/1.trigger", "asset:artifact/0991.soul_mate/equip/1.trigger", diff --git a/Asset/data/asset/tags/functions/artifact/give.json b/Asset/data/asset/tags/functions/artifact/give.json index 6d8782cfbd..ccfb3c69ec 100644 --- a/Asset/data/asset/tags/functions/artifact/give.json +++ b/Asset/data/asset/tags/functions/artifact/give.json @@ -1,6 +1,14 @@ { "values": [ "asset:artifact/0797.heartbleed/give/1.trigger", + "asset:artifact/0294.turret/give/1.trigger", + "asset:artifact/1193.firebrand/give/1.trigger", + "asset:artifact/0464.lightning_exploit/give/1.trigger", + "asset:artifact/1202.scrap_maker/give/1.trigger", + "asset:artifact/1199.healer_trance/give/1.trigger", + "asset:artifact/1183.cosmo_site/give/1.trigger", + "asset:artifact/1174.sanguis/give/1.trigger", + "asset:artifact/1200.alchemy_hammer/give/1.trigger", "asset:artifact/1176.b_l_e_s_s/give/1.trigger", "asset:artifact/1175.rubber_mallet/give/1.trigger", "asset:artifact/1192.celestial_harmony/give/1.trigger", @@ -432,4 +440,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/load.json b/Asset/data/asset/tags/functions/artifact/load.json index 941a99f306..516e904544 100644 --- a/Asset/data/asset/tags/functions/artifact/load.json +++ b/Asset/data/asset/tags/functions/artifact/load.json @@ -1,8 +1,8 @@ { "values": [ + "asset:artifact/1174.sanguis/trigger/0.load", "asset:artifact/1088.purifying_hydrangea/trigger/0.load", "asset:artifact/1081.wandering_piece_of_dream/trigger/0.load", - "asset:artifact/1029.conviction_bone/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", @@ -46,7 +46,6 @@ "asset:artifact/0967.enhanced_protection/trigger/0.load", "asset:artifact/0005.musket_matchlock/trigger/0.load", "asset:artifact/0905.book_of_metastasis/trigger/0.load", - "asset:artifact/0907.rod_of_rain/trigger/0.load", "asset:artifact/0218.iron_storm/trigger/0.load", "asset:artifact/0152.call_cat/trigger/0.load", "asset:artifact/0278.reveille/trigger/0.load", diff --git a/Asset/data/asset/tags/functions/artifact/register.json b/Asset/data/asset/tags/functions/artifact/register.json index 0d9bad6854..6deb754a00 100644 --- a/Asset/data/asset/tags/functions/artifact/register.json +++ b/Asset/data/asset/tags/functions/artifact/register.json @@ -1,6 +1,14 @@ { "values": [ "asset:artifact/0797.heartbleed/register", + "asset:artifact/0294.turret/register", + "asset:artifact/1193.firebrand/register", + "asset:artifact/0464.lightning_exploit/register", + "asset:artifact/1202.scrap_maker/register", + "asset:artifact/1199.healer_trance/register", + "asset:artifact/1183.cosmo_site/register", + "asset:artifact/1174.sanguis/register", + "asset:artifact/1200.alchemy_hammer/register", "asset:artifact/1192.celestial_harmony/register", "asset:artifact/0715.world_tree_crown/register", "asset:artifact/1141.bell_of_courage/register", @@ -257,4 +265,4 @@ "asset:artifact/1027.fire_of_rebirth/register", "asset:artifact/1111.rod_o_redeem/register" ] -} \ No newline at end of file +} diff --git a/Asset/data/asset/tags/functions/artifact/tick.json b/Asset/data/asset/tags/functions/artifact/tick.json index 9af24427bc..af90af621a 100644 --- a/Asset/data/asset/tags/functions/artifact/tick.json +++ b/Asset/data/asset/tags/functions/artifact/tick.json @@ -14,7 +14,6 @@ "asset:artifact/0741.abyss_insurance_card/trigger/1.trigger", "asset:artifact/0844.closed_eyes_of_love/trigger/1.trigger", "asset:artifact/0933.auto_torch/trigger/1.trigger", - "asset:artifact/0860.angel_wing/trigger/1.trigger", "asset:artifact/0164.blessing_boots/trigger/1.trigger", "asset:artifact/0165.blessing_leggings/trigger/1.trigger", "asset:artifact/0166.blessing_armor/trigger/1.trigger", diff --git a/Asset/data/asset/tags/functions/effect/end.json b/Asset/data/asset/tags/functions/effect/end.json index 48ed033cbf..e67b55e5b5 100644 --- a/Asset/data/asset/tags/functions/effect/end.json +++ b/Asset/data/asset/tags/functions/effect/end.json @@ -1,5 +1,17 @@ { "values": [ + "asset:effect/0014.receive_heal_debuff/_/end", + "asset:effect/0294.dance_with_hardluck/_/end", + "asset:effect/0293.beyond_the_speed/_/end", + "asset:effect/0292.awaited_opportunity/_/end", + "asset:effect/0271.ghostly_texture/_/end", + "asset:effect/0304.residue_of_pumpkin/_/end", + "asset:effect/0191.night_vision/_/end", + "asset:effect/0310.angel_wing/_/end", + "asset:effect/0291.mine_soul/_/end", + "asset:effect/0286.dont_hit_me/_/end", + "asset:effect/0308.healer_trance/_/end", + "asset:effect/0309.healer_trance/_/end", "asset:effect/0190.fall_damage_immunity/_/end", "asset:effect/0296.soul_disconnection/_/end", "asset:effect/0031.slow_falling/_/end", @@ -70,4 +82,4 @@ "asset:effect/0007.defense_base_debuff/_/end", "asset:effect/0258.spirit_melody/_/end" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/effect/given.json b/Asset/data/asset/tags/functions/effect/given.json index b0140b939f..29ef116e09 100644 --- a/Asset/data/asset/tags/functions/effect/given.json +++ b/Asset/data/asset/tags/functions/effect/given.json @@ -1,5 +1,14 @@ { "values": [ + "asset:effect/0014.receive_heal_debuff/_/given", + "asset:effect/0293.beyond_the_speed/_/given", + "asset:effect/0292.awaited_opportunity/_/given", + "asset:effect/0304.residue_of_pumpkin/_/given", + "asset:effect/0191.night_vision/_/given", + "asset:effect/0310.angel_wing/_/given", + "asset:effect/0286.dont_hit_me/_/given", + "asset:effect/0308.healer_trance/_/given", + "asset:effect/0309.healer_trance/_/given", "asset:effect/0190.fall_damage_immunity/_/given", "asset:effect/0296.soul_disconnection/_/given", "asset:effect/0618.soaked/_/given", diff --git a/Asset/data/asset/tags/functions/effect/load.json b/Asset/data/asset/tags/functions/effect/load.json index fb9ffd396f..033c612a40 100644 --- a/Asset/data/asset/tags/functions/effect/load.json +++ b/Asset/data/asset/tags/functions/effect/load.json @@ -1,5 +1,6 @@ { "values": [ + "asset:effect/0191.night_vision/load", "asset:effect/0605.aurora_corrosion/load", "asset:effect/0601.conviction/load", "asset:effect/0210.fading_speed/load", diff --git a/Asset/data/asset/tags/functions/effect/re-given.json b/Asset/data/asset/tags/functions/effect/re-given.json index bb1ac315ee..bbd3d2a0e4 100644 --- a/Asset/data/asset/tags/functions/effect/re-given.json +++ b/Asset/data/asset/tags/functions/effect/re-given.json @@ -1,5 +1,8 @@ { "values": [ + "asset:effect/0014.receive_heal_debuff/_/re-given", + "asset:effect/0308.healer_trance/_/re-given", + "asset:effect/0309.healer_trance/_/re-given", "asset:effect/0253.purifying_indigo/_/re-given", "asset:effect/0296.soul_disconnection/_/re-given", "asset:effect/0618.soaked/_/re-given", diff --git a/Asset/data/asset/tags/functions/effect/register.json b/Asset/data/asset/tags/functions/effect/register.json index a59c08662e..626f268309 100644 --- a/Asset/data/asset/tags/functions/effect/register.json +++ b/Asset/data/asset/tags/functions/effect/register.json @@ -1,6 +1,22 @@ { "values": [ "asset:effect/0307.bleeding/_/register", + "asset:effect/0114.receive_heal_debuff/_/register", + "asset:effect/0064.receive_heal_debuff/_/register", + "asset:effect/0014.receive_heal_debuff/_/register", + "asset:effect/0294.dance_with_hardluck/_/register", + "asset:effect/0293.beyond_the_speed/_/register", + "asset:effect/0292.awaited_opportunity/_/register", + "asset:effect/0271.ghostly_texture/_/register", + "asset:effect/0304.residue_of_pumpkin/_/register", + "asset:effect/0311.scrap_maker/_/register", + "asset:effect/0191.night_vision/_/register", + "asset:effect/0310.angel_wing/_/register", + "asset:effect/0291.mine_soul/_/register", + "asset:effect/0286.dont_hit_me/_/register", + "asset:effect/0308.healer_trance/_/register", + "asset:effect/0309.healer_trance/_/register", + "asset:effect/0306.reactivearmor_lock/_/register", "asset:effect/0303.celestial_target/_/register", "asset:effect/0190.fall_damage_immunity/_/register", "asset:effect/0620.ongaeshi/_/register", diff --git a/Asset/data/asset/tags/functions/effect/remove.json b/Asset/data/asset/tags/functions/effect/remove.json index 77000bca05..4bf44d9663 100644 --- a/Asset/data/asset/tags/functions/effect/remove.json +++ b/Asset/data/asset/tags/functions/effect/remove.json @@ -1,5 +1,17 @@ { "values": [ + "asset:effect/0014.receive_heal_debuff/_/remove", + "asset:effect/0294.dance_with_hardluck/_/remove", + "asset:effect/0293.beyond_the_speed/_/remove", + "asset:effect/0292.awaited_opportunity/_/remove", + "asset:effect/0271.ghostly_texture/_/remove", + "asset:effect/0304.residue_of_pumpkin/_/remove", + "asset:effect/0191.night_vision/_/remove", + "asset:effect/0310.angel_wing/_/remove", + "asset:effect/0291.mine_soul/_/remove", + "asset:effect/0286.dont_hit_me/_/remove", + "asset:effect/0308.healer_trance/_/remove", + "asset:effect/0309.healer_trance/_/remove", "asset:effect/0190.fall_damage_immunity/_/remove", "asset:effect/0296.soul_disconnection/_/remove", "asset:effect/0031.slow_falling/_/remove", @@ -67,4 +79,4 @@ "asset:effect/0007.defense_base_debuff/_/remove", "asset:effect/0258.spirit_melody/_/remove" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/effect/tick.json b/Asset/data/asset/tags/functions/effect/tick.json index c70f43ee46..ac2ef726bc 100644 --- a/Asset/data/asset/tags/functions/effect/tick.json +++ b/Asset/data/asset/tags/functions/effect/tick.json @@ -1,6 +1,12 @@ { "values": [ "asset:effect/0307.bleeding/_/tick", + "asset:effect/0294.dance_with_hardluck/_/tick", + "asset:effect/0271.ghostly_texture/_/tick", + "asset:effect/0311.scrap_maker/_/tick", + "asset:effect/0191.night_vision/_/tick", + "asset:effect/0310.angel_wing/_/tick", + "asset:effect/0291.mine_soul/_/tick", "asset:effect/0303.celestial_target/_/tick", "asset:effect/0620.ongaeshi/_/tick", "asset:effect/0031.slow_falling/_/tick", diff --git a/Asset/data/asset/tags/functions/mob/load.json b/Asset/data/asset/tags/functions/mob/load.json index 0443bba43b..4229901f3d 100644 --- a/Asset/data/asset/tags/functions/mob/load.json +++ b/Asset/data/asset/tags/functions/mob/load.json @@ -34,7 +34,6 @@ "asset:mob/0055.hetukedah/load", "asset:mob/0046.clock_of_despair/0.load", "asset:mob/0331.aurora_sorcerer/load", - "asset:mob/0330.aurora_reaper/0.load", "asset:mob/0176.killer_bee/load", "asset:mob/0186.ferocious_bee/load", "asset:mob/0275.destroyed_block/0.load", @@ -56,7 +55,6 @@ "asset:mob/0245.fire_creeper/load", "asset:mob/0021.demon_eye/load", "asset:mob/0038.laser_eye/0.load", - "asset:mob/0019.horus_priest/0.load", "asset:mob/0175.queen_bee/0.load", "asset:mob/0124.skull_harpy/load", "asset:mob/0155.immorality/load", diff --git a/Asset/data/asset/tags/functions/object/load.json b/Asset/data/asset/tags/functions/object/load.json index 031b1f1edd..9ed8e40409 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/1102.turret/load", "asset:object/2026.lastbattle_platform/load", "asset:object/2198.rubiel_scythe/load", "asset:object/2197.rubiel_knife/load", @@ -48,4 +49,4 @@ "asset:object/1059.book_of_hero/load", "asset:object/2031.giant_pumpkin/load" ] -} +} \ No newline at end of file diff --git a/Asset/data/asset/tags/functions/rejoin.json b/Asset/data/asset/tags/functions/rejoin.json index d901955c80..b7010b6270 100644 --- a/Asset/data/asset/tags/functions/rejoin.json +++ b/Asset/data/asset/tags/functions/rejoin.json @@ -33,7 +33,6 @@ "asset:artifact/0431.weather_lock_cane/trigger/rejoin_process", "asset:mob/0262.frestchika/rejoin_process", "asset:artifact/0905.book_of_metastasis/trigger/rejoin_process", - "asset:artifact/0907.rod_of_rain/trigger/rejoin_process", "asset:artifact/0609.lunar_flare/trigger/rejoin_process", "asset:artifact/0210.terra_blade/trigger/rejoin_process", "asset:artifact/0078.self_destruct_order/trigger/rejoin_process", diff --git a/Asset/data/minecraft/functions/declares.d.mcfunction b/Asset/data/minecraft/functions/declares.d.mcfunction index 7141170a29..d601a19c7c 100644 --- a/Asset/data/minecraft/functions/declares.d.mcfunction +++ b/Asset/data/minecraft/functions/declares.d.mcfunction @@ -239,7 +239,6 @@ #declare function lib:message/artifact/dont_have_require_items from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/lib/functions/message/artifact/dont_have_require_items.mcfunction#L1 #declare function lib:message/invalid_operation from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/lib/functions/message/invalid_operation.mcfunction#L1 #declare function lib:motion/ from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/lib/functions/motion/.mcfunction#L1 - #declare function lib:random/ from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/lib/functions/random/.mcfunction#L1 #declare function lib:random/with_biased/m from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/lib/functions/random/with_biased/m.mcfunction#L1 #declare function lib:random/with_biased/manual.m from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/lib/functions/random/with_biased/manual.m.mcfunction#L1 #declare function lib:reflection_bullet/ from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/lib/functions/reflection_bullet/.mcfunction#L1 @@ -859,7 +858,7 @@ # function asset:effect/extends # function asset:effect/super.* # function asset:effect/*/register -# function asset:effect/*/ +# function asset:effect/*/*/ # function asset_manager:effect/** #declare storage asset:effect from https://github.com/ProjectTSB/TheSkyBlessing/blob/master/TheSkyBlessing/data/asset_manager/functions/effect/_index.d.mcfunction#L12