mcserver/source/cWindowOwner.h

44 lines
697 B
C
Raw Normal View History

#pragma once
#include "cBlockEntity.h"
class cWindow;
/**
Implements the base behavior expected from a class that can handle UI windows for block entities.
*/
class cWindowOwner
{
public:
cWindowOwner() : m_Window( NULL ) {}
void CloseWindow() { m_Window = NULL; }
void OpenWindow( cWindow* a_Window ) { m_Window = a_Window; }
cWindow* GetWindow() { return m_Window; }
void SetEntity(cBlockEntity * a_Entity) { m_Entity = a_Entity; }
void GetBlockPos(int & a_BlockX, int & a_BlockY, int & a_BlockZ)
{
a_BlockX = m_Entity->GetPosX();
a_BlockY = m_Entity->GetPosY();
a_BlockZ = m_Entity->GetPosZ();
}
private:
cWindow * m_Window;
cBlockEntity * m_Entity;
};