//////////////////////////////////////////////////////////////////////
//@STATE=作成中
//@DESCRIPTION ---------------------------------------------------------------
// Target.h: Target クラスのインターフェイス
//	履歴：
//  $Log: Target.h,v $
//  Revision 1.1  2001/10/28 21:40:37  fujiwara
//  DLLに分割
//
//  Revision 1.3  2001/07/09 20:30:10  fujiwara
//  例外処理の組み込み
//
//  Revision 1.2  2001/07/01 01:03:45  fujiwara
//  const の見直し
//  配置エディタは途中経過
//
//  Revision 1.1  2001/06/10 21:16:43  fujiwara
//  ターゲット追加（地上用）
//
//@DESCRIPTION_END -----------------------------------------------------------
//@AUTHOR=S.F.
///////////////////////////////////////////////////////////////////////////////

#if !defined(AFX_TARGET_H__C55622EE_11CD_4849_ABE0_F3C657CAB60B__INCLUDED_)
#define AFX_TARGET_H__C55622EE_11CD_4849_ABE0_F3C657CAB60B__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "AbstractCharacter.h"
namespace sf {
	namespace application {
		namespace player {

class Target : public AbstractCharacter  
{
public:
	Target(sf::application::scene::Game *pGame);
	virtual ~Target();
	// OPERATORS //
	// OPERATIONS //
	virtual void initialize();
	// キャラクター移動
	void move(void);
	sf::application::hit::Interface * const hitObj(void){return &mHitRect;};
	void hit(sf::application::Character * const pDest){mbHit = true;};
	static void load(void);
	static const float OFFSET_Y;
	static sf::system::console::sprite::Sprite * sprite(){return mpSprite.get();};
private:
	bool mbHit;
	hit::HitRect mHitRect;
	sf::system::console::ObjRectangle mObj;
	sf::system::console::ObjRectangle mObjMark;
	int mTimer,mTimerPeriod;
	static int mSoundID;
	static std::auto_ptr<sf::system::console::sprite::Sprite> mpSprite;
	static const console::sprite::Info msSpriteInfo;
};
		}
	}
}

#endif // !defined(AFX_TARGET_H__C55622EE_11CD_4849_ABE0_F3C657CAB60B__INCLUDED_)
