Bangtal Library for Game Development  v0.3.0
bangtal::Object Class Reference

물체 클래스 More...

#include <Object.h>

Public Member Functions

ObjectID ID () const
 물체 ID를 반환하는 함수 More...
 
virtual void setImage (const std::string &image)
 물체 이미지를 설정(변경)하는 함수 More...
 
virtual void setScale (ObjectScale scale)
 물체의 크기를 설정(변경)하는 함수 More...
 
virtual void locate (ScenePtr scene, int x, int y)
 물체의 위치를 설정(변경)하는 함수 More...
 
virtual void show ()
 물체를 보이도록 설정하는 함수 More...
 
virtual void hide ()
 물체를 보이지 않도록 설정하는 함수 More...
 
virtual void pick ()
 물체를 집는 함수 More...
 
virtual void drop ()
 물체를 떨어 뜨리는 함수 More...
 
virtual bool isHanded ()
 물체의 사용 여부를 확인하는 함수 More...
 
virtual void defineCombination (ObjectPtr object1, ObjectPtr object2)
 물체의 조합을 정의하는 함수, 물체1과 물체2로 조합한다. More...
 
virtual bool onPick ()
 물체를 집는 이벤트를 처리하는 핸들러 함수 More...
 
virtual bool onDrop ()
 물체를 떨어 뜨리는 이벤트를 처리하는 핸들러 함수 More...
 
virtual bool onCombine ()
 물체를 조합하는 이벤트를 처리하는 핸들러 함수 More...
 
virtual bool onDismantle ()
 물체를 분해하는 이벤트를 처리하는 핸들러 함수 More...
 
virtual bool onKeypad ()
 키패드 이벤트를 처리하는 핸들러 함수 More...
 
virtual bool onMouse (int x, int y, MouseAction action)
 마우스 이벤트를 처리하는 핸들러 함수 More...
 
void setOnPickCallback (std::function< bool(ObjectPtr)> callback)
 물체를 집는 이벤트를 처리하는 콜백 함수를 등록하는 함수 More...
 
void setOnDropCallback (std::function< bool(ObjectPtr)> callback)
 물체를 떨어 뜨리는 이벤트를 처리하는 콜백 함수를 등록하는 함수 More...
 
void setOnCombineCallback (std::function< bool(ObjectPtr)> callback)
 물체를 조합하는 이벤트를 처리하는 콜백 함수를 등록하는 함수 More...
 
void setOnDismantleCallback (std::function< bool(ObjectPtr)> callback)
 물체를 분해하는 이벤트를 처리하는 콜백 함수를 등록하는 함수 More...
 
void setOnKeypadCallback (std::function< bool(ObjectPtr)> callback)
 키패드 이벤트를 처리하는 콜백 함수를 등록하는 함수 More...
 
void setOnMouseCallback (std::function< bool(ObjectPtr, int, int, MouseAction)> callback)
 마우스 이벤트를 처리하는 콜백 함수를 등록하는 함수 More...
 

Static Public Member Functions

static ObjectPtr getObject (ObjectID id)
 물체 ID로부터 물체 포인터를 획득하는 함수 More...
 
static ObjectPtr create (const std::string &image, ScenePtr scene=nullptr, int x=0, int y=0, bool shown=true)
 물체를 생성하는 함수 More...
 

Protected Member Functions

 Object (const std::string &image, ScenePtr scene=nullptr, int x=0, int y=0, bool shown=true)
 생성자 함수 More...
 

Static Protected Member Functions

static void add (ObjectPtr object)
 생성된 물체를 시스템에 등록시키는 함수 More...
 

Protected Attributes

ObjectID id
 물체 ID More...
 
std::function< bool(ObjectPtr)> onPickCallback = nullptr
 물체를 집는 이벤트를 처리하는 콜백 함수 More...
 
std::function< bool(ObjectPtr)> onDropCallback = nullptr
 물체를 떨어 뜨리는 이벤트를 처리하는 콜백 함수 More...
 
std::function< bool(ObjectPtr)> onCombineCallback = nullptr
 물체를 조합하는 이벤트를 처리하는 콜백 함수 More...
 
