more simplification of achievement tracking
Instead of hardcoding the "prize" type and then watching for that to be created, specify it in the level description. Also, instead of giving both Sokoban end levels 50:50 chance for either prize, bias the one that used to always have the bag of holding to now have 75% chance for that and 25% chance for amulet of reflection, with the other one having those chances reversed. So still 50:50 overall.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.6 context.h $NHDT-Date: 1577050216 2019/12/22 21:30:16 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.36 $ */
|
||||
/* NetHack 3.6 context.h $NHDT-Date: 1580434522 2020/01/31 01:35:22 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.39 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Michael Allison, 2006. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -107,7 +107,7 @@ struct novel_tracking { /* for choosing random passage when reading novel */
|
||||
|
||||
struct achievement_tracking {
|
||||
unsigned mines_prize_oid, soko_prize_oid; /* obj->o_id */
|
||||
short mines_prize_type, soko_prize_typ1, soko_prize_typ2; /* obj->otyp */
|
||||
/* short mines_prize_type, soko_prize_typ1, soko_prize_typ2; */
|
||||
};
|
||||
|
||||
struct context_info {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.7 flag.h $NHDT-Date: 1579261284 2020/01/17 11:41:24 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.172 $ */
|
||||
/* NetHack 3.7 flag.h $NHDT-Date: 1580434522 2020/01/31 01:35:22 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.175 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Michael Allison, 2006. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -400,11 +400,6 @@ struct instance_flags {
|
||||
Bitfield(save_uswallow, 1);
|
||||
Bitfield(save_uinwater, 1);
|
||||
Bitfield(save_uburied, 1);
|
||||
/* item types used to acomplish "special achievements"; find the target
|
||||
object and you'll be flagged as having achieved something... */
|
||||
short mines_prize_type; /* luckstone */
|
||||
short soko_prize_type1; /* bag of holding or */
|
||||
short soko_prize_type2; /* amulet of reflection */
|
||||
struct debug_flags debug;
|
||||
boolean windowtype_locked; /* windowtype can't change from configfile */
|
||||
boolean windowtype_deferred; /* pick a windowport and store it in
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.6 sp_lev.h $NHDT-Date: 1544930819 2018/12/16 03:26:59 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.25 $ */
|
||||
/* NetHack 3.6 sp_lev.h $NHDT-Date: 1580434523 2020/01/31 01:35:23 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.33 $ */
|
||||
/* Copyright (c) 1989 by Jean-Christophe Collet */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
|
||||
@@ -142,7 +142,8 @@ typedef struct {
|
||||
int quan;
|
||||
short buried;
|
||||
short lit;
|
||||
short eroded, locked, trapped, recharged, invis, greased, broken;
|
||||
short eroded, locked, trapped, recharged, invis, greased, broken,
|
||||
achievement;
|
||||
} object;
|
||||
|
||||
typedef struct {
|
||||
|
||||
Reference in New Issue
Block a user