text:
#> asset:mob/0185.tutankhamen/tick/magic_square/06.5th_square
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/magic_square/01.main

# 演出
    playsound entity.evoker.prepare_summon hostile @a[distance=..20] ~ ~ ~ 1.2 0.5 0.4

# ダメージ
    execute if entity @s[scores={55.Tick=90}] if entity @a[tag=!PlayerShouldInvulnerable,distance=..8] run function asset:mob/0185.tutankhamen/tick/magic_square/11.5th_damage

# 円 5
    particle witch ^0 ^ ^-8 0 0 0 0 1
    particle witch ^0.31408 ^ ^-7.99383 0 0 0 0 1
    particle witch ^0.62767 ^ ^-7.97534 0 0 0 0 1
    particle witch ^0.9403 ^ ^-7.94455 0 0 0 0 1
    particle witch ^1.25148 ^ ^-7.90151 0 0 0 0 1
    particle witch ^1.56072 ^ ^-7.84628 0 0 0 0 1
    particle witch ^1.86756 ^ ^-7.77896 0 0 0 0 1
    particle witch ^2.17152 ^ ^-7.69964 0 0 0 0 1
    particle witch ^2.47214 ^ ^-7.60845 0 0 0 0 1
    particle witch ^2.76894 ^ ^-7.50553 0 0 0 0 1
    particle witch ^3.06147 ^ ^-7.39104 0 0 0 0 1
    particle witch ^3.34928 ^ ^-7.26515 0 0 0 0 1
    particle witch ^3.63192 ^ ^-7.12805 0 0 0 0 1
    particle witch ^3.90897 ^ ^-6.97997 0 0 0 0 1
    particle witch ^4.17999 ^ ^-6.82112 0 0 0 0 1
    particle witch ^4.44456 ^ ^-6.65176 0 0 0 0 1
    particle witch ^4.70228 ^ ^-6.47214 0 0 0 0 1
    particle witch ^4.95275 ^ ^-6.28254 0 0 0 0 1
    particle witch ^5.19558 ^ ^-6.08325 0 0 0 0 1
    particle witch ^5.43041 ^ ^-5.87458 0 0 0 0 1
    particle witch ^5.65685 ^ ^-5.65685 0 0 0 0 1
    particle witch ^5.87458 ^ ^-5.43041 0 0 0 0 1
    particle witch ^6.08325 ^ ^-5.19558 0 0 0 0 1
    particle witch ^6.28254 ^ ^-4.95275 0 0 0 0 1
    particle witch ^6.47214 ^ ^-4.70228 0 0 0 0 1
    particle witch ^6.65176 ^ ^-4.44456 0 0 0 0 1
    particle witch ^6.82112 ^ ^-4.17999 0 0 0 0 1
    particle witch ^6.97997 ^ ^-3.90897 0 0 0 0 1
    particle witch ^7.12805 ^ ^-3.63192 0 0 0 0 1
    particle witch ^7.26515 ^ ^-3.34928 0 0 0 0 1
    particle witch ^7.39104 ^ ^-3.06147 0 0 0 0 1
    particle witch ^7.50553 ^ ^-2.76894 0 0 0 0 1
    particle witch ^7.60845 ^ ^-2.47214 0 0 0 0 1
    particle witch ^7.69964 ^ ^-2.17152 0 0 0 0 1
    particle witch ^7.77896 ^ ^-1.86756 0 0 0 0 1
    particle witch ^7.84628 ^ ^-1.56072 0 0 0 0 1
    particle witch ^7.90151 ^ ^-1.25148 0 0 0 0 1
    particle witch ^7.94455 ^ ^-0.9403 0 0 0 0 1
    particle witch ^7.97534 ^ ^-0.62767 0 0 0 0 1
    particle witch ^7.99383 ^ ^-0.31408 0 0 0 0 1
    particle witch ^8 ^ ^0 0 0 0 0 1
    particle witch ^7.99383 ^ ^0.31408 0 0 0 0 1
    particle witch ^7.97534 ^ ^0.62767 0 0 0 0 1
    particle witch ^7.94455 ^ ^0.9403 0 0 0 0 1
    particle witch ^7.90151 ^ ^1.25148 0 0 0 0 1
    particle witch ^7.84628 ^ ^1.56072 0 0 0 0 1
    particle witch ^7.77896 ^ ^1.86756 0 0 0 0 1
    particle witch ^7.69964 ^ ^2.17152 0 0 0 0 1
    particle witch ^7.60845 ^ ^2.47214 0 0 0 0 1
    particle witch ^7.50553 ^ ^2.76894 0 0 0 0 1
    particle witch ^7.39104 ^ ^3.06147 0 0 0 0 1
    particle witch ^7.26515 ^ ^3.34928 0 0 0 0 1
    particle witch ^7.12805 ^ ^3.63192 0 0 0 0 1
    particle witch ^6.97997 ^ ^3.90897 0 0 0 0 1
    particle witch ^6.82112 ^ ^4.17999 0 0 0 0 1
    particle witch ^6.65176 ^ ^4.44456 0 0 0 0 1
    particle witch ^6.47214 ^ ^4.70228 0 0 0 0 1
    particle witch ^6.28254 ^ ^4.95275 0 0 0 0 1
    particle witch ^6.08325 ^ ^5.19558 0 0 0 0 1
    particle witch ^5.87458 ^ ^5.43041 0 0 0 0 1
    particle witch ^5.65685 ^ ^5.65685 0 0 0 0 1
    particle witch ^5.43041 ^ ^5.87458 0 0 0 0 1
    particle witch ^5.19558 ^ ^6.08325 0 0 0 0 1
    particle witch ^4.95275 ^ ^6.28254 0 0 0 0 1
    particle witch ^4.70228 ^ ^6.47214 0 0 0 0 1
    particle witch ^4.44456 ^ ^6.65176 0 0 0 0 1
    particle witch ^4.17999 ^ ^6.82112 0 0 0 0 1
    particle witch ^3.90897 ^ ^6.97997 0 0 0 0 1
    particle witch ^3.63192 ^ ^7.12805 0 0 0 0 1
    particle witch ^3.34928 ^ ^7.26515 0 0 0 0 1
    particle witch ^3.06147 ^ ^7.39104 0 0 0 0 1
    particle witch ^2.76894 ^ ^7.50553 0 0 0 0 1
    particle witch ^2.47214 ^ ^7.60845 0 0 0 0 1
    particle witch ^2.17152 ^ ^7.69964 0 0 0 0 1
    particle witch ^1.86756 ^ ^7.77896 0 0 0 0 1
    particle witch ^1.56072 ^ ^7.84628 0 0 0 0 1
    particle witch ^1.25148 ^ ^7.90151 0 0 0 0 1
    particle witch ^0.9403 ^ ^7.94455 0 0 0 0 1
    particle witch ^0.62767 ^ ^7.97534 0 0 0 0 1
    particle witch ^0.31408 ^ ^7.99383 0 0 0 0 1
    particle witch ^0 ^ ^8 0 0 0 0 1
    particle witch ^-0.31408 ^ ^7.99383 0 0 0 0 1
    particle witch ^-0.62767 ^ ^7.97534 0 0 0 0 1
    particle witch ^-0.9403 ^ ^7.94455 0 0 0 0 1
    particle witch ^-1.25148 ^ ^7.90151 0 0 0 0 1
    particle witch ^-1.56072 ^ ^7.84628 0 0 0 0 1
    particle witch ^-1.86756 ^ ^7.77896 0 0 0 0 1
    particle witch ^-2.17152 ^ ^7.69964 0 0 0 0 1
    particle witch ^-2.47214 ^ ^7.60845 0 0 0 0 1
    particle witch ^-2.76894 ^ ^7.50553 0 0 0 0 1
    particle witch ^-3.06147 ^ ^7.39104 0 0 0 0 1
    particle witch ^-3.34928 ^ ^7.26515 0 0 0 0 1
    particle witch ^-3.63192 ^ ^7.12805 0 0 0 0 1
    particle witch ^-3.90897 ^ ^6.97997 0 0 0 0 1
    particle witch ^-4.17999 ^ ^6.82112 0 0 0 0 1
    particle witch ^-4.44456 ^ ^6.65176 0 0 0 0 1
    particle witch ^-4.70228 ^ ^6.47214 0 0 0 0 1
    particle witch ^-4.95275 ^ ^6.28254 0 0 0 0 1
    particle witch ^-5.19558 ^ ^6.08325 0 0 0 0 1
    particle witch ^-5.43041 ^ ^5.87458 0 0 0 0 1
    particle witch ^-5.65685 ^ ^5.65685 0 0 0 0 1
    particle witch ^-5.87458 ^ ^5.43041 0 0 0 0 1
    particle witch ^-6.08325 ^ ^5.19558 0 0 0 0 1
    particle witch ^-6.28254 ^ ^4.95275 0 0 0 0 1
    particle witch ^-6.47214 ^ ^4.70228 0 0 0 0 1
    particle witch ^-6.65176 ^ ^4.44456 0 0 0 0 1
    particle witch ^-6.82112 ^ ^4.17999 0 0 0 0 1
    particle witch ^-6.97997 ^ ^3.90897 0 0 0 0 1
    particle witch ^-7.12805 ^ ^3.63192 0 0 0 0 1
    particle witch ^-7.26515 ^ ^3.34928 0 0 0 0 1
    particle witch ^-7.39104 ^ ^3.06147 0 0 0 0 1
    particle witch ^-7.50553 ^ ^2.76894 0 0 0 0 1
    particle witch ^-7.60845 ^ ^2.47214 0 0 0 0 1
    particle witch ^-7.69964 ^ ^2.17152 0 0 0 0 1
    particle witch ^-7.77896 ^ ^1.86756 0 0 0 0 1
    particle witch ^-7.84628 ^ ^1.56072 0 0 0 0 1
    particle witch ^-7.90151 ^ ^1.25148 0 0 0 0 1
    particle witch ^-7.94455 ^ ^0.9403 0 0 0 0 1
    particle witch ^-7.97534 ^ ^0.62767 0 0 0 0 1
    particle witch ^-7.99383 ^ ^0.31408 0 0 0 0 1
    particle witch ^-8 ^ ^0 0 0 0 0 1
    particle witch ^-7.99383 ^ ^-0.31408 0 0 0 0 1
    particle witch ^-7.97534 ^ ^-0.62767 0 0 0 0 1
    particle witch ^-7.94455 ^ ^-0.9403 0 0 0 0 1
    particle witch ^-7.90151 ^ ^-1.25148 0 0 0 0 1
    particle witch ^-7.84628 ^ ^-1.56072 0 0 0 0 1
    particle witch ^-7.77896 ^ ^-1.86756 0 0 0 0 1
    particle witch ^-7.69964 ^ ^-2.17152 0 0 0 0 1
    particle witch ^-7.60845 ^ ^-2.47214 0 0 0 0 1
    particle witch ^-7.50553 ^ ^-2.76894 0 0 0 0 1
    particle witch ^-7.39104 ^ ^-3.06147 0 0 0 0 1
    particle witch ^-7.26515 ^ ^-3.34928 0 0 0 0 1
    particle witch ^-7.12805 ^ ^-3.63192 0 0 0 0 1
    particle witch ^-6.97997 ^ ^-3.90897 0 0 0 0 1
    particle witch ^-6.82112 ^ ^-4.17999 0 0 0 0 1
    particle witch ^-6.65176 ^ ^-4.44456 0 0 0 0 1
    particle witch ^-6.47214 ^ ^-4.70228 0 0 0 0 1
    particle witch ^-6.28254 ^ ^-4.95275 0 0 0 0 1
    particle witch ^-6.08325 ^ ^-5.19558 0 0 0 0 1
    particle witch ^-5.87458 ^ ^-5.43041 0 0 0 0 1
    particle witch ^-5.65685 ^ ^-5.65685 0 0 0 0 1
    particle witch ^-5.43041 ^ ^-5.87458 0 0 0 0 1
    particle witch ^-5.19558 ^ ^-6.08325 0 0 0 0 1
    particle witch ^-4.95275 ^ ^-6.28254 0 0 0 0 1
    particle witch ^-4.70228 ^ ^-6.47214 0 0 0 0 1
    particle witch ^-4.44456 ^ ^-6.65176 0 0 0 0 1
    particle witch ^-4.17999 ^ ^-6.82112 0 0 0 0 1
    particle witch ^-3.90897 ^ ^-6.97997 0 0 0 0 1
    particle witch ^-3.63192 ^ ^-7.12805 0 0 0 0 1
    particle witch ^-3.34928 ^ ^-7.26515 0 0 0 0 1
    particle witch ^-3.06147 ^ ^-7.39104 0 0 0 0 1
    particle witch ^-2.76894 ^ ^-7.50553 0 0 0 0 1
    particle witch ^-2.47214 ^ ^-7.60845 0 0 0 0 1
    particle witch ^-2.17152 ^ ^-7.69964 0 0 0 0 1
    particle witch ^-1.86756 ^ ^-7.77896 0 0 0 0 1
    particle witch ^-1.56072 ^ ^-7.84628 0 0 0 0 1
    particle witch ^-1.25148 ^ ^-7.90151 0 0 0 0 1
    particle witch ^-0.9403 ^ ^-7.94455 0 0 0 0 1
    particle witch ^-0.62767 ^ ^-7.97534 0 0 0 0 1
    particle witch ^-0.31408 ^ ^-7.99383 0 0 0 0 1
