248 lines
14 KiB
HTML
248 lines
14 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv='Content-Type' content='text/html;charset=utf-8'>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<title>Addis Open MT-Skin Database</title>
|
|
<meta name="description" content="this is a skin database for the game minetest-c55. it has a 3d preview rendered with x3dom and a list where you can choose the skin.">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<link rel='stylesheet' type='text/css' href='css/x3dom.css'>
|
|
<link rel="stylesheet" href="css/normalize.css">
|
|
<link rel="stylesheet" title="The Default Style (White+blue+green)" href="css/main.css">
|
|
<link rel="alternate stylesheet" title="Alternative by Semmett9" href="css/semmett9.css">
|
|
<script type='text/javascript' src='js/x3dom.js'></script>
|
|
<script type='text/javascript' src='js/ajax.js'></script>
|
|
<script type="text/javascript" src='js/main.js'></script>
|
|
</head>
|
|
<body>
|
|
|
|
<div id="toolbarleft" class="toolbar">
|
|
<button class="toolbarelem" onclick="resetView();">
|
|
Reset View
|
|
</button>
|
|
<button title="create screenshot" onclick="getScreenshot();">
|
|
<img src="/img/camera-photo-6.png" />
|
|
</button>
|
|
<label class="toolbarelem"><img src="/img/camera-video-2.png" />
|
|
<select class="styled-select" id="camselect" onchange="document.getElementById('cam_'+this.value).setAttribute('set_bind','true');">
|
|
<option selected="selected">default</option>
|
|
<option disabled="disabled" class="seperator">-----</option>
|
|
<option>back</option>
|
|
<option>front</option>
|
|
<option disabled="disabled" class="seperator">-----</option>
|
|
<option>bottom</option>
|
|
<option>top</option>
|
|
<option disabled="disabled" class="seperator">-----</option>
|
|
<option>left</option>
|
|
<option>right</option>
|
|
<option disabled="disabled" class="seperator">-----</option>
|
|
<option value="invalid">cape (0.4.10)</option>
|
|
</select></label>
|
|
|
|
</div>
|
|
<div id="toolbarright" class="toolbar">
|
|
<button title="previous" onclick="window.history.back();">
|
|
<img src="/img/go-previous-5.png" />
|
|
</button>
|
|
<button title="next" onclick="window.history.forward();">
|
|
<img src="/img/go-next-5.png" />
|
|
</button>
|
|
<button title="refresh" onclick="window.location.reload();">
|
|
<img src="/img/view-refresh-7.png" />
|
|
</button> |
|
|
page
|
|
<select onchange="goPage(this.value);" id="page">
|
|
<option>?</option>
|
|
</select>
|
|
of
|
|
<output id="max_pages">
|
|
?
|
|
</output>
|
|
|
|
|
<button id="schowfilter" class="toolbarelem" onclick="showfilter()">
|
|
Filter / Search <b id="filterstate"></b>
|
|
</button>
|
|
<button title="Settings" onclick="settings.showHide()"><img src="/img/configure.png">
|
|
</button>
|
|
<button title="about" onclick="showHelp('about')"><img src="/img/help-about-3.png">
|
|
</button>
|
|
<button title="Fullscreen" onclick="vollbild();"><img src="/img/view-fullscreen.png">
|
|
</button>
|
|
</div>
|
|
|
|
<x3d id='x3dprev' showStat='false' showLog='false'>
|
|
<scene>
|
|
<navigationInfo id="nav" headlight='false' type='turntable' typeParams= '0.0 0.0 0.1 3.1' ></navigationInfo>
|
|
<!--<background DEF='WO_World' groundColor='0.051 0.051 0.051' skyColor='0.051 0.051 0.051'></background>-->
|
|
|
|
<transform DEF='Armature_TRANSFORM' rotation='0 0.707107 0.707107 3.14159' translation='0 -10 0'>
|
|
<transform DEF='Player_TRANSFORM'>
|
|
<transform DEF='Player_ifs_TRANSFORM'>
|
|
<group DEF='group_ME_Player'>
|
|
<shape>
|
|
<appearance>
|
|
<!--<material DEF='MA_Character' ambientIntensity='0.333' shininess='0.098' specularColor='0.001 0.001 0.001'></material>-->
|
|
<texture DEF='IM_character_png' hideChildren="true" scale="false">
|
|
<canvas width='64' height='32' id='myCanvas' class="pixelated" ></canvas>
|
|
<TextureProperties boundaryModeS='CLAMP_TO_EDGE' boundaryModeT='CLAMP_TO_EDGE'
|
|
magnificationFilter='NEAREST' minificationFilter='NEAREST'
|
|
generateMipMaps='false' id='texProps' ></TextureProperties>
|
|
</texture>
|
|
<textureTransform></textureTransform>
|
|
</appearance>
|
|
<indexedFaceSet texCoordIndex='0 1 2 3 -1 4 5 6 7 -1 8 9 10 11 -1 12 13 14 15 -1 16 17 18 19 -1 20 21 22 23 -1 24 25 26 27 -1 28 29 30 31 -1 32 33 34 35 -1 36 37 38 39 -1 40 41 42 43 -1 44 45 46 47 -1 48 49 50 51 -1 52 53 54 55 -1 56 57 58 59 -1 60 61 62 63 -1 64 65 66 67 -1 68 69 70 71 -1 72 73 74 75 -1 76 77 78 79 -1 80 81 82 83 -1 84 85 86 87 -1 88 89 90 91 -1 92 93 94 95 -1 96 97 98 99 -1 100 101 102 103 -1 104 105 106 107 -1 108 109 110 111 -1 112 113 114 115 -1 116 117 118 119 -1 120 121 122 123 -1 124 125 126 127 -1 128 129 130 131 -1 132 133 134 135 -1 136 137 138 139 -1 140 141 142 143 -1 144 145 146 147 -1 148 149 150 151 -1 152 153 154 155 -1 156 157 158 159 -1 160 161 162 163 -1 164 165 166 167 -1 168 169 170 171 -1 172 173 174 175 -1 176 177 178 179 -1 180 181 182 183 -1 184 185 186 187 -1 188 189 190 191 -1' coordIndex='0 21 23 2 -1 1 0 2 3 -1 3 22 20 1 -1 0 1 20 21 -1 3 2 23 22 -1 47 44 45 46 -1 6 5 9 10 -1 7 6 10 11 -1 32 33 12 13 -1 14 15 13 12 -1 39 18 16 37 -1 18 19 17 16 -1 19 38 36 17 -1 36 37 16 17 -1 19 18 39 38 -1 34 14 12 33 -1 40 42 44 47 -1 15 35 32 13 -1 24 27 26 25 -1 31 28 29 30 -1 46 45 43 41 -1 35 34 33 32 -1 41 43 42 40 -1 23 21 20 22 -1 39 37 36 38 -1 15 14 34 35 -1 4 7 11 8 -1 5 4 8 9 -1 30 26 27 31 -1 4 5 6 7 -1 31 27 24 28 -1 44 42 43 45 -1 28 24 25 29 -1 11 10 9 8 -1 29 25 26 30 -1 40 47 46 41 -1 55 50 48 53 -1 50 51 49 48 -1 51 54 52 49 -1 52 53 48 49 -1 51 50 55 54 -1 55 53 52 54 -1 59 57 56 58 -1 60 61 62 63 -1 57 59 60 63 -1 59 58 61 60 -1 56 57 63 62 -1 58 56 62 61 -1'>
|
|
<coordinate DEF='coords_ME_Player' point='-2 -0.999999 6.75 -2 1 6.75 -2 -0.999999 13.5 -2 1 13.5 -4 1 13.5 -4 -1 13.5 -2 -1 13.5 -2 1 13.5 -4 1 6.75 -4 -1 6.75 -2 -1 6.75 -2 1 6.75 -2 -1 -0 -2 1 0 -2 -1 6.75 -2 1 6.75 -2 -2 13.5 -2 2 13.5 -2 -2 17.5 -2 2 17.5 2 1 6.75 2 -1 6.75 2 1 13.5 2 -1 13.5 2 1 6.75 2 -1 6.75 4 -1 6.75 4 1 6.75 2 1 13.5 2 -1 13.5 4 -1 13.5 4 1 13.5 0 1 0 -0 -1 -0 0 -1 6.75 0 1 6.75 2 2 13.5 2 -2 13.5 2 2 17.5 2 -2 17.5 2 1 6.75 2 -1 6.75 2 1 0 2 -1 -0 0 1 0 0 -1 -0 0 -1 6.75 0 1 6.75 -2.2 -2.2 13.303 -2.2 2.2 13.303 -2.2 -2.2 17.703 -2.2 2.2 17.703 2.2 2.2 13.303 2.2 -2.2 13.303 2.2 2.2 17.703 2.2 -2.2 17.703 -2 -1.3644 6.75 -2 -1.3644 13.5 2 -1.3644 6.75 2 -1.3644 13.5 2 -1 13.5 2 -1 6.75 -2 -1 6.75 -2 -1 13.5'></coordinate>
|
|
<textureCoordinate point='0.5 0 0.625 0 0.625 0.375 0.5 0.375 0.4375 0 0.5 0 0.5 0.375 0.4375 0.375 0.4375 0.375 0.3125 0.375 0.3125 0 0.4375 0 0.4375 0.5 0.4375 0.375 0.5625 0.375 0.5625 0.5 0.4375 0.375 0.4375 0.5 0.3125 0.5 0.3125 0.375 0.1875 0.375 0.1875 0 0.125 0 0.125 0.375 0.8125 0.375 0.875 0.375 0.875 0 0.8125 0 0.75 0.375 0.8125 0.375 0.8125 0 0.75 0 0.1875 0.375 0.1875 0.5 0.125 0.5 0.125 0.375 0 0.375 0.0625 0.375 0.0625 0 0 0 0.5 0.75 0.375 0.75 0.375 0.5 0.5 0.5 0.375 0.75 0.25 0.75 0.25 0.5 0.375 0.5 0.25 0.75 0.125 0.75 0.125 0.5 0.25 0.5 0.375 0.75 0.375 1 0.25 1 0.25 0.75 0.25 0.75 0.25 1 0.125 1 0.125 0.75 0.25 0.375 0.1875 0.375 0.1875 0 0.25 0 0.125 0.375 0.125 0 0.0625 0 0.0625 0.375 0.125 0.375 0.0625 0.375 0.0625 0 0.125 0 0.75 0.375 0.8125 0.375 0.8125 0.5 0.75 0.5 0.6875 0.375 0.75 0.375 0.75 0.5 0.6875 0.5 0.25 0.375 0.25 0 0.1875 0 0.1875 0.375 0.1875 0.375 0.125 0.375 0.125 0 0.1875 0 0 0.375 0 0 0.0625 0 0.0625 0.375 0.25 0.375 0.25 0 0.3125 0 0.3125 0.375 0 0.75 0 0.5 0.125 0.5 0.125 0.75 0.125 0.375 0.125 0.5 0.0625 0.5 0.0625 0.375 0.6875 0.375 0.75 0.375 0.75 0 0.6875 0 0.6875 0.375 0.625 0.375 0.625 0 0.6875 0 0.6875 0.375 0.6875 0 0.625 0 0.625 0.375 0.6875 0.375 0.6875 0.5 0.75 0.5 0.75 0.375 0.6875 0.375 0.6875 0 0.75 0 0.75 0.375 0.1875 0.375 0.125 0.375 0.125 0.5 0.1875 0.5 0.75 0.375 0.75 0 0.8125 0 0.8125 0.375 0.75 0.375 0.75 0.5 0.8125 0.5 0.8125 0.375 0.8125 0.375 0.8125 0 0.875 0 0.875 0.375 0.125 0.375 0.0625 0.375 0.0625 0.5 0.125 0.5 1 0.75 0.875 0.75 0.875 0.5 1 0.5 0.875 0.75 0.75 0.75 0.75 0.5 0.875 0.5 0.75 0.75 0.625 0.75 0.625 0.5 0.75 0.5 0.875 0.75 0.875 1 0.75 1 0.75 0.75 0.75 0.75 0.75 1 0.625 1 0.625 0.75 0.5 0.75 0.5 0.5 0.625 0.5 0.625 0.75 1 0.375 0.875 0.375 0.875 0 1 0 1 0.375 1 0 0.875 0 0.875 0.375 0.875 0.375 1 0.375 1 0.3438 0.875 0.3438 1 0.375 1 0 0.9844 0 0.9844 0.375 0.875 0 0.875 0.375 0.8906 0.375 0.8906 0 1 0 0.875 0 0.875 0.0312 1 0.0312'></textureCoordinate>
|
|
</indexedFaceSet>
|
|
</shape>
|
|
</group>
|
|
</transform>
|
|
</transform>
|
|
</transform>
|
|
<!--position="x y z"-->
|
|
<viewpoint id="cam_default" position='0 0 40' orientation="0 0 1 0" ></viewpoint>
|
|
<viewpoint id="cam_invalid" position="-15 0 -10" fieldOfView='0.5' orientation="0 4.14 0 4.1415927410125732" ></viewpoint>
|
|
<viewpoint id="cam_back" position="0 0 -30" orientation="0 1 0 3.1415927410125732" ></viewpoint>
|
|
<viewpoint id="cam_front" position="0 0 30" orientation="0 0 1 0" ></viewpoint>
|
|
<viewpoint id="cam_bottom" position="0 -23 0" orientation="1 0 0.00017263348854612559 1.5707962512969971"></viewpoint>
|
|
<viewpoint id="cam_top" position="0 23 0" orientation="0 0.7071068286895752 0.70710676908493042 3.1413483619689941"></viewpoint>
|
|
<viewpoint id="cam_left" position="-30 0 0" orientation="0 -0.99999994039535522 0.00017263348854612559 1.5707962512969971"></viewpoint>
|
|
<viewpoint id="cam_right" position="30 0 0" orientation="0 0.99999994039535522 -0.00017263348854612559 1.5707962512969971"></viewpoint>
|
|
|
|
</scene>
|
|
</x3d>
|
|
|
|
<div id="skinlist" class="select" onscroll="nextElements()">
|
|
<div id="dnd" class="option">
|
|
<img src="img/addskin.png" class="thumb" style="cursor:default;">
|
|
<h2>Here could be your skin!</h2>
|
|
<p>
|
|
drag and drop your skin file here if you want to share it with other people!
|
|
or you can browse your pc:
|
|
<input type="file" multiple="multiple" accept="image/png" id="files" onchange="handleFileSelect(event);">
|
|
</p>
|
|
</div>
|
|
|
|
</div>
|
|
<div id="advancedfilter">
|
|
<h2>Filter/Search</h2>
|
|
<form action="#" method="get" onsubmit="changeFilter(this);return false;" class="pure-form pure-form-stacked">
|
|
<fieldset>
|
|
<label for="ids">Skin Ids:</label>
|
|
<input type="text" id="ids" placeholder="e.g. 1,2 or 14,17 or 1" />
|
|
|
|
<label for="name">Name:</label>
|
|
<input type="text" id="name" placeholder="e.g. farmer" />
|
|
|
|
<label for="author">Author:</label>
|
|
<input type="text" id="author" placeholder="e.g. addi or Jordach" />
|
|
|
|
<label for="license">License:</label>
|
|
<input type="text" id="license" placeholder="e.g. CC BY-SA" />
|
|
|
|
<!--<label for="tagsfound">Tags must found (pre alpha):</label>
|
|
<input type="text" id="tagsfound" placeholder="Enter the the Tags. of Skin" />-->
|
|
<button type="submit" class="pure-button pure-button-primary">
|
|
✔ apply
|
|
</button>
|
|
<button type="reset" class="pure-button">
|
|
✘ reset
|
|
</button>
|
|
</fieldset>
|
|
</form>
|
|
|
|
</div>
|
|
<div id="settingsWindow" class="settingsWindow">
|
|
<h2>Settings</h2>
|
|
<h3>Debugging</h3>
|
|
<button onclick="toggle('x3dom-state-viewer')">
|
|
show/hide Stats
|
|
</button>
|
|
<br>
|
|
<button onclick="toggle('x3dom_logdiv')">
|
|
show/hide Log container
|
|
</button>
|
|
<br>
|
|
<h3>Viewmode: Turnable</h3>
|
|
<p>
|
|
<canvas id="theCanvas" width="80px" height="80px">
|
|
it seems that your browser cannot display canvas elements
|
|
</canvas>
|
|
values can be between 0 and PI (Π ~ 3.14)
|
|
<br>
|
|
</p>
|
|
<div id="input-container">
|
|
min:
|
|
<input id="min" value="0.1" min="0" max="3.14" step="0.1" type="number">
|
|
max:
|
|
<input id="max" value="3.1" min="0" max="3.14" step="0.1" type="number">
|
|
<button type="button">
|
|
apply
|
|
</button>
|
|
</div>
|
|
<hr />
|
|
<button type="button" onclick="settings.showHide()">
|
|
Proceed
|
|
</button>
|
|
</div>
|
|
<script type="text/javascript">
|
|
var updateArc = function(min, max) {
|
|
var centerX = canvas.width / 2;
|
|
var centerY = canvas.height / 2;
|
|
var radius = canvas.width / 2 - 10;
|
|
min = min - Math.PI / 2;
|
|
max = max - Math.PI / 2;
|
|
context.beginPath();
|
|
context.arc(centerX, centerY, radius, 0, 2 * Math.PI, false);
|
|
context.fillStyle = 'white';
|
|
context.fill();
|
|
context.lineWidth = 2;
|
|
context.strokeStyle = '#999';
|
|
context.stroke();
|
|
context.beginPath();
|
|
context.arc(centerX, centerY, radius, min, max, false);
|
|
context.strokeStyle = '#003300';
|
|
context.stroke();
|
|
context.beginPath();
|
|
context.moveTo(centerX, centerY);
|
|
context.lineTo(centerX + (radius * Math.cos(min)), centerY + (radius * Math.sin(min)));
|
|
context.strokeStyle = '#0000FF';
|
|
context.stroke();
|
|
context.beginPath();
|
|
context.moveTo(centerX, centerY);
|
|
context.lineTo(centerX + (radius * Math.cos(max)), centerY + (radius * Math.sin(max)));
|
|
context.strokeStyle = '#FF0000';
|
|
context.stroke();
|
|
};
|
|
var nav = document.getElementById('nav');
|
|
var canvas = document.getElementById('theCanvas');
|
|
var context = canvas.getContext('2d');
|
|
var minInput = document.getElementById('min');
|
|
var maxInput = document.getElementById('max');
|
|
minInput.onchange = function() {
|
|
var min = parseFloat(minInput.value);
|
|
var max = parseFloat(maxInput.value);
|
|
if (min < max) {
|
|
var str = '0.0 0.0 ' + min.toFixed(1) + ' ' + max.toFixed(1);
|
|
nav.setAttribute('typeParams', str);
|
|
updateArc(min, max);
|
|
} else {
|
|
minInput.value = (max - 0.1).toFixed(1);
|
|
}
|
|
};
|
|
maxInput.onchange = function() {
|
|
var min = parseFloat(minInput.value);
|
|
var max = parseFloat(maxInput.value);
|
|
if (max > min) {
|
|
var str = '0.0 0.0 ' + min.toFixed(1) + ' ' + max.toFixed(1);
|
|
nav.setAttribute('typeParams', str);
|
|
updateArc(min, max);
|
|
} else {
|
|
maxInput.value = (min + 0.1).toFixed(1);
|
|
}
|
|
};
|
|
updateArc(0.1, 3.1);
|
|
</script>
|
|
</body>
|
|
</html> |