Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🍱 [Mob372] ツタンカーメンv2を作成 #505

Merged
merged 116 commits into from
Jan 2, 2025
Merged
Show file tree
Hide file tree
Changes from 105 commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
42277c2
レーザーの途中まで
Lapis-LJA Oct 28, 2024
b372db6
魂弾の大体の挙動完成
Lapis-LJA Oct 28, 2024
4af2cf8
レーザーの演出を調整
Lapis-LJA Nov 4, 2024
bba4c43
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Nov 9, 2024
c59e3d6
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Nov 22, 2024
1cae3cc
initでAJを召喚するように
Lapis-LJA Nov 22, 2024
5bfe175
一旦レーザーの挙動完成
Lapis-LJA Nov 22, 2024
5aa6f74
レーザー完成
Lapis-LJA Nov 22, 2024
ca53e1a
不要になったコマンドを破壊
Lapis-LJA Nov 22, 2024
18a5d19
レーザー関係を修正
Lapis-LJA Nov 22, 2024
4faf80a
演出を調整
Lapis-LJA Nov 22, 2024
dcf49e6
連続魂弾発射の開始リセットだけを作成
Lapis-LJA Nov 22, 2024
0db132c
瑠璃の要望:ビーム待機状態
quikku Nov 22, 2024
a10c6b7
beamchargeの名前変えた
quikku Nov 22, 2024
d2bb4b9
レーザーの処理を調整
Lapis-LJA Nov 23, 2024
e8a194e
レーザー用displayにbrightnessを設定
Lapis-LJA Nov 23, 2024
880ea1d
Merge branch 'dev/lapis_mob372' of https://github.com/ProjectTSB/Asse…
Lapis-LJA Nov 23, 2024
7d0d66b
リセット処理の修正
Lapis-LJA Nov 23, 2024
7cd2715
開始からプレイヤーの方を向くように
Lapis-LJA Nov 23, 2024
a0418c0
予告displayの調整
Lapis-LJA Nov 23, 2024
cafa3a1
ミスを修正
Lapis-LJA Nov 23, 2024
a09fd02
ハイパーレーザーの途中まで
Lapis-LJA Nov 23, 2024
d6d2f73
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Nov 23, 2024
fa34deb
ハイパーレーザー途中まで
Lapis-LJA Nov 23, 2024
bd4e6a0
ハイパーレーザー用Object作るとこまで
Lapis-LJA Nov 24, 2024
96eac7c
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Nov 27, 2024
9f60958
laser演出を調整
Lapis-LJA Nov 27, 2024
fdd5742
ハイパーレーザー用entityを作成まで
Lapis-LJA Nov 27, 2024
2a018fe
天使抽象を継承
Lapis-LJA Nov 27, 2024
38001e1
タイミングやplaysound等
Lapis-LJA Nov 28, 2024
b0526f5
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Dec 1, 2024
b78830c
とりあえず魔法陣をたくさん出すように
Lapis-LJA Dec 2, 2024
956e38a
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Dec 3, 2024
e565524
魂弾のnamespaceを変更
Lapis-LJA Dec 3, 2024
e43f913
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Dec 7, 2024
4d00b97
ルートテーブルを削除
Lapis-LJA Dec 8, 2024
58c090c
金の棺を召喚はできるように
Lapis-LJA Dec 8, 2024
f391e21
パッカーン
Lapis-LJA Dec 8, 2024
851995e
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Dec 10, 2024
d478611
沢山打つスキル途中まで
Lapis-LJA Dec 11, 2024
db9ddea
沢山打つスキルの途中まで2
Lapis-LJA Dec 11, 2024
278a3d3
沢山撃つスキルとりあえず完成
Lapis-LJA Dec 11, 2024
fec201c
名前を設定
Lapis-LJA Dec 11, 2024
43d51ce
ひとまず召喚できるように
Lapis-LJA Dec 11, 2024
13bf252
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Dec 11, 2024
5f70327
灰色の棺完成
Lapis-LJA Dec 12, 2024
f56ca71
Merge branch 'master' into dev/lapis_mob372
Lapis-LJA Dec 18, 2024
a99d156
途中経過
Lapis-LJA Dec 18, 2024
744f14a
棺召喚スキル暫定的に完成
Lapis-LJA Dec 18, 2024
a6e1351
ダッシュ斬撃スキルの生成だけ
Lapis-LJA Dec 18, 2024
a807c31
多方向レーザー途中まで
Lapis-LJA Dec 19, 2024
162feaa
ダッシュスラッシュを動きだけ実装
Lapis-LJA Dec 19, 2024
41356f5
…とりあえずダッシュスラッシュの行動を作った。ダメージ判定の甘さや避けやすすぎる点に関しては後ほど調整する。
Chuzume Dec 24, 2024
3f4a8c4
地形埋まり対策ができないので、とりあえずダッシュスラッシュで上下のエイムを行わないようになった
Chuzume Dec 24, 2024
084710c
「攻撃判定付きの移動」である突進攻撃を作ってみた
Chuzume Dec 24, 2024
30a0399
突進攻撃のアニメをへんこうした
Chuzume Dec 24, 2024
c0bbb43
ツタンカーメンの死亡演出を作っておいた。棺は…なくていいか。
Chuzume Dec 24, 2024
379e237
ダッシュ動作を作った。スキル選択前に動き回るぞ。
Chuzume Dec 24, 2024
47c1313
ダッシュ動作を調整
Chuzume Dec 24, 2024
f0d189d
ヘルス半減時の動作を作った
Chuzume Dec 24, 2024
1186701
本気時のレーザーは多い
Chuzume Dec 24, 2024
9d6b59d
オバケ弾の召喚処理をいじった
Chuzume Dec 24, 2024
b22bd3d
ダッシュのディレクトリ変更
Chuzume Dec 25, 2024
a0a838e
ダッシュのディレクトリ変更を失敗していた
Chuzume Dec 25, 2024
76362cf
リネームにまだまだ失敗していたぞ
Chuzume Dec 25, 2024
920c9f8
ベースムーブを調整
Chuzume Dec 25, 2024
c1f75e3
ダッシュの時に使う激突チェック処理作った
Chuzume Dec 25, 2024
85eaa87
他のダッシュ動作にも激突チェックがついた
Chuzume Dec 25, 2024
426864a
インデックスはこうでいいのかな
Chuzume Dec 25, 2024
7ec7af2
ソウル弾連射攻撃の演出ちょっといじった
Chuzume Dec 25, 2024
24fc9a6
ソウル弾のパーティクルなどを変更
Chuzume Dec 25, 2024
e853f84
レーザーにダメージ判定つけた
Chuzume Dec 25, 2024
3bf498b
スゴイ・レーザーにアラートがついた
Chuzume Dec 26, 2024
513ded8
スゴレーザーの演出などの調整。地面に降りてから撃つように
Chuzume Dec 26, 2024
53216fa
突進ダッシュの調整
Chuzume Dec 26, 2024
9d50e4d
Typoを見た!
Chuzume Dec 26, 2024
63e4af5
浮いていた場合に空中に立ってるように見えるような演出を増やした
Chuzume Dec 26, 2024
2c9deff
これら2つがスキルではない場所に置かれているので
Chuzume Dec 26, 2024
7aea152
スゴレーザーなどに使うレーザーのオブジェクトつくった
Chuzume Dec 26, 2024
a93b249
とりあえずここまで。ビームが伸びるが、向きに関する処理がない。
Chuzume Dec 26, 2024
ce0638e
汎用レーザーがある程度できてきた。あとは一瞬ふくらむ処理とかが必要か。
Chuzume Dec 26, 2024
51c8808
レーザーに大量の設定用フィールドができた
Chuzume Dec 26, 2024
0337c53
汎用レーザーはこれで完成だろう…。
Chuzume Dec 26, 2024
ffdd76d
汎用なが~いレーザーはカスタムモデルデータの指定も可能になったのよ
Chuzume Dec 26, 2024
d8296a6
ビーム発射時に地面に降りる処理にて、細かく地面チェックするようになった。
Chuzume Dec 26, 2024
3585d1d
魔法陣がパッと消えるのが気になったので縮小しながら消えるようにしてみた
Chuzume Dec 26, 2024
fa1d641
ハイパーレーザーの演出周りの調整
Chuzume Dec 26, 2024
418cd4c
レーザー構える時に音つけた
Chuzume Dec 26, 2024
6f3aa57
…未使用よな、これ
Chuzume Dec 26, 2024
92c9e10
死亡時の方も足場っぽい演出を出すようになった
Chuzume Dec 26, 2024
d3ce917
本気になると連鎖ダッシュするようになった。避けれるのかなこれ?
Chuzume Dec 26, 2024
33057fe
レーザー攻撃をリワーク。瑠璃がなんというか。
Chuzume Dec 27, 2024
f721f57
もう使わなさそうだ。
Chuzume Dec 27, 2024
5e8dd8a
棺のパーティクルを一部変更
Chuzume Dec 27, 2024
48e2655
幽霊弾のヒット時の演出を変更
Chuzume Dec 27, 2024
23edba1
ここ多分2つはいらない…?
Chuzume Dec 27, 2024
a6d4576
棺召喚の動作を調整
Chuzume Dec 27, 2024
c49f902
本気を出すとパーティクルを出したりするように
Chuzume Dec 27, 2024
77ff80f
インデックスの更新
Chuzume Dec 27, 2024
cadfb89
死亡時に棺を片付けるようにした
Chuzume Dec 27, 2024
0e95aaf
デバッグコマンドを消し忘れていた
Chuzume Dec 27, 2024
ad49276
体力データなどを設定
Chuzume Dec 27, 2024
0462485
ダメージを調整。十分かはわからないが。
Chuzume Dec 27, 2024
ab3007f
ハイパーレーザー担当のinitはいらなさそうだ。
Chuzume Dec 27, 2024
7f040ff
:rotating_light: [regenerate cache]
haiiro2gou Dec 30, 2024
1e274ce
コメントとやってることが噛み合ってないコメントを修正
Chuzume Dec 30, 2024
0bd9582
諸々の未使用のものを片付けた。瑠璃に怒られたらごめんなさいしよう
Chuzume Dec 30, 2024
bc8ffae
未使用なものを更に掃除。
Chuzume Dec 30, 2024
e9ace3b
Merge branch 'dev/lapis_mob372' of https://github.com/ProjectTSB/Asse…
Chuzume Dec 30, 2024
6d8ff14
ダッシュ開始の処理が2つあってどっちも内容同じだったので共通処理に。サウンド変えた。
Chuzume Dec 30, 2024
ac290c9
Linterがごきげんナナメなので演出を更に変更。悪くないんじゃないか。
Chuzume Dec 30, 2024
6523f3e
まだ使っちゃいけないサウンドのこってやんの
Chuzume Dec 30, 2024
9046628
ボスドロ設定した
Chuzume Jan 1, 2025
62430d0
オバケ弾のRange長すぎるので調整。
Chuzume Jan 1, 2025
3438ef9
レーザーのエイム時、スペクテイターを除外
Chuzume Jan 1, 2025
f30513f
Merge branch 'master' into dev/lapis_mob372
haiiro2gou Jan 2, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
#> asset:mob/0372.tutankhamen/_index.d
# @private