# 中円
    particle witch ^0 ^ ^-4 0 0 0 0 1
    particle witch ^0.27903 ^ ^-3.99026 0 0 0 0 1
    particle witch ^0.55669 ^ ^-3.96107 0 0 0 0 1
    particle witch ^0.83165 ^ ^-3.91259 0 0 0 0 1
    particle witch ^1.10255 ^ ^-3.84505 0 0 0 0 1
    particle witch ^1.36808 ^ ^-3.75877 0 0 0 0 1
    particle witch ^1.62695 ^ ^-3.65418 0 0 0 0 1
    particle witch ^1.87789 ^ ^-3.53179 0 0 0 0 1
    particle witch ^2.11968 ^ ^-3.39219 0 0 0 0 1
    particle witch ^2.35114 ^ ^-3.23607 0 0 0 0 1
    particle witch ^2.57115 ^ ^-3.06418 0 0 0 0 1
    particle witch ^2.77863 ^ ^-2.87736 0 0 0 0 1
    particle witch ^2.97258 ^ ^-2.67652 0 0 0 0 1
    particle witch ^3.15204 ^ ^-2.46265 0 0 0 0 1
    particle witch ^3.31615 ^ ^-2.23677 0 0 0 0 1
    particle witch ^3.4641 ^ ^-2 0 0 0 0 1
    particle witch ^3.59518 ^ ^-1.75348 0 0 0 0 1
    particle witch ^3.70874 ^ ^-1.49843 0 0 0 0 1
    particle witch ^3.80423 ^ ^-1.23607 0 0 0 0 1
    particle witch ^3.88118 ^ ^-0.96769 0 0 0 0 1
    particle witch ^3.93923 ^ ^-0.69459 0 0 0 0 1
    particle witch ^3.97809 ^ ^-0.41811 0 0 0 0 1
    particle witch ^3.99756 ^ ^-0.1396 0 0 0 0 1
    particle witch ^3.99756 ^ ^0.1396 0 0 0 0 1
    particle witch ^3.97809 ^ ^0.41811 0 0 0 0 1
    particle witch ^3.93923 ^ ^0.69459 0 0 0 0 1
    particle witch ^3.88118 ^ ^0.96769 0 0 0 0 1
    particle witch ^3.80423 ^ ^1.23607 0 0 0 0 1
    particle witch ^3.70874 ^ ^1.49843 0 0 0 0 1
    particle witch ^3.59518 ^ ^1.75348 0 0 0 0 1
    particle witch ^3.4641 ^ ^2 0 0 0 0 1
    particle witch ^3.31615 ^ ^2.23677 0 0 0 0 1
    particle witch ^3.15204 ^ ^2.46265 0 0 0 0 1
    particle witch ^2.97258 ^ ^2.67652 0 0 0 0 1
    particle witch ^2.77863 ^ ^2.87736 0 0 0 0 1
    particle witch ^2.57115 ^ ^3.06418 0 0 0 0 1
    particle witch ^2.35114 ^ ^3.23607 0 0 0 0 1
    particle witch ^2.11968 ^ ^3.39219 0 0 0 0 1
    particle witch ^1.87789 ^ ^3.53179 0 0 0 0 1
    particle witch ^1.62695 ^ ^3.65418 0 0 0 0 1
    particle witch ^1.36808 ^ ^3.75877 0 0 0 0 1
    particle witch ^1.10255 ^ ^3.84505 0 0 0 0 1
    particle witch ^0.83165 ^ ^3.91259 0 0 0 0 1
    particle witch ^0.55669 ^ ^3.96107 0 0 0 0 1
    particle witch ^0.27903 ^ ^3.99026 0 0 0 0 1
    particle witch ^0 ^ ^4 0 0 0 0 1
    particle witch ^-0.27903 ^ ^3.99026 0 0 0 0 1
    particle witch ^-0.55669 ^ ^3.96107 0 0 0 0 1
    particle witch ^-0.83165 ^ ^3.91259 0 0 0 0 1
    particle witch ^-1.10255 ^ ^3.84505 0 0 0 0 1
    particle witch ^-1.36808 ^ ^3.75877 0 0 0 0 1
    particle witch ^-1.62695 ^ ^3.65418 0 0 0 0 1
    particle witch ^-1.87789 ^ ^3.53179 0 0 0 0 1
    particle witch ^-2.11968 ^ ^3.39219 0 0 0 0 1
    particle witch ^-2.35114 ^ ^3.23607 0 0 0 0 1
    particle witch ^-2.57115 ^ ^3.06418 0 0 0 0 1
    particle witch ^-2.77863 ^ ^2.87736 0 0 0 0 1
    particle witch ^-2.97258 ^ ^2.67652 0 0 0 0 1
    particle witch ^-3.15204 ^ ^2.46265 0 0 0 0 1
    particle witch ^-3.31615 ^ ^2.23677 0 0 0 0 1
    particle witch ^-3.4641 ^ ^2 0 0 0 0 1
    particle witch ^-3.59518 ^ ^1.75348 0 0 0 0 1
    particle witch ^-3.70874 ^ ^1.49843 0 0 0 0 1
    particle witch ^-3.80423 ^ ^1.23607 0 0 0 0 1
    particle witch ^-3.88118 ^ ^0.96769 0 0 0 0 1
    particle witch ^-3.93923 ^ ^0.69459 0 0 0 0 1
    particle witch ^-3.97809 ^ ^0.41811 0 0 0 0 1
    particle witch ^-3.99756 ^ ^0.1396 0 0 0 0 1
    particle witch ^-3.99756 ^ ^-0.1396 0 0 0 0 1
    particle witch ^-3.97809 ^ ^-0.41811 0 0 0 0 1
    particle witch ^-3.93923 ^ ^-0.69459 0 0 0 0 1
    particle witch ^-3.88118 ^ ^-0.96769 0 0 0 0 1
    particle witch ^-3.80423 ^ ^-1.23607 0 0 0 0 1
    particle witch ^-3.70874 ^ ^-1.49843 0 0 0 0 1
    particle witch ^-3.59518 ^ ^-1.75348 0 0 0 0 1
    particle witch ^-3.4641 ^ ^-2 0 0 0 0 1
    particle witch ^-3.31615 ^ ^-2.23677 0 0 0 0 1
    particle witch ^-3.15204 ^ ^-2.46265 0 0 0 0 1
    particle witch ^-2.97258 ^ ^-2.67652 0 0 0 0 1
    particle witch ^-2.77863 ^ ^-2.87736 0 0 0 0 1
    particle witch ^-2.57115 ^ ^-3.06418 0 0 0 0 1
    particle witch ^-2.35114 ^ ^-3.23607 0 0 0 0 1
    particle witch ^-2.11968 ^ ^-3.39219 0 0 0 0 1
    particle witch ^-1.87789 ^ ^-3.53179 0 0 0 0 1
    particle witch ^-1.62695 ^ ^-3.65418 0 0 0 0 1
    particle witch ^-1.36808 ^ ^-3.75877 0 0 0 0 1
    particle witch ^-1.10255 ^ ^-3.84505 0 0 0 0 1
    particle witch ^-0.83165 ^ ^-3.91259 0 0 0 0 1
    particle witch ^-0.55669 ^ ^-3.96107 0 0 0 0 1
    particle witch ^-0.27903 ^ ^-3.99026 0 0 0 0 1
# 最内三角
    particle witch ^3.4641 ^ ^-2 0 0 0 0 1
    particle witch ^3.34863 ^ ^-1.8 0 0 0 0 1
    particle witch ^3.23316 ^ ^-1.6 0 0 0 0 1
    particle witch ^3.11769 ^ ^-1.4 0 0 0 0 1
    particle witch ^3.00222 ^ ^-1.2 0 0 0 0 1
    particle witch ^2.88675 ^ ^-1 0 0 0 0 1
    particle witch ^2.77128 ^ ^-0.8 0 0 0 0 1
    particle witch ^2.65581 ^ ^-0.6 0 0 0 0 1
    particle witch ^2.54034 ^ ^-0.4 0 0 0 0 1
    particle witch ^2.42487 ^ ^-0.2 0 0 0 0 1
    particle witch ^2.3094 ^ ^0 0 0 0 0 1
    particle witch ^2.19393 ^ ^0.2 0 0 0 0 1
    particle witch ^2.07846 ^ ^0.4 0 0 0 0 1
    particle witch ^1.96299 ^ ^0.6 0 0 0 0 1
    particle witch ^1.84752 ^ ^0.8 0 0 0 0 1
    particle witch ^1.73205 ^ ^1 0 0 0 0 1
    particle witch ^1.61658 ^ ^1.2 0 0 0 0 1
    particle witch ^1.50111 ^ ^1.4 0 0 0 0 1
    particle witch ^1.38564 ^ ^1.6 0 0 0 0 1
    particle witch ^1.27017 ^ ^1.8 0 0 0 0 1
    particle witch ^1.1547 ^ ^2 0 0 0 0 1
    particle witch ^1.03923 ^ ^2.2 0 0 0 0 1
    particle witch ^0.92376 ^ ^2.4 0 0 0 0 1
    particle witch ^0.80829 ^ ^2.6 0 0 0 0 1
    particle witch ^0.69282 ^ ^2.8 0 0 0 0 1
    particle witch ^0.57735 ^ ^3 0 0 0 0 1
    particle witch ^0.46188 ^ ^3.2 0 0 0 0 1
    particle witch ^0.34641 ^ ^3.4 0 0 0 0 1
    particle witch ^0.23094 ^ ^3.6 0 0 0 0 1
    particle witch ^0.11547 ^ ^3.8 0 0 0 0 1
    particle witch ^0 ^ ^4 0 0 0 0 1
    particle witch ^-0.11547 ^ ^3.8 0 0 0 0 1
    particle witch ^-0.23094 ^ ^3.6 0 0 0 0 1
    particle witch ^-0.34641 ^ ^3.4 0 0 0 0 1
    particle witch ^-0.46188 ^ ^3.2 0 0 0 0 1
    particle witch ^-0.57735 ^ ^3 0 0 0 0 1
    particle witch ^-0.69282 ^ ^2.8 0 0 0 0 1
    particle witch ^-0.80829 ^ ^2.6 0 0 0 0 1
    particle witch ^-0.92376 ^ ^2.4 0 0 0 0 1
    particle witch ^-1.03923 ^ ^2.2 0 0 0 0 1
    particle witch ^-1.1547 ^ ^2 0 0 0 0 1
    particle witch ^-1.27017 ^ ^1.8 0 0 0 0 1
    particle witch ^-1.38564 ^ ^1.6 0 0 0 0 1
    particle witch ^-1.50111 ^ ^1.4 0 0 0 0 1
    particle witch ^-1.61658 ^ ^1.2 0 0 0 0 1
    particle witch ^-1.73205 ^ ^1 0 0 0 0 1
    particle witch ^-1.84752 ^ ^0.8 0 0 0 0 1
    particle witch ^-1.96299 ^ ^0.6 0 0 0 0 1
    particle witch ^-2.07846 ^ ^0.4 0 0 0 0 1
    particle witch ^-2.19393 ^ ^0.2 0 0 0 0 1
    particle witch ^-2.3094 ^ ^0 0 0 0 0 1
    particle witch ^-2.42487 ^ ^-0.2 0 0 0 0 1
    particle witch ^-2.54034 ^ ^-0.4 0 0 0 0 1
    particle witch ^-2.65581 ^ ^-0.6 0 0 0 0 1
    particle witch ^-2.77128 ^ ^-0.8 0 0 0 0 1
    particle witch ^-2.88675 ^ ^-1 0 0 0 0 1
    particle witch ^-3.00222 ^ ^-1.2 0 0 0 0 1
    particle witch ^-3.11769 ^ ^-1.4 0 0 0 0 1
    particle witch ^-3.23316 ^ ^-1.6 0 0 0 0 1
    particle witch ^-3.34863 ^ ^-1.8 0 0 0 0 1
    particle witch ^-3.4641 ^ ^-2 0 0 0 0 1
    particle witch ^-3.23316 ^ ^-2 0 0 0 0 1
    particle witch ^-3.00222 ^ ^-2 0 0 0 0 1
    particle witch ^-2.77128 ^ ^-2 0 0 0 0 1
    particle witch ^-2.54034 ^ ^-2 0 0 0 0 1
    particle witch ^-2.3094 ^ ^-2 0 0 0 0 1
    particle witch ^-2.07846 ^ ^-2 0 0 0 0 1
    particle witch ^-1.84752 ^ ^-2 0 0 0 0 1
    particle witch ^-1.61658 ^ ^-2 0 0 0 0 1
    particle witch ^-1.38564 ^ ^-2 0 0 0 0 1
    particle witch ^-1.1547 ^ ^-2 0 0 0 0 1
    particle witch ^-0.92376 ^ ^-2 0 0 0 0 1
    particle witch ^-0.69282 ^ ^-2 0 0 0 0 1
    particle witch ^-0.46188 ^ ^-2 0 0 0 0 1
    particle witch ^-0.23094 ^ ^-2 0 0 0 0 1
    particle witch ^0 ^ ^-2 0 0 0 0 1
    particle witch ^0.23094 ^ ^-2 0 0 0 0 1
    particle witch ^0.46188 ^ ^-2 0 0 0 0 1
    particle witch ^0.69282 ^ ^-2 0 0 0 0 1
    particle witch ^0.92376 ^ ^-2 0 0 0 0 1
    particle witch ^1.1547 ^ ^-2 0 0 0 0 1
    particle witch ^1.38564 ^ ^-2 0 0 0 0 1
    particle witch ^1.61658 ^ ^-2 0 0 0 0 1
    particle witch ^1.84752 ^ ^-2 0 0 0 0 1
    particle witch ^2.07846 ^ ^-2 0 0 0 0 1
    particle witch ^2.3094 ^ ^-2 0 0 0 0 1
    particle witch ^2.54034 ^ ^-2 0 0 0 0 1
    particle witch ^2.77128 ^ ^-2 0 0 0 0 1
    particle witch ^3.00222 ^ ^-2 0 0 0 0 1
    particle witch ^3.23316 ^ ^-2 0 0 0 0 1
# 最内円
    particle witch ^0 ^ ^-2 0 0 0 0 1
    particle witch ^0.20902 ^ ^-1.98877 0 0 0 0 1
    particle witch ^0.41572 ^ ^-1.95584 0 0 0 0 1
    particle witch ^0.61785 ^ ^-1.90156 0 0 0 0 1
    particle witch ^0.81323 ^ ^-1.82654 0 0 0 0 1
    particle witch ^0.99973 ^ ^-1.73159 0 0 0 0 1
    particle witch ^1.17535 ^ ^-1.61772 0 0 0 0 1
    particle witch ^1.33816 ^ ^-1.48618 0 0 0 0 1
    particle witch ^1.48618 ^ ^-1.33816 0 0 0 0 1
    particle witch ^1.61772 ^ ^-1.17535 0 0 0 0 1
    particle witch ^1.73159 ^ ^-0.99973 0 0 0 0 1
    particle witch ^1.82654 ^ ^-0.81323 0 0 0 0 1
    particle witch ^1.90156 ^ ^-0.61785 0 0 0 0 1
    particle witch ^1.95584 ^ ^-0.41572 0 0 0 0 1
    particle witch ^1.98877 ^ ^-0.20902 0 0 0 0 1
    particle witch ^2 ^ ^0 0 0 0 0 1
    particle witch ^1.98877 ^ ^0.20902 0 0 0 0 1
    particle witch ^1.95584 ^ ^0.41572 0 0 0 0 1
    particle witch ^1.90156 ^ ^0.61785 0 0 0 0 1
    particle witch ^1.82654 ^ ^0.81323 0 0 0 0 1
    particle witch ^1.73159 ^ ^0.99973 0 0 0 0 1
    particle witch ^1.61772 ^ ^1.17535 0 0 0 0 1
    particle witch ^1.48618 ^ ^1.33816 0 0 0 0 1
    particle witch ^1.33816 ^ ^1.48618 0 0 0 0 1
    particle witch ^1.17535 ^ ^1.61772 0 0 0 0 1
    particle witch ^0.99973 ^ ^1.73159 0 0 0 0 1
    particle witch ^0.81323 ^ ^1.82654 0 0 0 0 1
    particle witch ^0.61785 ^ ^1.90156 0 0 0 0 1
    particle witch ^0.41572 ^ ^1.95584 0 0 0 0 1
    particle witch ^0.20902 ^ ^1.98877 0 0 0 0 1
    particle witch ^0 ^ ^2 0 0 0 0 1
    particle witch ^-0.20902 ^ ^1.98877 0 0 0 0 1
    particle witch ^-0.41572 ^ ^1.95584 0 0 0 0 1
    particle witch ^-0.61785 ^ ^1.90156 0 0 0 0 1
    particle witch ^-0.81323 ^ ^1.82654 0 0 0 0 1
    particle witch ^-0.99973 ^ ^1.73159 0 0 0 0 1
    particle witch ^-1.17535 ^ ^1.61772 0 0 0 0 1
    particle witch ^-1.33816 ^ ^1.48618 0 0 0 0 1
    particle witch ^-1.48618 ^ ^1.33816 0 0 0 0 1
    particle witch ^-1.61772 ^ ^1.17535 0 0 0 0 1
    particle witch ^-1.73159 ^ ^0.99973 0 0 0 0 1
    particle witch ^-1.82654 ^ ^0.81323 0 0 0 0 1
    particle witch ^-1.90156 ^ ^0.61785 0 0 0 0 1
    particle witch ^-1.95584 ^ ^0.41572 0 0 0 0 1
    particle witch ^-1.98877 ^ ^0.20902 0 0 0 0 1
    particle witch ^-2 ^ ^0 0 0 0 0 1
    particle witch ^-1.98877 ^ ^-0.20902 0 0 0 0 1
    particle witch ^-1.95584 ^ ^-0.41572 0 0 0 0 1
    particle witch ^-1.90156 ^ ^-0.61785 0 0 0 0 1
    particle witch ^-1.82654 ^ ^-0.81323 0 0 0 0 1
    particle witch ^-1.73159 ^ ^-0.99973 0 0 0 0 1
    particle witch ^-1.61772 ^ ^-1.17535 0 0 0 0 1
    particle witch ^-1.48618 ^ ^-1.33816 0 0 0 0 1
    particle witch ^-1.33816 ^ ^-1.48618 0 0 0 0 1
    particle witch ^-1.17535 ^ ^-1.61772 0 0 0 0 1
    particle witch ^-0.99973 ^ ^-1.73159 0 0 0 0 1
    particle witch ^-0.81323 ^ ^-1.82654 0 0 0 0 1
    particle witch ^-0.61785 ^ ^-1.90156 0 0 0 0 1
    particle witch ^-0.41572 ^ ^-1.95584 0 0 0 0 1
    particle witch ^-0.20902 ^ ^-1.98877 0 0 0 0 1
