Monster boss; // The boss monster
-level monsters[LEVELS]; // The newest way to store monsters
+Level levels[LEVELS]; // The newest way to store monsters
Monster *masters[LEVELS]; // A master for each level
void reset(Player *p);
void init_masters();
bool load_monsters();
+bool load_levels();
void delete_monsters();
void delete_masters();
}
} else if (stricmp(cmd, "PRINT") == 0) {
for (int x = 0; x < LEVELS; x++)
- monsters[x].print();
+ levels[x].monsters.print();
+ } else if (stricmp(cmd, "RANDOM") == 0) {
+ char *rstr = strtok(NULL, "");
+ range trange;
+ trange.setRange(rstr);
+ notice(s_GameServ, source, "Random number in that range: %d", trange.random());
#endif
} else {
aClient *user;
void delete_monsters()
{
for (int x = 0; x < LEVELS; x++)
- monsters[x].deleteNodes();
+ levels[x].monsters.deleteNodes();
}
void delete_masters()
notice(s_GameServ, u, "You don't have enough gold!");
break;
case 4:
- price = 3000 * p->level * 4;
+ price = 2000 * p->level * 4;
if (p->gold >= price)
{
notice(s_GameServ, u, "One HP Potion coming right up!");
notice(s_GameServ, u, "You adjust your %s, tighten your grip on "\
"your %s, and venture into the hot, dark cave. "\
"You are surprised at the angle of descent as you climb "\
- "lower and lower, deeper into the dragon's den.");
+ "lower and lower, deeper into the dragon's den.", armors[p->level - 1], weapons[p->level - 1]);
notice(s_GameServ, u, "You come to the end of the cave to find "\
"a tooth. It is a large tooth... bigger than your torso."\
" Suddenly the darkness lifts from the gleam of an eye "\
}
}
+bool load_levels()
+{
+ char *filename;
+ filename = new char[256];
+
+ for (int x = 1; x <= LEVELS; x++)
+ {
+ sprintf(filename, "data/levels/level%d.dat", x);
+ if (levels[x - 1].loadLevel(filename) == false)
+ return false;
+ }
+
+ delete []filename;
+ return true;
+}
bool load_monsters()
{
char *filename;
strcpy(temp->name, strtok(buf, "~"));
strcpy(temp->weapon, strtok(NULL, "~"));
- temp->strength = stringtoint(strtok(NULL, "~"));
- temp->gold = stringtoint(strtok(NULL, "~"));
- temp->exp = stringtoint(strtok(NULL, "~"));
- temp->maxhp = stringtoint(strtok(NULL, "~"));
- temp->hp = temp->maxhp;
strcpy(temp->death, strtok(NULL, "~"));
- monsters[level - 1].insertAtBack_RLN(temp);
+ levels[level - 1].monsters.insertAtBack_RLN(temp);
delete temp;
}
delete [] filename;