/*****************************************************************************/
/* Character class for WonderWitch                                           */
/* キャラクターなどの画像を扱うクラス                                        */
/*****************************************************************************/

#ifndef _Character_h_INCLUDED_
#define _Character_h_INCLUDED_

typedef struct _Character * Character;

#include <sys/disp.h>

#include "dsp.h"
#include "picture.h"

int Character_GetX(Character character);
int Character_GetY(Character character);
Picture Character_GetPicture(Character character);

/*---------------------------------------------------------------------------*/
/* オブジェクトの生成                                                        */
/*---------------------------------------------------------------------------*/

Character Character_Create(Character character, Disp disp, Picture picture,
			   int x, int y);

/*---------------------------------------------------------------------------*/
/* オブジェクトの削除                                                        */
/*---------------------------------------------------------------------------*/

Character Character_Destroy(Character character);

/*---------------------------------------------------------------------------*/
/* 配置                                                                      */
/*---------------------------------------------------------------------------*/

int Character_Locate(Character character, int x, int y);

/*---------------------------------------------------------------------------*/
/* 移動                                                                      */
/*---------------------------------------------------------------------------*/

int Character_Move(Character character, int delta_x, int delta_y);

/*---------------------------------------------------------------------------*/
/* 可視状態にする                                                            */
/*---------------------------------------------------------------------------*/

int Character_Visible(Character character);

/*---------------------------------------------------------------------------*/
/* 非表示状態にする                                                          */
/*---------------------------------------------------------------------------*/

int Character_Hide(Character character);

/*---------------------------------------------------------------------------*/
/* 画像を設定する                                                            */
/*---------------------------------------------------------------------------*/

int Character_SetPicture(Character character, Picture picture);

/*---------------------------------------------------------------------------*/
/* 指定したキャラクタを画面の中央にもってくる                                */
/*---------------------------------------------------------------------------*/

int Character_PutCharacterAtCenterOfScreen(Character character);

#endif /* _Character_h_INCLUDED_ */

/*****************************************************************************/
/* End of File.                                                              */
/*****************************************************************************/
