beginning of an editor
This commit is contained in:
48
OpenRA.Editor/Surface.cs
Normal file
48
OpenRA.Editor/Surface.cs
Normal file
@@ -0,0 +1,48 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using OpenRA.FileFormats;
|
||||
using System.Drawing;
|
||||
|
||||
namespace OpenRA.Editor
|
||||
{
|
||||
class Surface : Control
|
||||
{
|
||||
public Map Map { get; set; }
|
||||
public TileSet TileSet { get; set; }
|
||||
public int2 Offset { get; set; }
|
||||
|
||||
public Surface()
|
||||
: base()
|
||||
{
|
||||
BackColor = Color.Black;
|
||||
|
||||
SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
|
||||
SetStyle(ControlStyles.ResizeRedraw, true);
|
||||
UpdateStyles();
|
||||
}
|
||||
|
||||
public const int CellSize = 24;
|
||||
static readonly Pen RedPen = new Pen(Color.Red);
|
||||
|
||||
protected override void OnPaint(PaintEventArgs e)
|
||||
{
|
||||
if (Map == null) return;
|
||||
if (TileSet == null) return;
|
||||
|
||||
var n = (ushort)14;
|
||||
|
||||
var template = TileSet.walk[n];
|
||||
var tile = TileSet.tiles[n];
|
||||
|
||||
for( var u = 0; u < template.Size.X; u++ )
|
||||
for( var v = 0; v < template.Size.Y; v++ )
|
||||
if (template.TerrainType.ContainsKey(u + v * template.Size.X))
|
||||
{
|
||||
e.Graphics.DrawRectangle(RedPen, new Rectangle(CellSize * u, CellSize * v, CellSize, CellSize));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user