# 最外三角
    particle witch ^0 ^ ^-8 0 0 0 0 1
    particle witch ^0.13856 ^ ^-7.76 0 0 0 0 1
    particle witch ^0.27713 ^ ^-7.52 0 0 0 0 1
    particle witch ^0.41569 ^ ^-7.28 0 0 0 0 1
    particle witch ^0.55426 ^ ^-7.04 0 0 0 0 1
    particle witch ^0.69282 ^ ^-6.8 0 0 0 0 1
    particle witch ^0.83138 ^ ^-6.56 0 0 0 0 1
    particle witch ^0.96995 ^ ^-6.32 0 0 0 0 1
    particle witch ^1.10851 ^ ^-6.08 0 0 0 0 1
    particle witch ^1.24708 ^ ^-5.84 0 0 0 0 1
    particle witch ^1.38564 ^ ^-5.6 0 0 0 0 1
    particle witch ^1.5242 ^ ^-5.36 0 0 0 0 1
    particle witch ^1.66277 ^ ^-5.12 0 0 0 0 1
    particle witch ^1.80133 ^ ^-4.88 0 0 0 0 1
    particle witch ^1.9399 ^ ^-4.64 0 0 0 0 1
    particle witch ^2.07846 ^ ^-4.4 0 0 0 0 1
    particle witch ^2.21703 ^ ^-4.16 0 0 0 0 1
    particle witch ^2.35559 ^ ^-3.92 0 0 0 0 1
    particle witch ^2.49415 ^ ^-3.68 0 0 0 0 1
    particle witch ^2.63272 ^ ^-3.44 0 0 0 0 1
    particle witch ^2.77128 ^ ^-3.2 0 0 0 0 1
    particle witch ^2.90985 ^ ^-2.96 0 0 0 0 1
    particle witch ^3.04841 ^ ^-2.72 0 0 0 0 1
    particle witch ^3.18697 ^ ^-2.48 0 0 0 0 1
    particle witch ^3.32554 ^ ^-2.24 0 0 0 0 1
    particle witch ^3.4641 ^ ^-2 0 0 0 0 1
    particle witch ^3.60267 ^ ^-1.76 0 0 0 0 1
    particle witch ^3.74123 ^ ^-1.52 0 0 0 0 1
    particle witch ^3.87979 ^ ^-1.28 0 0 0 0 1
    particle witch ^4.01836 ^ ^-1.04 0 0 0 0 1
    particle witch ^4.15692 ^ ^-0.8 0 0 0 0 1
    particle witch ^4.29549 ^ ^-0.56 0 0 0 0 1
    particle witch ^4.43405 ^ ^-0.32 0 0 0 0 1
    particle witch ^4.57261 ^ ^-0.08 0 0 0 0 1
    particle witch ^4.71118 ^ ^0.16 0 0 0 0 1
    particle witch ^4.84974 ^ ^0.4 0 0 0 0 1
    particle witch ^4.98831 ^ ^0.64 0 0 0 0 1
    particle witch ^5.12687 ^ ^0.88 0 0 0 0 1
    particle witch ^5.26543 ^ ^1.12 0 0 0 0 1
    particle witch ^5.404 ^ ^1.36 0 0 0 0 1
    particle witch ^5.54256 ^ ^1.6 0 0 0 0 1
    particle witch ^5.68113 ^ ^1.84 0 0 0 0 1
    particle witch ^5.81969 ^ ^2.08 0 0 0 0 1
    particle witch ^5.95825 ^ ^2.32 0 0 0 0 1
    particle witch ^6.09682 ^ ^2.56 0 0 0 0 1
    particle witch ^6.23538 ^ ^2.8 0 0 0 0 1
    particle witch ^6.37395 ^ ^3.04 0 0 0 0 1
    particle witch ^6.51251 ^ ^3.28 0 0 0 0 1
    particle witch ^6.65108 ^ ^3.52 0 0 0 0 1
    particle witch ^6.78964 ^ ^3.76 0 0 0 0 1
    particle witch ^6.9282 ^ ^4 0 0 0 0 1
    particle witch ^6.65108 ^ ^4 0 0 0 0 1
    particle witch ^6.37395 ^ ^4 0 0 0 0 1
    particle witch ^6.09682 ^ ^4 0 0 0 0 1
    particle witch ^5.81969 ^ ^4 0 0 0 0 1
    particle witch ^5.54256 ^ ^4 0 0 0 0 1
    particle witch ^5.26543 ^ ^4 0 0 0 0 1
    particle witch ^4.98831 ^ ^4 0 0 0 0 1
    particle witch ^4.71118 ^ ^4 0 0 0 0 1
    particle witch ^4.43405 ^ ^4 0 0 0 0 1
    particle witch ^4.15692 ^ ^4 0 0 0 0 1
    particle witch ^3.87979 ^ ^4 0 0 0 0 1
    particle witch ^3.60267 ^ ^4 0 0 0 0 1
    particle witch ^3.32554 ^ ^4 0 0 0 0 1
    particle witch ^3.04841 ^ ^4 0 0 0 0 1
    particle witch ^2.77128 ^ ^4 0 0 0 0 1
    particle witch ^2.49415 ^ ^4 0 0 0 0 1
    particle witch ^2.21703 ^ ^4 0 0 0 0 1
    particle witch ^1.9399 ^ ^4 0 0 0 0 1
    particle witch ^1.66277 ^ ^4 0 0 0 0 1
    particle witch ^1.38564 ^ ^4 0 0 0 0 1
    particle witch ^1.10851 ^ ^4 0 0 0 0 1
    particle witch ^0.83138 ^ ^4 0 0 0 0 1
    particle witch ^0.55426 ^ ^4 0 0 0 0 1
    particle witch ^0.27713 ^ ^4 0 0 0 0 1
    particle witch ^0 ^ ^4 0 0 0 0 1
    particle witch ^-0.27713 ^ ^4 0 0 0 0 1
    particle witch ^-0.55426 ^ ^4 0 0 0 0 1
    particle witch ^-0.83138 ^ ^4 0 0 0 0 1
    particle witch ^-1.10851 ^ ^4 0 0 0 0 1
    particle witch ^-1.38564 ^ ^4 0 0 0 0 1
    particle witch ^-1.66277 ^ ^4 0 0 0 0 1
    particle witch ^-1.9399 ^ ^4 0 0 0 0 1
    particle witch ^-2.21703 ^ ^4 0 0 0 0 1
    particle witch ^-2.49415 ^ ^4 0 0 0 0 1
    particle witch ^-2.77128 ^ ^4 0 0 0 0 1
    particle witch ^-3.04841 ^ ^4 0 0 0 0 1
    particle witch ^-3.32554 ^ ^4 0 0 0 0 1
    particle witch ^-3.60267 ^ ^4 0 0 0 0 1
    particle witch ^-3.87979 ^ ^4 0 0 0 0 1
    particle witch ^-4.15692 ^ ^4 0 0 0 0 1
    particle witch ^-4.43405 ^ ^4 0 0 0 0 1
    particle witch ^-4.71118 ^ ^4 0 0 0 0 1
    particle witch ^-4.98831 ^ ^4 0 0 0 0 1
    particle witch ^-5.26543 ^ ^4 0 0 0 0 1
    particle witch ^-5.54256 ^ ^4 0 0 0 0 1
    particle witch ^-5.81969 ^ ^4 0 0 0 0 1
    particle witch ^-6.09682 ^ ^4 0 0 0 0 1
    particle witch ^-6.37395 ^ ^4 0 0 0 0 1
    particle witch ^-6.65108 ^ ^4 0 0 0 0 1
    particle witch ^-6.9282 ^ ^4 0 0 0 0 1
    particle witch ^-6.78964 ^ ^3.76 0 0 0 0 1
    particle witch ^-6.65108 ^ ^3.52 0 0 0 0 1
    particle witch ^-6.51251 ^ ^3.28 0 0 0 0 1
    particle witch ^-6.37395 ^ ^3.04 0 0 0 0 1
    particle witch ^-6.23538 ^ ^2.8 0 0 0 0 1
    particle witch ^-6.09682 ^ ^2.56 0 0 0 0 1
    particle witch ^-5.95825 ^ ^2.32 0 0 0 0 1
    particle witch ^-5.81969 ^ ^2.08 0 0 0 0 1
    particle witch ^-5.68113 ^ ^1.84 0 0 0 0 1
    particle witch ^-5.54256 ^ ^1.6 0 0 0 0 1
    particle witch ^-5.404 ^ ^1.36 0 0 0 0 1
    particle witch ^-5.26543 ^ ^1.12 0 0 0 0 1
    particle witch ^-5.12687 ^ ^0.88 0 0 0 0 1
    particle witch ^-4.98831 ^ ^0.64 0 0 0 0 1
    particle witch ^-4.84974 ^ ^0.4 0 0 0 0 1
    particle witch ^-4.71118 ^ ^0.16 0 0 0 0 1
    particle witch ^-4.57261 ^ ^-0.08 0 0 0 0 1
    particle witch ^-4.43405 ^ ^-0.32 0 0 0 0 1
    particle witch ^-4.29549 ^ ^-0.56 0 0 0 0 1
    particle witch ^-4.15692 ^ ^-0.8 0 0 0 0 1
    particle witch ^-4.01836 ^ ^-1.04 0 0 0 0 1
    particle witch ^-3.87979 ^ ^-1.28 0 0 0 0 1
    particle witch ^-3.74123 ^ ^-1.52 0 0 0 0 1
    particle witch ^-3.60267 ^ ^-1.76 0 0 0 0 1
    particle witch ^-3.4641 ^ ^-2 0 0 0 0 1
    particle witch ^-3.32554 ^ ^-2.24 0 0 0 0 1
    particle witch ^-3.18697 ^ ^-2.48 0 0 0 0 1
    particle witch ^-3.04841 ^ ^-2.72 0 0 0 0 1
    particle witch ^-2.90985 ^ ^-2.96 0 0 0 0 1
    particle witch ^-2.77128 ^ ^-3.2 0 0 0 0 1
    particle witch ^-2.63272 ^ ^-3.44 0 0 0 0 1
    particle witch ^-2.49415 ^ ^-3.68 0 0 0 0 1
    particle witch ^-2.35559 ^ ^-3.92 0 0 0 0 1
    particle witch ^-2.21703 ^ ^-4.16 0 0 0 0 1
    particle witch ^-2.07846 ^ ^-4.4 0 0 0 0 1
    particle witch ^-1.9399 ^ ^-4.64 0 0 0 0 1
    particle witch ^-1.80133 ^ ^-4.88 0 0 0 0 1
    particle witch ^-1.66277 ^ ^-5.12 0 0 0 0 1
    particle witch ^-1.5242 ^ ^-5.36 0 0 0 0 1
    particle witch ^-1.38564 ^ ^-5.6 0 0 0 0 1
    particle witch ^-1.24708 ^ ^-5.84 0 0 0 0 1
    particle witch ^-1.10851 ^ ^-6.08 0 0 0 0 1
    particle witch ^-0.96995 ^ ^-6.32 0 0 0 0 1
    particle witch ^-0.83138 ^ ^-6.56 0 0 0 0 1
    particle witch ^-0.69282 ^ ^-6.8 0 0 0 0 1
    particle witch ^-0.55426 ^ ^-7.04 0 0 0 0 1
    particle witch ^-0.41569 ^ ^-7.28 0 0 0 0 1
    particle witch ^-0.27713 ^ ^-7.52 0 0 0 0 1
    particle witch ^-0.13856 ^ ^-7.76 0 0 0 0 1


text:
#> asset:mob/0185.tutankhamen/tick/magic_square/09.3rd_damage
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/magic_square/04.3rd_square

# 与えるダメージ
    data modify storage lib: Argument.Damage set value 40f
# 属性
    data modify storage lib: Argument.AttackType set value "Magic"
    data modify storage lib: Argument.ElementType set value "None"
# 補正functionを実行
    function lib:damage/modifier
# デスログ
    data modify storage lib: Argument.DeathMessage append value '{"translate": "%1$sは%2$sの溢れる魔力に飲み込まれた","with":[{"selector":"@s"},{"nbt":"Return.AttackerName","storage":"lib:","interpret":true}]}'
# 対象
    execute as @a[tag=!PlayerShouldInvulnerable,distance=..4] run function lib:damage/
# リセット
    function lib:damage/reset

repo_name: ProjectTSB/TheSkyBlessing

repo_language: mcfunction

mime_type: text/plain


text:
#> asset:mob/0185.tutankhamen/tick/thunder/02.summon_thunder1
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/thunder/01.main

# 雷の落ちる位置となるAECを召喚
    function asset:mob/0185.tutankhamen/tick/thunder/03.summon_thunder2
    function asset:mob/0185.tutankhamen/tick/thunder/03.summon_thunder2
    function asset:mob/0185.tutankhamen/tick/thunder/03.summon_thunder2
    function asset:mob/0185.tutankhamen/tick/thunder/03.summon_thunder2
    function asset:mob/0185.tutankhamen/tick/thunder/03.summon_thunder2


text:
#> asset:mob/0185.tutankhamen/tick/thunder/07.damage
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/thunder/06.vfx_and_damage2

# ダメージ設定
    # 与えるダメージ
        data modify storage lib: Argument.Damage set value 35.0f
    # 魔法属性
        data modify storage lib: Argument.AttackType set value "Magic"
    # 雷属性
        data modify storage lib: Argument.ElementType set value "Thunder"
    # デスログ
        data modify storage lib: Argument.DeathMessage append value '{"translate": "%1$sは%2$sの蒼雷によって滅せられた","with":[{"selector":"@s"},{"nbt":"Return.AttackerName","storage":"lib:","interpret":true}]}'
    # ダメージ
        execute as @e[type=wither_skeleton,tag=this,distance=..40,limit=1] run function lib:damage/modifier
        execute as @a[tag=!PlayerShouldInvulnerable,distance=..2] at @s run function lib:damage/
# リセット
    function lib:damage/reset

# マナ減少
    execute as @a[tag=!PlayerShouldInvulnerable,distance=..2] run function asset:mob/0185.tutankhamen/tick/thunder/08.mp_reduce


text:
#> asset:mob/0185.tutankhamen/tick/thunder/01.main
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/04.attack_branch

# 雷を落とすAECを5個呼ぶ
    execute if entity @s[scores={55.Tick=0}] run function asset:mob/0185.tutankhamen/tick/thunder/02.summon_thunder1

    execute if entity @s[scores={55.Tick=1..10}] at @e[type=area_effect_cloud,tag=55.SkillThunderMaker,distance=..64,limit=5] run function asset:mob/0185.tutankhamen/tick/thunder/04.thunder_position_vfx

