Add start of ship editing grid

This commit is contained in:
asraelite 2018-03-05 00:57:33 +00:00
parent b88c0eb358
commit 2fbabc785e
16 changed files with 249 additions and 18 deletions

View file

@ -12,8 +12,12 @@ function renderElement(element) {
if (element.type == 'frame') renderFrame(element);
if (element.type == 'image') renderImage(element);
if (element.type == 'button') renderButton(element);
if (element.type == 'edit') renderEdit(element);
if (element.type == 'itemButton') renderItemButton(element);
}
element.children.forEach(renderElement);
if (element.options.drawChildren)
element.children.forEach(renderElement);
}
function renderFrame(element) {
@ -31,7 +35,7 @@ function renderButton(element) {
} else {
context.fillStyle = element.mouseOver ? '#ad9869' : '#917f58';
}
context.fillRect(...element.shape);
context.strokeStyle = '#541';
context.strokeWidth = 4;
@ -42,3 +46,40 @@ function renderButton(element) {
context.font = '12pt Consolas';
context.fillText(element.text, ...element.center);
}
function renderItemButton(element) {
context.globalAlpha = 0.5;
if (element.mouseHeld) {
context.fillStyle = '#080808';
} else {
context.fillStyle = element.mouseOver ? '#222' : '#0e0e0e';
}
context.fillRect(...element.shape);
context.strokeStyle = '#333';
context.strokeWidth = 4;
context.strokeRect(...element.shape);
context.globalAlpha = 1;
if (element.image) {
context.drawImage(element.image, ...element.shape);
}
}
function renderEdit(element) {
/*
element.tiles.forEach(t => {
let tile = edit.getTile(x, y);
let [dx, dy] = tile.drawPos;
context.globalAlpha = 0.5;
context.fillStyle = '#000';
context.fillRect(dx, dy, 1, 1);
context.globalAlpha = 1;
let module = tile.module;
if (module !== null) {
context.drawImage(module.currentImage, dx, dy, 1, 1);
}
});
*/
}