CMap.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 class Map {
00022
00023
private:
00024
00025 Entity *
allowableEnemy[10];
00026 int maxAllowableEnemies;
00027
00028
public:
00029
00030 char name[255];
00031
00032 unsigned char data[
MAPWIDTH][
MAPHEIGHT];
00033
00034 int offsetX,
offsetY;
00035 int limitLeft,
limitRight,
limitUp,
limitDown;
00036
00037 int foundItems,
totalItems;
00038 int foundMIAs,
totalMIAs;
00039 int requiredMIAs;
00040
00041
00042 int remainingMinutes;
00043 int remainingSeconds;
00044
00045
00046 bool isIceLevel;
00047
00048
00049 float waterLevel;
00050 int requiredWaterLevel;
00051
00052
00053 bool isBlizzardLevel;
00054 int windChangeTime;
00055 float windPower;
00056
00057
00058 bool fightingGaldov;
00059 bool isBossMission;
00060 unsigned int bossNextThink;
00061 void (*doBossLevelAction) (
void);
00062 Boss *
boss[10];
00063 Boss *
mainBossPart;
00064 float bossEnergyMeterBit;
00065
00066 List persistantList;
00067
00068 List trainList;
00069 List itemList;
00070 List bulletList;
00071 List enemyList;
00072 List miaList;
00073 List obstacleList;
00074 List particleList;
00075 List switchList;
00076 List spawnList;
00077 List effectList;
00078 List objectiveList;
00079 List teleportList;
00080 List lineList;
00081 List trapList;
00082
00083
Map();
00084
00085
void clear();
00086
void destroy();
00087
00088
bool isPracticeMission();
00089
bool isSolid(
int x,
int y);
00090
bool isBreakable(
int x,
int y);
00091
bool isNoReset(
int x,
int y);
00092
bool isLiquid(
int x,
int y);
00093
bool isTopLayer(
int x,
int y);
00094
00095
Persistant *
getPersistant(
char *name);
00096
Persistant *
createPersistant(
char *name);
00097
void destroyPersistant(
char *name);
00098
00099
void setName(
char *name);
00100
void setClipping(
int limitLeft,
int limitRight,
int limitUp,
int limitDown);
00101
void addTrain(
char *name,
int startX,
int startY,
int endX,
int endY,
int pause,
bool atStart,
bool active);
00102
void addDoor(
char *name,
int type,
int startX,
int startY,
int endX,
int endY,
bool active);
00103
void addSwitch(
char *name,
char *linkName,
char *requiredObjectName,
char *activateMessage,
int type,
int x,
int y,
bool activated);
00104
void addItem(
Entity *item);
00105
void addBullet(
Entity *bullet);
00106
void addParticle(
float x,
float y,
float dx,
float dy,
int health,
int color,
Sprite *sprite,
int flags);
00107
void addEnemy(
Entity *enemy);
00108
void addMIA(
Entity *mia);
00109
void addObstacle(
Entity *obstacle);
00110
void addSpawnPoint(
char *name,
int x,
int y,
int type,
int subtype,
int min,
int max,
bool active);
00111
void addEffect(
Effect *effect);
00112
void addObjective(
char *description,
char *target,
int targetValue,
bool required);
00113
void addTeleporter(
Teleporter *teleporter);
00114
void addLineDef(
LineDef *lineDef);
00115
void addTrap(
Trap *trap);
00116
00117
void killAllEnemies();
00118
00119
void setAllowableEnemy(
Entity *enemy);
00120
char *
getSpawnableEnemy();
00121
char *
getSpawnableEnemy(
int i);
00122
00123
void getRandomEntityPosition(
int *x,
int *y);
00124
void setMainBossPart(
Boss *boss);
00125 };
Generated on Thu Dec 2 20:26:02 2004 for Blob Wars : Metal Blob Solid by
1.3.7