# 雷を落とす
    execute if entity @s[scores={55.Tick=19..27}] unless score @s 55.Tick matches 120 unless score @s 55.Tick matches 122 unless score @s 55.Tick matches 124 unless score @s 55.Tick matches 126 run function asset:mob/0185.tutankhamen/tick/thunder/05.vfx_and_damage1

# リセット
    execute if entity @s[scores={55.Tick=27..}] run function asset:mob/0185.tutankhamen/tick/05.reset


text:
#> asset:mob/0185.tutankhamen/tick/thunder/08.mp_reduce
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/thunder/07.damage

# マナ減少
    scoreboard players set $Fluctuation Lib -24
    function lib:mp/fluctuation


text:
#> asset:mob/0185.tutankhamen/tick/thunder/06.vfx_and_damage2
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/thunder/05.vfx_and_damage1

# 演出
    particle dust 0.38 0 0.6 1 ~ ~3 ~ 0.7 3 0.7 0 300
    particle dust 0.404 0.443 1 1 ~ ~5 ~ 0.1 5 0.1 0 300
    particle minecraft:explosion ~ ~ ~ 0.3 0 0.3 0 10
    particle minecraft:large_smoke ~ ~ ~ 0 0 0 0.4 100

    playsound entity.lightning_bolt.thunder hostile @a ~ ~ ~ 1 2 0
    playsound entity.lightning_bolt.thunder hostile @a ~ ~ ~ 1 2 0
    playsound entity.lightning_bolt.impact hostile @a ~ ~ ~ 1 0 0

# ダメージとMP減少
    execute if entity @a[gamemode=!spectator,distance=..2] run function asset:mob/0185.tutankhamen/tick/thunder/07.damage

# 自害
    kill @s


text:
#> asset:mob/0185.tutankhamen/tick/thunder/03.summon_thunder2
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/thunder/02.summon_thunder1

#> Private
# @private
    #declare tag 55.ThunderTarget

# 最も近い一人をターゲットにする
    tag @p[gamemode=!spectator,distance=..32] add 55.ThunderTarget

# 前方拡散でAECを召喚
    execute at @p[tag=55.ThunderTarget,distance=..32] run summon marker ~ ~20 ~ {Tags:["SpreadMarker"]}
    data modify storage lib: Argument.Distance set value 6
    data modify storage lib: Argument.Spread set value 2d
    execute as @e[type=marker,tag=SpreadMarker,distance=..32] at @p[tag=55.ThunderTarget,distance=..32] positioned ~ ~20 ~ rotated ~ 90 run function lib:forward_spreader/circle
# 召喚
    execute at @p[tag=55.ThunderTarget,distance=..40] positioned ~ ~20 ~ facing entity @e[type=marker,tag=SpreadMarker] feet run summon area_effect_cloud ^ ^ ^20 {CustomNameVisible:0b,Particle:"block air",Duration:40,Tags:["Object","55.SkillThunderMaker"]}
# 演出
    execute at @p[tag=55.ThunderTarget,distance=..32] run playsound minecraft:entity.puffer_fish.death hostile @a ~ ~ ~ 0.6 0.3

# キル
    kill @e[tag=SpreadMarker]

# ターゲットTag削除
    tag @p[tag=55.ThunderTarget,distance=..32] remove 55.ThunderTarget


text:
#> asset:mob/0185.tutankhamen/tick/thunder/05.vfx_and_damage1
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/thunder/01.main

# 実行者はAEC、各スコアで分岐
    execute if entity @s[scores={55.Tick=19}] as @e[type=area_effect_cloud,tag=55.SkillThunderMaker,distance=..40,sort=random,limit=1] at @s run function asset:mob/0185.tutankhamen/tick/thunder/06.vfx_and_damage2
    execute if entity @s[scores={55.Tick=21}] as @e[type=area_effect_cloud,tag=55.SkillThunderMaker,distance=..40,sort=random,limit=1] at @s run function asset:mob/0185.tutankhamen/tick/thunder/06.vfx_and_damage2
    execute if entity @s[scores={55.Tick=23}] as @e[type=area_effect_cloud,tag=55.SkillThunderMaker,distance=..40,sort=random,limit=1] at @s run function asset:mob/0185.tutankhamen/tick/thunder/06.vfx_and_damage2
    execute if entity @s[scores={55.Tick=25}] as @e[type=area_effect_cloud,tag=55.SkillThunderMaker,distance=..40,sort=random,limit=1] at @s run function asset:mob/0185.tutankhamen/tick/thunder/06.vfx_and_damage2
    execute if entity @s[scores={55.Tick=27}] as @e[type=area_effect_cloud,tag=55.SkillThunderMaker,distance=..40,sort=random,limit=1] at @s run function asset:mob/0185.tutankhamen/tick/thunder/06.vfx_and_damage2


text:
#> asset:mob/0185.tutankhamen/tick/thunder/04.thunder_position_vfx
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/thunder/01.main

# [ImportKey]: NobwRALgngDgpmAXGAxgSwE4oDYIDRgCuhaAJkmAGwDsAZnAEaVwAMAtACwBMDAHJwEZalNrxQoRXFgMqkAnAwGlejMAQB2AQwC2CZIDDFAAQC1YGJow6AzknAoA9oXUQkUgijjO4GW2ABumtiEeuAAHkgsBFARAL4xBJakaIQ2iAIEVhAWLoiRYHDY2GgwVnoCLHkY9lkQenloVgCihcWljQCOhIHYUADK5h7kiLSBpXEAukA_3
# 円 1
    particle witch ^0 ^ ^-1 0 0 0 0 1
    particle witch ^0.30902 ^ ^-0.95106 0 0 0 0 1
    particle witch ^0.58779 ^ ^-0.80902 0 0 0 0 1
    particle witch ^0.80902 ^ ^-0.58779 0 0 0 0 1
    particle witch ^0.95106 ^ ^-0.30902 0 0 0 0 1
    particle witch ^1 ^ ^0 0 0 0 0 1
    particle witch ^0.95106 ^ ^0.30902 0 0 0 0 1
    particle witch ^0.80902 ^ ^0.58779 0 0 0 0 1
    particle witch ^0.58779 ^ ^0.80902 0 0 0 0 1
    particle witch ^0.30902 ^ ^0.95106 0 0 0 0 1
    particle witch ^0 ^ ^1 0 0 0 0 1
    particle witch ^-0.30902 ^ ^0.95106 0 0 0 0 1
    particle witch ^-0.58779 ^ ^0.80902 0 0 0 0 1
    particle witch ^-0.80902 ^ ^0.58779 0 0 0 0 1
    particle witch ^-0.95106 ^ ^0.30902 0 0 0 0 1
    particle witch ^-1 ^ ^0 0 0 0 0 1
    particle witch ^-0.95106 ^ ^-0.30902 0 0 0 0 1
    particle witch ^-0.80902 ^ ^-0.58779 0 0 0 0 1
    particle witch ^-0.58779 ^ ^-0.80902 0 0 0 0 1
    particle witch ^-0.30902 ^ ^-0.95106 0 0 0 0 1


text:
#> asset:mob/0185.tutankhamen/tick/burn_laser/07.random_4th
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/burn_laser/01.main

# 何度も撃たないためのTag
    tag @s add 55.4thLaser

# スコア下げによる4回目
    scoreboard players remove @s 55.Tick 21


text:
#> asset:mob/0185.tutankhamen/tick/burn_laser/04.shoot
#
#
#
# @within function
#   asset:mob/0185.tutankhamen/tick/burn_laser/01.main
#   asset:mob/0185.tutankhamen/tick/burn_laser/03.shoot

# 音
    playsound minecraft:entity.iron_golem.death hostile @a ~ ~ ~ 0.7 0

# 発射
    execute positioned ~ ~1.3 ~ run function asset:mob/0185.tutankhamen/tick/burn_laser/05.shoot_recursive

# ダメージ
    execute if entity @a[tag=LandingTarget,distance=..32] run function asset:mob/0185.tutankhamen/tick/burn_laser/06.damage

# 技用スコアリセット
    scoreboard players reset @s 55.AttackTick


text:
#> asset:mob/0185.tutankhamen/tick/burn_laser/02.light
#
#
#
# @within function
#   asset:mob/0185.tutankhamen/tick/burn_laser/01.main

# lightは照射の意

# プレイヤーの方向を見る
    execute if entity @s[scores={55.AttackTick=2}] run tp @s ~ ~ ~ facing entity @p[gamemode=!spectator] feet

# 照射
    execute positioned ~ ~1.3 ~ run function asset:mob/0185.tutankhamen/tick/burn_laser/03.light_recursive

# 実行中の音
    execute as @a[distance=..30] at @s run playsound block.note_block.bit hostile @s ~ ~ ~ 0.8 1 1


text:
#> asset:mob/0185.tutankhamen/tick/burn_laser/06.damage
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/burn_laser/04.shoot

# 与えるダメージ
    data modify storage lib: Argument.Damage set value 50f
# 属性
    data modify storage lib: Argument.AttackType set value "Magic"
    data modify storage lib: Argument.ElementType set value "Fire"
# デスログ
    data modify storage lib: Argument.DeathMessage append value '{"translate": "%1$sは%2$sによって灰塵と化した","with":[{"selector":"@s"},{"nbt":"Return.AttackerName","storage":"lib:","interpret":true}]}'
# 補正functionを実行
    function lib:damage/modifier
# 対象
    execute as @a[tag=LandingTarget,distance=..30] run function lib:damage/
# リセット
    function lib:damage/reset
    tag @a[tag=LandingTarget,distance=..30] remove LandingTarget


text:
#> asset:mob/0185.tutankhamen/tick/burn_laser/05.shoot_recursive
#
#
#
# @within function
#   asset:mob/0185.tutankhamen/tick/burn_laser/04.shoot
#   asset:mob/0185.tutankhamen/tick/burn_laser/05.shoot_recursive

# 演出
    particle lava ~ ~ ~ 0 0 0 0 1 normal @a
    particle lava ^ ^ ^0.25 0 0 0 0 1 normal @a
    particle lava ^ ^ ^0.5 0 0 0 0 1 normal @a
    particle lava ^ ^ ^0.75 0 0 0 0 1 normal @a
    playsound minecraft:entity.iron_golem.death hostile @a ~ ~ ~ 0.04 0

# 着弾Tagを付与を付与
    execute positioned ~-0.5 ~ ~-0.5 if entity @a[tag=!PlayerShouldInvulnerable,dx=0] run tag @a[tag=!PlayerShouldInvulnerable,dx=0] add LandingTarget

# 再帰
    execute if entity @s[distance=..30] positioned ^ ^ ^1 if block ^ ^ ^ #lib:no_collision run function asset:mob/0185.tutankhamen/tick/burn_laser/05.shoot_recursive


text:
#> asset:mob/0185.tutankhamen/tick/burn_laser/03.light_recursive
#
#
#
# @within function
#   asset:mob/0185.tutankhamen/tick/burn_laser/02.light
#   asset:mob/0185.tutankhamen/tick/burn_laser/03.light_recursive

# 赤いdust
    particle dust 1 0 0 1 ~ ~ ~ 0 0 0 0 1 normal @a

# 再帰
    execute if entity @s[distance=..30] unless entity @a[tag=!PlayerShouldInvulnerable,dx=0] if block ~ ~ ~ #lib:no_collision positioned ^ ^ ^0.5 run function asset:mob/0185.tutankhamen/tick/burn_laser/03.light_recursive


text:
#> asset:mob/0185.tutankhamen/tick/burn_laser/01.main
#
#
#
# @within function
#   asset:mob/0185.tutankhamen/tick/04.attack_branch

# レーザーの進路を一度赤いdustで表示し、その20tick後に発射を3秒ごとに3回繰り返す

# 一定間隔で実行用のスコア
    scoreboard players add @s 55.AttackTick 1

# 照射
    execute if entity @s[scores={55.Tick=..59,55.AttackTick=2..11}] run function asset:mob/0185.tutankhamen/tick/burn_laser/02.light

# 発射
    execute if entity @s[scores={55.Tick=..59,55.AttackTick=20}] run function asset:mob/0185.tutankhamen/tick/burn_laser/04.shoot

# たまに4回目
    execute if entity @s[tag=!55.4thLaser,scores={55.Tick=59}] if predicate lib:random_pass_per/40 run function asset:mob/0185.tutankhamen/tick/burn_laser/07.random_4th

# リセット
    execute if entity @s[scores={55.Tick=59}] run function asset:mob/0185.tutankhamen/tick/05.reset


text:
#> asset:mob/0185.tutankhamen/tick/warp_attack/02.warp
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/warp_attack/01.main

# ワープ準備
    tag @s remove 55.WarpAttack
    tag @s add 55.MagicSquare
    scoreboard players set @s 55.Tick 20

# ワープ
    tp @s @a[gamemode=!spectator,distance=..32,sort=random,limit=1]

# 演出
    particle witch ~ ~1.2 ~ 0.4 0.5 0.4 1 200 normal @a
    execute at @p[gamemode=!spectator] run particle witch ~ ~1.2 ~ 0.4 0.5 0.4 1 200 normal @a
    playsound entity.enderman.teleport hostile @a[distance=..32] ~ ~ ~ 1.3 1 1


text:
#> asset:mob/0185.tutankhamen/tick/warp_attack/01.main
#
#
#
# @within function asset:mob/0185.tutankhamen/tick/04.attack_branch

# ワープするまでパーティクル
    particle witch ~ ~1.2 ~ 0.4 0.4 0.4 0 10 normal @a

# ワープ
    execute if entity @s[scores={55.Tick=50..}] run function asset:mob/0185.tutankhamen/tick/warp_attack/02.warp


text:
#> asset:mob/0092.red_rose/0.load
#
# MOBに利用するスコアボード等の初期化処理
#
# @within tag/function asset:mob/load

#> 定義類はここに
# @within function asset:mob/0092.red_rose/**
    scoreboard objectives add 2K.Time dummy


text:
#> asset:mob/0092.red_rose/death/2.death
#
# Mobの死亡時の処理
#
# @within function asset:mob/0092.red_rose/death/1.trigger

# 演出
    playsound entity.ravager.death hostile @a ~ ~ ~ 1 0.5


text:
#> asset:mob/0092.red_rose/death/1.trigger
#
# Mobの死亡時に実行されるfunction
#
# @within tag/function asset:mob/death

execute if data storage asset:context {id:92} run function asset:mob/0092.red_rose/death/2.death


text:
#> asset:mob/0092.red_rose/summon/2.summon
#
# Mobの召喚時の処理
#
# @within function asset:mob/0092.red_rose/summon/1.trigger

# 元となるMobを召喚する
    summon zombie ~ ~ ~ {Tags:["MobInit","AlwaysInvisible","AlwaysBurn"],Silent:1b,ActiveEffects:[{Id:12,Amplifier:0b,Duration:2147483647}],DeathLootTable:"asset:mob/death/0092.red_rose"}
# ID (int)
    data modify storage asset:mob ID set value 92
# Type (string) Wikiを参照
    data modify storage asset:mob Type set value "Enemy.Boss"
# 干渉可能か否か (boolean)
    data modify storage asset:mob Interferable set value true
# 名前 (TextComponentString) (オプション)
    data modify storage asset:mob Name set value '{"text":"赤薔薇の天使","color":"dark_red"}'
# 武器
    # メインハンド (Compound(Item)) (オプション)
        data modify storage asset:mob Weapon.Mainhand set value {id:"minecraft:stick",Count:1b,tag:{CustomModelData:314}}
    # オフハンド (Compound(Item)) (オプション)
        # data modify storage asset:mob Weapon.Offhand set value
