summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/lev-pand.cc
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2011-10-01 17:48:59 +0200
committerAdam Borowski <kilobyte@angband.pl>2011-10-01 20:55:41 +0200
commit5a2a22fca93e50ee04542c9b7784fc653c7ddc30 (patch)
tree66104cf1396044bfe20ac8ea4489fd234a5df509 /crawl-ref/source/lev-pand.cc
parentc72d970d5629f4786ad28d6cba467f87c275e15f (diff)
downloadcrawl-ref-5a2a22fca93e50ee04542c9b7784fc653c7ddc30.tar.gz
crawl-ref-5a2a22fca93e50ee04542c9b7784fc653c7ddc30.zip
Allow to (hackily) set a Pan level's monster set from vaults.
It needs further reworking, but works well enough to add new custom levels without having to alter the tables inside. Current limitations: * needs exactly 10 monsters (more will be ignored, less will use ones assigned for a random level) * doesn't support weights, place: or draconian flavours And inherited from vault_mon_list: * doesn't support mon_spec, just monster types
Diffstat (limited to 'crawl-ref/source/lev-pand.cc')
-rw-r--r--crawl-ref/source/lev-pand.cc71
1 files changed, 1 insertions, 70 deletions
diff --git a/crawl-ref/source/lev-pand.cc b/crawl-ref/source/lev-pand.cc
index ae4a052bff..b892fc2484 100644
--- a/crawl-ref/source/lev-pand.cc
+++ b/crawl-ref/source/lev-pand.cc
@@ -21,79 +21,10 @@
void init_pandemonium(void)
{
- int pc = 0;
-
- for (pc = 0; pc < MAX_MONSTERS; ++pc)
- {
- monster* mons = &menv[pc];
-
- // Looks for unique demons and sets appropriate lists of demons.
- // NB - also sets the level colours.
- if (mons->type == MONS_MNOLEG)
- {
- env.mons_alloc[0] = MONS_ABOMINATION_SMALL;
- env.mons_alloc[1] = MONS_ABOMINATION_SMALL;
- env.mons_alloc[2] = MONS_ABOMINATION_SMALL;
- env.mons_alloc[3] = MONS_ABOMINATION_LARGE;
- env.mons_alloc[4] = MONS_NEQOXEC;
- env.mons_alloc[5] = MONS_MIDGE;
- env.mons_alloc[6] = MONS_NEQOXEC;
- env.mons_alloc[7] = MONS_BLIZZARD_DEMON;
- env.mons_alloc[8] = MONS_BALRUG;
- env.mons_alloc[9] = MONS_LEMURE;
- return;
- }
-
- if (mons->type == MONS_LOM_LOBON)
- {
- env.mons_alloc[0] = MONS_HELLWING;
- env.mons_alloc[1] = MONS_SMOKE_DEMON;
- env.mons_alloc[2] = MONS_SMOKE_DEMON;
- env.mons_alloc[3] = MONS_YNOXINUL;
- env.mons_alloc[4] = MONS_GREEN_DEATH;
- env.mons_alloc[5] = MONS_BLIZZARD_DEMON;
- env.mons_alloc[6] = MONS_SMOKE_DEMON;
- env.mons_alloc[7] = MONS_HELLWING;
- env.mons_alloc[8] = MONS_WHITE_IMP;
- env.mons_alloc[9] = MONS_HELLWING;
- return;
- }
-
- if (mons->type == MONS_CEREBOV)
- {
- env.mons_alloc[0] = MONS_EFREET;
- env.mons_alloc[1] = MONS_ABOMINATION_SMALL;
- env.mons_alloc[2] = MONS_ORANGE_DEMON;
- env.mons_alloc[3] = MONS_ORANGE_DEMON;
- env.mons_alloc[4] = MONS_NEQOXEC;
- env.mons_alloc[5] = MONS_LEMURE;
- env.mons_alloc[6] = MONS_ORANGE_DEMON;
- env.mons_alloc[7] = MONS_YNOXINUL;
- env.mons_alloc[8] = MONS_BALRUG;
- env.mons_alloc[9] = MONS_BALRUG;
- return;
- }
-
- if (mons->type == MONS_GLOORX_VLOQ)
- {
- env.mons_alloc[0] = MONS_SKELETON_SMALL;
- env.mons_alloc[1] = MONS_SKELETON_SMALL;
- env.mons_alloc[2] = MONS_SKELETON_LARGE;
- env.mons_alloc[3] = MONS_WHITE_IMP;
- env.mons_alloc[4] = MONS_CACODEMON;
- env.mons_alloc[5] = MONS_HELLWING;
- env.mons_alloc[6] = MONS_SMOKE_DEMON;
- env.mons_alloc[7] = MONS_EXECUTIONER;
- env.mons_alloc[8] = MONS_EXECUTIONER;
- env.mons_alloc[9] = MONS_EXECUTIONER;
- return;
- }
- }
-
// colour of monster 9 is colour of floor, 8 is colour of rock
// IIRC, BLACK is set to LIGHTGREY
- for (pc = 0; pc < 10; ++pc)
+ for (int pc = 0; pc < 10; ++pc)
{
switch (random2(17))
{