std::function< bool(ObjectPtr)> onDismantleCallback = nullptr
 물체를 분해하는 이벤트를 처리하는 콜백 함수 More...
 
std::function< bool(ObjectPtr)> onKeypadCallback = nullptr
 키패드 이벤트를 처리하는 콜백 함수 More...
 
std::function< bool(ObjectPtr, int, int, MouseAction)> onMouseCallback = nullptr
 마우스 이벤트를 처리하는 콜백 함수 More...
 

Detailed Description

물체 클래스

Definition at line 32 of file Object.h.

Constructor & Destructor Documentation

◆ Object()

bangtal::Object::Object ( const std::string &  image,
ScenePtr  scene = nullptr,
int  x = 0,
int  y = 0,
bool  shown = true 
)
protected

생성자 함수

Parameters
image물체 이미지
scene물체가 위치하는 장면의 포인터
x장면에서 물체의 위치(x좌표)
y장면에서 물체의 위치(y좌표)
shown물체를 보일 것인가

Member Function Documentation

◆ add()

static void bangtal::Object::add ( ObjectPtr  object)
staticprotected

생성된 물체를 시스템에 등록시키는 함수

Parameters
object물체 포인터

◆ create()

static ObjectPtr bangtal::Object::create ( const std::string &  image,
ScenePtr  scene = nullptr,
int  x = 0,
int  y = 0,
bool  shown = true 
)
static

물체를 생성하는 함수

Parameters
image물체 이미지
scene물체가 위치하는 장면의 포인터
x장면에서 물체의 위치(x좌표)
y장면에서 물체의 위치(y좌표)
shown물체를 보일 것인가
Returns
물체 포인터

◆ defineCombination()

virtual void bangtal::Object::defineCombination ( ObjectPtr  object1,
ObjectPtr  object2 
)
virtual

물체의 조합을 정의하는 함수, 물체1과 물체2로 조합한다.

Parameters
object1조합에 필요한 물체1
object2조합에 필요한 물체2

◆ drop()

virtual void bangtal::Object::drop ( )
virtual

물체를 떨어 뜨리는 함수

◆ getObject()

static ObjectPtr bangtal::Object::getObject ( ObjectID  id)
static

물체 ID로부터 물체 포인터를 획득하는 함수

Parameters
id물체 ID
Returns
물체 포인터

◆ hide()

virtual void bangtal::Object::hide ( )
virtual

물체를 보이지 않도록 설정하는 함수

◆ ID()

ObjectID bangtal::Object::ID ( ) const
inline

물체 ID를 반환하는 함수

Returns
물체 ID

Definition at line 73 of file Object.h.

73 { return id; };
ObjectID id
물체 ID
Definition: Object.h:188

◆ isHanded()

virtual bool bangtal::Object::isHanded ( )
virtual

물체의 사용 여부를 확인하는 함수

Returns
물체를 사용하고 있는가

◆ locate()

virtual void bangtal::Object::locate ( ScenePtr  scene,
int  x,
int  y 
)
virtual

물체의 위치를 설정(변경)하는 함수

Parameters
scene물체가 위치하는 장면의 포인터
x장면에서 물체의 위치(x좌표)
y장면에서 물체의 위치(y좌표)

◆ onCombine()

virtual bool bangtal::Object::onCombine ( )
virtual

물체를 조합하는 이벤트를 처리하는 핸들러 함수

Returns
처리했는가

◆ onDismantle()

virtual bool bangtal::Object::onDismantle ( )
virtual

물체를 분해하는 이벤트를 처리하는 핸들러 함수

Returns
처리했는가

◆ onDrop()

virtual bool bangtal::Object::onDrop ( )
virtual

물체를 떨어 뜨리는 이벤트를 처리하는 핸들러 함수

Returns
처리했는가

◆ onKeypad()

virtual bool bangtal::Object::onKeypad ( )
virtual

키패드 이벤트를 처리하는 핸들러 함수

Returns
처리했는가

◆ onMouse()

virtual bool bangtal::Object::onMouse ( int  x,
int  y,
MouseAction  action 
)
virtual

마우스 이벤트를 처리하는 핸들러 함수