# 武器ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob WeaponDropChances set value
# 防具
    # 頭 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Head set value
    # 胴 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Chest set value {id:"minecraft:leather_chestplate",Count:1b,tag:{display:{color:6029569}}}
    # 脚 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Legs set value {id:"minecraft:leather_leggings",Count:1b,tag:{display:{color:6029569}}}
    # 足 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Feet set value {id:"minecraft:leather_boots",Count:1b,tag:{display:{color:6029569}}}
# 防具ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob ArmorDropChances set value
# 体力 (double) (オプション)
    data modify storage asset:mob Health set value 500
# 攻撃力 (double) (オプション)
    data modify storage asset:mob AttackDamage set value 5
# 防御力 (double) (オプション) // 被ダメージがある程度大きい場合1ptにつき0.8%カット、小さい場合1ptにつき約4%カット 20pt以上は頭打ち
    data modify storage asset:mob Defense set value 20
# 特殊防御力 (double) (オプション) // 4pointにつきダメージを大きく減らす
    data modify storage asset:mob SpecialDefense set value 10
# 移動速度 (double) (オプション)
    data modify storage asset:mob Speed set value 0.25
# 索敵範囲 (double) (オプション)
    data modify storage asset:mob FollowRange set value 32
# ノックバック耐性 (double) (オプション)
    data modify storage asset:mob KnockBackResist set value 1
# 属性倍率 // 1.0fで100% 最低でも25%は軽減されずに入る
    # 物理倍率 (float) (オプション)
        data modify storage asset:mob Resist.Physical set value 0.7
    # 魔法倍率 (float) (オプション)
        data modify storage asset:mob Resist.Magic set value 0.7
    # 火倍率 (float) (オプション)
        data modify storage asset:mob Resist.Fire set value 0
    # 水倍率 (float) (オプション)
        data modify storage asset:mob Resist.Water set value 1
    # 雷倍率 (float) (オプション)
        data modify storage asset:mob Resist.Thunder set value 0.7

# MobInitタグ持ちを対象にして召喚関数呼び出し
    execute as @e[type=zombie,tag=MobInit,distance=..0.01] run function asset:mob/common/summon


text:
#> asset:mob/0092.red_rose/summon/1.trigger
#
# Mob召喚処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:mob/summon

execute if data storage asset:context {id:92} run function asset:mob/0092.red_rose/summon/2.summon


text:
#> asset:mob/0092.red_rose/hurt/2.hurt
#
# Mobの被ダメージ時の処理
#
# @within function asset:mob/0092.red_rose/hurt/1.trigger

# 演出
    playsound minecraft:entity.piglin.celebrate hostile @a ~ ~ ~ 1 1


text:
#> asset:mob/0092.red_rose/hurt/1.trigger
#
# Mobの被ダメージに実行されるfunction
#
# @within tag/function asset:mob/hurt

execute if data storage asset:context {id:92} run function asset:mob/0092.red_rose/hurt/2.hurt


text:
#> asset:mob/0092.red_rose/attack/1.trigger
#
# Mobの攻撃時に実行されるfunction
#
# @within tag/function asset:mob/attack

execute if data storage asset:context {id:92} run function asset:mob/0092.red_rose/attack/2.attack


text:
#> asset:mob/0092.red_rose/attack/2.attack
#
# Mobの攻撃時の処理
#
# @within function asset:mob/0092.red_rose/attack/1.trigger

# 演出
    execute as @p[tag=Victim] at @s run particle lava ~ ~ ~ 0.1 0 0.1 0 10
    playsound minecraft:entity.blaze.death hostile @a ~ ~ ~ 1 2

# 与えるダメージ
    data modify storage lib: Argument.Damage set value 10f
# 属性
    data modify storage lib: Argument.AttackType set value "Physical"
    data modify storage lib: Argument.ElementType set value "Fire"
# 補正functionを実行
    function lib:damage/modifier
# 対象
    execute as @p[tag=Victim] run function lib:damage/
# リセット
    function lib:damage/reset


text:
#> asset:mob/0092.red_rose/tick/2.tick
#
# Mobのtick時の処理
#
# @within function asset:mob/0092.red_rose/tick/1.trigger

# 演出
    particle flame ~ ~1 ~ 0.4 0.4 0.4 0 1 normal
    particle lava ~ ~1 ~ 0 0 0 0 1 normal

# スコアを増やす
    scoreboard players add @s 2K.Time 1

# 一定のスコアになったら実行（スキル発動の予兆）
    execute if score @s 2K.Time matches 120.. run particle dragon_breath ~ ~0.5 ~ 2 0 2 0 10
    execute if score @s 2K.Time matches 120 run playsound entity.ender_dragon.growl hostile @a ~ ~ ~ 1 2
    execute if score @s 2K.Time matches 120 run data modify entity @s NoAI set value 1
    execute if score @s 2K.Time matches 120 run tp @s ~ ~ ~ facing entity @p

# スキル発動
    execute if score @s 2K.Time matches 160 positioned ^ ^ ^1 run function asset:mob/0092.red_rose/tick/2.1.skill
    execute if score @s 2K.Time matches 170 positioned ^ ^ ^3 run function asset:mob/0092.red_rose/tick/2.1.skill
    execute if score @s 2K.Time matches 180 positioned ^ ^ ^5 run function asset:mob/0092.red_rose/tick/2.1.skill

# スキルリセット
    execute if score @s 2K.Time matches 180 run function asset:mob/0092.red_rose/tick/2.2.reset


text:
#> asset:mob/0092.red_rose/tick/2.1.skill
#
#
#
# @within function asset:mob/0092.red_rose/tick/2.tick

# 演出
    particle minecraft:explosion ~ ~ ~ 1 1 1 0 30
    particle minecraft:large_smoke ~ ~ ~ 0 0 0 0.4 100
    particle minecraft:lava ~ ~ ~ 1 1 1 0.42 100

    playsound entity.lightning_bolt.impact hostile @a ~ ~ ~ 1 0
    playsound entity.generic.explode hostile @a ~ ~ ~ 1 0

# ダメージ設定
    # 与えるダメージ
        data modify storage lib: Argument.Damage set value 18.0f
    # 魔法属性
        data modify storage lib: Argument.AttackType set value "Magic"
    # 雷属性
        data modify storage lib: Argument.ElementType set value "Fire"
    # ダメージ
        function lib:damage/modifier
        execute as @a[tag=!PlayerShouldInvulnerable,distance=..2] at @s run function lib:damage/
# リセット
    function lib:damage/reset

# プレイヤーの方向へ前進
 tp @s ~ ~ ~ facing entity @p[gamemode=!spectator]


text:
#> asset:mob/0092.red_rose/tick/2.2.reset
#
# リセット処理
#
# @within function asset:mob/0092.red_rose/tick/2.tick

# スコアを戻す
    scoreboard players set @s 2K.Time 0

# NoAIを戻す
    data modify entity @s NoAI set value 0


text:
#> asset:mob/0092.red_rose/tick/1.trigger
#
# Mobが生きている間毎tick実行されるfunction
#
# @within tag/function asset:mob/tick

execute if data storage asset:context {id:92} run function asset:mob/0092.red_rose/tick/2.tick


text:
#> asset:mob/0166.flying_potion/_index.d
# @private

#> tag
# @within function asset:mob/0166.flying_potion/**/**
    #declare tag 4M.Potion


text:
#> asset:mob/0166.flying_potion/death/2.death
#
# Mobの死亡時の処理
#
# @within function asset:mob/0166.flying_potion/death/1.trigger

# 演出
    particle minecraft:dragon_breath ~ ~ ~ 0 0 0 0.1 100
    playsound entity.splash_potion.break hostile @a ~ ~ ~ 1 1


text:
#> asset:mob/0166.flying_potion/death/1.trigger
#
# Mobの死亡時に実行されるfunction
#
# @within tag/function asset:mob/death

execute if data storage asset:context {id:166} run function asset:mob/0166.flying_potion/death/2.death


text:
#> asset:mob/0166.flying_potion/summon/2.summon
#
# Mobの召喚時の処理
#
# @within function asset:mob/0166.flying_potion/summon/1.trigger

# 元となるMobを召喚する
    summon vex ~ ~ ~ {Tags:["MobInit","AlwaysInvisible"],DeathLootTable:"asset:mob/death/0166.flying_potion",Passengers:[{id:"minecraft:potion",Tags:["4M.Potion","AutoKillWhenDieVehicle","AssetMob"],Item:{id:"minecraft:splash_potion",Count:1b,tag:{CustomPotionColor:7289855}}}]}
# ID (int)
    data modify storage asset:mob ID set value 166
# Type (string) Wikiを参照
    data modify storage asset:mob Type set value "Enemy"
# 干渉可能か否か (boolean)
    data modify storage asset:mob Interferable set value true
# 名前 (TextComponentString) (オプション)
    data modify storage asset:mob Name set value '{"text":"フライングポーション","color":"dark_purple"}'
# 武器
    # メインハンド (Compound(Item)) (オプション)
        # data modify storage asset:mob Weapon.Mainhand set value
    # オフハンド (Compound(Item)) (オプション)
        # data modify storage asset:mob Weapon.Offhand set value
# 武器ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob WeaponDropChances set value
# 防具
    # 頭 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Head set value
    # 胴 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Chest set value
    # 脚 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Legs set value
    # 足 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Feet set value
# 防具ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob ArmorDropChances set value
# 体力 (double) (オプション)
    data modify storage asset:mob Health set value 1
# 攻撃力 (double) (オプション)
    data modify storage asset:mob AttackDamage set value 1
# 防御力 (double) (オプション) // 被ダメージがある程度大きい場合1ptにつき0.8%カット、小さい場合1ptにつき約4%カット 20pt以上は頭打ち
    # data modify storage asset:mob Defense set value
# 特殊防御力 (double) (オプション) // 4pointにつきダメージを大きく減らす
    # data modify storage asset:mob SpecialDefense set value
# 移動速度 (double) (オプション)
    # data modify storage asset:mob Speed set value
# 索敵範囲 (double) (オプション)
    data modify storage asset:mob FollowRange set value 64
# ノックバック耐性 (double) (オプション)
    # data modify storage asset:mob KnockBackResist set value
# 属性倍率 // 1.0fで100% 最低でも25%は軽減されずに入る
    # 物理倍率 (float) (オプション)
        # data modify storage asset:mob Resist.Physical set value
    # 魔法倍率 (float) (オプション)
        # data modify storage asset:mob Resist.Magic set value
    # 火倍率 (float) (オプション)
        # data modify storage asset:mob Resist.Fire set value
    # 水倍率 (float) (オプション)
        # data modify storage asset:mob Resist.Water set value
    # 雷倍率 (float) (オプション)
        # data modify storage asset:mob Resist.Thunder set value

# MobInitタグ持ちを対象にして召喚関数呼び出し
    execute as @e[type=vex,tag=MobInit,distance=..0.01] run function asset:mob/common/summon


text:
#> asset:mob/0166.flying_potion/summon/1.trigger
#
# Mob召喚処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:mob/summon

execute if data storage asset:context {id:166} run function asset:mob/0166.flying_potion/summon/2.summon


text:
#> asset:mob/0166.flying_potion/attack/1.trigger
#
# Mobの攻撃時に実行されるfunction
#
# @within tag/function asset:mob/attack

execute if data storage asset:context {id:166} run function asset:mob/0166.flying_potion/attack/2.attack


text:
#> asset:mob/0166.flying_potion/attack/2.attack
#
# Mobの攻撃時の処理
#
# @within function asset:mob/0166.flying_potion/attack/1.trigger
#> Private
# @private
    #declare score_holder $Random

# 効果
    # 疑似乱数取得
        execute store result score $Random Temporary run function lib:random/
    # ほしい範囲に剰余算
        scoreboard players operation $Random Temporary %= $8 Const
    # 効果を与える
        execute if score $Random Temporary matches 0 run effect give @p[tag=Victim] blindness 5 0
        execute if score $Random Temporary matches 1 run effect give @p[tag=Victim] poison 10 0
        execute if score $Random Temporary matches 2 run effect give @p[tag=Victim] slowness 10 1
        execute if score $Random Temporary matches 3 run effect give @p[tag=Victim] weakness 10 0
        execute if score $Random Temporary matches 4 run effect give @p[tag=Victim] hunger 10 0
        execute if score $Random Temporary matches 5 run effect give @p[tag=Victim] nausea 5 0
        execute if score $Random Temporary matches 6 run effect give @p[tag=Victim] instant_damage 1 0
        execute if score $Random Temporary matches 6 run effect give @p[tag=Victim] mining_fatigue 10 0

    # リセット
        scoreboard players reset $Random Temporary

# 演出
    particle minecraft:dragon_breath ~ ~ ~ 0 0 0 0.1 100
    playsound entity.splash_potion.break hostile @a ~ ~ ~ 1 1

# 自殺する
    tp @s ~ ~-500 ~
    kill @s


text:
#> asset:mob/0166.flying_potion/tick/2.tick
#
# Mobのtick時の処理
#
# @within function asset:mob/0166.flying_potion/tick/1.trigger

# キラキラ演出
    particle minecraft:witch ^ ^ ^0.4 0.3 0.3 0.3 1 1


text:
#> asset:mob/0166.flying_potion/tick/1.trigger
#
# Mobが生きている間毎tick実行されるfunction
#
# @within tag/function asset:mob/tick

execute if data storage asset:context {id:166} run function asset:mob/0166.flying_potion/tick/2.tick


text:
#> asset:mob/0090.decapitation/death/2.death
#
# Mobの死亡時の処理
#
# @within function asset:mob/0090.decapitation/death/1.trigger

# 骨をばらまく
    summon item ~ ~ ~ {Motion:[0.0,0.5,0.0],Item:{id:"minecraft:bone",Count:1b}}
    summon item ~ ~ ~ {Motion:[0.0,0.5,-0.4],Item:{id:"minecraft:bone",Count:1b}}
    summon item ~ ~ ~ {Motion:[0.0,0.5,0.4],Item:{id:"minecraft:bone",Count:1b}}
    summon item ~ ~ ~ {Motion:[0.4,0.5,0.0],Item:{id:"minecraft:bone",Count:1b}}
    summon item ~ ~ ~ {Motion:[-0.4,0.5,0.0],Item:{id:"minecraft:bone",Count:1b}}


text:
#> asset:mob/0090.decapitation/death/1.trigger
#
# Mobの死亡時に実行されるfunction
#
# @within tag/function asset:mob/death

execute if data storage asset:context {id:90} run function asset:mob/0090.decapitation/death/2.death


text:
#> asset:mob/0090.decapitation/summon/2.summon
#
# Mobの召喚時の処理
#
# @within function asset:mob/0090.decapitation/summon/1.trigger

# 元となるMobを召喚する
    summon skeleton ~ ~ ~ {Tags:["MobInit","AlwaysInvisible"],DeathLootTable:"asset:mob/death/0090.decapitation"}
# ID (int)
    data modify storage asset:mob ID set value 90
# Type (string) Wikiを参照
    data modify storage asset:mob Type set value "Enemy"
# 干渉可能か否か (boolean)
    data modify storage asset:mob Interferable set value true
# 名前 (TextComponentString) (オプション)
    data modify storage asset:mob Name set value '{"text":"断切者","color":"dark_red"}'
# 武器
    # メインハンド (Compound(Item)) (オプション)
        data modify storage asset:mob Weapon.Mainhand set value {id:"minecraft:stick",Count:1b,tag:{CustomModelData:20022}}
    # オフハンド (Compound(Item)) (オプション)
        # data modify storage asset:mob Weapon.Offhand set value
