示例#1
0
	cPOCPiece(int a_SizeXZ, int a_Height) :
		m_SizeXZ(a_SizeXZ),
		m_Height(a_Height)
	{
		m_Connectors.push_back(cConnector(m_SizeXZ / 2, a_Height / 2, 0,            0,            BLOCK_FACE_ZM));
		m_Connectors.push_back(cConnector(m_SizeXZ / 2, a_Height / 2, m_SizeXZ - 1, 1,            BLOCK_FACE_ZP));
		m_Connectors.push_back(cConnector(0,            a_Height / 2, m_SizeXZ / 2, 2,            BLOCK_FACE_XM));
		m_Connectors.push_back(cConnector(m_SizeXZ - 1, a_Height - 1, m_SizeXZ / 2, m_SizeXZ % 3, BLOCK_FACE_XP));
	}
示例#2
0
		virtual cConnectors GetConnectors(void) const override
		{
			// Each piece has 4 connectors, one of each type, plus one extra, at the center of its walls:
			cConnectors res;
			res.push_back(cConnector(m_Size / 2, 1, 0,          0, BLOCK_FACE_ZM));
			res.push_back(cConnector(m_Size / 2, 1, m_Size - 1, 1, BLOCK_FACE_ZP));
			res.push_back(cConnector(0,          1, m_Size / 2, 2, BLOCK_FACE_XM));
			res.push_back(cConnector(m_Size - 1, 1, m_Size / 2, m_Size % 3, BLOCK_FACE_XP));
			return res;
		}
示例#3
0
void cPrefab::AddConnector(int a_RelX, int a_RelY, int a_RelZ, eBlockFace a_Direction, int a_Type)
{
	m_Connectors.push_back(cConnector(a_RelX, a_RelY, a_RelZ, a_Type, a_Direction));
}
示例#4
0
void cPrefab::AddConnector(int a_RelX, int a_RelY, int a_RelZ, cPiece::cConnector::eDirection a_Direction, int a_Type)
{
	m_Connectors.push_back(cConnector(a_RelX, a_RelY, a_RelZ, a_Type, a_Direction));
}