#pragma once

#include "types.h"

enum PieceType
{
    // FIXME: empty conflicted with intrin.h ... bad luck I hate namespaces :)
    none	=	0,
    pawn	=	1,
    knight	=	2,
    bishop	=	3,
    rook	=	4,
    queen	=	5,
    king	=	6
};

enum PieceColor
{
    white	=	0,
    black	=	1
};

typedef struct Piece
{
    union
    {
        struct {
			u8	type:3;
			u8	color:1;
			u8	moved:1;
			u8	castled:1;
			u8	reserved:1;
        };
        u8 packed;
    };
} Piece;