# 武器ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob WeaponDropChances set value
# 防具
    # 頭 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Head set value {id:"minecraft:stick",Count:1b,tag:{CustomModelData:20021}}
    # 胴 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Chest set value {id:"minecraft:leather_chestplate",Count:1b,tag:{display:{color:9207149}}}
    # 脚 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Legs set value {id:"minecraft:leather_leggings",Count:1b,tag:{display:{color:9207149}}}
    # 足 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Feet set value {id:"minecraft:leather_boots",Count:1b,tag:{display:{color:9207149}}}
# 防具ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob ArmorDropChances set value
# 体力 (double) (オプション)
    data modify storage asset:mob Health set value 610
# 攻撃力 (double) (オプション)
    data modify storage asset:mob AttackDamage set value 1
# 防御力 (double) (オプション) // 被ダメージがある程度大きい場合1ptにつき0.8%カット、小さい場合1ptにつき約4%カット 20pt以上は頭打ち
    data modify storage asset:mob Defense set value -6
# 特殊防御力 (double) (オプション) // 4pointにつきダメージを大きく減らす
    # data modify storage asset:mob SpecialDefense set value
# 移動速度 (double) (オプション)
    data modify storage asset:mob Speed set value 0.22
# 索敵範囲 (double) (オプション)
    data modify storage asset:mob FollowRange set value 32
# ノックバック耐性 (double) (オプション)
    data modify storage asset:mob KnockBackResist set value 0.8
# 属性倍率 // 1.0fで100% 最低でも25%は軽減されずに入る
    # 物理倍率 (float) (オプション)
        data modify storage asset:mob Resist.Physical set value 0.5
    # 魔法倍率 (float) (オプション)
        data modify storage asset:mob Resist.Magic set value 0.9
    # 火倍率 (float) (オプション)
        data modify storage asset:mob Resist.Fire set value 0.9
    # 水倍率 (float) (オプション)
        data modify storage asset:mob Resist.Water set value 0.7
    # 雷倍率 (float) (オプション)
        data modify storage asset:mob Resist.Thunder set value 0.9

# MobInitタグ持ちを対象にして召喚関数呼び出し
    execute as @e[type=skeleton,tag=MobInit,distance=..0.01] run function asset:mob/common/summon


text:
#> asset:mob/0090.decapitation/summon/1.trigger
#
# Mob召喚処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:mob/summon

execute if data storage asset:context {id:90} run function asset:mob/0090.decapitation/summon/2.summon


text:
#> asset:mob/0090.decapitation/hurt/3.bone_drop
#
#
#
# @within function asset:mob/0090.decapitation/hurt/2.hurt

# 演出
    playsound entity.skeleton.death hostile @a ~ ~ ~
# 骨召喚
    summon item ~ ~ ~ {Motion:[0.0,0.5,0.0],Item:{id:"minecraft:bone",Count:1b}}

# 自爆ダメージ
    data modify storage lib: Argument.Damage set value 20f
# 第一属性
    data modify storage lib: Argument.AttackType set value "Physical"
# 耐性を無視する
    data modify storage lib: Argument.FixedDamage set value true
# 自爆する
    function lib:damage/
# リセット
    function lib:damage/reset


text:
#> asset:mob/0090.decapitation/hurt/2.hurt
#
# Mobの被ダメージ時の処理
#
# @within function asset:mob/0090.decapitation/hurt/1.trigger

# 一定確率でダメージを受けて骨を落とす
    execute if predicate lib:random_pass_per/30 run function asset:mob/0090.decapitation/hurt/3.bone_drop

# 被ダメ時に加速
    effect give @s speed 1 2 true


text:
#> asset:mob/0090.decapitation/hurt/1.trigger
#
# Mobの被ダメージに実行されるfunction
#
# @within tag/function asset:mob/hurt

execute if data storage asset:context {id:90} run function asset:mob/0090.decapitation/hurt/2.hurt


text:
#> asset:mob/0090.decapitation/attack/1.trigger
#
# Mobの攻撃時に実行されるfunction
#
# @within tag/function asset:mob/attack

execute if data storage asset:context {id:90} run function asset:mob/0090.decapitation/attack/2.attack


text:
#> asset:mob/0090.decapitation/attack/2.attack
#
# Mobの攻撃時の処理
#
# @within function asset:mob/0090.decapitation/attack/1.trigger

# 演出
    execute as @p[tag=Victim] at @s run particle block redstone_block ~ ~ ~ 0.1 0 0.1 0 10
    playsound minecraft:entity.evoker_fangs.attack hostile @a ~ ~ ~ 1 1.5

# 何故かこうするとプレイヤーと同じ剣の降り方をする
    item replace entity @s weapon with stick{CustomModelData:20022}

# 与えるダメージ
    data modify storage lib: Argument.Damage set value 22f
# 属性
    data modify storage lib: Argument.AttackType set value "Physical"
    data modify storage lib: Argument.ElementType set value "None"
# 補正functionを実行
    function lib:damage/modifier
# 対象
    execute as @p[tag=Victim] run function lib:damage/
# リセット
    function lib:damage/reset


text:
#> asset:mob/0286.456_dice_entity/0.load
#
# MOBに利用するスコアボード等の初期化処理
#
# @within tag/function asset:mob/load

#> 定義類はここに
# @within function asset:mob/0286.456_dice_entity/**
    scoreboard objectives add CU.MoveTime dummy
    scoreboard objectives add CU.MoveTime2 dummy
    scoreboard objectives add CU.MoveCount dummy
    scoreboard objectives add CU.RandomCount dummy
    scoreboard objectives add CU.UserID dummy


text:
#> asset:mob/0286.456_dice_entity/_index.d
# @private

#> tag
# @within function asset:mob/0286.456_dice_entity/**
    #declare tag CU.This
    #declare tag Landing
    #declare tag LandingTarget


text:
#> asset:mob/0286.456_dice_entity/summon/2.summon
#
# Mobの召喚時の処理
#
# @within function asset:mob/0286.456_dice_entity/summon/1.trigger

# 元となるMobを召喚する
    summon armor_stand ~ ~ ~ {DisabledSlots:4144959,Invisible:1b,Tags:["MobInit"]}
# ID (int)
    data modify storage asset:mob ID set value 286
# Type (string) Wikiを参照
    data modify storage asset:mob Type set value "Projectile"
# 干渉可能か否か (boolean)
    data modify storage asset:mob Interferable set value false
# 防具
    # 頭 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Head set value {id:"minecraft:carrot_on_a_stick",Count:1b,tag:{CustomModelData:462}}

# ユーザーIDを受け取る
    scoreboard players operation @e[type=armor_stand,tag=MobInit,distance=..0.01] CU.UserID = @p[tag=this] UserID

# MobInitタグ持ちを対象にして召喚関数呼び出し
    execute as @e[type=armor_stand,tag=MobInit,distance=..0.01] run function asset:mob/0286.456_dice_entity/summon/init
    execute as @e[type=armor_stand,tag=MobInit,distance=..0.01] run function asset:mob/common/summon


text:
#> asset:mob/0286.456_dice_entity/summon/1.trigger
#
# Mob召喚処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:mob/summon

execute if data storage asset:context {id:286} run function asset:mob/0286.456_dice_entity/summon/2.summon


text:
#> asset:mob/0286.456_dice_entity/summon/init
#
#
#
# @within function asset:mob/0286.456_dice_entity/summon/2.summon

# 乱数決定生成
    # 疑似乱数取得
        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


text:
#> asset:mob/0286.456_dice_entity/tick/2.tick
#
# Mobのtick時の処理
#
# @within function asset:mob/0286.456_dice_entity/tick/1.trigger

# 回転
    tp @s[scores={CU.MoveTime=..19}] ~ ~ ~ ~10 ~
    tp @s[scores={CU.MoveTime=20..}] ~ ~ ~ ~30 ~

