Skip to content
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
playsound minecraft:entity.ender_eye.death player @a ~ ~ ~ 2 1

# 敵のステータス表示処理
execute unless entity @s[x_rotation=75..90] as @e[type=#lib:living,type=!player,tag=01.Target,distance=..30,limit=1] run function asset:artifact/0001.book_of_all-seeing/trigger/see_enemy/
execute unless entity @s[x_rotation=75..90] as @e[type=#lib:living_without_player,tag=01.Target,distance=..30,limit=1] run function asset:artifact/0001.book_of_all-seeing/trigger/see_enemy/
execute unless entity @s[x_rotation=75..90] as @p[tag=01.Target,distance=..30,limit=1] run function asset:artifact/0001.book_of_all-seeing/trigger/see_player/

# 自身のステータス表示処理
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
execute as @e[type=area_effect_cloud,tag=5.HitPosition,distance=..1,limit=1] anchored eyes at @s positioned ^ ^ ^6.4 run tp @e[type=area_effect_cloud,tag=5.BlockChecker,distance=..0.1,x=0.0,y=0.0,z=0.0] ~ ~ ~

# MatchlockIndicatorの前方かつ、MatchlockIndicatorの視線の直線上かつブロック検知用のdummyの手前にいる敵にダメージ
execute as @e[type=#lib:living,type=!player,distance=..6] anchored eyes positioned as @s positioned ^ ^ ^1000 facing entity @e[type=area_effect_cloud,tag=5.HitPosition] eyes positioned ^ ^ ^1000 positioned ~-0.5 ~-0.5 ~-0.5 if entity @s[dx=0,dy=0,dz=0] run tag @s add 5.BulletHit
execute as @e[type=#lib:living_without_player,distance=..6] anchored eyes positioned as @s positioned ^ ^ ^1000 facing entity @e[type=area_effect_cloud,tag=5.HitPosition] eyes positioned ^ ^ ^1000 positioned ~-0.5 ~-0.5 ~-0.5 if entity @s[dx=0,dy=0,dz=0] run tag @s add 5.BulletHit
execute as @e[type=#lib:living,tag=5.BulletHit,distance=..6] positioned as @s positioned ^ ^ ^-5 if entity @e[type=area_effect_cloud,tag=5.BlockChecker,distance=..4] run tag @s remove 5.BulletHit
execute as @p[tag=5.Owner] run function api:damage/modifier
execute as @e[type=#lib:living,tag=5.BulletHit,distance=..6,sort=nearest,limit=1] run function api:damage/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,5 @@
data modify storage api: Argument.ID set value 328
data modify storage api: Argument.FieldOverride.Damage set value 11
execute store result storage api: Argument.FieldOverride.UserID int 1 run scoreboard players get @s UserID
execute positioned ^ ^ ^2.5 as @e[type=#lib:living,type=!player,tag=Enemy,tag=!Uninterferable,distance=..2.5] run function api:entity/mob/effect/give
execute positioned ^ ^ ^2.5 as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..2.5] run function api:entity/mob/effect/give
function api:entity/mob/effect/reset
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
# ここから先は神器側の効果の処理を書く

# 光玉を召喚
execute if predicate lib:is_sneaking as @e[type=#lib:living,type=!player,tag=!ExtendedCollision,tag=!Uninterferable,distance=..15] run function asset:artifact/0022.amen_ra_rod/trigger/summon_1
execute if predicate lib:is_sneaking as @e[type=#lib:living,type=!player,tag= ExtendedCollision,distance=..15] run function api:mob/apply_to_forward_target/with_non-idempotent.m {CB:"asset:artifact/0022.amen_ra_rod/trigger/summon_1",Key:"asset:artifact/0022.amen_ra_rod/trigger/3.main",IsForwardedOnly:true}
execute unless predicate lib:is_sneaking as @e[type=#lib:living,type=!player,tag=!ExtendedCollision,tag=!Uninterferable,distance=..15] run function asset:artifact/0022.amen_ra_rod/trigger/summon_2
execute unless predicate lib:is_sneaking as @e[type=#lib:living,type=!player,tag= ExtendedCollision,distance=..15] run function api:mob/apply_to_forward_target/with_non-idempotent.m {CB:"asset:artifact/0022.amen_ra_rod/trigger/summon_2",Key:"asset:artifact/0022.amen_ra_rod/trigger/3.main",IsForwardedOnly:true}
execute if predicate lib:is_sneaking as @e[type=#lib:living_without_player,tag=!ExtendedCollision,tag=!Uninterferable,distance=..15] run function asset:artifact/0022.amen_ra_rod/trigger/summon_1
execute if predicate lib:is_sneaking as @e[type=#lib:living_without_player,tag= ExtendedCollision,distance=..15] run function api:mob/apply_to_forward_target/with_non-idempotent.m {CB:"asset:artifact/0022.amen_ra_rod/trigger/summon_1",Key:"asset:artifact/0022.amen_ra_rod/trigger/3.main",IsForwardedOnly:true}
execute unless predicate lib:is_sneaking as @e[type=#lib:living_without_player,tag=!ExtendedCollision,tag=!Uninterferable,distance=..15] run function asset:artifact/0022.amen_ra_rod/trigger/summon_2
execute unless predicate lib:is_sneaking as @e[type=#lib:living_without_player,tag= ExtendedCollision,distance=..15] run function api:mob/apply_to_forward_target/with_non-idempotent.m {CB:"asset:artifact/0022.amen_ra_rod/trigger/summon_2",Key:"asset:artifact/0022.amen_ra_rod/trigger/3.main",IsForwardedOnly:true}
function api:mob/apply_to_forward_target/reset_initial_apply.m {Key:"asset:artifact/0022.amen_ra_rod/trigger/3.main"}
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
# ここから先は神器側の効果の処理を書く

# 演出
execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] at @s run particle minecraft:crit ~ ~ ~ 0.5 0.5 0.5 1 50 force @a[distance=..10]
execute as @e[type=#lib:living_without_player,tag=Victim,distance=..10] at @s run particle minecraft:crit ~ ~ ~ 0.5 0.5 0.5 1 50 force @a[distance=..10]
playsound minecraft:entity.firework_rocket.blast player @s ~ ~ ~ 1 2

# 軽減貫通ダメージを与える
Expand All @@ -25,6 +25,6 @@
# 補正functionを実行
function api:damage/modifier
# ダメージを与える
execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/
execute as @e[type=#lib:living_without_player,tag=Victim,distance=..10] run function api:damage/
# リセット
function api:damage/reset
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,21 @@
# ここから先は神器側の効果の処理を書く

# 演出
execute at @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run particle minecraft:smoke ~ ~ ~ 1 1 1 0.0001 500 normal @a[distance=..30]
execute at @e[type=#lib:living_without_player,tag=Victim,distance=..10] run particle minecraft:smoke ~ ~ ~ 1 1 1 0.0001 500 normal @a[distance=..30]
playsound minecraft:entity.splash_potion.break player @a[distance=..30] ~ ~ ~ 1 0.5

# 物理無属性ダメージ
data modify storage api: Argument.Damage set value 50.0f
data modify storage api: Argument.AttackType set value "Physical"
data modify storage api: Argument.ElementType set value "None"
function api:damage/modifier
execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:damage/
execute as @e[type=#lib:living_without_player,tag=Victim,distance=..10] run function api:damage/
# リセット
function api:damage/reset

# 敵にコンバラトキシンを付与
data modify storage api: Argument.ID set value 205
data modify storage api: Argument.FieldOverride.Damage set value 25
execute store result storage api: Argument.FieldOverride.AppliedFrom int 1 run scoreboard players get @s UserID
execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..10] run function api:entity/mob/effect/give
execute as @e[type=#lib:living_without_player,tag=Victim,distance=..10] run function api:entity/mob/effect/give
function api:entity/mob/effect/reset
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く mainhand/feet/legs/chest/head/mainhand/offhandを記載してね
function asset:artifact/common/check_condition/mainhand
# 他にアイテム等確認する場合はここに書く
execute if entity @s[tag=CanUsed] unless entity @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..5,limit=1] run playsound minecraft:block.dispenser.fail player @a ~ ~ ~ 1 1
execute unless entity @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..5,limit=1] run tag @s remove CanUsed
execute if entity @s[tag=CanUsed] unless entity @e[type=#lib:living_without_player,tag=!Uninterferable,distance=..5,limit=1] run playsound minecraft:block.dispenser.fail player @a ~ ~ ~ 1 1
execute unless entity @e[type=#lib:living_without_player,tag=!Uninterferable,distance=..5,limit=1] run tag @s remove CanUsed
# CanUsedタグをチェックして3.main.mcfunctionを実行する
execute if entity @s[tag=CanUsed] run function asset:artifact/0075.whirlpool_wand/trigger/3.main
Original file line number Diff line number Diff line change
Expand Up @@ -10,22 +10,22 @@
# ここから先は神器側の効果の処理を書く

# 演出(水中)
execute at @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,predicate=lib:is_in_water/include_flowing,distance=..5] run function asset:artifact/0075.whirlpool_wand/trigger/vfx/inside_water
execute at @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,predicate=lib:is_in_water/include_flowing,distance=..5] run function asset:artifact/0075.whirlpool_wand/trigger/vfx/inside_water
# 演出(水中ではない)
execute at @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,predicate=!lib:is_in_water/include_flowing,distance=..5] run function asset:artifact/0075.whirlpool_wand/trigger/vfx/outside_water
execute at @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,predicate=!lib:is_in_water/include_flowing,distance=..5] run function asset:artifact/0075.whirlpool_wand/trigger/vfx/outside_water

# ダメージ(水中)
data modify storage api: Argument.Damage set value 25f
data modify storage api: Argument.AttackType set value "Magic"
data modify storage api: Argument.ElementType set value "Water"
function api:damage/modifier
execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,predicate=lib:is_in_water/include_flowing,distance=..5] run function api:damage/
execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,predicate=lib:is_in_water/include_flowing,distance=..5] run function api:damage/
function api:damage/reset

# ダメージ(水中ではない)
data modify storage api: Argument.Damage set value 12f
data modify storage api: Argument.AttackType set value "Magic"
data modify storage api: Argument.ElementType set value "Water"
function api:damage/modifier
execute as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,predicate=!lib:is_in_water/include_flowing,distance=..5] run function api:damage/
execute as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,predicate=!lib:is_in_water/include_flowing,distance=..5] run function api:damage/
function api:damage/reset
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
data modify storage api: Argument.AttackType set value "Physical"
data modify storage api: Argument.ElementType set value "Water"
function api:damage/modifier
execute at @e[type=#lib:living,tag=Victim,distance=..50] as @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,distance=..3] run function api:damage/
execute at @e[type=#lib:living,tag=Victim,distance=..50] as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..3] run function api:damage/
function api:damage/reset

# リセット
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@
# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く mainhand/feet/legs/chest/head/mainhand/offhandを記載してね
function asset:artifact/common/check_condition/mainhand
# 他にアイテム等確認する場合はここに書く
execute unless entity @e[type=#lib:living,type=!player,tag=Enemy,tag=!Uninterferable,distance=..10] run tag @s remove CanUsed
execute unless entity @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10] run tag @s remove CanUsed
# CanUsedタグをチェックして3.main.mcfunctionを実行する
execute if entity @s[tag=CanUsed] run function asset:artifact/0079.shoot_down_a_flying_dragon/trigger/3.main
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,16 @@

# 対象を設定
# 前提として近い1体はHit確定
tag @e[type=#lib:living,type=!player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] add Hit
tag @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10,sort=nearest,limit=1] add Hit

# 自身が水の近くにいた場合($AroundWater=1..)、「r=..10にいる、周囲に水がある敵」も対象となる
# //要するに自分も相手も水の近くにいたら範囲攻撃!!
# MobのTemporaryはMob周囲の水の数に設定(ちょっと広めに判定をとる)
execute if score $AroundWater Temporary matches 1.. as @e[type=#lib:living,type=!player,tag=Enemy,tag=!Uninterferable,distance=..10] at @s store result score @s Temporary run clone ~-1 ~-0.5 ~-1 ~1 ~0.5 ~1 ~-1 ~-0.5 ~-1 filtered water force
execute if score $AroundWater Temporary matches 1.. as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10] at @s store result score @s Temporary run clone ~-1 ~-0.5 ~-1 ~1 ~0.5 ~1 ~-1 ~-0.5 ~-1 filtered water force
# as Mob:@s のTemporaryが1..ならHitする
execute if score $AroundWater Temporary matches 1.. as @e[type=#lib:living,type=!player,tag=Enemy,tag=!Uninterferable,distance=..10] if score @s Temporary matches 1.. run tag @s add Hit
execute if score $AroundWater Temporary matches 1.. as @e[type=#lib:living_without_player,tag=Enemy,tag=!Uninterferable,distance=..10] if score @s Temporary matches 1.. run tag @s add Hit
# プレイヤーへの誤Hit処理 HitしたMobの近くにいると自分にもあたる やっぱPKしたいじゃぁん?
execute at @e[type=#lib:living,type=!player,tag=Hit,distance=..10] as @a[distance=..0.10] run tag @s add Hit
execute at @e[type=#lib:living_without_player,tag=Hit,distance=..10] as @a[distance=..0.10] run tag @s add Hit


# ダメージを設定
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,6 @@
data modify storage api: Argument.AttackType set value "Magic"
# ダメージを与える
function api:damage/modifier
execute as @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..10] run function api:damage/
execute as @e[type=#lib:living_without_player,tag=!Uninterferable,distance=..10] run function api:damage/
# リセット
function api:damage/reset
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@

# ここから先は神器側の効果の処理を書く
# 攻撃先のエンティティで実行
execute as @e[type=#lib:living,type=!player,tag=Victim,distance=..15] at @s run function asset:artifact/0106.stone_cutter_blade/trigger/3.1.entity.main
execute as @e[type=#lib:living_without_player,tag=Victim,distance=..15] at @s run function asset:artifact/0106.stone_cutter_blade/trigger/3.1.entity.main
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@
# 神器の基本的な条件の確認を行うfunction、成功している場合CanUsedタグが付く mainhand/feet/legs/chest/head/mainhand/offhandを記載してね
function asset:artifact/common/check_condition/mainhand
# 他にアイテム等確認する場合はここに書く
execute if entity @s[tag=CanUsed] anchored eyes positioned ^ ^ ^ as @e[type=#lib:living,type=!player,tag=!Uninterferable,distance=..5,sort=random] run function asset:artifact/0122.lunatic_lay/trigger/find_through_target/
execute if entity @s[tag=CanUsed] unless entity @e[type=#lib:living,type=!player,tag=3E.Hit,distance=..5] run playsound minecraft:block.dispenser.fail player @a ~ ~ ~ 1 1
execute if entity @s[tag=CanUsed] unless entity @e[type=#lib:living,type=!player,tag=3E.Hit,distance=..5] run tag @s remove CanUsed
execute if entity @s[tag=CanUsed] anchored eyes positioned ^ ^ ^ as @e[type=#lib:living_without_player,tag=!Uninterferable,distance=..5,sort=random] run function asset:artifact/0122.lunatic_lay/trigger/find_through_target/
execute if entity @s[tag=CanUsed] unless entity @e[type=#lib:living_without_player,tag=3E.Hit,distance=..5] run playsound minecraft:block.dispenser.fail player @a ~ ~ ~ 1 1
execute if entity @s[tag=CanUsed] unless entity @e[type=#lib:living_without_player,tag=3E.Hit,distance=..5] run tag @s remove CanUsed
data remove storage asset:temp IsTargetEntityFound
# CanUsedタグをチェックして3.main.mcfunctionを実行する
execute if entity @s[tag=CanUsed] run function asset:artifact/0122.lunatic_lay/trigger/3.main
# リセット
tag @e[type=#lib:living,type=!player,tag=3E.Hit,distance=..5] remove 3E.Hit
tag @e[type=#lib:living_without_player,tag=3E.Hit,distance=..5] remove 3E.Hit
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@

# ここから先は神器側の効果の処理を書く
# 演出
execute at @e[type=#lib:living,type=!player,tag=3E.Hit,distance=..5] run function asset:artifact/0122.lunatic_lay/trigger/vfx
execute at @e[type=#lib:living_without_player,tag=3E.Hit,distance=..5] run function asset:artifact/0122.lunatic_lay/trigger/vfx
playsound entity.lightning_bolt.thunder player @a ~ ~ ~ 1 2
# ダメージ
data modify storage api: Argument.Damage set value 110.0f
data modify storage api: Argument.AttackType set value "Magic"
data modify storage api: Argument.ElementType set value "Thunder"
function api:damage/modifier
execute as @e[type=#lib:living,type=!player,tag=3E.Hit,distance=..5] run function api:damage/
execute as @e[type=#lib:living_without_player,tag=3E.Hit,distance=..5] run function api:damage/
# リセット
function api:damage/reset
Loading
Loading