// -*- c++ -*-
#ifndef _MOVE_H
#define _MOVE_H

#include "mytypes.h"
#include "coord.h"

struct PieceMove
{
  PieceMove(ulong Id, MoveType Oper, int X, int Y, ushort Type = 0,
	    uchar Vet = 0, ulong City = 0)
    { id = Id; oper = Oper; x = X; y = Y; type = Type; city = City;
      veteran = Vet; }
  PieceMove(ulong Id, MoveType Oper, MapCoord coord, ushort Type = 0,
	    uchar Vet = 0, ulong City = 0)
    { id = Id; oper = Oper; x = coord.x; y = coord.y; type = Type; city = City;
      veteran = Vet; }

  ulong id, city;
  ushort x, y, type;
  uchar oper, veteran;
  void NetworkOrder(); // converts to network ordering
  void HostOrder(); // converts to host ordering
};

#endif