# 数tick後
    execute if score @s CU.MoveTime matches 1 run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:17,CustomName:'{"text":" Alea jacta est! ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if score @s CU.MoveTime matches 1 run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:18,CustomName:'{"text":" Alea jacta est! ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if score @s CU.MoveTime matches 1 run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:19,CustomName:'{"text":" Alea jacta est! ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if score @s CU.MoveTime matches 20 run function asset:mob/0286.456_dice_entity/tick/event/start
    execute if score @s CU.MoveTime matches 28 run playsound minecraft:block.note_block.xylophone neutral @a ~ ~ ~ 1.5 1.7
    execute if score @s CU.MoveTime matches 30 positioned ~ ~1.7 ~ unless entity @e[type=#lib:living,tag=Enemy,distance=..20,sort=nearest,limit=1] run scoreboard players add @s CU.MoveCount 1
    execute if score @s CU.MoveTime matches 30 positioned ~ ~1.7 ~ facing entity @e[type=#lib:living,tag=Enemy,distance=..20,sort=nearest,limit=1] eyes run function asset:mob/0286.456_dice_entity/tick/event/shoot_beam

# ドラムロール！
    scoreboard players add @s CU.MoveTime2 1
    execute if score @s[scores={CU.MoveTime2=2}] CU.MoveTime matches ..19 run particle note ~ ~2.5 ~ 0 0 0 0 1 force
    execute if score @s[scores={CU.MoveTime2=2}] CU.MoveTime matches ..19 run playsound minecraft:block.note_block.snare neutral @a ~ ~ ~ 1 1.5
    execute if score @s[scores={CU.MoveTime2=4}] CU.MoveTime matches ..19 run playsound minecraft:block.note_block.snare neutral @a ~ ~ ~ 1 1
    scoreboard players reset @s[scores={CU.MoveTime2=4..}] CU.MoveTime2

# パーティクル
    execute positioned ~ ~1.7 ~ run particle minecraft:electric_spark ^ ^ ^1 0 0 0 0 1 force
    execute positioned ~ ~1.7 ~ run particle minecraft:electric_spark ^ ^ ^-1 0 0 0 0 1 force

# スコア加算
    scoreboard players add @s CU.MoveTime 1
    scoreboard players set @s[scores={CU.MoveTime=31..,CU.RandomCount=4}] CU.MoveTime 25
    scoreboard players set @s[scores={CU.MoveTime=31..,CU.RandomCount=5}] CU.MoveTime 26
    scoreboard players set @s[scores={CU.MoveTime=31..,CU.RandomCount=6}] CU.MoveTime 27

# 消滅
    execute if score @s[scores={CU.RandomCount=4}] CU.MoveCount matches 4.. run function asset:mob/0286.456_dice_entity/tick/event/death
    execute if score @s[scores={CU.RandomCount=5}] CU.MoveCount matches 5.. run function asset:mob/0286.456_dice_entity/tick/event/death
    execute if score @s[scores={CU.RandomCount=6}] CU.MoveCount matches 6.. run function asset:mob/0286.456_dice_entity/tick/event/death


text:
#> asset:mob/0286.456_dice_entity/tick/1.trigger
#
# Mobが生きている間毎tick実行されるfunction
#
# @within tag/function asset:mob/tick

execute if data storage asset:context {id:286} run function asset:mob/0286.456_dice_entity/tick/2.tick


text:
#> asset:mob/0286.456_dice_entity/tick/event/start
#
#
#
# @within function asset:mob/0286.456_dice_entity/tick/2.tick

# サウンド
    playsound ogg:random.levelup neutral @a ~ ~ ~ 1.5 1.5
    playsound minecraft:block.note_block.xylophone neutral @a ~ ~ ~ 1.5 1

#
    execute if entity @s[scores={CU.RandomCount=4}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:8,CustomName:'{"text":"  4  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if entity @s[scores={CU.RandomCount=5}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:8,CustomName:'{"text":"  5  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if entity @s[scores={CU.RandomCount=6}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:8,CustomName:'{"text":"  6  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}

    execute if entity @s[scores={CU.RandomCount=4}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:9,CustomName:'{"text":"  4  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if entity @s[scores={CU.RandomCount=5}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:9,CustomName:'{"text":"  5  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if entity @s[scores={CU.RandomCount=6}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:9,CustomName:'{"text":"  6  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}

    execute if entity @s[scores={CU.RandomCount=4}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:10,CustomName:'{"text":"  4  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if entity @s[scores={CU.RandomCount=5}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:10,CustomName:'{"text":"  5  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}
    execute if entity @s[scores={CU.RandomCount=6}] run summon area_effect_cloud ~ ~1.5 ~ {CustomNameVisible:1b,Duration:10,CustomName:'{"text":"  6  ","color":"yellow","bold":true,"italic":false,"underlined":true}'}


text:
#> asset:mob/0286.456_dice_entity/tick/event/beam_recursion
#
#
#
# @within function
#   asset:mob/0286.456_dice_entity/tick/event/beam_recursion
#   asset:mob/0286.456_dice_entity/tick/event/shoot_beam

# 着弾検知
    execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=0] run tag @s add Landing
    execute unless block ^ ^ ^0.5 #lib:no_collision run tag @s add Landing

# ターゲットにタグ付与
    execute positioned ~-0.5 ~-0.5 ~-0.5 if entity @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=0] run tag @e[type=#lib:living,tag=Enemy,tag=!Uninterferable,dx=0,limit=1] add LandingTarget

# 演出
    particle electric_spark ~ ~ ~ 0 0 0 0 1

# 着弾
    execute if entity @s[tag=Landing] run function asset:mob/0286.456_dice_entity/tick/event/hit

# 再起
    execute positioned ^ ^ ^0.5 if entity @s[tag=!Landing,distance=..30] run function asset:mob/0286.456_dice_entity/tick/event/beam_recursion


text:
#> asset:mob/0286.456_dice_entity/tick/event/hit
#
#
#
# @within function asset:mob/0286.456_dice_entity/tick/event/beam_recursion

# 演出
    execute at @e[tag=LandingTarget,limit=1] run playsound minecraft:entity.firework_rocket.blast neutral @a ~ ~ ~ 1 1.5

# タグ付与
    tag @s add CU.This

# ダメージ処理
    #ダメージ設定
        data modify storage lib: Argument.Damage set value 50.0f
    # 第一属性
        data modify storage lib: Argument.AttackType set value "Magic"
    # 第二属性
        # 属性をランダムに決定する
            # 疑似乱数取得
                execute store result score @s Temporary run function lib:random/
            # ほしい範囲に剰余算
                scoreboard players operation @s Temporary %= $3 Const

            # 火
                execute if score @s Temporary matches 0 run data modify storage lib: Argument.ElementType set value "Fire"
                execute if score @s Temporary matches 0 at @e[tag=LandingTarget,limit=1] run particle minecraft:dust 1000000000 1 0 1 ~ ~1 ~ 0.3 0.5 0.3 0.01 20 force

            # 水
                execute if score @s Temporary matches 1 run data modify storage lib: Argument.ElementType set value "Water"
                execute if score @s Temporary matches 1 at @e[tag=LandingTarget,limit=1] run particle dust 1 1000000000 1000000000 1 ~ ~1 ~ 0.3 0.5 0.3 0.01 20 force

            # 雷
                execute if score @s Temporary matches 2 run data modify storage lib: Argument.ElementType set value "Thunder"
                execute if score @s Temporary matches 2 at @e[tag=LandingTarget,limit=1] run particle dust 10000000000 10000000000 1 1 ~ ~1 ~ 0.3 0.5 0.3 0.01 20 force

    # ダメージ
        execute as @a if score @s UserID = @e[type=armor_stand,tag=CU.This,distance=..1,limit=1] CU.UserID run function lib:damage/modifier
        execute as @e[tag=LandingTarget] run function lib:damage/

# リセット
    function lib:damage/reset
    tag @s remove CU.This

# 着弾タグを消す
    tag @e[tag=LandingTarget] remove LandingTarget


text:
#> asset:mob/0286.456_dice_entity/tick/event/death
#
#
#
# @within function asset:mob/0286.456_dice_entity/tick/2.tick

# 消滅
    playsound minecraft:entity.chicken.egg neutral @a ~ ~ ~ 1.5 1.2
    particle minecraft:explosion ~ ~1.7 ~ 0 0 0 0 0
    kill @s


text:
#> asset:mob/0286.456_dice_entity/tick/event/shoot_beam
#
#
#
# @within function asset:mob/0286.456_dice_entity/tick/2.tick

# 演出
    playsound minecraft:block.note_block.xylophone neutral @a ~ ~ ~ 1.5 1.5
    particle crit ~ ~ ~ 0 0 0 0.5 10

# 再帰スタート
    function asset:mob/0286.456_dice_entity/tick/event/beam_recursion
    tag @s remove Landing

# カウント加算
    scoreboard players add @s CU.MoveCount 1


text:
#> asset:mob/0084.falcios_priest/0.load
#
# MOBに利用するスコアボード等の初期化処理
#
# @within tag/function asset:mob/load

#> 定義類はここに
# @within function asset:mob/0084.falcios_priest/**
    scoreboard objectives add 2C.Tick dummy
    scoreboard objectives add 2C.Skill dummy


text:
#> asset:mob/0084.falcios_priest/death/2.death
#
# Mobの死亡時の処理
#
# @within function asset:mob/0084.falcios_priest/death/1.trigger

# 演出
    particle minecraft:soul ~ ~0.5 ~ 0 0 0 0.04 100
    particle block black_concrete ~ ~1.2 ~ 0.4 0.5 0.4 0 100


text:
#> asset:mob/0084.falcios_priest/death/1.trigger
#
# Mobの死亡時に実行されるfunction
#
# @within tag/function asset:mob/death

execute if data storage asset:context {id:84} run function asset:mob/0084.falcios_priest/death/2.death


text:
#> asset:mob/0084.falcios_priest/summon/2.summon
#
# Mobの召喚時の処理
#
# @within function asset:mob/0084.falcios_priest/summon/1.trigger

# 元となるMobを召喚する
    summon wither_skeleton ~ ~ ~ {Tags:["MobInit"],DeathLootTable:"asset:mob/death/0084.falcios_priest"}
# ID (int)
    data modify storage asset:mob ID set value 84
# Type (string) Wikiを参照
    data modify storage asset:mob Type set value "Enemy"
# 干渉可能か否か (boolean)
    data modify storage asset:mob Interferable set value true
# 名前 (TextComponentString) (オプション)
    data modify storage asset:mob Name set value '{"text":"ファルシオスの神官","color":"gold"}'
# 武器
    # メインハンド (Compound(Item)) (オプション)
        data modify storage asset:mob Weapon.Mainhand set value {id:"carrot_on_a_stick",Count:1b,tag:{CustomModelData:192}}
    # オフハンド (Compound(Item)) (オプション)
        # data modify storage asset:mob Weapon.Offhand set value
# 武器ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob WeaponDropChances set value
# 防具
    # 頭 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Head set value {id:"golden_helmet",Count:1b,tag:{Unbreakable:1b}}
    # 胴 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Chest set value {id:"golden_chestplate",Count:1b}
    # 脚 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Legs set value {id:"golden_leggings",Count:1b}
    # 足 (Compound(Item)) (オプション)
        data modify storage asset:mob Armor.Feet set value {id:"golden_boots",Count:1b}
# 防具ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob ArmorDropChances set value
# 体力 (double) (オプション)
    data modify storage asset:mob Health set value 2900
# 攻撃力 (double) (オプション)
    data modify storage asset:mob AttackDamage set value 0
# 防御力 (double) (オプション) // 被ダメージがある程度大きい場合1ptにつき0.8%カット、小さい場合1ptにつき約4%カット 20pt以上は頭打ち
    data modify storage asset:mob Defense set value -11
# 特殊防御力 (double) (オプション) // 4pointにつきダメージを大きく減らす
    # data modify storage asset:mob SpecialDefense set value
# 移動速度 (double) (オプション)
    data modify storage asset:mob Speed set value 0.23
# 索敵範囲 (double) (オプション)
    data modify storage asset:mob FollowRange set value 32
# ノックバック耐性 (double) (オプション)
    data modify storage asset:mob KnockBackResist set value 0.5
# 属性倍率 // 1.0fで100% 最低でも25%は軽減されずに入る
    # 物理倍率 (float) (オプション)
        data modify storage asset:mob Resist.Physical set value 1.0
    # 魔法倍率 (float) (オプション)
        data modify storage asset:mob Resist.Magic set value 0.5
    # 火倍率 (float) (オプション)
        data modify storage asset:mob Resist.Fire set value 0.75
    # 水倍率 (float) (オプション)
        data modify storage asset:mob Resist.Water set value 1.0
    # 雷倍率 (float) (オプション)
        data modify storage asset:mob Resist.Thunder set value 0.25

# MobInitタグ持ちを対象にして召喚関数呼び出し
    execute as @e[type=wither_skeleton,tag=MobInit,distance=..0.01] run function asset:mob/common/summon


text:
#> asset:mob/0084.falcios_priest/summon/1.trigger
#
# Mob召喚処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:mob/summon

execute if data storage asset:context {id:84} run function asset:mob/0084.falcios_priest/summon/2.summon


text:
#> asset:mob/0084.falcios_priest/tick/4.heal
#
# 回復スキル
#
# @within function asset:mob/0084.falcios_priest/tick/2.tick

# 演出
    particle soul ~ ~1.2 ~ 2.5 0.5 2.5 0.3 200 normal
    playsound block.sculk_sensor.clicking hostile @a ~ ~ ~ 0.8 0 0
    playsound block.fire.ambient hostile @a ~ ~ ~ 1.5 0.8 0
    playsound ogg:mob.vex.idle1 hostile @a ~ ~ ~ 0.8 0 0
    execute as @e[type=#lib:living,tag=Enemy,tag=!this,distance=..10,sort=random,limit=5] unless entity @s[scores={MobID=84}] run particle heart ~ ~1.2 ~ 0.4 0.4 0.4 0 20 normal @a

# 回復
    data modify storage lib: Argument.Heal set value 400f
    function lib:heal/modifier
    execute as @e[type=#lib:living,tag=Enemy,tag=!this,distance=..10,sort=random,limit=5] unless entity @s[scores={MobID=84}] run function lib:heal/
    function lib:heal/reset


text:
#> asset:mob/0084.falcios_priest/tick/5.shoot
#
# 発射スキル
#
# @within function asset:mob/0084.falcios_priest/tick/2.tick

#> Private
# @private
    #declare tag 2C.Already

# 演出
    playsound entity.blaze.shoot hostile @a ~ ~ ~ 1 1.3 0

# 召喚
    data modify storage api: Argument.ID set value 85
    function api:mob/summon
    tp @e[type=marker,tag=!2C.Already,scores={MobID=85},distance=..0.01,limit=1] ~ ~1.6 ~ facing entity @p[gamemode=!spectator,distance=..50] eyes
    tag @e[type=marker,scores={MobID=85},distance=..0.01,limit=1] add 2C.Already


text:
#> asset:mob/0084.falcios_priest/tick/2.tick
#
# Mobのtick時の処理
#
# @within function asset:mob/0084.falcios_priest/tick/1.trigger

# スコア
    scoreboard players add @s 2C.Tick 1

# 技選択
    execute if predicate api:global_vars/difficulty/max/normal if entity @s[scores={2C.Tick=80..}] run function asset:mob/0084.falcios_priest/tick/3.select_skill

# 回復
    execute if predicate api:global_vars/difficulty/max/normal if entity @s[scores={2C.Skill=0}] run function asset:mob/0084.falcios_priest/tick/4.heal

# 弾を発射
    execute if predicate api:global_vars/difficulty/max/normal if entity @s[scores={2C.Skill=1}] run function asset:mob/0084.falcios_priest/tick/5.shoot

# ハード以上の場合二つのスキルを同時に使う
    execute if predicate api:global_vars/difficulty/min/hard if entity @s[scores={2C.Tick=80..}] run function asset:mob/0084.falcios_priest/tick/4.heal
    execute if predicate api:global_vars/difficulty/min/hard if entity @s[scores={2C.Tick=80..}] run function asset:mob/0084.falcios_priest/tick/5.shoot

# リセット
    execute if entity @s[scores={2C.Tick=80..}] run scoreboard players reset @s 2C.Skill
    execute if entity @s[scores={2C.Tick=80..}] run scoreboard players reset @s 2C.Tick


text:
#> asset:mob/0084.falcios_priest/tick/3.select_skill
#
# スキルを選択する
#
# @within function asset:mob/0084.falcios_priest/tick/2.tick

# まずスキル一つ目を選択
    scoreboard players set @s 2C.Skill 0

# プレイヤーが視点先にいる場合高確率で二つ目のスキル
    execute positioned ^ ^ ^16 if entity @a[gamemode=!spectator,distance=..16] if predicate lib:random_pass_per/80 run scoreboard players set @s 2C.Skill 1


text:
#> asset:mob/0084.falcios_priest/tick/1.trigger
#
# Mobが生きている間毎tick実行されるfunction
#
# @within tag/function asset:mob/tick

execute if data storage asset:context {id:84} run function asset:mob/0084.falcios_priest/tick/2.tick


text:
#> asset:mob/0120.convict/0.load
#
# MOBに利用するスコアボード等の初期化処理
#
# @within tag/function asset:mob/load

#> 定義類はここに
# @within function asset:mob/0120.convict/**
    scoreboard objectives add 3C.Tick dummy
    scoreboard objectives add 3C.DebuffTime dummy


text:
#> asset:mob/0120.convict/rejoin_process
#
# 使い方は必ずwikiを見ること
#
# @within tag/function asset:rejoin

# スケジュールループ再開
    execute if entity @s[scores={3C.DebuffTime=1..}] run schedule function asset:mob/0120.convict/player_process/1.loop 1t replace


text:
#> asset:mob/0120.convict/_index.d
# @private

#> tag
# @within function asset:mob/0120.convict/**
    #declare tag 3C.This
    #
    #declare tag 3C.Angel
    #declare tag 3C.ArmorStand
    #declare tag 3C.ArmorStandThis
    #
    #declare tag 3C.SkillAxe
    #declare tag 3C.SkillSummon
    #declare tag 3C.SkillSlash
    #
    #declare tag SpreadMarker
    #declare tag ExistsPassablePlayer
    #declare tag CanTeleport


text:
#> asset:mob/0120.convict/death/2.death
#
# Mobの死亡時の処理
#
# @within function asset:mob/0120.convict/death/1.trigger

# もともといるアマスタには死んでもらう
    kill @e[type=armor_stand,tag=3C.ArmorStand]

# 演出
    particle minecraft:explosion_emitter ~ ~ ~ 0 0 0 0 1 normal
    particle minecraft:block minecraft:blackstone ~ ~1.8 ~ 0.35 0.35 0.35 2 100
    playsound entity.generic.explode hostile @a ~ ~ ~ 1 1
    playsound entity.wither_skeleton.death hostile @a ~ ~ ~ 1 1


text:
#> asset:mob/0120.convict/death/1.trigger
#
# Mobの死亡時に実行されるfunction
#
# @within tag/function asset:mob/death

execute if data storage asset:context {id:120} run function asset:mob/0120.convict/death/2.death


text:
#> asset:mob/0120.convict/summon/2.summon
#
# Mobの召喚時の処理
#
# @within function asset:mob/0120.convict/summon/1.trigger

# 元となるMobを召喚する
    summon wither_skeleton ~ ~ ~ {Tags:["MobInit","AlwaysInvisible","3C.Angel"],PersistenceRequired:1b,Silent:1b,NoAI:1b,DeathLootTable:"asset:mob/death/0120.convict"}
# ID (int)
    data modify storage asset:mob ID set value 120
# Type (string) Wikiを参照
    data modify storage asset:mob Type set value "Enemy.Boss"
# 干渉可能か否か (boolean)
    data modify storage asset:mob Interferable set value true
# 名前 (TextComponentString) (オプション)
    data modify storage asset:mob Name set value '{"text":"断罪者"}'
# 武器
    # メインハンド (Compound(Item)) (オプション)
        # data modify storage asset:mob Weapon.Mainhand set value
    # オフハンド (Compound(Item)) (オプション)
        # data modify storage asset:mob Weapon.Offhand set value
# 武器ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob WeaponDropChances set value
# 防具
    # 頭 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Head set value
    # 胴 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Chest set value
    # 脚 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Legs set value
    # 足 (Compound(Item)) (オプション)
        # data modify storage asset:mob Armor.Feet set value
# 防具ドロップ率 ([float, float]) (オプション)
    # data modify storage asset:mob ArmorDropChances set value
# 体力 (double) (オプション)
    data modify storage asset:mob Health set value 25000
# 攻撃力 (double) (オプション)
    # data modify storage asset:mob AttackDamage set value
# 防御力 (double) (オプション) // 被ダメージがある程度大きい場合1ptにつき0.8%カット、小さい場合1ptにつき約4%カット 20pt以上は頭打ち
    # data modify storage asset:mob Defense set value
# 特殊防御力 (double) (オプション) // 4pointにつきダメージを大きく減らす
    # data modify storage asset:mob SpecialDefense set value
# 移動速度 (double) (オプション)
    # data modify storage asset:mob Speed set value
# 索敵範囲 (double) (オプション)
    # data modify storage asset:mob FollowRange set value
# ノックバック耐性 (double) (オプション)
    # data modify storage asset:mob KnockBackResist set value
# 属性倍率 // 1.0fで100% 最低でも25%は軽減されずに入る
    # 物理倍率 (float) (オプション)
        data modify storage asset:mob Resist.Physical set value 0.7
    # 魔法倍率 (float) (オプション)
        data modify storage asset:mob Resist.Magic set value 0.8
    # 火倍率 (float) (オプション)
        data modify storage asset:mob Resist.Fire set value 0.5
    # 水倍率 (float) (オプション)
        data modify storage asset:mob Resist.Water set value 1
    # 雷倍率 (float) (オプション)
        data modify storage asset:mob Resist.Thunder set value 0.5

# 見た目用のアマスタを召喚
    summon armor_stand ~ ~ ~ {Marker:1b,NoBasePlate:1b,Invisible:1b,Tags:["3C.ArmorStand","3C.ArmorStandThis","Object","Uninterferable"],Pose:{LeftArm:[0f,330f,0f],RightArm:[0f,34f,0f],LeftLeg:[0f,6f,4f],RightLeg:[22f,0f,360f],Head:[24f,0f,0f]},HandItems:[{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20182}},{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20183}}],ArmorItems:[{id:"minecraft:leather_boots",Count:1b,tag:{display:{color:2039326}}},{id:"minecraft:leather_leggings",Count:1b,tag:{display:{color:2039583}}},{id:"minecraft:leather_chestplate",Count:1b,tag:{display:{color:2039583}}},{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20184}}]}
# 位置をあわせる
    execute as @e[type=wither_skeleton,tag=MobInit,distance=..0.01] at @s run tp @e[type=armor_stand,tag=3C.ArmorStandThis,distance=..0.01] @s
# タグを消す
    tag @e[type=armor_stand,tag=3C.ArmorStandThis,distance=..0.01] remove 3C.ArmorStandThis
# スコアをセットする
    scoreboard players set @e[type=wither_skeleton,tag=MobInit,distance=..0.01] 3C.Tick -30

# MobInitタグ持ちを対象にして召喚関数呼び出し
    execute as @e[type=wither_skeleton,tag=MobInit,distance=..0.01] run function asset:mob/common/summon


text:
#> asset:mob/0120.convict/summon/1.trigger
#
# Mob召喚処理の呼び出し時に実行されるfunction
#
# @within tag/function asset:mob/summon

execute if data storage asset:context {id:120} run function asset:mob/0120.convict/summon/2.summon


text:
#> asset:mob/0120.convict/hurt/2.hurt
#
# Mobの被ダメージ時の処理
#
# @within function asset:mob/0120.convict/hurt/1.trigger

# 演出
    playsound minecraft:entity.player.hurt hostile @a ~ ~ ~ 1 1


text:
#> asset:mob/0120.convict/hurt/1.trigger
#
# Mobの被ダメージに実行されるfunction
#
# @within tag/function asset:mob/hurt

execute if data storage asset:context {id:120} run function asset:mob/0120.convict/hurt/2.hurt


text:
#> asset:mob/0120.convict/player_process/1.loop
#
# スケジュールループするやつ
#
# @within function
#   asset:mob/0120.convict/tick/3.slash/4.slash_attack2
#   asset:mob/0120.convict/player_process/2.main
#   asset:mob/0120.convict/rejoin_process

# デバフの処理
    execute if entity @a[scores={3C.DebuffTime=1..}] as @a[scores={3C.DebuffTime=1..}] at @s run function asset:mob/0120.convict/player_process/2.main


text:
#> asset:mob/0120.convict/player_process/3.reset
#
#
#
# @within function asset:mob/0120.convict/player_process/2.main

# 補正削除
    data modify storage api: Argument.UUID set value [I;1,2,120,0]
    function api:modifier/heal/remove

# スコアリセット
    scoreboard players reset @s 3C.DebuffTime


text:
#> asset:mob/0120.convict/player_process/2.main
#
# デバフのメイン処理
#
# @within function asset:mob/0120.convict/player_process/1.loop

#> Private
# @private
    #declare score_holder $Temp

# 演出
    particle block redstone_block ~ ~0.8 ~ 0.4 0.6 0.4 0 3 normal @a

# 音
    scoreboard players operation $Temp Temporary = @s 3C.DebuffTime
    scoreboard players operation $Temp Temporary %= $30 Const
    execute if score $Temp Temporary matches 0 run playsound entity.player.hurt_sweet_berry_bush player @a ~ ~ ~ 0.25 0.5 0
    execute if score $Temp Temporary matches 0 run playsound entity.spider.step player @a ~ ~ ~ 0.8 1.2 0
    scoreboard players reset $Temp Temporary

# スコア
    scoreboard players remove @s 3C.DebuffTime 1

# 効果終了処理
    execute if entity @s[scores={3C.DebuffTime=..0}] run function asset:mob/0120.convict/player_process/3.reset

# ループ
    execute if entity @s[scores={3C.DebuffTime=0..}] run schedule function asset:mob/0120.convict/player_process/1.loop 1t replace


text:
#> asset:mob/0120.convict/remove/2.remove
#
#
#
# @within function asset:mob/0120.convict/remove/1.trigger

# アマスタ削除
    kill @e[type=armor_stand,tag=3C.ArmorStand]


text:
#> asset:mob/0120.convict/remove/1.trigger
#
#
#
# @within tag/function asset:mob/remove

execute if data storage asset:context {id:120} run function asset:mob/0120.convict/remove/2.remove


text:
#> asset:mob/0120.convict/tick/armorstand_respawn
#
#
#
# @within function asset:mob/0120.convict/tick/2.tick

# どっかいったアマスタを殺す
    execute as @e[type=armor_stand,tag=3C.ArmorStand] at @s unless entity @e[type=wither_skeleton,tag=3C.Angel,distance=..0.1] run kill @s
# 見た目用のアマスタを召喚
    summon armor_stand ~ ~ ~ {Marker:1b,NoBasePlate:1b,Invisible:1b,Tags:["3C.ArmorStand","3C.ArmorStandThis","Object","Uninterferable"],Pose:{LeftArm:[0f,330f,0f],RightArm:[0f,34f,0f],LeftLeg:[0f,6f,4f],RightLeg:[22f,0f,360f],Head:[24f,0f,0f]},HandItems:[{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20182}},{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20183}}],ArmorItems:[{id:"minecraft:leather_boots",Count:1b,tag:{display:{color:2039326}}},{id:"minecraft:leather_leggings",Count:1b,tag:{display:{color:2039583}}},{id:"minecraft:leather_chestplate",Count:1b,tag:{display:{color:2039583}}},{id:"minecraft:stick",Count:1b,tag:{CustomModelData:20184}}]}
# 位置をあわせる
    tp @e[type=armor_stand,tag=3C.ArmorStandThis,distance=..0.01] @s
# タグを消す
    tag @e[type=armor_stand,tag=3C.ArmorStandThis,distance=..0.01] remove 3C.ArmorStandThis
# スコアも一応戻す
    scoreboard players set @s 3C.Tick -2
# スキル発動中に移動した場合困るので消す
    function asset:mob/0120.convict/tick/skill_tag_remove

# 強制的にテレポする
    execute at @s run function asset:mob/0120.convict/tick/move/spread


text:
#> asset:mob/0120.convict/tick/2.tick
#
# Mobのtick時の処理
#
# @within function asset:mob/0120.convict/tick/1.trigger

#> private
# @private
    #declare score_holder $Count

# スコアを増やす
    scoreboard players add @s 3C.Tick 1

# プレイヤーが周囲にいないのに時間が着てしまった場合。スコアを戻す
    execute if score @s 3C.Tick matches 0 unless entity @p[gamemode=!spectator,distance=..100] run scoreboard players set @s 3C.Tick -5

# その後発動するスキル
# プレイヤーが周囲にいたらスキル選択
    execute if score @s 3C.Tick matches 0 run function asset:mob/0120.convict/tick/3.skill_select

# 選択したスキル発動
    execute if score @s 3C.Tick matches 0.. run function asset:mob/0120.convict/tick/4.skill_active

# 以下エラー時の処理
# もし同一座標に2体存在した場合瞬時にteleportする
    # 数のカウント
        execute store result score $Count Temporary if entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01]
    # もしいたらテレポ
        execute if score $Count Temporary matches 2.. run function asset:mob/0120.convict/tick/move/spread
    # スコアも一応戻す
        execute if score $Count Temporary matches 2.. run scoreboard players reset @s 3C.Tick
    # リセット
        scoreboard players reset $Count

# もしアマスタがどっかいってしまったら(tpの関係でatが無いと死ぬ)
    execute at @s unless entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01] run function asset:mob/0120.convict/tick/armorstand_respawn


text:
#> asset:mob/0120.convict/tick/skill_tag_remove
#
# スキルタグを消す場合に使う
#
# @within function asset:mob/0120.convict/tick/**

# スキル消す
    tag @s remove 3C.SkillAxe
    tag @s remove 3C.SkillSummon
    tag @s remove 3C.SkillSlash


text:
#> asset:mob/0120.convict/tick/1.trigger
#
# Mobが生きている間毎tick実行されるfunction
#
# @within tag/function asset:mob/tick

execute if data storage asset:context {id:120} run function asset:mob/0120.convict/tick/2.tick


text:
#> asset:mob/0120.convict/tick/4.skill_active
#
#
#
# @within function asset:mob/0120.convict/tick/2.tick

# 斧
    execute if entity @s[tag=3C.SkillAxe] run function asset:mob/0120.convict/tick/1.axe/1.axe
# 召喚
    execute if entity @s[tag=3C.SkillSummon] run function asset:mob/0120.convict/tick/2.summon/1.summon
# 召喚
    execute if entity @s[tag=3C.SkillSlash] run function asset:mob/0120.convict/tick/3.slash/1.slash


text:
#> asset:mob/0120.convict/tick/3.skill_select
#
#
#
# @within function asset:mob/0120.convict/tick/2.tick
#> private
# @private
    #declare score_holder $Random

# 疑似乱数取得
    execute store result score $Random Temporary run function lib:random/
# ほしい範囲に剰余算するやーつ
    scoreboard players operation $Random Temporary %= $3 Const

# デバッグのコマンド
    #838scoreboard players set $Random Temporary 2
# スキル選択
    execute if score $Random Temporary matches 0 run tag @s add 3C.SkillAxe
    execute if score $Random Temporary matches 1 run tag @s add 3C.SkillSummon
    execute if score $Random Temporary matches 2 run tag @s add 3C.SkillSlash
# リセット
    scoreboard players reset $Random Temporary


text:
#> asset:mob/0120.convict/tick/reset
#
#
#
# @within function asset:mob/0120.convict/tick/**

# 腕を戻す
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.LeftArm set value [0f,330f,0f]
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [0f,34f,0f]
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.LeftLeg set value [0f,6f,4f]
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightLeg set value [22f,0f,360f]
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.Head set value [24f,0f,0f]

# タグをリセットする
    function asset:mob/0120.convict/tick/skill_tag_remove
# スコアを戻す
    scoreboard players set @s 3C.Tick -40

# 条件でテレポートする
    function asset:mob/0120.convict/tick/move/conditional_teleport


text:
#> asset:mob/0120.convict/tick/3.slash/2.first_tick
#
#
#
# @within function asset:mob/0120.convict/tick/3.slash/1.slash

# ポーズ
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.LeftArm set value [177f,322f,88f]
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [54f,0f,0f]
# プレイヤーを見る
    execute at @s facing entity @p eyes run function asset:mob/0120.convict/tick/move/teleport


text:
#> asset:mob/0120.convict/tick/3.slash/4.slash_attack2
#
#
#
# @within function asset:mob/0120.convict/tick/3.slash/1.slash

# 範囲内のプレイヤーに割合ダメージ
    data modify storage lib: Argument.AttackType set value "Physical"
    data modify storage lib: Argument.ElementType set value "None"
    execute as @a[tag=!PlayerShouldInvulnerable,distance=..2] run function asset:mob/0120.convict/tick/3.slash/5.percent_damage

# 体力回復量-50%を付与
    data modify storage api: Argument.UUID set value [I;1,2,120,0]
    data modify storage api: Argument.Amount set value -0.5
    data modify storage api: Argument.Operation set value "multiply"
    execute as @a[distance=..2] run function api:modifier/heal/add

# スコアを与える
    scoreboard players set @a[distance=..2] 3C.DebuffTime 160
# Schedulelooopするやつ
    schedule function asset:mob/0120.convict/player_process/1.loop 1t replace

# 盲目を与える
    effect give @a[distance=..2] blindness 4 0 false

# 演出
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.LeftArm set value [330f,0f,40f]
    data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [330f,0f,320f]
    execute rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/particle/particle_1
    execute rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/particle/particle_2
    playsound entity.lightning_bolt.thunder hostile @a ~ ~ ~ 1 2
    playsound minecraft:item.trident.return hostile @a ~ ~ ~ 1 2


text:
#> asset:mob/0120.convict/tick/3.slash/5.percent_damage
#
# 割合ダメージの処理
#
# @within function asset:mob/0120.convict/tick/3.slash/4.slash_attack2

# 割合ダメージ
    execute store result storage lib: Argument.Damage float 0.020 run attribute @s generic.max_health get 10
    data modify storage lib: Argument.AttackType set value "Physical"
    data modify storage lib: Argument.FixedDamage set value 1b
    execute as @e[type=wither_skeleton,tag=this,distance=..0.01,limit=1] run function lib:damage/modifier
    function lib:damage/
# リセット
    function lib:damage/reset


text:
#> asset:mob/0120.convict/tick/3.slash/1.slash
#
#
#
# @within function asset:mob/0120.convict/tick/4.skill_active

# 最初に実行
    execute if score @s 3C.Tick matches 0 run function asset:mob/0120.convict/tick/3.slash/2.first_tick

# ポーズ変えるの
    execute if score @s 3C.Tick matches 35 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.LeftArm set value [340f,0f,88f]
# 攻撃
    execute if score @s 3C.Tick matches 35 rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/particle/particle_3
    execute if score @s 3C.Tick matches 35 rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/3.slash_attack1
# テレポートする
    execute if score @s 3C.Tick matches 35 facing entity @p eyes rotated ~ 0 positioned ^ ^ ^3 run function asset:mob/0120.convict/tick/move/teleport

# ポーズ変えるの
    execute if score @s 3C.Tick matches 37 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.LeftArm set value [0f,0f,0f]
    execute if score @s 3C.Tick matches 37 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [225f,0f,74f]
# 攻撃
    execute if score @s 3C.Tick matches 39 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [360f,0f,74f]
    execute if score @s 3C.Tick matches 39 rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/particle/particle_3
    execute if score @s 3C.Tick matches 39 rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/3.slash_attack1
# テレポートする
    execute if score @s 3C.Tick matches 39 facing entity @p eyes rotated ~ 0 positioned ^ ^ ^3 run function asset:mob/0120.convict/tick/move/teleport

# ポーズ変えるの
    execute if score @s 3C.Tick matches 41 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [0f,177f,36f]
# 攻撃
    execute if score @s 3C.Tick matches 43 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [346f,337f,253f]
    execute if score @s 3C.Tick matches 43 rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/particle/particle_2
    execute if score @s 3C.Tick matches 43 rotated ~ 0 positioned ~ ~1 ~ run function asset:mob/0120.convict/tick/3.slash/3.slash_attack1
# テレポートする
    execute if score @s 3C.Tick matches 43 facing entity @p eyes rotated ~ 0 positioned ^ ^ ^3 run function asset:mob/0120.convict/tick/move/teleport

# リセット
    execute if score @s 3C.Tick matches 130 run function asset:mob/0120.convict/tick/reset

# 上の攻撃で一度でもヒットしてる場合ここへ飛ぶ
# プレイヤーを捕まえる
    execute if score @s 3C.Tick matches 1000.. rotated ~ 0 positioned ^ ^ ^1 as @a[distance=..2] at @s run tp @s @s
# プレイヤーの眼の前にTP
    execute if score @s 3C.Tick matches 1005 at @p rotated ~ 0 positioned ^ ^ ^1.2 facing entity @p eyes run function asset:mob/0120.convict/tick/move/teleport
# ポーズを変える
    execute if score @s 3C.Tick matches 1007 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.LeftArm set value [183f,28f,0f]
    execute if score @s 3C.Tick matches 1007 run data modify entity @e[type=armor_stand,tag=3C.ArmorStand,distance=..0.01,sort=nearest,limit=1] Pose.RightArm set value [177f,336f,0f]
# 攻撃
    execute if score @s 3C.Tick matches 1015 run function asset:mob/0120.convict/tick/3.slash/4.slash_attack2

# リセット
    execute if score @s 3C.Tick matches 1050.. run function asset:mob/0120.convict/tick/reset


text:
#> asset:mob/0120.convict/tick/3.slash/3.slash_attack1
#
# 攻撃があたったことを検知するため実行
#
# @within function asset:mob/0120.convict/tick/3.slash/1.slash

# 演出
    playsound item.trident.throw hostile @a ~ ~ ~ 1 0.6
    playsound minecraft:entity.glow_squid.squirt hostile @a ~ ~ ~ 1 2

# ダメージ設定
    data modify storage lib: Argument.Damage set value 20.0f
    data modify storage lib: Argument.AttackType set value "Physical"
    data modify storage lib: Argument.ElementType set value "None"
    function lib:damage/modifier
    execute as @e[type=#lib:living,tag=Friend,tag=!Uninterferable,tag=!PlayerShouldInvulnerable,distance=..3] at @s run function lib:damage/
# リセット
    function lib:damage/reset

# スコアをぶっ飛ばす
    execute if entity @p[distance=..3] run scoreboard players set @s 3C.Tick 1000