Files
OpenRA/OpenRa.Game/int2.cs

52 lines
1.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
namespace OpenRa.Game
{
struct int2
{
public int X;
public int Y;
public int2( int x, int y ) { this.X = x; this.Y = y; }
public int2( Point p ) { X = p.X; Y = p.Y; }
public int2( Size p ) { X = p.Width; Y = p.Height; }
public static int2 operator +( int2 a, int2 b )
{
return new int2( a.X + b.X, a.Y + b.Y );
}
public static int2 operator -( int2 a, int2 b )
{
return new int2( a.X - b.X, a.Y - b.Y );
}
public static int2 operator *( int a, int2 b )
{
return new int2( a * b.X, a * b.Y );
}
public static int2 operator *( int2 b, int a )
{
return new int2( a * b.X, a * b.Y );
}
public float2 ToFloat2()
{
return new float2( X, Y );
}
public static bool operator ==( int2 me, int2 other )
{
return ( me.X == other.X && me.Y == other.Y );
}
public static bool operator !=( int2 me, int2 other )
{
return !( me == other );
}
}
}