/*!
    @file Coordinates.h
    @brief Coordinatesクラスとその他付随要素の定義
    @date 2014/01/26
    @author Deskull
    2014 Sikabane Works.
*/

#pragma once

/*! 
 * @class Coordinates
 * @brief ゲーム座標のクラス
 */
class Coordinates
{
private:
	int fx; //!< X座標
	int fy; //!< Y座標
public:

	/*! 
	 * @brief Coordinatesクラスのコンストラクタ
	 * @param x X座標
	 * @param y Y座標
	 */
	Coordinates::Coordinates(int x, int y);

	Coordinates::Coordinates(void);

	Coordinates::~Coordinates(void);

	/*
	 * @brief X座標を得る
	 * @return X座標
	 */
	const int GetX(void);

	/*
	 * @brief Y座標を得る
	 * @return Y座標を得る
	 */
	const int GetY(void);

	/*!
	 * @brief +演算子による座標加算
	 * @param plus 加算元
	 */
	Coordinates Coordinates::operator+(const Coordinates& plus);  

	/*!
	 * @brief +=演算子による座標加算
	 * @param plus 加算元
	 */
	Coordinates& Coordinates::operator+=(const Coordinates& obj);

};
