CCouncilMember::CCouncilMember(CMap *pmap, Uint32 x, Uint32 y) :
CObject(pmap, x, y, OBJ_NONE)
{
	m_ActionBaseOffset = 0x1FB8;
	setActionForce(A_COUNCIL_MEMBER_MOVE);
	setActionSprite();
	calcBouncingBoxes();
}
CSpriteItem::CSpriteItem(CMap *pmap, Uint32 x, Uint32 y,
		std::vector<CObject*>& ObjectPtrs, Uint32 sprite) :
CObject(pmap, x, y, OBJ_NONE),
m_ObjectPtrs(ObjectPtrs)
{
	m_index = sprite;
	m_basesprite = sprite;
	m_timer = (y*256+x)%MAX_ANIMATION_TIMER;
	this->sprite = (m_timer%2 == 0) ? m_basesprite : m_basesprite+1;
	calcBouncingBoxes();
	inhibitfall = true;
}
CBullet::CBullet(CMap *pmap, const Uint32 x, const Uint32 y, const direction_t dir) :
    CObject(pmap, x, y, OBJ_RAY)
{
    m_hDir = NONE;
    m_vDir = NONE;

    if(dir == LEFT || dir == RIGHT)
        m_hDir = dir;
    else if(dir == UP || dir == DOWN)
        m_vDir = dir;

    setupGalaxyObjectOnMap(0x1738, A_KEENSHOT_MOVING);
    setActionSprite();
    calcBouncingBoxes();
    playSound( SOUND_KEEN_FIRE );
}