Skip to content

Commit

Permalink
Adding option to export palette for YY-CHR.
Browse files Browse the repository at this point in the history
  • Loading branch information
MainMemory committed Apr 13, 2015
1 parent 37ef8e3 commit 3d4ff58
Show file tree
Hide file tree
Showing 3 changed files with 100 additions and 66 deletions.
72 changes: 50 additions & 22 deletions SonLVL/MainForm.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

76 changes: 50 additions & 26 deletions SonLVL/MainForm.cs
Expand Up @@ -944,38 +944,62 @@ private void logToolStripMenuItem_Click(object sender, EventArgs e)
#endregion

#region Export Menu
private void paletteToolStripMenuItem_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
private void pNGToolStripMenuItem_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
exportToolStripMenuItem.DropDown.Hide();
SaveFileDialog a = new SaveFileDialog() { DefaultExt = "png", Filter = "PNG Files|*.png", RestoreDirectory = true };
if (a.ShowDialog() == DialogResult.OK)
{
int line = paletteToolStripMenuItem.DropDownItems.IndexOf(e.ClickedItem);
if (line < 4)
using (SaveFileDialog a = new SaveFileDialog() { DefaultExt = "png", Filter = "PNG Files|*.png", RestoreDirectory = true })
if (a.ShowDialog() == DialogResult.OK)
{
BitmapBits bmp = new BitmapBits(16 * 8, 8);
Color[] pal = new Color[16];
for (int i = 0; i < 16; i++)
int line = paletteToolStripMenuItem.DropDownItems.IndexOf(e.ClickedItem);
if (line < 4)
{
pal[i] = LevelData.PaletteToColor(line, i, false);
bmp.FillRectangle((byte)i, i * 8, 0, 8, 8);
BitmapBits bmp = new BitmapBits(16 * 8, 8);
Color[] pal = new Color[16];
for (int i = 0; i < 16; i++)
{
pal[i] = LevelData.PaletteToColor(line, i, false);
bmp.FillRectangle((byte)i, i * 8, 0, 8, 8);
}
bmp.ToBitmap(pal).Save(a.FileName);
}
else
{
BitmapBits bmp = new BitmapBits(16 * 8, 4 * 8);
Color[] pal = new Color[256];
for (int i = 0; i < 64; i++)
pal[i] = LevelData.PaletteToColor(i / 16, i % 16, false);
for (int i = 64; i < 256; i++)
pal[i] = Color.Black;
for (int y = 0; y < 4; y++)
for (int x = 0; x < 16; x++)
bmp.FillRectangle((byte)((y * 16) + x), x * 8, y * 8, 8, 8);
bmp.ToBitmap(pal).Save(a.FileName);
}
bmp.ToBitmap(pal).Save(a.FileName);
}
else
{
BitmapBits bmp = new BitmapBits(16 * 8, 4 * 8);
Color[] pal = new Color[256];
for (int i = 0; i < 64; i++)
pal[i] = LevelData.PaletteToColor(i / 16, i % 16, false);
for (int i = 64; i < 256; i++)
pal[i] = Color.Black;
for (int y = 0; y < 4; y++)
for (int x = 0; x < 16; x++)
bmp.FillRectangle((byte)((y * 16) + x), x * 8, y * 8, 8, 8);
bmp.ToBitmap(pal).Save(a.FileName);
}
}
}

private void yYCHRToolStripMenuItem_Click(object sender, EventArgs e)
{
using (SaveFileDialog a = new SaveFileDialog() { DefaultExt = "pal", Filter = "Palette Files|*.pal", RestoreDirectory = true })
if (a.ShowDialog() == DialogResult.OK)
using (FileStream str = File.Create(a.FileName))
using (BinaryWriter bw = new BinaryWriter(str))
{
int cnt = Math.Min(LevelData.Palette.Count, 4);
for (int i = 0; i < cnt; i++)
{
SonLVLColor[,] pal = LevelData.Palette[(LevelData.CurPal + i) % LevelData.Palette.Count];
for (int y = 0; y < 4; y++)
for (int x = 0; x < 16; x++)
{
bw.Write(pal[y, x].R);
bw.Write(pal[y, x].G);
bw.Write(pal[y, x].B);
}
}
if (cnt != 4)
bw.Write(new byte[0xC0 * (4 - cnt)]);
}
}

private void tilesToolStripMenuItem_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
Expand Down
18 changes: 0 additions & 18 deletions SonLVL/MainForm.resx
Expand Up @@ -169,12 +169,6 @@
<metadata name="blockListToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>737, 56</value>
</metadata>
<metadata name="blockListToolStrip.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="blockListToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>737, 56</value>
</metadata>
<data name="remapBlocksButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
Expand All @@ -199,12 +193,6 @@
<metadata name="tileListToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>885, 56</value>
</metadata>
<metadata name="tileListToolStrip.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="tileListToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>885, 56</value>
</metadata>
<data name="remapTilesButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
Expand Down Expand Up @@ -361,9 +349,6 @@
<metadata name="fgToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>855, 17</value>
</metadata>
<metadata name="fgToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>855, 17</value>
</metadata>
<data name="fgDrawToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
Expand All @@ -389,9 +374,6 @@
<metadata name="bgToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>201, 56</value>
</metadata>
<metadata name="bgToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>201, 56</value>
</metadata>
<data name="bgDrawToolStripButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
Expand Down

0 comments on commit 3d4ff58

Please sign in to comment.