Files
CHOMPStation2/html/create_object.html
Atermonera 551680a35e Merge pull request #6411 from Michiyamenotehifunana/Copypasta-2-electric-boogaloo
Makes the Create Object menu not freeze the client for an eternity
2019-08-21 17:27:41 -04:00

128 lines
3.3 KiB
HTML

<html>
<head>
<title>Create Object</title>
<style type="text/css">
body
{
font-size: 9pt;
font-family: Verdana, sans-serif;
}
h1, h2, h3, h4, h5, h6
{
color: #00f;
font-family: Georgia, Arial, sans-serif;
}
img {
border: 0px;
}
p.lic {
font-size: 6pt;
}
</style>
</head>
<body>
<form name="spawner" action="byond://?src=/* ref src */" method="get">
<input type="hidden" name="src" value="/* ref src */">
<input type="hidden" name="action" value="object_list">
Type <input type="text" name="filter" value="" onkeypress="submitFirst(event)" style="width:280px;height:25"> <input type = "button" value = "Search" onclick = "updateSearch()" /><br>
Offset: <input type="text" name="offset" value="x,y,z" style="width:250px">
A <input type="radio" name="offset_type" value="absolute">
R <input type="radio" name="offset_type" value="relative" checked="checked"><br>
Number: <input type="text" name="object_count" value="1" style="width:30px">
Dir: <input type="text" name="object_dir" value="2" style="width:30px">
Name: <input type="text" name="object_name" value="" style="width:180px"><br>
Where:
<select name='object_where' style="width:320px">
<option value='onfloor'>On floor below own mob</option>
<!-- <option value='inhand'>In own mob's hand</option> -->
<option value='inmarked'>In marked object</option>
</select>
<br><br>
Number of matches: <input id="number" value="0" style="width:180px"><br>
<br><br>
<div id="selector_hs">
<select name="object_list" id="object_list" multiple size="20">
</select>
</div>
<br>
<input type="submit" value="spawn">
</form>
<script language="JavaScript">
var old_search = "";
var object_list = document.spawner.object_list;
var object_list_container = document.getElementById('selector_hs');
var object_paths = null /* object types */;
var objects = object_paths == null ? new Array() : object_paths.split(";");
document.spawner.filter.focus();
populateList(objects);
function populateList(from_list)
{
var newOpts = '';
var i;
for (i in from_list)
{
newOpts += '<option value="' + from_list[i] + '">'
+ from_list[i] + '</option>';
}
object_list_container.innerHTML = '<select name="object_list" id="object_list" multiple size="20">' +
newOpts + '</select>';
document.getElementById("number").value = from_list.length;
}
function updateSearch()
{
if (old_search == document.spawner.filter.value)
{
return false;
}
old_search = document.spawner.filter.value;
var filtered = new Array();
var i;
for (i in objects)
{
if(objects[i].search(old_search) < 0)
{
continue;
}
filtered.push(objects[i]);
}
populateList(filtered);
if (object_list.options.length)
object_list.options[0].selected = 'true';
return true;
}
function submitFirst(event)
{
if (!object_list.options.length)
{
return false;
}
if (event.keyCode == 13 || event.which == 13)
{
object_list.options[0].selected = 'true';
}
}
</script>
</body>
</html>