Support quickAppend 3*4
This commit is contained in:
parent
30f48b0b68
commit
a67fa11259
@ -1013,25 +1013,40 @@ editor_datapanel_wrapper = function (editor) {
|
||||
return printe("只有长宽都是32的倍数的道具图才可以快速导入!");
|
||||
}
|
||||
} else {
|
||||
if (sw != 128 || sh != 4 * ysize) {
|
||||
return printe("只有 4*4 的素材图片才可以快速导入!");
|
||||
if ((sw != 128 && sw != 96) || sh != 4 * ysize) {
|
||||
return printe("只有 3*4 或 4*4 的素材图片才可以快速导入!");
|
||||
}
|
||||
}
|
||||
sw = sw / 32;
|
||||
sh = sh / ysize;
|
||||
|
||||
var dt = editor.dom.appendSpriteCtx.getImageData(0, 0, editor.dom.appendSprite.width, editor.dom.appendSprite.height);
|
||||
var appendSize = value == 'items' ? (4 * sw - 1) : 3;
|
||||
var appendSize = value == 'items' ? (sw * sh - 1) : 3;
|
||||
editor.dom.appendSprite.style.height = (editor.dom.appendSprite.height = (editor.dom.appendSprite.height + appendSize * ysize)) + "px";
|
||||
editor.dom.appendSpriteCtx.putImageData(dt, 0, 0);
|
||||
if (editor.dom.appendSprite.width == 32) { // 1帧:道具
|
||||
for (var i = 0; i < 4 * sw; ++i) {
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 32 * (i % sw), 32 * parseInt(i / sw), 32, 32, 0, editor.dom.appendSprite.height - (sw * 4 - i) * ysize, 32, 32);
|
||||
for (var i = 0; i < sw * sh; ++i) {
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 32 * (i % sw), 32 * parseInt(i / sw), 32, 32, 0, editor.dom.appendSprite.height - (sw * sh - i) * ysize, 32, 32);
|
||||
}
|
||||
} else if (editor.dom.appendSprite.width == 64) { // 两帧
|
||||
if (sw == 3) {
|
||||
// 3*4的规格使用13帧
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 0, 0, 32, 4 * ysize, 0, editor.dom.appendSprite.height - 4 * ysize, 32, 4 * ysize);
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 64, 0, 32, 4 * ysize, 32, editor.dom.appendSprite.height - 4 * ysize, 32, 4 * ysize);
|
||||
} else {
|
||||
// 4*4的规格使用23帧
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 32, 0, 64, 4 * ysize, 0, editor.dom.appendSprite.height - 4 * ysize, 64, 4 * ysize);
|
||||
}
|
||||
} else { // 四帧
|
||||
if (sw == 3) {
|
||||
// 3*4的规格使用2123帧
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 32, 0, 32, 4 * ysize, 0, editor.dom.appendSprite.height - 4 * ysize, 32, 4 * ysize);
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 0, 0, 96, 4 * ysize, 32, editor.dom.appendSprite.height - 4 * ysize, 96, 4 * ysize);
|
||||
} else {
|
||||
// 4*4的规格使用1234帧
|
||||
editor.dom.appendSpriteCtx.drawImage(editor.dom.appendSourceCtx.canvas, 0, 0, 128, 4 * ysize, 0, editor.dom.appendSprite.height - 4 * ysize, 128, 4 * ysize);
|
||||
}
|
||||
}
|
||||
|
||||
dt = editor.dom.appendSpriteCtx.getImageData(0, 0, editor.dom.appendSprite.width, editor.dom.appendSprite.height);
|
||||
var imgbase64 = editor.dom.appendSprite.toDataURL('image/png');
|
||||
|
||||
Loading…
Reference in New Issue
Block a user