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