<Someone> wrote:
>> If the previous character was non-neutral, the unicorn would have
>> started off as hostile. When a bones file is loaded, I don't think
>> hostiles are made non-hostile, although the reverse is certainly true
>> (pets of the deceased are usually hostile).
>
> In the general case, they are, or rather their hostility is
> re-evaluated with respect to the new character; see the peace_minded()
> call in getlev(). However, co-aligned unicorns always being created
> peaceful is a special case in makemon(), _not_ part of peace_minded(),
> so they'd just have the usual chance of being made peaceful or not
> depending on alignment strength, as for any other co-aligned monster
> not explicitly declared always peaceful or always hostile.
fix case on monster name when monster reflects floating eye's gaze
monsters "shrieking in pain" from a potion didn't wake anything up
Master of Thieves as Tourist Nemesis still had STRAT_CLOSE
+co-aligned unicorns in bones could be hostile
Platform- and/or Interface-Specific Fixes
mtmp2 = mtmp->nmon;
if (ghostly) {
/* reset peaceful/malign relative to new character */
- if(!mtmp->isshk)
- /* shopkeepers will reset based on name */
+ /* shopkeepers will reset based on name */
+ if(!mtmp->isshk) {
+ if (is_unicorn(mtmp->data) &&
+ sgn(u.ualign.type) == sgn(mtmp->data->maligntyp))
+ mtmp->mpeaceful = TRUE;
+ else
mtmp->mpeaceful = peace_minded(mtmp->data);
+ }
set_malign(mtmp);
} else if (monstermoves > omoves)
mon_catchup_elapsed_time(mtmp, monstermoves - omoves);