#> tag
# @within function asset:mob/0372.tutankhamen/**
#>スキルリスト
#declare tag AC.Laser
#declare tag AC.ManyShoot
#declare tag AC.GiantSkull
#declare tag AC.HyperLaser
#declare tag AC.DashSlash
#declare tag AC.DashSlash.IsNearPlayer
#declare tag AC.ManyLaser
#declare tag AC.Charge
#> ダッシュリスト
#declare tag AC.Dash.Left
#declare tag AC.Dash.Right
#declare tag AC.Dash.Side
#declare tag AC.Dash.Slash
#declare tag AC.Dash.Charge
#> 状態タグ
#declare tag AC.Health.50Per
#> 動作タグ
#declare tag AC.Moveset.Transition
#>その他タグ
#declare tag AC.InAction
#declare tag AC.DashUsed
#declare tag AC.LaserDisplay
#declare tag AC.Coffin
#declare tag AC.CoffinPoint
#declare tag AC.SpawnMarker
#declare tag AC.AJ
#declare tag AC.AJLink
#declare tag AC.Opening
#declare tag AC.Hit
#declare tag AC.RotationMarker
#declare tag Target
#declare score_holder $Recursive
#declare score_holder $Random
#declare score_holder $Interval
#>Animated Java
#declare function animated_java:tutankhamen/summon
#declare function animated_java:tutankhamen/remove/this
#declare function animated_java:tutankhamen/summon
#declare function animated_java:tutankhamen/animations/neutral/play
#declare function animated_java:tutankhamen/animations/neutral/tween
#declare function animated_java:tutankhamen/animations/neutral/stop
#declare function animated_java:tutankhamen/animations/spawn/play
#declare function animated_java:tutankhamen/animations/spawn/stop
#declare function animated_java:tutankhamen/animations/death/play
#declare function animated_java:tutankhamen/animations/death/stop
#declare function animated_java:tutankhamen/animations/beam_shot/play
#declare function animated_java:tutankhamen/animations/beam_shot/stop
#declare function animated_java:tutankhamen/animations/beam_end/stop
#declare function animated_java:tutankhamen/animations/soul_shot/play
#declare function animated_java:tutankhamen/animations/soul_shot/stop
#declare function animated_java:tutankhamen/animations/beam_long/play
#declare function animated_java:tutankhamen/animations/beam_long/stop
#declare function animated_java:tutankhamen/animations/beam_long/tween
#declare function animated_java:tutankhamen/animations/beam_long_charge/play
#declare function animated_java:tutankhamen/animations/beam_long_charge/stop
#declare function animated_java:tutankhamen/animations/beam_long_shot/play
#declare function animated_java:tutankhamen/animations/beam_long_shot/stop
#declare function animated_java:tutankhamen/animations/rod_ground/tween
#declare function animated_java:tutankhamen/animations/rod_ground_end/tween
#declare function animated_java:tutankhamen/animations/dash/play
#declare function animated_java:tutankhamen/animations/dash/tween
#declare function animated_java:tutankhamen/animations/dash/stop
#declare function animated_java:tutankhamen/animations/dash_slash/play
#declare function animated_java:tutankhamen/animations/dash_slash/tween
#declare function animated_java:tutankhamen/animations/dash_slash/stop
#declare function animated_java:tutankhamen/animations/dash_end/play
#declare function animated_java:tutankhamen/animations/dash_end/tween
#declare function animated_java:tutankhamen/animations/dash_end/stop
#declare function animated_java:tutankhamen/animations/attack_melee_1/tween
#declare function animated_java:tutankhamen/animations/attack_dash_1/tween
#declare function animated_java:tutankhamen/animations/attack_dash_2/tween
#declare function animated_java:tutankhamen/animations/attack_laser_windup/tween
#declare function animated_java:tutankhamen/animations/attack_laser_loop/tween
#declare function animated_java:tutankhamen/animations/attack_laser_end/tween
#declare function animated_java:tutankhamen/animations/damage/tween
#declare function animated_java:tutankhamen/animations/soul_shot/tween
#declare function animated_java:tutankhamen/animations/attack_laser_2_windup/tween
#declare function animated_java:tutankhamen/animations/attack_laser_2_loop/tween
#declare function animated_java:tutankhamen/animations/attack_laser_2_end/tween

