Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields

DungeonGenerator Class Reference

Collaboration diagram for DungeonGenerator:

Collaboration graph
[legend]

Detailed Description

Author:
Gabor Torok


Public Types

enum  { HQ_LOCATION = 1, LOCATION_COUNT }

Public Member Functions

 DungeonGenerator (Scourge *scourge, int level, int depth, bool stairsDown, bool stairsUp, Mission *mission=NULL)
void toMap (Map *map, ShapePalette *shapePal, int location=0)

Protected Member Functions

void drawBasics (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void removeColumns (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void addContainers (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
bool addStairs (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void addPregeneratedShapes (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void addItems (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void addMissionObjectives (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void addMonsters (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void addFurniture (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
bool addTeleporters (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void addParty (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void lockDoors (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void lockLocation (Map *map, int mapx, int mapy)
void createFreeSpaceMap (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void deleteFreeSpaceMap (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void calculateRoomValues (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void initByLevel ()
void generateMaze ()
void makeSparse ()
void makeLoops ()
void makeRooms ()
void constructMaze (int location)
bool drawNodesOnMap (Map *map, ShapePalette *shapePal, bool preGenerated, int locationIndex)
void nextNotVisited (int *x, int *y)
 Return a random location in the maze that has not been visited yet.
void nextVisited (int *x, int *y)
bool isVisited (int x, int y)
void markVisited (int x, int y)
int initDirections ()
int nextDirection ()
void printMaze ()
void generatePassage (const int x, const int y, const bool stopAtVisited)
int getScore (int x, int y, int rw, int rh)
void getRandomLocation (Map *map, Shape *shape, int *x, int *y, bool accessible=false, int fromX=0, int fromY=0)
bool getLocationInRoom (Map *map, int roomIndex, Shape *shape, int *xpos, int *ypos, bool startMiddle=false)
bool coversDoor (Map *map, ShapePalette *shapePal, Shape *shape, int x, int y)
bool isAccessible (Map *map, int x, int y, int fromX, int fromY, int stepsTaken=0, int dir=DIR_N)
void addItem (Map *map, Creature *creature, Item *item, Shape *shape, int x, int y, int z=0)
void drawDoor (Map *map, ShapePalette *shapePal, Sint16 mapx, Sint16 mapy, int doorType)
void addItemsInRoom (RpgItem *rpgItem, int n, bool preGenerated, int locationIndex)
bool addShapeInARoom (int shapeIndex)
void getRandomDeadEndLocation (int *x, int *y, GLShape *shape, Map *map)
int getRoomIndex (int x, int y)
void updateStatus (const char *statusMessage)

Static Protected Attributes

static const int MAX_STEPS = 10000

Data Structures

struct  _Room


Member Function Documentation

void DungeonGenerator::nextNotVisited int *  x,
int *  y
[protected]
 

Return a random location in the maze that has not been visited yet.

returns -1 for x, y if there are no more such locations


The documentation for this class was generated from the following files:
Generated on Thu Jun 16 21:50:45 2005 for scourge by  doxygen 1.4.0