/* -*- C++ -*- */
#ifndef _OBSTACLE_H_
#define _OBSTACLE_H_
#include "Figure.h"
/** Contains the cubes of the obstacle and draws the border. */
class Obstacle : public Figure
{
public:
Obstacle (const int _sizeX,
const int _sizeY,
const int _sizeZ);
~Obstacle();
/** Draws the obstacle boundings and cubes. */
void draw();
/** Return true if _fig is inside border. */
bool isInsideBorder (const Figure& _fig) const;
/** Removes possible levels and accumulate points.
*
* @return points accumulated on removing
*/
int removeLevelsWherePossible();
protected:
/** Color of the border. */
Color colorBorder;
/** Removes all cubes on specified level and drops all higher level. */
void removeCubesOnLevel (int level);
/** Counts all cubes on specified level. */
int countCubesOnLevel (int level);
};
#endif _OBSTACLE_H_
Documentation generated by skyhunter@Dagobah on Wed Sep 16 18:39:03 MEST 1998