Sam bada025b33
Some checks failed
Build Simulation and Test / Run All Tests (push) Failing after 36s
general tweaks
2025-06-17 00:09:55 -05:00

79 lines
1.8 KiB
Python

# config/constants.py
"""Configuration constants for the simulation."""
# Screen settings
SCREEN_WIDTH = 1920 // 2
SCREEN_HEIGHT = 1080 // 2
# Colors
BLACK = (0, 0, 0)
DARK_GRAY = (64, 64, 64)
GRAY = (128, 128, 128)
WHITE = (255, 255, 255)
RED = (255, 0, 0)
BLUE = (0, 0, 255)
GREEN = (0, 255, 0)
LIGHT_BLUE = (52, 134, 235)
SELECTION_BLUE = (0, 128, 255)
SELECTION_GRAY = (128, 128, 128, 80)
SELECTION_BORDER = (80, 80, 90)
# Grid settings
GRID_WIDTH = 30
GRID_HEIGHT = 25
CELL_SIZE = 20
RENDER_BUFFER = 50
# Performance settings
DEFAULT_TPS = 40
MAX_FPS = 180
TURBO_MULTIPLIER = 8
# Camera settings
DEFAULT_CAMERA_SPEED = 700
CAMERA_SPEED_INCREMENT = 350
MIN_CAMERA_SPEED = 350
MAX_CAMERA_SPEED = 2100
# UI settings
FONT_SIZE = 16
LEGEND_FONT_SIZE = 14
HUD_MARGIN = 10
LINE_HEIGHT = 20
SELECTION_THRESHOLD = 3 # pixels
# Simulation settings
FOOD_SPAWNING = True
FOOD_OBJECTS_COUNT = 500
RANDOM_SEED = 0
# Vector visualization settings
ACCELERATION_SCALE = 100
VELOCITY_SCALE = 50
ANGULAR_ACCELERATION_SCALE = 50
ARROW_TIP_SIZE = 5
ANGULAR_TIP_SIZE = 2.5
DIRECTION_TIP_SIZE = 3
# Cell physics settings
MAX_ACCELERATION = 0.125
MAX_ANGULAR_ACCELERATION = 0.25
MAX_VELOCITY = 1
MAX_ROTATIONAL_VELOCITY = 3 # degrees per tick
KEYMAP_LEGEND = [
("WASD", "Move camera"),
("Mouse wheel", "Zoom in/out"),
("Middle mouse", "Pan camera"),
("R", "Reset camera"),
("G", "Toggle grid"),
("I", "Toggle interaction radius"),
("ESC", "Deselect/Exit"),
("Left click", "Select object(s)"),
("Drag select", "Select multiple objects"),
("Click on object", "Select closest object in range"),
("Up/Down", "Increase/Decrease camera speed"),
("Shift", "Double TPS (for testing)"),
("L", "Toggle this legend"),
("Space", "Pause/Resume simulation"),
]