Files
Elite-Gaming-FiveM/resources/thinline_assets/html/main.js
T
KingMcDonalds 5c2328f975 new weapon menu
2025-01-25 16:27:07 -08:00

144 lines
3.9 KiB
JavaScript

var moving = false
var lastOffsetX = 0
var lastOffsetY = 0
var lastScreenX = 0.5 * screen.width
var lastScreenY = 0.5 * screen.height
$(document).on('keydown', function(event) {
switch (event.key) {
case 'ArrowLeft':
$.post('https://thinline_assets/RotatePedLeft', '[]');
break;
case 'ArrowRight':
$.post('https://thinline_assets/RotatePedRight', '[]');
break;
}
});
window.addEventListener('message', function (event) {
if (event.data.action == 'open') {
var departmentButtons = '';
var departments = Object.keys(event.data.departments);
for (let key of departments.sort()) {
let item = event.data.departments[key];
departmentButtons += createDepartment(item);
}
$('.departments').html(departmentButtons);
$('.eupui').css('display', 'block');
} else if (event.data.action == 'changename') {
$('#name').text(event.data.name);
} else if (event.data.action == 'helmetmenu') {
var helmetButtons = '';
var helmets = Object.keys(event.data.helmets);
for (let key of helmets.sort()) {
let item = event.data.helmets[key];
helmetButtons += createHelmet(item);
}
helmetButtons += createHelmetExit()
$('.helmets').html(helmetButtons);
$('.helmets').css('display', 'block');
}
});
$('#buttonChoose').click(function(event) {
event.preventDefault();
$('.eupui').css('display', 'none');
$.post('https://thinline_assets/close', '[]');
});
$('#buttonNext').click(function(event) {
event.preventDefault();
$.post('https://thinline_assets/next', '[]');
});
$('#buttonPrev').click(function(event) {
event.preventDefault();
$.post('https://thinline_assets/prev', '[]');
});
$('body').on('mousedown', function(event) {
if (event.button == 0) {
moving = true;
}
});
$('body').on('mouseup', function(event) {
if (moving && event.button == 0) {
moving = false;
}
});
$('body').on('mousemove', function(event) {
if (moving) {
let offsetX = event.screenX - lastScreenX;
let offsetY = event.screenY - lastScreenY;
if ((lastOffsetX > 0 && offsetX < 0) || (lastOffsetX < 0 && offsetX > 0)) {
offsetX = 0
}
if ((lastOffsetY > 0 && offsetY < 0) || (lastOffsetY < 0 && offsetY > 0)) {
offsetY = 0
}
lastScreenX = event.screenX;
lastScreenY = event.screenY;
lastOffsetX = offsetX;
lastOffsetY = offsetY;
$.post('https://thinline_assets/updateCamRotation', JSON.stringify({
x: offsetX,
y: offsetY,
}));
}
});
$('body').on('wheel', function(event) {
let zoom = event.originalEvent.deltaY / 2000;
$.post('https://thinline_assets/updateCamZoom', JSON.stringify({
zoom: zoom,
}));
});
function changedept(department) {
$.post('https://thinline_assets/change', JSON.stringify({
department: department
}));
};
function changehelmet(setup) {
$.post('https://thinline_assets/changehelmet', JSON.stringify({
setup: setup
}));
};
function exithelmet() {
$('.helmets').css('display', 'none');
$.post('https://thinline_assets/closehelmet', '[]');
};
function createDepartment(department) {
return `
<div class='department-container'>
<div class='column'>
<div class='department' onclick='changedept("${department}")'>${department}</div>
</div>
</div>
`;
};
function createHelmet(setup) {
return `
<div class='department-container'>
<div class='column'>
<div class='department' onclick='changehelmet("${setup}")'>${setup}</div>
</div>
</div>
`;
};
function createHelmetExit() {
return `
<div class='department-container'>
<div class='column'>
<div class='department' onclick='exithelmet()'>Exit Menu</div>
</div>
</div>
`;
};