diff --git a/forms/mainwindow.ui b/forms/mainwindow.ui
index 40cb2c3f..eac8a866 100644
--- a/forms/mainwindow.ui
+++ b/forms/mainwindow.ui
@@ -202,6 +202,12 @@
Qt::Horizontal
+
+
+ 1
+ 0
+
+
QFrame::StyledPanel
@@ -580,6 +586,12 @@
+
+
+ 0
+ 0
+
+
QFrame::StyledPanel
diff --git a/forms/tileseteditor.ui b/forms/tileseteditor.ui
index 78d65ad8..7d9f3405 100644
--- a/forms/tileseteditor.ui
+++ b/forms/tileseteditor.ui
@@ -30,6 +30,21 @@
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 6
+
-
@@ -138,6 +153,70 @@
0
+
-
+
+
+ Metatile Properties
+
+
+ false
+
+
+ false
+
+
+
-
+
+
+ Bottom/Top
+
+
+
+ -
+
+
+ Metatile Behavior
+
+
+
+ -
+
+
+ -
+
+
+ Layer Type
+
+
+
+ -
+
+
+ -
+
+
+
+ 66
+ 34
+
+
+
+
+ 66
+ 34
+
+
+
+ Qt::ScrollBarAlwaysOff
+
+
+ Qt::ScrollBarAlwaysOff
+
+
+
+
+
+
-
@@ -164,6 +243,16 @@
+ -
+
+
+ Qt::LeftToRight
+
+
+
+
+
+
-
@@ -171,6 +260,13 @@
+ -
+
+
+
+
+
+
-
@@ -184,24 +280,7 @@
- -
-
-
- Qt::LeftToRight
-
-
-
-
-
-
- -
-
-
-
-
-
-
- -
+
-
@@ -211,7 +290,7 @@
- 34
+ 66
34
@@ -229,70 +308,6 @@
- -
-
-
- Metatile Properties
-
-
- false
-
-
- false
-
-
-
-
-
-
- Bottom/Top
-
-
-
- -
-
-
-
- 66
- 34
-
-
-
-
- 66
- 34
-
-
-
- Qt::ScrollBarAlwaysOff
-
-
- Qt::ScrollBarAlwaysOff
-
-
-
- -
-
-
- Metatile Behavior
-
-
-
- -
-
-
- -
-
-
- Layer Type
-
-
-
- -
-
-
-
-
-
@@ -311,6 +326,18 @@
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
-
diff --git a/include/ui/metatilelayersitem.h b/include/ui/metatilelayersitem.h
index 0417f907..58d264ad 100644
--- a/include/ui/metatilelayersitem.h
+++ b/include/ui/metatilelayersitem.h
@@ -9,7 +9,7 @@
class MetatileLayersItem: public SelectablePixmapItem {
Q_OBJECT
public:
- MetatileLayersItem(Metatile *metatile, Tileset *primaryTileset, Tileset *secondaryTileset): SelectablePixmapItem(16, 16, 2, 2) {
+ MetatileLayersItem(Metatile *metatile, Tileset *primaryTileset, Tileset *secondaryTileset): SelectablePixmapItem(16, 16, 4, 2) {
this->metatile = metatile;
this->primaryTileset = primaryTileset;
this->secondaryTileset = secondaryTileset;
diff --git a/include/ui/tileseteditortileselector.h b/include/ui/tileseteditortileselector.h
index 43eb1fbc..f20bbe5d 100644
--- a/include/ui/tileseteditortileselector.h
+++ b/include/ui/tileseteditortileselector.h
@@ -7,7 +7,7 @@
class TilesetEditorTileSelector: public SelectablePixmapItem {
Q_OBJECT
public:
- TilesetEditorTileSelector(Tileset *primaryTileset, Tileset *secondaryTileset): SelectablePixmapItem(16, 16, 2, 2) {
+ TilesetEditorTileSelector(Tileset *primaryTileset, Tileset *secondaryTileset): SelectablePixmapItem(16, 16, 4, 2) {
this->primaryTileset = primaryTileset;
this->secondaryTileset = secondaryTileset;
this->numTilesWide = 16;
diff --git a/src/ui/tileseteditor.cpp b/src/ui/tileseteditor.cpp
index fe741d54..05432e09 100644
--- a/src/ui/tileseteditor.cpp
+++ b/src/ui/tileseteditor.cpp
@@ -195,21 +195,17 @@ void TilesetEditor::onSelectedTilesChanged() {
void TilesetEditor::onMetatileLayerTileChanged(int x, int y) {
Metatile *prevMetatile = this->metatile->copy();
- int maxTileIndex = x < 2 ? 3 : 7;
QPoint dimensions = this->tileSelector->getSelectionDimensions();
QList tiles = this->tileSelector->getSelectedTiles();
int selectedTileIndex = 0;
for (int j = 0; j < dimensions.y(); j++) {
for (int i = 0; i < dimensions.x(); i++) {
int tileIndex = ((x + i) / 2 * 4) + ((y + j) * 2) + ((x + i) % 2);
- if (tileIndex <= maxTileIndex) {
- Tile tile = this->metatile->tiles->at(tileIndex);
- tile.tile = tiles.at(selectedTileIndex).tile;
- tile.xflip = tiles.at(selectedTileIndex).xflip;
- tile.yflip = tiles.at(selectedTileIndex).yflip;
- tile.palette = tiles.at(selectedTileIndex).palette;
- (*this->metatile->tiles)[tileIndex] = tile;
- }
+ Tile *tile = &(*this->metatile->tiles)[tileIndex];
+ tile->tile = tiles.at(selectedTileIndex).tile;
+ tile->xflip = tiles.at(selectedTileIndex).xflip;
+ tile->yflip = tiles.at(selectedTileIndex).yflip;
+ tile->palette = tiles.at(selectedTileIndex).palette;
selectedTileIndex++;
}
}