diff --git a/modules/helpers.js b/modules/helpers.js index 0c91ef2..2669025 100644 --- a/modules/helpers.js +++ b/modules/helpers.js @@ -124,7 +124,7 @@ exp.get_image_hash = function(uuid, callback) { }; -// handles requests for +uuid+ images with +size+ +// handles requests for +uuid+ avatars with +size+ // callback contains error, status, image buffer, hash // image is the user's face+helm when helm is true, or the face otherwise // for status, see get_image_hash @@ -154,20 +154,23 @@ exp.get_avatar = function(uuid, helm, size, callback) { }); }; +// handles requests for +uuid+ skins +// callback contains error, hash, image buffer exp.get_skin = function(uuid, callback) { - logging.log("\nskin request: " + uuid); + logging.log(uuid + " skin request"); exp.get_image_hash(uuid, function(err, status, hash) { if (hash) { var skinurl = "http://textures.minecraft.net/texture/" + hash; networking.get_skin(skinurl, function(err, img) { if (err) { - logging.log("\nerror while downloading skin"); + logging.error("error while downloading skin"); callback(err, hash, null); } else { - logging.log("\nreturning skin"); callback(null, hash, img); } }); + } else { + callback(err, null, null); } }); }; diff --git a/public/images/alex_skin.png b/public/images/alex_skin.png new file mode 100644 index 0000000..cbbfd0f Binary files /dev/null and b/public/images/alex_skin.png differ diff --git a/public/images/steve_skin.png b/public/images/steve_skin.png new file mode 100644 index 0000000..f7981a9 Binary files /dev/null and b/public/images/steve_skin.png differ diff --git a/routes/skins.js b/routes/skins.js index e93b5ff..76f6340 100644 --- a/routes/skins.js +++ b/routes/skins.js @@ -4,6 +4,7 @@ var helpers = require("../modules/helpers"); var config = require("../modules/config"); var router = require("express").Router(); var skins = require("../modules/skins"); +var lwip = require("lwip"); /* GET skin request. */ router.get("/:uuid.:ext?", function(req, res) { @@ -61,8 +62,10 @@ router.get("/:uuid.:ext?", function(req, res) { res.end(); } else { def = def || skins.default_skin(uuid); - skins.resize_img("public/images/" + def + ".png", size, function(err, image) { - sendimage(http_status, image); + lwip.open("public/images/" + def + "_skin.png", function(err, image) { + image.toBuffer("png", function(err, buffer) { + sendimage(http_status, buffer); + }); }); } }