McRogueFace/src/scripts
John McCardle bc95cb1f0b feat: Add geometry module for orbital mechanics and spatial calculations
Implements issue #130 with:
- Basic utilities: distance, angle_between, normalize_angle, lerp, clamp
- Grid algorithms: bresenham_circle, bresenham_line, filled_circle
- OrbitalBody class with recursive positioning (star -> planet -> moon)
- OrbitingShip class for relative ship positioning on orbit rings
- Pathfinding helpers: nearest_orbit_entry, optimal_exit_heading,
  is_viable_waypoint, line_of_sight_blocked
- Comprehensive test suite (25+ tests)

Designed for Pinships turn-based space roguelike with:
- Discrete time steps (planets move in whole grid squares)
- Deterministic position projection
- Free orbital movement while in orbit
- Support for nested orbits (moons of moons)

closes #130

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 00:26:14 -05:00
..
cos_entities.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
cos_itemdata.py Final day of changes for 7DRL 2025 - Crypt of Sokoban game code 2025-03-12 22:42:26 -04:00
cos_level.py Final day of changes for 7DRL 2025 - Crypt of Sokoban game code 2025-03-12 22:42:26 -04:00
cos_tiles.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
example_text_widgets.py Squashed commit of 53 Commits: [alpha_streamline_2] 2025-07-09 22:41:15 -04:00
game.py Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
geometry.py feat: Add geometry module for orbital mechanics and spatial calculations 2025-11-26 00:26:14 -05:00
simple_tiles.txt Whoops, never committed the tile config 2025-03-08 20:31:34 -05:00
text_input_widget_improved.py Squashed commit of 53 Commits: [alpha_streamline_2] 2025-07-09 22:41:15 -04:00