52 lines
1.0 KiB
C#
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 );
|
|
}
|
|
}
|
|
}
|