Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
elunna committed Oct 16, 2023
2 parents c1ea888 + 8dc6d32 commit 54f6311
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 10 deletions.
2 changes: 1 addition & 1 deletion include/patchlevel.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
* to individual level files matter; changes to general game state don't)
* but the extra complexity to support that is not worth the effort.]
*/
#define VERSION_COMPATIBILITY 0x10201000L
#define VERSION_COMPATIBILITY 0x01020100L

/****************************************************************************/
/* Version 3.6.x */
Expand Down
6 changes: 5 additions & 1 deletion src/pray.c
Original file line number Diff line number Diff line change
Expand Up @@ -1702,7 +1702,11 @@ aligntyp alignment;
mnum = ndemon(A_NONE);
break;
}
if (mnum == NON_PM) {
if (mnum == NON_PM
|| (Role_if(PM_ICE_MAGE)
&& (mnum == PM_FIRE_ELEMENTAL || mnum == PM_MAGMA_ELEMENTAL))
|| (Role_if(PM_FLAME_MAGE)
&& (mnum == PM_ICE_ELEMENTAL || mnum == PM_WATER_ELEMENTAL))) {
You("feel a powerful presence gather, but it suddenly recedes!");
return;
}
Expand Down
14 changes: 8 additions & 6 deletions src/shk.c
Original file line number Diff line number Diff line change
Expand Up @@ -2656,9 +2656,10 @@ register struct monst *shkp; /* if angry, impose a surcharge */
}
}
/* adjust for different material */
multiplier *= matprices[obj->material];
divisor *= matprices[objects[obj->otyp].oc_material];

if (obj->oclass != RING_CLASS && obj->oclass != AMULET_CLASS) {
multiplier *= matprices[obj->material];
divisor *= matprices[objects[obj->otyp].oc_material];
}
if (uarmh && uarmh->otyp == DUNCE_CAP)
multiplier *= 4L, divisor *= 3L;
else if ((Role_if(PM_TOURIST) && u.ulevel < (MAXULEV / 2))
Expand Down Expand Up @@ -2890,9 +2891,10 @@ register struct monst *shkp;
tmp = get_pricing_units(obj) * unit_price;

/* adjust for different material */
multiplier *= matprices[obj->material];
divisor *= matprices[objects[obj->otyp].oc_material];

if (obj->oclass != RING_CLASS && obj->oclass != AMULET_CLASS) {
multiplier *= matprices[obj->material];
divisor *= matprices[objects[obj->otyp].oc_material];
}
if (obj->globby)
goto end;

Expand Down
10 changes: 9 additions & 1 deletion src/tech.c
Original file line number Diff line number Diff line change
Expand Up @@ -3627,7 +3627,8 @@ tech_souleater()
struct monst *mtmp;
int tech_no = get_tech_no(T_SOULEATER);
int weapon_modifier, num = Upolyd ? (u.mhmax / 2) : (u.uhpmax / 2);

boolean isweapon, isedged;

if ((!Upolyd && u.uhp <= num) || (Upolyd && u.mh <= num)) {
You("don't have the strength to invoke Souleater! Requires at least %i HP!",
num + 1);
Expand All @@ -3637,6 +3638,13 @@ tech_souleater()
You("need a weapon to channel your dark energy into!");
return 0;
}
isweapon = (uwep->oclass == WEAPON_CLASS || is_weptool(uwep));
isedged = (is_pick(uwep) || (objects[uwep->otyp].oc_dir & (PIERCE | SLASH)));

if (is_missile(uwep) || (!isweapon && !isedged)) {
You("need a proper weapon to channel your dark energy into!");
return 0;
}
You("unleash a burst of dark energy!");

/* Works against anything in line of sight...except flan */
Expand Down
2 changes: 1 addition & 1 deletion sys/unix/sysconf
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ LLC_TURNS=3000
# Only available if NetHack was compiled with DUMPLOG
# Allows following placeholders:
# %% literal '%'
# %v version (eg. "1.2.0-0")
# %v version (eg. "1.2.1-0")
# %u game UID
# %t game start time, UNIX timestamp format
# %T current time, UNIX timestamp format
Expand Down

0 comments on commit 54f6311

Please sign in to comment.