Switch navigation mesh to be based on collision only, not collision and texture meshes

Will need to finetune enemy navigation agent placement depending on if they're now too high/low to sit in the navigation region
This commit is contained in:
2026-02-25 22:33:38 -08:00
parent 9d18bbb349
commit a686ce2fbc
59 changed files with 442 additions and 457 deletions
@@ -114,9 +114,32 @@ public partial class ThrownItem : RigidBody3D, IThrownItem
{
case UsableItemTag.LowerTargetTo1HP:
enemy.HealthComponent.SetCurrentHealth(1);
SfxDatabase.Instance.Play(SoundEffect.DecreaseStat);
break;
case UsableItemTag.DecreaseAllStats:
enemy.AttackComponent.Reduce(usableItem.Stats.BonusAttack);
enemy.DefenseComponent.Reduce(usableItem.Stats.BonusDefense);
SfxDatabase.Instance.Play(SoundEffect.DecreaseStat);
break;
case UsableItemTag.DecreaseAttack:
enemy.AttackComponent.LowerMaximumAttack(usableItem.Stats.BonusAttack);
SfxDatabase.Instance.Play(SoundEffect.DecreaseStat);
break;
case UsableItemTag.DecreaseDefense:
enemy.DefenseComponent.LowerMaximumDefense(usableItem.Stats.BonusDefense);
SfxDatabase.Instance.Play(SoundEffect.DecreaseStat);
break;
case UsableItemTag.IncreaseAttack:
enemy.AttackComponent.RaiseMaximumAttack(usableItem.Stats.BonusAttack);
SfxDatabase.Instance.Play(SoundEffect.IncreaseStat);
break;
case UsableItemTag.IncreaseDefense:
enemy.DefenseComponent.RaiseMaximumDefense(usableItem.Stats.BonusDefense);
SfxDatabase.Instance.Play(SoundEffect.IncreaseStat);
break;
case UsableItemTag.TeleportToRandomLocation:
_effectService.TeleportToRandomRoom(enemy);
SfxDatabase.Instance.Play(SoundEffect.TeleportToRandomRoom);
break;
case UsableItemTag.Clone:
_effectService.CloneEnemy(enemy);
@@ -13,7 +13,7 @@ viewport_path = NodePath("Sprite3D/SubViewportContainer/SubViewport")
[node name="Hitbox" type="RigidBody3D"]
process_mode = 1
collision_layer = 3072
collision_layer = 1024
collision_mask = 2049
gravity_scale = 0.2
contact_monitor = true