SnakeGame/SnakeGame/SquareCoord.cs
2017-01-07 23:53:36 +01:00

76 lines
1.9 KiB
C#

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SnakeGame
{
public static class SquareCoord
{
/*private static int x;
public static int X
{
get
{
return x;
}
set
{
x = value;
Game.Refresh();
}
}
private static int y;
public static int Y
{
get
{
return y;
}
set
{
y = value;
Game.Refresh();
}
}*/
//private const int res = 20;
/*public static Point SqCoordToPoint(SqCoord coord)
{
return new Point(coord.X * res, coord.Y * res);
}*/
/*public static SqCoord PointToSqCoord(Point point)
{
return new SqCoord { X = point.X / res, Y = point.Y / res };
}*/
public static Rectangle SqCoordToRect(Point coord, Size size)
{
int resx = size.Width / Game.GameSize.X;
int resy = size.Height / Game.GameSize.Y;
return new Rectangle(coord.X * resx, coord.Y * resy, resx, resy);
}
}
public struct SqCoord
{
//public int X { get; set; } - using it in two-dimensional array; replaced with Point where needed
//public int Y { get; set; }
/// <summary>
/// Used to determine snake square "expiration". Game over if other than zero or there is a wall.
/// </summary>
public int Tick { get; set; }
public SquareType Type { get; set; }
//public int PlayerID { get; set; }
public string PlayerName { get; set; }
}
/// <summary>
/// Only consider if Tick>0
/// </summary>
public enum SquareType
{
Wall,
Point,
Player
}
}