orbit/js/combat
Brian Fertig 5890e93cde Enforce on-screen rule for combat engagement and hits
- Add inView() pure geometry helper to test if a craft's visual circle is at least partly within the camera's visible rect
- Gate enemy fire, auto-fire target selection, currentTarget lock, and bullet collision checks behind craftVisible() so off-screen hostiles hold lances, can't be engaged, and are immune to tracers until they fly into view
- Extend pickTarget() with an optional qualifies predicate to narrow the candidate pool (used for the on-screen rule)
- Document the rule in data/combat.json and CombatSystem class comments
2026-09-17 18:12:58 -06:00
..
Bullet.js
…
CamShake.js
…
Combat.js Enforce on-screen rule for combat engagement and hits 2026-09-17 18:12:58 -06:00
CombatHud.js
…
CombatScene.js Fix white-flash sticking bug with overlap guard and periodic tint purge 2026-09-17 16:50:33 -06:00
CombatSfx.js
…
CombatSystem.js Enforce on-screen rule for combat engagement and hits 2026-09-17 18:12:58 -06:00
EnemyShip.js
…
EnemyTypes.js
…
Fx.js Fix white-flash sticking bug with overlap guard and periodic tint purge 2026-09-17 16:50:33 -06:00
StarDrift.js
…
Waves.js
…
main.js
…