Parameters
x마우스 이벤트가 발생한 위치(x좌표)
y마우스 이벤트가 발생한 위치(y좌표)
action마우스 이벤트의 종류
Returns
처리했는가

◆ onPick()

virtual bool bangtal::Object::onPick ( )
virtual

물체를 집는 이벤트를 처리하는 핸들러 함수

Returns
처리했는가

◆ pick()

virtual void bangtal::Object::pick ( )
virtual

물체를 집는 함수

◆ setImage()

virtual void bangtal::Object::setImage ( const std::string &  image)
virtual

물체 이미지를 설정(변경)하는 함수

Parameters
image물체 이미지

◆ setOnCombineCallback()

void bangtal::Object::setOnCombineCallback ( std::function< bool(ObjectPtr)>  callback)

물체를 조합하는 이벤트를 처리하는 콜백 함수를 등록하는 함수

Parameters
callback이벤트 콜백 함수

◆ setOnDismantleCallback()

void bangtal::Object::setOnDismantleCallback ( std::function< bool(ObjectPtr)>  callback)

물체를 분해하는 이벤트를 처리하는 콜백 함수를 등록하는 함수

Parameters
callback이벤트 콜백 함수

◆ setOnDropCallback()

void bangtal::Object::setOnDropCallback ( std::function< bool(ObjectPtr)>  callback)

물체를 떨어 뜨리는 이벤트를 처리하는 콜백 함수를 등록하는 함수

Parameters
callback이벤트 콜백 함수

◆ setOnKeypadCallback()

void bangtal::Object::setOnKeypadCallback ( std::function< bool(ObjectPtr)>  callback)

키패드 이벤트를 처리하는 콜백 함수를 등록하는 함수

Parameters
callback이벤트 콜백 함수

◆ setOnMouseCallback()

void bangtal::Object::setOnMouseCallback ( std::function< bool(ObjectPtr, int, int, MouseAction)>  callback)

마우스 이벤트를 처리하는 콜백 함수를 등록하는 함수

Parameters
callback이벤트 콜백 함수

◆ setOnPickCallback()

void bangtal::Object::setOnPickCallback ( std::function< bool(ObjectPtr)>  callback)

물체를 집는 이벤트를 처리하는 콜백 함수를 등록하는 함수

Parameters
callback이벤트 콜백 함수

◆ setScale()

virtual void bangtal::Object::setScale ( ObjectScale  scale)
virtual

물체의 크기를 설정(변경)하는 함수

Parameters
scale물체의 크기

◆ show()

virtual void bangtal::Object::show ( )
virtual

물체를 보이도록 설정하는 함수

Member Data Documentation

◆ id

ObjectID bangtal::Object::id
protected

물체 ID

Definition at line 188 of file Object.h.

◆ onCombineCallback

std::function<bool(ObjectPtr)> bangtal::Object::onCombineCallback = nullptr
protected

물체를 조합하는 이벤트를 처리하는 콜백 함수

Definition at line 192 of file Object.h.

◆ onDismantleCallback

std::function<bool(ObjectPtr)> bangtal::Object::onDismantleCallback = nullptr
protected

물체를 분해하는 이벤트를 처리하는 콜백 함수

Definition at line 193 of file Object.h.

◆ onDropCallback

std::function<bool(ObjectPtr)> bangtal::Object::onDropCallback = nullptr
protected

물체를 떨어 뜨리는 이벤트를 처리하는 콜백 함수

Definition at line 191 of file Object.h.

◆ onKeypadCallback

std::function<bool(ObjectPtr)> bangtal::Object::onKeypadCallback = nullptr
protected

키패드 이벤트를 처리하는 콜백 함수

Definition at line 194 of file Object.h.

◆ onMouseCallback

std::function<bool(ObjectPtr, int, int, MouseAction)> bangtal::Object::onMouseCallback = nullptr
protected

마우스 이벤트를 처리하는 콜백 함수

Definition at line 195 of file Object.h.

◆ onPickCallback

std::function<bool(ObjectPtr)> bangtal::Object::onPickCallback = nullptr
protected

물체를 집는 이벤트를 처리하는 콜백 함수

Definition at line 190 of file Object.h.