Repository navigation
Conversation
…SB/Asset into dev/firgde_artifact1465
Lapis-LJA
left a comment
There was a problem hiding this comment.
エフェクトのnamespace、0374.charge_plasmaであるべきかな
Lapis-LJA
left a comment
There was a problem hiding this comment.
正直長押しトリガーがもうすぐ実装されそうなので、チャージ関連の処理は直さなくてもいいかもしれない
…SB/Asset into dev/firgde_artifact1465
Lapis-LJA
left a comment
There was a problem hiding this comment.
長押しトリガーと長押し解除トリガーが実装されたので、ソレを使った実装にしよう
…/firgde_artifact1465
…SB/Asset into dev/firgde_artifact1465
There was a problem hiding this comment.
このレビューはハルがAI自動レビューの動作テストのためにOpus5.5 Extra Highを使用してレビューを行なったものです。鵜呑みにせず、指摘を採用するかはお任せします。
指摘が 4 件あります。詳細は行コメントに書いています。
- 〔不具合〕レーザーの
HitTargetをプレイヤーから外しており、Mob に残る - 〔不具合〕チャージ段階を押し始めからの tick で判定しているため、クールダウン中に押し始めると段階がずれる
- 〔軽微〕毎 tick 行う Effect 374 の再付与が、今は役割を持っていない
- 〔確認〕段階2と3の攻撃だけ、対象に
tag=Enemyの条件がない
tatuharu
left a comment
There was a problem hiding this comment.
このレビューはハルがAI自動レビューの動作テストのためにOpus5.5 Extra Highを使用してレビューを行なったものです。鵜呑みにせず、指摘を採用するかはお任せします。
指摘が 2 件あります。詳細は行コメントに書いています。
- 〔不具合〕段階3のレーザーを上に向けて撃つと、20ブロックを超えた位置の Mob に
HitTargetが残る - 〔挙動の変化〕段階1の火花が37個から36個に減った
| scoreboard players remove $RemainingRange Temporary 1 | ||
|
|
||
| # 再帰 | ||
| execute positioned ^ ^ ^0.5 if entity @s[tag=!Hit] if score $RemainingRange Temporary matches 1.. run function asset:artifact/1465.versatile_plasma/release_using_item/3.3.laser/rec |
There was a problem hiding this comment.
上に向けて撃つと、足元から20ブロックを超えた位置の Mob に HitTarget が付き、ダメージが入らないままタグが残ります。前に指摘した、HitTarget が Mob に残る問題と同じことが起きます。
34c44ed で、レーザーの射程は「プレイヤーの足元から20ブロック以内」から「目の位置から0.5ブロックずつ40回」に変わりました。目は足元より約1.6ブロック高いので、真上に撃つと、判定の位置は足元から約21.1ブロックの高さまで進みますが、damage.mcfunction の13行目と17行目は、今も足元から distance=..20 の Mob にだけダメージを与えてタグを外します。そのため、その間にいる Mob にはタグだけが残り、次にレーザーを撃ったとき、当たっていなくても20ブロック以内にいればダメージが入ります。
検証用サーバー(Minecraft 1.20.4、このPRの head 34c44ed)で、3.3.laser/ を RCON からプレイヤーとして呼んで確かめました。足元から20.5ブロック上にハスクを置いて真上に撃つと、ハスクに HitTarget が付き、ダメージは入りませんでした。続けてハスクを東に5ブロックの位置へ移して西に撃つと、レーザーはハスクに当たっていないのに、ハスクに295.2のダメージが入りました。2d024e0 で同じ手順を流すと、どちらの射撃でもハスクにタグは付かず、ダメージも入りませんでした。
足元から20ブロックの条件を残すなら、次のように書けます。
| execute positioned ^ ^ ^0.5 if entity @s[tag=!Hit] if score $RemainingRange Temporary matches 1.. run function asset:artifact/1465.versatile_plasma/release_using_item/3.3.laser/rec | |
| execute positioned ^ ^ ^0.5 if entity @s[tag=!Hit,distance=..20] if score $RemainingRange Temporary matches 1.. run function asset:artifact/1465.versatile_plasma/release_using_item/3.3.laser/rec |
目の位置から数える射程のままにするなら、damage.mcfunction の distance=..20 を、レーザーの届く距離に合わせて広げる必要があります。suggestion を適用したコードは確かめていません。
There was a problem hiding this comment.
修正を確認しました。上に向けて撃つと20ブロックを超えた位置の Mob に HitTarget が残る件は解消されていて、この指摘への対応として問題ありません。
a61b9e8 で、22行目の再帰の条件は distance=..20 に戻り、射程はまた足元から20ブロック以内になりました。3.3.laser/ の処理は、2d024e0 とコメントの「再起」→「再帰」以外は同じです。
検証用サーバー(Minecraft 1.20.4、このPRの head a61b9e8)で、前回と同じ手順で確かめました。足元から20.5ブロック上のハスクに真上に撃ってもタグは付かず、続けて西に撃っても、当たっていないハスクにダメージは入りませんでした。
| # 36回実行 | ||
| scoreboard players set $rec Temporary 36 |
There was a problem hiding this comment.
段階1で出る火花(Object 1168)が、37個から36個に減りました。
34c44ed の前は、向いている方向に確定で1個を出してから、rec で36個をランダムな位置に出していました。34c44ed では確定の1個も rec の中で出すようになり、rec の回数は36回のままなので、ランダムな位置の火花は35個になります。
検証用サーバー(Minecraft 1.20.4、このPRの head 34c44ed)で、3.1.spark/ を RCON からプレイヤーとして呼び、同じコマンドの並びで ObjectID 1168 の Entity を数えると36個で、2d024e0 では37個でした。どちらの head でも、すべての火花の General.Object.Tick は2〜7でした。
37個のままにするなら、次のように回数を1つ増やせます。
| # 36回実行 | |
| scoreboard players set $rec Temporary 36 | |
| # 37回実行 | |
| scoreboard players set $rec Temporary 37 |
以下のAssetを追加: