core.config
config.py
Configuración global del juego FNAF en consola.
Define variables de estado, rutas de archivos, sonidos, locks y horarios de las habitaciones. También inicializa pygame y canales de audio.
1""" 2config.py 3 4Configuración global del juego FNAF en consola. 5 6Define variables de estado, rutas de archivos, sonidos, locks y horarios 7de las habitaciones. También inicializa pygame y canales de audio. 8""" 9 10import os 11import warnings 12from threading import Event, Lock 13 14 15# Ignorar warnings de Pygame 16os.environ['PYGAME_HIDE_SUPPORT_PROMPT'] = "hide" 17warnings.filterwarnings("ignore", category=UserWarning) 18 19# Inicialización de Pygame 20import pygame 21pygame.init() 22 23# Evento global para detener threads 24stop_event = Event() 25 26# Ruta base absoluta del proyecto (carpeta raíz) 27BASE_DIR = os.path.abspath(os.path.dirname(__file__)) 28BASE_DIR = os.path.abspath(os.path.join(BASE_DIR, "..")) 29 30# Estado del juego 31hora_actual = 0 32energia_actual = 100 33energia_agotada = False 34juego_activo = False 35motivo_game_over = None 36 37# Configuración general 38config = { 39 # Energía y tiempos 40 "energia_uso_linterna": 0, 41 "energia_uso_camara": 0, 42 "tiempo_avanzar_hora": 0, 43 "dificulta": "", 44 45 # Rutas de carpetas 46 "carpeta_sonidos": os.path.join(BASE_DIR, "sound"), 47 "carpeta_rooms": os.path.join(BASE_DIR, "rooms"), 48 49 # Sonidos globales 50 "sonido_powerdown": "powerdown.mp3", 51 "sonido_victoria": "victoria_time.mp3", 52 "sonido_jumpscare": "jumpscare.mp3", 53 "sonido_camara": "camara_sound.mp3", 54 "intro": "intro.wav", 55} 56 57# Locks globales para sincronización de threads 58movimiento_lock = Lock() 59muerte_lock = Lock() 60 61# Horario de turno 62horas = [ 63 "10 AM", "11 AM", "12 AM", "01 AM", "02 AM", 64 "03 AM", "04 AM", "05 AM", "06 AM" 65] 66 67# Habitaciones del mapa 68habitaciones = { 69 1: "Comedor", 70 2: "Escenario", 71 3: "Baños", 72 4: "Cocina", 73 5: "Pasillo Central", 74 6: "Bastidores", 75 7: "Cueva del Pirata", 76 8: "Oficina" 77} 78 79# Canales de audio 80canal_interface = pygame.mixer.Channel(1) 81canal_pasos_freddy = pygame.mixer.Channel(2) 82canal_pasos_bonnie = pygame.mixer.Channel(3) 83canal_pasos_chica = pygame.mixer.Channel(4) 84canal_pasos_foxy = pygame.mixer.Channel(5)
stop_event =
<threading.Event at 0x1ff359bb050: unset>
BASE_DIR =
'C:\\Users\\tatil\\Desktop\\python_game\\fnaf_CMD'
hora_actual =
0
energia_actual =
100
energia_agotada =
False
juego_activo =
False
motivo_game_over =
None
config =
{'energia_uso_linterna': 0, 'energia_uso_camara': 0, 'tiempo_avanzar_hora': 0, 'dificulta': '', 'carpeta_sonidos': 'C:\\Users\\tatil\\Desktop\\python_game\\fnaf_CMD\\sound', 'carpeta_rooms': 'C:\\Users\\tatil\\Desktop\\python_game\\fnaf_CMD\\rooms', 'sonido_powerdown': 'powerdown.mp3', 'sonido_victoria': 'victoria_time.mp3', 'sonido_jumpscare': 'jumpscare.mp3', 'sonido_camara': 'camara_sound.mp3', 'intro': 'intro.wav'}
movimiento_lock =
<unlocked _thread.lock object>
muerte_lock =
<unlocked _thread.lock object>
horas =
['10 AM', '11 AM', '12 AM', '01 AM', '02 AM', '03 AM', '04 AM', '05 AM', '06 AM']
habitaciones =
{1: 'Comedor', 2: 'Escenario', 3: 'Baños', 4: 'Cocina', 5: 'Pasillo Central', 6: 'Bastidores', 7: 'Cueva del Pirata', 8: 'Oficina'}
canal_interface =
<pygame.mixer.Channel object>
canal_pasos_freddy =
<pygame.mixer.Channel object>
canal_pasos_bonnie =
<pygame.mixer.Channel object>
canal_pasos_chica =
<pygame.mixer.Channel object>
canal_pasos_foxy =
<pygame.mixer.Channel object>