123
This commit is contained in:
@ -1616,8 +1616,7 @@
|
||||
}
|
||||
|
||||
// Настраиваем drag-and-drop для кузницы, если она открыта
|
||||
const sidebar = $('forge-sidebar');
|
||||
if (sidebar && !sidebar.classList.contains('hidden')) {
|
||||
if (isForgeOpen) {
|
||||
setTimeout(() => setupForgeDragAndDrop(state), 100);
|
||||
}
|
||||
}
|
||||
@ -1640,28 +1639,70 @@
|
||||
clearError();
|
||||
});
|
||||
|
||||
$('btn-host')?.addEventListener('click', () => {
|
||||
clearError();
|
||||
const name = ($('host-name')?.value || '').trim() || 'Игрок 1';
|
||||
const currentHost = window.location.hostname;
|
||||
let url = window.location.origin;
|
||||
if (currentHost !== 'localhost' && currentHost !== '127.0.0.1') {
|
||||
url = window.location.origin;
|
||||
}
|
||||
const btnHost = $('btn-host');
|
||||
if (btnHost) {
|
||||
// Удаляем старые обработчики, если есть
|
||||
const newBtn = btnHost.cloneNode(true);
|
||||
btnHost.parentNode.replaceChild(newBtn, btnHost);
|
||||
|
||||
if (!socket || !socket.connected) {
|
||||
connect(url);
|
||||
socket.once('connect', () => {
|
||||
newBtn.addEventListener('click', function(e) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
console.log('Кнопка "Создать комнату" нажата');
|
||||
clearError();
|
||||
const name = ($('host-name')?.value || '').trim() || 'Игрок 1';
|
||||
console.log('Имя игрока:', name);
|
||||
const currentHost = window.location.hostname;
|
||||
let url = window.location.origin;
|
||||
if (currentHost !== 'localhost' && currentHost !== '127.0.0.1') {
|
||||
url = window.location.origin;
|
||||
}
|
||||
|
||||
if (!socket || !socket.connected) {
|
||||
console.log('Подключение к серверу:', url);
|
||||
connect(url);
|
||||
socket.once('connect', () => {
|
||||
console.log('Подключено, создаём комнату');
|
||||
socket.emit('createRoom', name);
|
||||
});
|
||||
socket.once('connect_error', (e) => {
|
||||
console.error('Ошибка подключения:', e);
|
||||
showError('Не удалось подключиться к серверу. Проверьте, что сервер запущен.');
|
||||
});
|
||||
} else {
|
||||
console.log('Уже подключен, создаём комнату');
|
||||
// Уже подключен, сразу отправляем
|
||||
socket.emit('createRoom', name);
|
||||
});
|
||||
socket.once('connect_error', (e) => {
|
||||
showError('Не удалось подключиться к серверу. Проверьте, что сервер запущен.');
|
||||
});
|
||||
} else {
|
||||
// Уже подключен, сразу отправляем
|
||||
socket.emit('createRoom', name);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// Также добавляем обработчик через onclick для надёжности
|
||||
newBtn.onclick = function(e) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
console.log('Кнопка "Создать комнату" нажата (onclick)');
|
||||
const name = ($('host-name')?.value || '').trim() || 'Игрок 1';
|
||||
const currentHost = window.location.hostname;
|
||||
let url = window.location.origin;
|
||||
if (currentHost !== 'localhost' && currentHost !== '127.0.0.1') {
|
||||
url = window.location.origin;
|
||||
}
|
||||
|
||||
if (!socket || !socket.connected) {
|
||||
connect(url);
|
||||
socket.once('connect', () => {
|
||||
socket.emit('createRoom', name);
|
||||
});
|
||||
socket.once('connect_error', (e) => {
|
||||
showError('Не удалось подключиться к серверу. Проверьте, что сервер запущен.');
|
||||
});
|
||||
} else {
|
||||
socket.emit('createRoom', name);
|
||||
}
|
||||
};
|
||||
} else {
|
||||
console.error('Кнопка btn-host не найдена! Проверьте, что элемент существует в DOM.');
|
||||
}
|
||||
|
||||
$('btn-join')?.addEventListener('click', () => {
|
||||
clearError();
|
||||
|
||||
Reference in New Issue
Block a user