Initial commit
|
@ -0,0 +1,2 @@
|
||||||
|
start_httpd.sh
|
||||||
|
lightttpd.conf
|
After Width: | Height: | Size: 854 KiB |
|
@ -0,0 +1,42 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>Neomojimixer</title>
|
||||||
|
<link rel="shortcut icon" href="favicon.gif" type="image/gif" />
|
||||||
|
<link rel="stylesheet" href="neomojimixer.css">
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h2>Neomojimixer</h2>
|
||||||
|
<p style="padding-bottom:10px;">Mix your Neomoji parts as you like.</p>
|
||||||
|
<p id="noJSmessage">Please active JavaScript to use the Neomojimixer!</p>
|
||||||
|
<div id="images" class="container">
|
||||||
|
<img class="body" id="body_img" src="" />
|
||||||
|
<img class="eyes" id="eyes_img" src="" />
|
||||||
|
<img class="mouth" id="mouth_img" src="" />
|
||||||
|
<img class="arms" id="arms_img" src="" />
|
||||||
|
</div>
|
||||||
|
<div id="controls">
|
||||||
|
<div class="body"><button id="body_left" onclick="onClick_body_prev();" disabled><</button><span class="name" id="body_name">name body</span><button id="body_right" onclick="onClick_body_next();" disabled>></button></div>
|
||||||
|
<div class="eyes"><button id="eyes_left" onclick="onClick_eyes_prev();" disabled><</button><span class="name" id="eyes_name">name eyes</span><button id="eyes_right" onclick="onClick_eyes_next();" disabled>></button></div>
|
||||||
|
<div class="mouth"><button id="mouth_left" onclick="onClick_mouth_prev();" disabled><</button><span class="name" id="mouth_name">name mouth</span><button id="mouth_right" onclick="onClick_mouth_next();" disabled>></button></div>
|
||||||
|
<div class="arms"><button id="arms_left" onclick="onClick_arms_prev();" disabled><</button><span class="name" id="arms_name">name arms</span><button id="arms_right" onclick="onClick_arms_next();" disabled>></button></div>
|
||||||
|
<div class="random"><button id="random" onclick="randomize();" disabled>Random</button></div>
|
||||||
|
<div class="export"><button id="export" onclick="exportImage();" disabled>Export Image</button></div>
|
||||||
|
</div>
|
||||||
|
<div id="stats">stats</div>
|
||||||
|
<canvas id="canvas_export" width="256" height="256" hidden name="test.png"></canvas>
|
||||||
|
<p id="exportSaveMessage" hidden>To save right click and choose "Save image as..."</p>
|
||||||
|
<input type="text" id="fullNeomojiName" name="" value="" readonly hidden/>
|
||||||
|
<p>Neomojis are from the following sources: </p>
|
||||||
|
<ul>
|
||||||
|
<li><b><a href="https://volpeon.ink/emojis/neofox/" target="_blank" class="links">Neofox</a></b> by Volpeon</li>
|
||||||
|
<li><b><a href="https://volpeon.ink/emojis/neocat/" target="_blank" class="links">Neocat</a></b> by Volpeon</li>
|
||||||
|
</ul>
|
||||||
|
<p>Sourcecode on Codeberg: <a href="https://codeberg.org/" target="_blank">TODO: set link to repo! Neomoji Mixer</a>
|
||||||
|
|
||||||
|
<!-- Load in the JS as the last element or the DOM objects won't be there -->
|
||||||
|
<script src="neomojimixer.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,77 @@
|
||||||
|
body {
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
p#noJSmessage {
|
||||||
|
font-size:2em;
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.container {
|
||||||
|
position: realtive;
|
||||||
|
width: 256px;
|
||||||
|
height: 256px;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.body {
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.eyes {
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.mouth {
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.arms {
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
#controls {
|
||||||
|
position:relative;
|
||||||
|
width: 256px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button {
|
||||||
|
width: 25px;
|
||||||
|
height: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button#random {
|
||||||
|
width: 250px;
|
||||||
|
}
|
||||||
|
|
||||||
|
button#export {
|
||||||
|
width: 250px;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.name {
|
||||||
|
display: inline-block;
|
||||||
|
width: 200px;
|
||||||
|
text-align: center;
|
||||||
|
background: #D3D3D3;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#stats {
|
||||||
|
font-size: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
canvas {
|
||||||
|
height: 300px;
|
||||||
|
width: 300px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p#exportSaveMessage {
|
||||||
|
font-size: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
input#fullNeomojiName {
|
||||||
|
width: 250px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.links {
|
||||||
|
color: black;
|
||||||
|
}
|
|
@ -0,0 +1,230 @@
|
||||||
|
//global variables
|
||||||
|
|
||||||
|
//Arrays to hold the parts
|
||||||
|
let eyes = [];
|
||||||
|
let body = [];
|
||||||
|
let mouth = [];
|
||||||
|
let arms = [];
|
||||||
|
|
||||||
|
//Index to easily find when to roll back to the first/last element in the list
|
||||||
|
let inex_eyes = 0;
|
||||||
|
let index_body = 0;
|
||||||
|
let index_mouth = 0;
|
||||||
|
let index_arms = 0;
|
||||||
|
|
||||||
|
//shotnames for HTML elements to interact with
|
||||||
|
|
||||||
|
//images
|
||||||
|
const body_image = document.getElementById("body_img");
|
||||||
|
const eyes_image = document.getElementById("eyes_img");
|
||||||
|
const mouth_image = document.getElementById("mouth_img");
|
||||||
|
const arms_image = document.getElementById("arms_img");
|
||||||
|
|
||||||
|
const canvas = document.getElementById("canvas_export");
|
||||||
|
const neomoji_name = document.getElementById("fullNeomojiName");
|
||||||
|
|
||||||
|
//names
|
||||||
|
const body_name = document.getElementById("body_name");
|
||||||
|
const eyes_name = document.getElementById("eyes_name");
|
||||||
|
const mouth_name = document.getElementById("mouth_name");
|
||||||
|
const arms_name = document.getElementById("arms_name");
|
||||||
|
|
||||||
|
//Stats
|
||||||
|
const stats = document.getElementById("stats");
|
||||||
|
|
||||||
|
|
||||||
|
// Loading the JSON and getting all the available parts
|
||||||
|
async function getData() {
|
||||||
|
|
||||||
|
fetch('./parts.json')
|
||||||
|
.then(function(response) {
|
||||||
|
return response.json();
|
||||||
|
})
|
||||||
|
.then(function(data) {
|
||||||
|
loadParts(data);
|
||||||
|
})
|
||||||
|
.catch(function(error) {
|
||||||
|
console.log('An error occurred:', error);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function loadParts(parts) {
|
||||||
|
//Load parts into Arrays
|
||||||
|
parts.type.eyes.forEach(fillArrayEyes);
|
||||||
|
parts.type.body.forEach(fillArrayBody);
|
||||||
|
parts.type.mouth.forEach(fillArrayMouth);
|
||||||
|
parts.type.arms.forEach(fillArrayArms);
|
||||||
|
|
||||||
|
//Randomize initial view
|
||||||
|
randomize();
|
||||||
|
|
||||||
|
//Show little statistic
|
||||||
|
var sum = body.length + eyes.length + mouth.length + arms.length;
|
||||||
|
var variety = body.length * eyes.length * mouth.length * arms.length;
|
||||||
|
|
||||||
|
stats.innerHTML = "There are " + sum + " Elements available,<br />with " + new Intl.NumberFormat("de-DE").format(variety) + " possible combinations.";
|
||||||
|
|
||||||
|
//Activate the buttons after everything is loaded in
|
||||||
|
document.getElementById("body_left").disabled = false;
|
||||||
|
document.getElementById("body_right").disabled = false;
|
||||||
|
document.getElementById("eyes_left").disabled = false;
|
||||||
|
document.getElementById("eyes_right").disabled = false;
|
||||||
|
document.getElementById("mouth_left").disabled = false;
|
||||||
|
document.getElementById("mouth_right").disabled = false;
|
||||||
|
document.getElementById("arms_left").disabled = false;
|
||||||
|
document.getElementById("arms_right").disabled = false;
|
||||||
|
document.getElementById("random").disabled = false;
|
||||||
|
document.getElementById("export").disabled = false;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function fillArrayEyes(item){
|
||||||
|
var name = item.name;
|
||||||
|
var url = item.url;
|
||||||
|
eyes.push ([name, url]); //Two dimensional array, Second dimension holds name on index 0 and url at index 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function fillArrayBody(item){
|
||||||
|
var name = item.name;
|
||||||
|
var url = item.url;
|
||||||
|
body.push ([name, url]); //Two dimensional array, Second dimension holds name on index 0 and url at index 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function fillArrayMouth(item){
|
||||||
|
var name = item.name;
|
||||||
|
var url = item.url;
|
||||||
|
mouth.push ([name, url]); //Two dimensional array, Second dimension holds name on index 0 and url at index 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function fillArrayArms(item){
|
||||||
|
var name = item.name;
|
||||||
|
var url = item.url;
|
||||||
|
arms.push ([name, url]); //Two dimensional array, Second dimension holds name on index 0 and url at index 1
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_body_next(){
|
||||||
|
index_body++;
|
||||||
|
|
||||||
|
if (index_body == body.length) {index_body = 0;} //check if index is too big for the array
|
||||||
|
|
||||||
|
body_image.src = "." + body[index_body][1]; //Change URL of picture
|
||||||
|
body_name.innerHTML = body[index_body][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_body_prev(){
|
||||||
|
index_body--;
|
||||||
|
|
||||||
|
if (index_body < 0) {index_body = (body.length-1);} //check if index is too big for the array
|
||||||
|
|
||||||
|
body_image.src = "." + body[index_body][1]; //Change URL of picture
|
||||||
|
body_name.innerHTML = body[index_body][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_eyes_next(){
|
||||||
|
index_eyes++;
|
||||||
|
|
||||||
|
if (index_eyes == eyes.length) {index_eyes = 0;} //check if index is too big for the array
|
||||||
|
|
||||||
|
eyes_image.src = "." + eyes[index_eyes][1]; //Change URL of picture
|
||||||
|
eyes_name.innerHTML = eyes[index_eyes][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_eyes_prev(){
|
||||||
|
index_eyes--;
|
||||||
|
|
||||||
|
if (index_eyes < 0) {index_eyes = (eyes.length-1);} //check if index is too big for the array
|
||||||
|
|
||||||
|
eyes_image.src = "." + eyes[index_eyes][1]; //Change URL of picture
|
||||||
|
eyes_name.innerHTML = eyes[index_eyes][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_mouth_next(){
|
||||||
|
index_mouth++;
|
||||||
|
|
||||||
|
if (index_mouth == mouth.length) {index_mouth = 0;} //check if index is too big for the array
|
||||||
|
|
||||||
|
mouth_image.src = "." + mouth[index_mouth][1]; //Change URL of picture
|
||||||
|
mouth_name.innerHTML = mouth[index_mouth][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_mouth_prev(){
|
||||||
|
index_mouth--;
|
||||||
|
|
||||||
|
if (index_mouth < 0) {index_mouth = (mouth.length-1);} //check if index is too big for the array
|
||||||
|
|
||||||
|
mouth_image.src = "." + mouth[index_mouth][1]; //Change URL of picture
|
||||||
|
mouth_name.innerHTML = mouth[index_mouth][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_arms_next(){
|
||||||
|
index_arms++;
|
||||||
|
|
||||||
|
if (index_arms == arms.length) {index_arms = 0;} //check if index is too big for the array
|
||||||
|
|
||||||
|
arms_image.src = "." + arms[index_arms][1]; //Change URL of picture
|
||||||
|
arms_name.innerHTML = arms[index_arms][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function onClick_arms_prev(){
|
||||||
|
index_arms--;
|
||||||
|
|
||||||
|
if (index_arms < 0) {index_arms = (arms.length-1);} //check if index is too big for the array
|
||||||
|
|
||||||
|
arms_image.src = "." + arms[index_arms][1]; //Change URL of picture
|
||||||
|
arms_name.innerHTML = arms[index_arms][0]; //Change name in controls
|
||||||
|
}
|
||||||
|
|
||||||
|
function randomize(){ //Randomize which parts are shown
|
||||||
|
index_body = Math.floor(Math.random() * body.length);
|
||||||
|
index_eyes = Math.floor(Math.random() * eyes.length);
|
||||||
|
index_mouth = Math.floor(Math.random() * mouth.length);
|
||||||
|
index_arms = Math.floor(Math.random() * arms.length);
|
||||||
|
|
||||||
|
body_image.src = "." + body[index_body][1];
|
||||||
|
eyes_image.src = "." + eyes[index_eyes][1];
|
||||||
|
mouth_image.src = "." + mouth[index_mouth][1];
|
||||||
|
arms_image.src = "." + arms[index_arms][1];
|
||||||
|
|
||||||
|
body_name.innerHTML = body[index_body][0];
|
||||||
|
eyes_name.innerHTML = eyes[index_eyes][0];
|
||||||
|
mouth_name.innerHTML = mouth[index_mouth][0];
|
||||||
|
arms_name.innerHTML = arms[index_arms][0];
|
||||||
|
}
|
||||||
|
|
||||||
|
function exportImage(){ //Export image so it can be saved as one PNG
|
||||||
|
var ctx=canvas.getContext("2d");
|
||||||
|
|
||||||
|
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
||||||
|
|
||||||
|
var body_export = new Image();
|
||||||
|
var eyes_export = new Image();
|
||||||
|
var mouth_export = new Image();
|
||||||
|
var arms_export = new Image();
|
||||||
|
|
||||||
|
body_export.src = "." + body[index_body][1];
|
||||||
|
body_export.onload = function() {
|
||||||
|
ctx.drawImage(body_export, 0, 0, 256, 256);
|
||||||
|
eyes_export.src = "." + eyes[index_eyes][1];
|
||||||
|
eyes_export.onload = function() {
|
||||||
|
ctx.drawImage(eyes_export, 0, 0, 256, 256);
|
||||||
|
mouth_export.src = "." + mouth[index_mouth][1];
|
||||||
|
mouth_export.onload = function() {
|
||||||
|
ctx.drawImage(mouth_export, 0, 0, 256, 256);
|
||||||
|
arms_export.src = "." + arms[index_arms][1];
|
||||||
|
arms_export.onload = function() {
|
||||||
|
ctx.drawImage(arms_export, 0, 0, 256, 256);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
neomoji_name.value = body[index_body][0] + "_" + eyes[index_eyes][0] + "_" + mouth[index_mouth][0] + "_" + arms[index_arms][0];
|
||||||
|
|
||||||
|
canvas.hidden = false;
|
||||||
|
neomoji_name.hidden = false;
|
||||||
|
document.getElementById("exportSaveMessage").hidden = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Main Programm
|
||||||
|
document.getElementById("noJSmessage").hidden = true;
|
||||||
|
getData();
|
|
@ -0,0 +1,121 @@
|
||||||
|
{
|
||||||
|
"type": {
|
||||||
|
"eyes": [
|
||||||
|
{"name": "cute", "url": "/parts/eyes_cute.png"},
|
||||||
|
{"name": "normal", "url": "/parts/eyes_normal.png"},
|
||||||
|
{"name": "googly", "url": "/parts/eyes_googly.png"},
|
||||||
|
{"name": "woozy", "url": "/parts/eyes_woozy.png"},
|
||||||
|
{"name": "googly_woozy", "url": "/parts/eyes_googly_woozy.png"},
|
||||||
|
{"name": "baa", "url": "/parts/eyes_baa.png"},
|
||||||
|
{"name": "pleading", "url": "/parts/eyes_pleading.png"},
|
||||||
|
{"name": "dizzy", "url": "/parts/eyes_dizzy.png"},
|
||||||
|
{"name": "0_0", "url": "/parts/eyes_0_0.png"},
|
||||||
|
{"name": "devil", "url": "/parts/eyes_devil.png"},
|
||||||
|
{"name": "drowsy", "url": "/parts/eyes_drowsy.png"},
|
||||||
|
{"name": "evil", "url": "/parts/eyes_evil.png"},
|
||||||
|
{"name": ">_<", "url": "/parts/eyes_><.png"},
|
||||||
|
{"name": "cry", "url": "/parts/eyes_cry.png"},
|
||||||
|
{"name": "owo", "url": "/parts/eyes_owo.png"},
|
||||||
|
{"name": "sad", "url": "/parts/eyes_sad.png"},
|
||||||
|
{"name": "glare", "url": "/parts/eyes_glare.png"},
|
||||||
|
{"name": "hyper", "url": "/parts/eyes_hyper.png"},
|
||||||
|
{"name": "kisser", "url": "/parts/eyes_kisser.png"},
|
||||||
|
{"name": "laugh", "url": "/parts/eyes_laugh.png"},
|
||||||
|
{"name": "laugh_sweat", "url": "/parts/eyes_laugh_sweat.png"},
|
||||||
|
{"name": "glasses", "url": "/parts/eyes_glasses.png"},
|
||||||
|
{"name": "sunglasses", "url": "/parts/eyes_sunglasses.png"},
|
||||||
|
{"name": "shy", "url": "/parts/eyes_shy.png"},
|
||||||
|
{"name": "smug", "url": "/parts/eyes_smug.png"},
|
||||||
|
{"name": "sob", "url": "/parts/eyes_sob.png"},
|
||||||
|
{"name": "thinking", "url": "/parts/eyes_thinking.png"},
|
||||||
|
{"name": "wink", "url": "/parts/eyes_wink.png"},
|
||||||
|
{"name": "x_x", "url": "/parts/eyes_x_x.png"},
|
||||||
|
{"name": "vr", "url": "/parts/eyes_vr.png"},
|
||||||
|
{"name": "confused", "url": "/parts/eyes_confused.png"},
|
||||||
|
{"name": "blank", "url": "/parts/blank.png"}
|
||||||
|
],
|
||||||
|
"body": [
|
||||||
|
{"name": "neofox_floof","url": "/parts/neofox_floofy.png"},
|
||||||
|
{"name": "neofox_comfy","url": "/parts/neofox_comfy.png"},
|
||||||
|
{"name": "neofox_trans","url": "/parts/neofox_trans.png"},
|
||||||
|
{"name": "neofox_angel","url": "/parts/neofox_angel.png"},
|
||||||
|
{"name": "neofox_devil","url": "/parts/neofox_devil.png"},
|
||||||
|
{"name": "neofox_police","url": "/parts/neofox_police.png"},
|
||||||
|
{"name": "neofox_rainbow","url": "/parts/neofox_rainbow.png"},
|
||||||
|
{"name": "neofox_santa","url": "/parts/neofox_santa.png"},
|
||||||
|
{"name": "neofox_devil_floof","url": "/parts/neofox_devil_floof.png"},
|
||||||
|
{"name": "neofox_mask","url": "/parts/neofox_mask.png"},
|
||||||
|
{"name": "neocat","url": "/parts/neocat.png"},
|
||||||
|
{"name": "neocat_comfy","url": "/parts/neocat_comfy.png"},
|
||||||
|
{"name": "neocat_comfy","url": "/parts/neocat_floof.png"},
|
||||||
|
{"name": "neocat_devil","url": "/parts/neocat_devil.png"},
|
||||||
|
{"name": "neocat_devil_floof","url": "/parts/neocat_devil_floof.png"},
|
||||||
|
{"name": "neocat_rainbow","url": "/parts/neocat_rainbow.png"},
|
||||||
|
{"name": "neocat_police","url": "/parts/neocat_police.png"},
|
||||||
|
{"name": "neocat_santa","url": "/parts/neocat_santa.png"},
|
||||||
|
{"name": "neocat_mask","url": "/parts/neocat_mask.png"},
|
||||||
|
{"name": "neofox","url": "/parts/neofox.png"}
|
||||||
|
],
|
||||||
|
"mouth": [
|
||||||
|
{"name": "baa","url": "/parts/mouth_drool.png"},
|
||||||
|
{"name": "normal","url": "/parts/mouth_normal.png"},
|
||||||
|
{"name": "blep","url": "/parts/mouth_blep.png"},
|
||||||
|
{"name": "scream","url": "/parts/mouth_scream.png"},
|
||||||
|
{"name": "drowsy","url": "/parts/mouth_drowsy.png"},
|
||||||
|
{"name": "sad","url": "/parts/mouth_sad.png"},
|
||||||
|
{"name": "kisser","url": "/parts/mouth_kisser.png"},
|
||||||
|
{"name": "pout","url": "/parts/mouth_pout.png"},
|
||||||
|
{"name": "sip","url": "/parts/mouth_sip.png"},
|
||||||
|
{"name": "what","url": "/parts/mouth_what.png"},
|
||||||
|
{"name": "surprised","url": "/parts/mouth_surprised.png"},
|
||||||
|
{"name": "shocked","url": "/parts/mouth_shocked.png"},
|
||||||
|
{"name": "nom_bread","url": "/parts/mouth_nom_bread.png"},
|
||||||
|
{"name": "nom_cookie","url": "/parts/mouth_nom_cookie.png"},
|
||||||
|
{"name": "nom_donut","url": "/parts/mouth_nom_donut.png"},
|
||||||
|
{"name": "nom_egg","url": "/parts/mouth_nom_egg.png"},
|
||||||
|
{"name": "nom_watermelon","url": "/parts/mouth_nom_watermelon.png"},
|
||||||
|
{"name": "nom_pita","url": "/parts/mouth_nom_pita.png"},
|
||||||
|
{"name": "nom_pizza","url": "/parts/mouth_nom_pizza.png"},
|
||||||
|
{"name": "nom_toblerone","url": "/parts/mouth_nom_toblerone.png"},
|
||||||
|
{"name": "nom_verified","url": "/parts/mouth_nom_verified.png"},
|
||||||
|
{"name": "nom_waffle","url": "/parts/mouth_nom_waffle.png"},
|
||||||
|
{"name": "blank", "url": "/parts/blank.png"}
|
||||||
|
],
|
||||||
|
"arms": [
|
||||||
|
{"name": "hide","url": "/parts/arms_hide.png"},
|
||||||
|
{"name": "aww","url": "/parts/arms_aww.png"},
|
||||||
|
{"name": "pleading","url": "/parts/arms_pleading.png"},
|
||||||
|
{"name": "reach","url": "/parts/arms_reach.png"},
|
||||||
|
{"name": "3c","url": "/parts/arms_3c.png"},
|
||||||
|
{"name": "facepalm","url": "/parts/arms_facepalm.png"},
|
||||||
|
{"name": "mug","url": "/parts/arms_mug.png"},
|
||||||
|
{"name": "knife","url": "/parts/arms_knife.png"},
|
||||||
|
{"name": "phone","url": "/parts/arms_phone.png"},
|
||||||
|
{"name": "fingerguns","url": "/parts/arms_fingerguns.png"},
|
||||||
|
{"name": "science","url": "/parts/arms_science.png"},
|
||||||
|
{"name": "sign_no","url": "/parts/arms_sign_no.png"},
|
||||||
|
{"name": "sign_aaa","url": "/parts/arms_sign_aaa.png"},
|
||||||
|
{"name": "sign_nya","url": "/parts/arms_sign_nya.png"},
|
||||||
|
{"name": "sign_thx","url": "/parts/arms_sign_thx.png"},
|
||||||
|
{"name": "sign_yes","url": "/parts/arms_sign_yes.png"},
|
||||||
|
{"name": "sign_yip","url": "/parts/arms_sign_yip.png"},
|
||||||
|
{"name": "sign_boobs","url": "/parts/arms_sign_boobs.png"},
|
||||||
|
{"name": "sign_butts","url": "/parts/arms_sign_butts.png"},
|
||||||
|
{"name": "sign_heart","url": "/parts/arms_heart.png"},
|
||||||
|
{"name": "solder","url": "/parts/arms_solder.png"},
|
||||||
|
{"name": "redlos","url": "/parts/arms_redlos.png"},
|
||||||
|
{"name": "think","url": "/parts/arms_think.png"},
|
||||||
|
{"name": "sweat","url": "/parts/arms_sweat.png"},
|
||||||
|
{"name": "verified","url": "/parts/arms_verified.png"},
|
||||||
|
{"name": "shocked","url": "/parts/arms_shocked.png"},
|
||||||
|
{"name": "thumbsdown","url": "/parts/arms_thumbsdown.png"},
|
||||||
|
{"name": "thumbsup","url": "/parts/arms_thumbsup.png"},
|
||||||
|
{"name": "book","url": "/parts/arms_book.png"},
|
||||||
|
{"name": "boop","url": "/parts/arms_boop.png"},
|
||||||
|
{"name": "sip","url": "/parts/arms_sip.png"},
|
||||||
|
{"name": "hold_burger","url": "/parts/arms_hold_burger.png"},
|
||||||
|
{"name": "blank", "url": "/parts/blank.png"}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 8.7 KiB |
After Width: | Height: | Size: 6.9 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 7.0 KiB |
After Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 9.7 KiB |
After Width: | Height: | Size: 9.2 KiB |
After Width: | Height: | Size: 9.1 KiB |
After Width: | Height: | Size: 6.7 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 7.8 KiB |
After Width: | Height: | Size: 8.8 KiB |
After Width: | Height: | Size: 9.5 KiB |
After Width: | Height: | Size: 8.5 KiB |
After Width: | Height: | Size: 8.0 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 9.6 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 8.2 KiB |
After Width: | Height: | Size: 8.2 KiB |
After Width: | Height: | Size: 8.4 KiB |
After Width: | Height: | Size: 8.1 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 9.0 KiB |
After Width: | Height: | Size: 7.9 KiB |
After Width: | Height: | Size: 6.1 KiB |
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 8.8 KiB |
After Width: | Height: | Size: 4.4 KiB |
After Width: | Height: | Size: 5.4 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 6.1 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 7.6 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 5.4 KiB |
After Width: | Height: | Size: 5.4 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 7.6 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 8.2 KiB |
After Width: | Height: | Size: 6.1 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 7.2 KiB |
After Width: | Height: | Size: 6.9 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 9.1 KiB |
After Width: | Height: | Size: 7.6 KiB |
After Width: | Height: | Size: 6.0 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 5.8 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 13 KiB |