#declare tag AC.ModelLocator.Body
#declare tag AC.ModelLocator.Weapon
24 changes: 24 additions & 0 deletions Asset/data/asset/functions/mob/0372.tutankhamen/death/.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#> asset:mob/0372.tutankhamen/death/
#
# Mobの死亡時の処理
#
# @within function asset:mob/alias/372/death

# super.death呼び出し
function asset:mob/super.death

# SpawnMarkerを削除
kill @e[type=marker,tag=AC.SpawnMarker,distance=..128]

# CoffinPointを削除
kill @e[type=marker,tag=AC.CoffinPoint,distance=..128]

# 付近の棺を全部片付ける
execute as @e[type=polar_bear,scores={MobID=374},distance=..128] run function api:mob/kill

# 自分のモデルを片付ける
execute as @e[type=item_display,tag=AC.AJ,distance=..100,sort=nearest,limit=1] run function animated_java:tutankhamen/remove/this

# 撃破演出用オブジェクトを召喚
data modify storage api: Argument.ID set value 2093
execute facing entity @p[distance=..64] eyes run function api:object/summon
24 changes: 24 additions & 0 deletions Asset/data/asset/functions/mob/0372.tutankhamen/hurt/.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#> asset:mob/0372.tutankhamen/hurt/
#
# Mobのダメージ時の処理
#
# @within function asset:mob/alias/372/hurt

