do not mark multiple luckstones as the prize in mines-end
if one of the random objects happened to be a luckstone then it and the explicit one got marked as a prize. Following this change, only one will be marked as the prize, but a follow-up on the order of things in mines.des may be warranted to ensure it is the explicitly placed luckstone.
This commit is contained in:
@@ -21,6 +21,8 @@ xans fly, but could not reach your feet if you flew
|
||||
adjust vortex database entry to be consistent with fire and energy vortices
|
||||
when co-located with a boulder you could sometimes swap places with pets of
|
||||
any size
|
||||
on rare occasions, multiple mines-end luckstones were being marked as the
|
||||
prize and triggering an impossible() on a public server
|
||||
|
||||
|
||||
Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository
|
||||
|
||||
12
src/sp_lev.c
12
src/sp_lev.c
@@ -2044,11 +2044,13 @@ struct mkroom *croom;
|
||||
might be short-circuited if a monster brings object to hero) */
|
||||
if (Is_mineend_level(&u.uz)) {
|
||||
if (otmp->otyp == iflags.mines_prize_type) {
|
||||
otmp->record_achieve_special = MINES_PRIZE;
|
||||
/* prevent stacking; cleared when achievement is recorded */
|
||||
otmp->nomerge = 1;
|
||||
if (++mines_prize_count > 1)
|
||||
impossible(prize_warning, "mines end");
|
||||
if (!mines_prize_count++) {
|
||||
/* Note: the first luckstone on lev will become the prize
|
||||
even if its not the explicit one, but random */
|
||||
otmp->record_achieve_special = MINES_PRIZE;
|
||||
/* prevent stacking; cleared when achievement is recorded */
|
||||
otmp->nomerge = 1;
|
||||
}
|
||||
}
|
||||
} else if (Is_sokoend_level(&u.uz)) {
|
||||
if (otmp->otyp == iflags.soko_prize_type1) {
|
||||
|
||||
Reference in New Issue
Block a user