special level alignments
From the newsgroup a while back - special levels w/o a specific alignment should inherit their alignment from the dungeon. Some places explicitly checked the dungeon if the level alignment wasn't set, at least one did not.
This commit is contained in:
@@ -146,6 +146,7 @@ no messages were printed when dowaterdemon or dowaternymph failed to create
|
|||||||
a monster doe to the G_GONE check
|
a monster doe to the G_GONE check
|
||||||
knights should be able to avenge attacks from covetous monsters
|
knights should be able to avenge attacks from covetous monsters
|
||||||
eating various rotten food items would not break vegan/vegetarian conduct
|
eating various rotten food items would not break vegan/vegetarian conduct
|
||||||
|
unaligned special levels should inherit alignment from the dungeon
|
||||||
|
|
||||||
|
|
||||||
Platform- and/or Interface-Specific Fixes
|
Platform- and/or Interface-Specific Fixes
|
||||||
|
|||||||
@@ -486,6 +486,9 @@ init_level(dgn, proto_index, pd)
|
|||||||
new_level->flags.maze_like = !!(tlevel->flags & MAZELIKE);
|
new_level->flags.maze_like = !!(tlevel->flags & MAZELIKE);
|
||||||
new_level->flags.rogue_like = !!(tlevel->flags & ROGUELIKE);
|
new_level->flags.rogue_like = !!(tlevel->flags & ROGUELIKE);
|
||||||
new_level->flags.align = ((tlevel->flags & D_ALIGN_MASK) >> 4);
|
new_level->flags.align = ((tlevel->flags & D_ALIGN_MASK) >> 4);
|
||||||
|
if (!new_level->flags.align)
|
||||||
|
new_level->flags.align =
|
||||||
|
((pd->tmpdungeon[dgn].flags & D_ALIGN_MASK) >> 4);
|
||||||
|
|
||||||
new_level->rndlevs = tlevel->rndlevs;
|
new_level->rndlevs = tlevel->rndlevs;
|
||||||
new_level->next = (s_level *) 0;
|
new_level->next = (s_level *) 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user