#>ヘルス割合用のスコアホルダー
# @private
#declare score_holder $HealthPercent

# HP割合を取得
function api:mob/get_health_percent

# 代入する
execute store result score $HealthPercent Temporary run data get storage api: Return.HealthPer 100

# HP50%以下時
execute if entity @s[tag=!AC.Health.50Per] if score $HealthPercent Temporary matches ..50 run function asset:mob/0372.tutankhamen/hurt/active_50per

# リセット
scoreboard players reset $HealthPercent Temporary

# super.hurt呼び出し
function asset:mob/super.hurt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#> asset:mob/0372.tutankhamen/hurt/active_50per
#
#
#
# @within function asset:mob/0372.tutankhamen/hurt/

# フェイズ移行動作を実行
tag @s add AC.Moveset.Transition

# 無敵になる
data modify entity @s Invulnerable set value 1b
tag @s add Uninterferable

# サウンド
playsound minecraft:entity.blaze.hurt hostile @a ~ ~ ~ 1.5 0.5
playsound minecraft:entity.wither_skeleton.death hostile @a ~ ~ ~ 1.5 1.5
playsound minecraft:entity.player.breath hostile @a ~ ~ ~ 1.5 0.8

# 全動作強制リセット
function asset:mob/0372.tutankhamen/tick/skill/reset

