- 271
- 88
- Версия MoonLoader
- Другое
Как курсор сделать? Если я включаю через sampToggleCursor, я не могу взаимодействовать со своим JavaScript скриптом, пока не открою настоящий диалог в игре.
Потипу код:
Потипу код:
Lua:
require("ArizonaAPI")
function menu_script()
return [[
(function() {
let menu = document.querySelector('#main-script-menu');
const toggleVisibility = (isVisible) => {
const menuEl = document.querySelector('#main-script-menu');
if (menuEl) {
if (isVisible) {
menuEl.classList.add('visible');
} else {
menuEl.classList.remove('visible');
}
}
};
if (menu) {
toggleVisibility(!menu.classList.contains('visible'));
return;
}
const styles = `
.menu-container {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(0.95);
width: 500px;
height: 400px;
background: rgba(30, 30, 30, 0.95);
border: 1px solid #444;
border-radius: 8px;
z-index: 10000;
font-family: Arial, sans-serif;
box-shadow: 0 5px 25px rgba(0, 0, 0, 0.5);
opacity: 0;
visibility: hidden;
transition: opacity 0.25s ease, transform 0.25s ease;
}
.menu-container.visible {
opacity: 1;
visibility: visible;
transform: translate(-50%, -50%) scale(1);
}
.menu-header {
padding: 10px 15px;
display: flex;
justify-content: flex-end;
align-items: center;
border-bottom: 1px solid #444;
}
.close-button {
cursor: pointer;
font-size: 28px;
color: #aaa;
line-height: 1;
transition: color 0.2s, transform 0.2s;
}
.close-button:hover {
color: #ff4d4d;
transform: rotate(90deg);
}
.menu-body {
padding: 20px;
height: calc(100% - 50px);
}
`;
if (!document.getElementById('main-script-styles')) {
const styleSheet = document.createElement("style");
styleSheet.id = 'main-script-styles';
styleSheet.innerText = styles;
document.head.appendChild(styleSheet);
}
const menuContainer = document.createElement('div');
menuContainer.id = 'main-script-menu';
menuContainer.className = 'menu-container';
menuContainer.innerHTML = `
<div class="menu-header">
<span class="close-button">×</span>
</div>
<div class="menu-body">
</div>
`;
document.body.appendChild(menuContainer);
const closeBtn = menuContainer.querySelector('.close-button');
if (closeBtn) {
closeBtn.addEventListener('click', () => {
toggleVisibility(false);
});
}
requestAnimationFrame(() => {
toggleVisibility(true);
});
})();
]]
end
sampRegisterChatCommand('hoho', function()
local js_to_run = menu_script()
executeUIBrowserJSCode(js_to_run)
sampToggleCursor(true)
end)