mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
Dunno why i hadn't committed this yet, adds ai click to jump to function on crew monitor comp
This commit is contained in:
@@ -258,6 +258,13 @@ var/global/datum/crewmonitor/crewmonitor = new
|
|||||||
spawn(min(30, get_dist(get_turf(C), AI.eyeobj) / 4))
|
spawn(min(30, get_dist(get_turf(C), AI.eyeobj) / 4))
|
||||||
if (AI && AI.eyeobj && current_loc == AI.eyeobj.loc)
|
if (AI && AI.eyeobj && current_loc == AI.eyeobj.loc)
|
||||||
AI.switchCamera(C)
|
AI.switchCamera(C)
|
||||||
|
if ("crewclick")
|
||||||
|
var/x = text2num(href_list["x"])
|
||||||
|
var/y = text2num(href_list["y"])
|
||||||
|
var/turf/tile = locate(x, y, AI.z)
|
||||||
|
if(tile)
|
||||||
|
AI.eyeobj.setLoc(tile)
|
||||||
|
|
||||||
else if(hclient && hclient.client && hclient.client.mob)
|
else if(hclient && hclient.client && hclient.client.mob)
|
||||||
var/mob/living/L = hclient.client.mob
|
var/mob/living/L = hclient.client.mob
|
||||||
if(!istype(L)) return
|
if(!istype(L)) return
|
||||||
|
|||||||
@@ -249,7 +249,7 @@
|
|||||||
var isAI = null;
|
var isAI = null;
|
||||||
var scale_x;
|
var scale_x;
|
||||||
var scale_y;
|
var scale_y;
|
||||||
|
var defaultzoom = 4;
|
||||||
function disableSelection(){ return false; };
|
function disableSelection(){ return false; };
|
||||||
|
|
||||||
$(window).on("onUpdateContent", function()
|
$(window).on("onUpdateContent", function()
|
||||||
@@ -264,18 +264,27 @@ $(window).on("onUpdateContent", function()
|
|||||||
$("#switches").append("<div id='zoomcontainer' style='position: static; z-index: 9999; margin-bottom: -75px;'>Zoom: <div id='zoomslider' style='width: 75px; position: relative; top: -31px; right: -50px; z-index: 9999;'><input type=\"range\" onchange=\"setzoom(value);\" value=\"4\" step=\"0.5\" max=\"16\" min=\"0.5\" id=\"zoom\"></div><div id=\"zoomval\" style='position:relative; z-index: 9999; right: -135px; top: -80px; color: white;'>100%</div></div>");
|
$("#switches").append("<div id='zoomcontainer' style='position: static; z-index: 9999; margin-bottom: -75px;'>Zoom: <div id='zoomslider' style='width: 75px; position: relative; top: -31px; right: -50px; z-index: 9999;'><input type=\"range\" onchange=\"setzoom(value);\" value=\"4\" step=\"0.5\" max=\"16\" min=\"0.5\" id=\"zoom\"></div><div id=\"zoomval\" style='position:relative; z-index: 9999; right: -135px; top: -80px; color: white;'>100%</div></div>");
|
||||||
//$("body")[0].onselectstart = disableSelection;
|
//$("body")[0].onselectstart = disableSelection;
|
||||||
|
|
||||||
var width = $("#uiMapImage").width();
|
var width = $("#uiMap").width();
|
||||||
|
|
||||||
scale_x = width / (maxx * tile_size);
|
scale_x = width / (maxx * tile_size);
|
||||||
scale_y = width / (maxy * tile_size); // height is assumed to be the same
|
scale_y = width / (maxy * tile_size); // height is assumed to be the same
|
||||||
|
/*
|
||||||
$("#uiMap").on("click", function(e)
|
$("#uiMap").on("click", function(e)
|
||||||
{
|
{
|
||||||
var x = ((((e.clientX - 8) / scale_x) / tile_size) + 1).toFixed(0);
|
var x = ((((e.clientX - 8) / scale_x) / tile_size) + 1).toFixed(0);
|
||||||
var y = ((maxy - (((e.clientY - 8) / scale_y) / tile_size)) + 1).toFixed(0);
|
var y = ((maxy - (((e.clientY - 8) / scale_y) / tile_size)) + 1).toFixed(0);
|
||||||
|
|
||||||
window.location.href = "byond://?src=" + hSrc + "&action=select_position&x=" + x + "&y=" + y;
|
window.location.href = "byond://?src=" + hSrc + "&action=select_position&x=" + x + "&y=" + y;
|
||||||
});
|
});*/
|
||||||
|
$("#uiMap").css({ position: 'absolute',
|
||||||
|
top: '50%',
|
||||||
|
left: '50%',
|
||||||
|
margin: '-512px 0 0 -512px',
|
||||||
|
width: '256px',
|
||||||
|
height: '256px',
|
||||||
|
overflow: 'hidden',
|
||||||
|
zoom: '4'
|
||||||
|
});
|
||||||
$('#uiMap').drags({handle : '#uiMapImage'});
|
$('#uiMap').drags({handle : '#uiMapImage'});
|
||||||
$('#uiMapTooltip')
|
$('#uiMapTooltip')
|
||||||
.off('click')
|
.off('click')
|
||||||
@@ -283,6 +292,19 @@ $(window).on("onUpdateContent", function()
|
|||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
$(this).fadeOut(400);
|
$(this).fadeOut(400);
|
||||||
});
|
});
|
||||||
|
$('#uiMap').click(function(ev) {
|
||||||
|
var el = document.getElementById('uiMap');
|
||||||
|
var rect = el.getBoundingClientRect();
|
||||||
|
var tileX = (((ev.clientX - rect.left - el.clientLeft + el.scrollLeft)) / defaultzoom + 7).toFixed(0);
|
||||||
|
var tileY = (maxy-((ev.clientY - rect.top - el.clientTop + el.scrollTop)) / defaultzoom).toFixed(0);
|
||||||
|
var xx = ((ev.clientX - rect.left - el.clientLeft + el.scrollLeft) / defaultzoom).toFixed(0);
|
||||||
|
var yy = ((ev.clientY - rect.top - el.clientTop + el.scrollTop) / defaultzoom).toFixed(0);
|
||||||
|
//var dot = document.createElement('div');
|
||||||
|
//dot.setAttribute('style', 'position:absolute; width: 2px; height: 2px; top: '+top+'px; left: '+left+'px; background: red; z-index: 99999999;');
|
||||||
|
//el.appendChild(dot);
|
||||||
|
//alert(tileX + ' ' + tileY);
|
||||||
|
window.location.href = "byond://?src=" + hSrc + "&action=crewclick&x=" + tileX + "&y=" + tileY + "&z=" + z;
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
var updateMap = true;
|
var updateMap = true;
|
||||||
@@ -347,7 +369,7 @@ function switchTo(i)
|
|||||||
//$("document").height("800px");
|
//$("document").height("800px");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var defaultzoom = 4;
|
|
||||||
function changeZoom(offset){
|
function changeZoom(offset){
|
||||||
defaultzoom = Math.max(defaultzoom + offset, 1);
|
defaultzoom = Math.max(defaultzoom + offset, 1);
|
||||||
var uiMapObject = $('#uiMap');
|
var uiMapObject = $('#uiMap');
|
||||||
|
|||||||
Reference in New Issue
Block a user