From bf3c95526b3d28c200745470197d65e2a3de0f21 Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Wed, 26 Jun 2013 17:29:39 -0600 Subject: Add mp.dye.asDyeString(dye) and fix up some HTML --- public/js/mp/dye.js | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'public/js/mp/dye.js') diff --git a/public/js/mp/dye.js b/public/js/mp/dye.js index e7af938..c8c5fd5 100644 --- a/public/js/mp/dye.js +++ b/public/js/mp/dye.js @@ -3,6 +3,7 @@ var mp = function(mp) { mp.dye = { getChannel: getChannel, parseDyeString: parseDyeString, + asDyeString: asDyeString, dyeImage: dyeImage }; @@ -62,6 +63,39 @@ var mp = function(mp) { return dyeData; } + /* + * Return a dye string matching the given dye specification. + */ + function asDyeString(dye) { + var dyeString = ""; + + // skip null channel + for (var i = 1; i < channel.length; i++) { + var dyeChannel = channel[i]; + var dyeParts = dye[dyeChannel]; + if (!dyeParts || dyeParts.length == 0) { + continue; + } + + dyeString += dyeChannel + ":#"; + + for (var j = 0; j < dyeParts.length; j++) { + var color = dyeParts[j]; + dyeString += color[0].toString(16) + color[1].toString(16) + color[2].toString(16) + ","; + } + + dyeString = dyeString.slice(0, -1); + + dyeString += "|"; + } + + if (dyeString.length > 0) { + dyeString = dyeString.slice(0, -1); + } + + return dyeString; + } + /* * Dye the internal image data based on the specification provided by dyeData. * The specification can be generated from a dyeString by parseDyeString. -- cgit v1.2.3-60-g2f50