#ifndef __SettingManager__ #define __SettingManager__ #include "GraphicPrim.h" #include /* This manager is able to draw the setting (floors and walls) and is able to look if some passage is blocked or not. Subdivision of the polygons is carried on to reduce texture artifacts. Parts of the wall may be deactivated to get along with the problem of visibilty ordering*/ // Initializes the level description void InitialzeSetting(short *LevelDescription,int offset); // Draws the scene void DrawSetting(); // Switch on a wall element at the indicated position with the indicated // side void WallActivate(unsigned short position[2],int index); // Removes the wall element void WallDeactivate(unsigned short position[2],int index); // Accessible Area int NoWall(unsigned short xpos,unsigned short ypos); // Removes subdivision (if applicable) void Unify(unsigned short xpos, unsigned short ypos); // Sets subdivision (if applicable) void Subdivide(unsigned short xpos, unsigned short ypos); // Perfroms a rough subdivision void RoughSubdivide(unsigned short xpos, unsigned short ypos); // Deactivates the floor element at the indicated position void Deactivate(unsigned short xpos,unsigned short ypos); // Reactivates the floor element void Activate(unsigned short xpos,unsigned short ypos); #endif