複数の敵に同時に攻撃が当たると敵のHPが1匹しか減らない

現在調査して把握してる状況は プレイヤーのAttackCollisionに敵の[有効]なHitCoolisionに[同時]に接触した場合に起こります
AttackCollisionとHitCollisionの接触判定は複数の敵で正常に判定されていますが、HPの減算処理が行われていません
またHPが減らない方の敵はtaken_damageも0が代入されています
HPが正常に減る方の敵はノードの順番が上かどうかで変化します、同時に当たった敵オブジェクトでノード内で上の敵だけが正常にHPが減ります

また、HPが0になった敵がノードの一番上だった場合 HitCollisionが有効のままだと同時にHitした敵のHPは永遠に減りません

属するオブジェクトグループと、AttackCollisionとHitCollisionのそれぞれのレイヤー/マスクの設定、攻撃対象となるグループ、オブジェクトの攻撃判定の接触グループ

これらの組み合わせによって
・攻撃判定に当たってないのにHPだけが減る
・攻撃判定に当たってるけどHPは減らない

同時に接触した場合以外に上記の挙動も相まってHPや接触判定がおかしいです

調査結果

条件
・playerオブジェクト
攻撃が当たるグループ : Enemy
AttackArea : レイヤー2 マスク3
グループ : Player
・slimeオブジェクト
HitArea : レイヤー3 マスク2
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 Playerグループ
・結果
攻撃判定に接触する
HPが減る

条件
・playerオブジェクト
攻撃が当たるグループ : Enemy
AttackArea : レイヤー2 マスク1(3以外ならなんでも)
グループ : Player
・slimeオブジェクト
HitArea : レイヤー3 マスク2
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 Playerグループ
・結果
攻撃判定に接触する!!!
HPが減らない
※AttackAreaのマスクって意味無いの?
※AttackのマスクとHitのマスク合ってなくても接触しちゃうの?

条件
・playerオブジェクト
攻撃が当たるグループ : Enemy
AttackArea : レイヤー2 マスク3
グループ : Player
・slimeオブジェクト
HitArea : レイヤー3 マスク1(2以外ならなんでも)
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 Playerグループ
・結果
攻撃判定に接触しない
HPが減る!!!
※なんだこれ・・・

条件
・playerオブジェクト
攻撃が当たるグループ : Enemy
AttackArea : レイヤー4 マスク5
グループ : Player
・slimeオブジェクト
HitArea : レイヤー6 マスク7
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 Playerグループ
・結果
攻撃判定に接触しない
HPが減らない
※あたりまえ

条件
・playerオブジェクト
攻撃が当たるグループ : Enemy
AttackArea : レイヤー2 マスク3
グループ : test1
・slimeオブジェクト
HitArea : レイヤー3 マスク2
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 Playerグループ
・結果
攻撃判定に接触しない
HPが減る!!!
※なんでやねん!!!!!

条件
・playerオブジェクト
攻撃が当たるグループ : Enemy
AttackArea : レイヤー1 マスク1
グループ : test1
・slimeオブジェクト
HitArea : レイヤー1 マスク1
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 Playerグループ
・結果
攻撃判定に接触しない
HPが減る!!!
※なんでやねん!!!!!

条件
・playerオブジェクト
攻撃が当たるグループ : test1
AttackArea : レイヤー1 マスク1
グループ : player
・slimeオブジェクト
HitArea : レイヤー1 マスク1
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 Playerグループ
・結果
攻撃判定に接触する!!!
HPが減る!!!
※攻撃が当たるグループとは・・・

条件
・playerオブジェクト
攻撃が当たるグループ : Enemy
AttackArea : レイヤー1 マスク1
グループ : player
・slimeオブジェクト
HitArea : レイヤー1 マスク1
グループ : Enemy
・slimeのAnyStateからのリンク
オブジェクトの攻撃判定に接触 全方向
Ignore Owner : ON
種類 オブジェクトグループ
対象 test1
・結果
攻撃判定に接触しない
HPが減る!!!
※だからなんで減る!!!

攻撃当たる
A : プレイヤーの攻撃が敵に当たった
B : 敵がプレイヤーの攻撃に当たった

敵のHPを減らしてるのはA
敵のAnyStateから攻撃判定に接触はB

攻撃判定に接触 と HPが減る は同じじゃ無い
というのが現状仕様みたいです

1 Like