# スコアリセット
scoreboard players set @s General.Mob.Tick -1
35 changes: 35 additions & 0 deletions Asset/data/asset/functions/mob/0372.tutankhamen/init/.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
#> asset:mob/0372.tutankhamen/init/
#
# Mobのinit時の処理
#
# @within asset:mob/alias/372/init

# super.init呼び出し
function asset:mob/super.init

# 召喚位置を記録するマーカーを召喚
summon marker ~ ~ ~ {Tags:["AC.SpawnMarker"]}

# 棺召喚位置用markerを召喚
execute rotated ~0 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[180.0f,0.0f]}
execute rotated ~45 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[225.0f,0.0f]}
execute rotated ~90 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[270.0f,0.0f]}
execute rotated ~135 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[315.0f,0.0f]}
execute rotated ~180 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[0.0f,0.0f]}
execute rotated ~225 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[45.0f,0.0f]}
execute rotated ~270 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[90.0f,0.0f]}
execute rotated ~315 0 positioned ^ ^ ^12 run summon marker ~ ~ ~ {Tags:["AC.CoffinPoint"],Rotation:[135.0f,0.0f]}

# AJ召喚
execute rotated ~ 0 run function animated_java:tutankhamen/summon {args:{}}

# tpさせる
# AC.AJはAJリポジトリ側で召喚時に付与されている
execute at @s as @e[type=item_display,tag=AC.AJ,sort=nearest,limit=1] run tp @s ~ ~ ~

# スコア初期化
scoreboard players set @s General.Mob.Tick -1
scoreboard players set @s AC.Count.Dash 0

# 召喚モーション用Tagを自身に付与
tag @s add AC.Opening
10 changes: 10 additions & 0 deletions Asset/data/asset/functions/mob/0372.tutankhamen/load.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#> asset:mob/0372.tutankhamen/load
#
# Mobに利用するスコアボード等の初期化処理
#
# @within tag/function asset:mob/load

#> 定義類はここに
# @within function asset:mob/0372.tutankhamen/**
scoreboard objectives add AC.TargetID dummy
scoreboard objectives add AC.Count.Dash dummy
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
#> asset:mob/0372.tutankhamen/register
#
# Mobのデータを指定
#
# @within function asset:mob/alias/372/register

# 継承 
data modify storage asset:mob Extends append value 2000
function asset:mob/extends

# 他のモブに継承されることを許可するか (boolean) (オプション)
# data modify storage asset:mob ExtendsSafe set value
# 継承されることを前提とした、抽象的なモブであるかどうか(boolean)
data modify storage asset:mob IsAbstract set value false
# ID (int)
data modify storage asset:mob ID set value 372
# 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":"#13b3aa"}'
# Mobの説明文 (TextComponentString[]) (オプション)
data modify storage asset:mob Lore set value ['{"text":"その名は有名なファラオを彷彿とさせるが、","color":"white"}','{"text":"この天使は、様々な歴史や、人々の持つイメージなどを元に作り上げられた存在でしかない。","color":"white"}','{"text":"一体どんなイメージが紛れ込んだのか、この天使は魔術と剣術、両方に秀でている。","color":"white"}']
# 武器
# メインハンド (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 350000d
# 攻撃力 (double) (オプション)
data modify storage asset:mob AttackDamage set value 0.0d
# 防御力 (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 0.0d
# 索敵範囲 (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
# 魔法倍率 (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
# フィールド
data modify storage asset:mob Field.Damage.ManyShoot set value 25f
17 changes: 17 additions & 0 deletions Asset/data/asset/functions/mob/0372.tutankhamen/remove/.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#> asset:mob/0372.tutankhamen/remove/
#
# 天使が居なくなる際に実行される処理
#
# @within asset:mob/alias/372/remove

# super.remove呼び出し
function asset:mob/super.remove

# SpawnMarkerを削除
kill @e[type=marker,tag=AC.SpawnMarker]

# CoffinPointを削除
kill @e[type=marker,tag=AC.CoffinPoint]

# AJ削除
execute at @s as @e[type=item_display,tag=AC.AJ,distance=..100,sort=nearest,limit=1] run function animated_java:tutankhamen/remove/this
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#> asset:mob/0372.tutankhamen/summon/
#
# Object召喚処理の呼び出し時に実行されるfunction
#
# @within asset:mob/alias/372/summon

# 元となるEntityを召喚する
summon wither_skeleton ~ ~ ~ {NoAI:1b,Tags:["MobInit","AlwaysInvisible"],DeathLootTable:"empty"}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#> asset:mob/0372.tutankhamen/summon/debug
#
# 動作チェック用の召喚処理 使い終わったら消してもいいかも
#
# @user
# @private

# 召喚
data modify storage api: Argument.ID set value 372
function api:mob/summon
39 changes: 39 additions & 0 deletions Asset/data/asset/functions/mob/0372.tutankhamen/tick/.mcfunction
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#> asset:mob/0372.tutankhamen/tick/
#
# Mobのtick時の処理
#
# @within asset:mob/alias/372/tick

