// ==================== RESPAWN ==================== import { state } from '../core/state.js'; import { playSound } from '../audio/sound-engine.js'; import { loadGame, applySave } from '../game/save.js'; export function initRespawn() { document.getElementById('respawnBtn').onclick = async () => { playSound('click'); // Звук клика по кнопке console.log('=== RESPAWN CLICKED ==='); console.log('isMultiplayer:', state.isMultiplayer); console.log('otherPlayers.size:', state.otherPlayers.size); console.log('player.hp before respawn:', state.player.hp); const player = state.player; const deathEl = state.deathEl; // В мультиплеере не загружаем сохранение, а возрождаемся в начальной точке if (state.isMultiplayer && state.otherPlayers.size > 0) { console.log('Мультиплеер режим - возрождение в начальной точке'); player.hp = 100; player.hunger = 100; player.o2 = 100; player.vx = player.vy = 0; player.invuln = 0; player.x = state.spawnPoint.x; player.y = state.spawnPoint.y; player.fallStartY = player.y; console.log('Возрождение в начальной точке, HP:', player.hp); } else { console.log('Одиночный режим - загружаем последнее сохранение'); // Одиночный режим - загружаем последнее сохранение const loadedSave = await loadGame(); if (loadedSave) { await applySave(loadedSave); console.log('Загружено последнее сохранение после смерти, final HP:', player.hp); } else { // Если сохранения нет, возрождаемся в начальной точке player.hp = 100; player.hunger = 100; player.o2 = 100; player.vx = player.vy = 0; player.invuln = 0; player.x = state.spawnPoint.x; player.y = state.spawnPoint.y; player.fallStartY = player.y; console.log('Возрождение в начальной точке, HP:', player.hp); } } console.log('player.hp after respawn logic:', player.hp); console.log('Hiding death screen...'); deathEl.style.display = 'none'; console.log('=== RESPAWN END ==='); }; }