# スコア
scoreboard players add @s General.Mob.Tick 1

# AJモデルとの紐づけ
execute at @s run tag @e[type=item_display,tag=AC.AJ,distance=..16,sort=nearest,limit=1] add AC.AJLink

# モデルを追従
execute at @s run tp @e[type=item_display,tag=AC.AJLink,distance=..16,sort=nearest,limit=1] ~ ~ ~ ~ ~

# フェイズ移行動作
execute if entity @s[tag=AC.Moveset.Transition] run function asset:mob/0372.tutankhamen/tick/phase_transition/

# スキル選択 開幕は実行しない
execute if entity @s[tag=AC.DashUsed,tag=!AC.Moveset.Transition,tag=!AC.InAction,tag=!AC.Opening] if score @s General.Mob.Tick matches 0 run function asset:mob/0372.tutankhamen/tick/skill_select

# ダッシュ選択 開幕は実行しないし、スキル中も使用しない
execute if entity @s[tag=!AC.InAction,tag=!AC.Moveset.Transition,tag=!AC.Opening] if score @s General.Mob.Tick matches 0 run function asset:mob/0372.tutankhamen/tick/dash_select

# スキル実行
execute if entity @s[tag=!AC.Moveset.Transition] if score @s General.Mob.Tick matches 0.. run function asset:mob/0372.tutankhamen/tick/skill_branch

# 本気のパーティクル
execute if entity @s[tag=AC.Health.50Per,tag=!AC.Moveset.Transition] if predicate lib:random_pass_per/50 run particle soul_fire_flame ~ ~1 ~ 0.3 0.5 0.3 0.02 1 force @a[distance=..64]
execute if entity @s[tag=AC.Health.50Per,tag=!AC.Moveset.Transition] if predicate lib:random_pass_per/50 run particle dust 0 1 1 1 ~ ~1 ~ 0.3 0.5 0.3 0.02 1 force @a[distance=..64]

Comment on lines +28 to +31
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

細かいけど、50%未満のタグが付いてるとき形態移行中のタグってついてないよなって
なので変更しなくても通しはする

# 足元に何もなければ
execute if block ~ ~-0.2 ~ #lib:no_collision run particle minecraft:enchant ~ ~ ~ 0.4 0 0.4 0 10

# 足元が埋まっている間は上にちょっとずつ登る
execute unless block ~ ~ ~ #lib:no_collision run tp @s ~ ~0.1 ~

# AJモデルとの紐づけ解除
execute at @s run tag @e[type=item_display,tag=AC.AJLink,distance=..0.01,sort=nearest,limit=1] remove AC.AJLink
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#> asset:mob/0372.tutankhamen/tick/dash_select
#
#
#
# @within function asset:mob/0372.tutankhamen/tick/

#> private
# @private
#declare score_holder $Random

# 行動中扱いにする
tag @s add AC.InAction

# ダッシュ使ったことにする
tag @s add AC.DashUsed

# 乱数によるスキル選択
data modify storage lib: Args.key set value "0372.Dash"
data modify storage lib: Args.max set value 4
data modify storage lib: Args.scarcity_history_size set value 3
execute store result score $Random Temporary run function lib:random/with_biased/manual.m with storage lib: Args

# デバッグのコマンド
# scoreboard players set $Random Temporary 3

# スキル選択
execute if score $Random Temporary matches 0..1 run tag @s add AC.Dash.Side
execute if score $Random Temporary matches 0 run tag @s add AC.Dash.Left
execute if score $Random Temporary matches 1 run tag @s add AC.Dash.Right
execute if score $Random Temporary matches 2 run tag @s add AC.Dash.Slash
execute if score $Random Temporary matches 3 run tag @s add AC.Dash.Charge

# リセット
scoreboard players reset $Random Temporary
Loading
Loading