mirror of
https://codeberg.org/noisytoot/notnotdnethack.git
synced 2025-07-31 09:52:25 +01:00
Add a macro for humanoid half dragons, and lift the 10 dex limit for them.
This commit is contained in:
parent
33809aa1c8
commit
d3139e8d31
4 changed files with 7 additions and 3 deletions
|
@ -240,6 +240,7 @@ extern struct Race urace;
|
|||
#define Race_if(X) (urace.malenum == (X))
|
||||
#define Race_switch (urace.malenum)
|
||||
#define youracedata (maybe_polyd(youmonst.data, &mons[urace.malenum]))
|
||||
#define Humanoid_half_dragon(role) (Role_if(PM_MADMAN) || (Role_if(PM_NOBLEMAN) && flags.initgend))
|
||||
|
||||
/*** Unified structure specifying gender information ***/
|
||||
struct Gender {
|
||||
|
|
|
@ -513,7 +513,7 @@ you_calc_movement()
|
|||
Race_if(PM_GNOME)
|
||||
|| Race_if(PM_DWARF)
|
||||
|| Race_if(PM_ORC)
|
||||
|| (Race_if(PM_HALF_DRAGON) && ((Role_if(PM_NOBLEMAN) && flags.initgend) || Role_if(PM_MADMAN)))
|
||||
|| (Race_if(PM_HALF_DRAGON) && Humanoid_half_dragon(urole.malenum))
|
||||
)) moveamt = 12;
|
||||
else moveamt = youmonst.data->mmove;
|
||||
if(uarmf && uarmf->otyp == STILETTOS && !Flying && !Levitation) moveamt = (moveamt*5)/6;
|
||||
|
|
|
@ -2515,7 +2515,7 @@ find_ac()
|
|||
}
|
||||
if(Race_if(PM_HALF_DRAGON)){
|
||||
//Some half dragons are more humanoid
|
||||
if((Role_if(PM_NOBLEMAN) && flags.initgend) || Role_if(PM_MADMAN)){
|
||||
if(Humanoid_half_dragon(urole.malenum)){
|
||||
if(carrying_art(ART_DRAGON_S_HEART_STONE))
|
||||
uac -= (u.ulevel+5)/10;
|
||||
else uac -= (u.ulevel+5)/15; //level 10 and 25
|
||||
|
@ -2549,7 +2549,7 @@ int base_nat_udr()
|
|||
|
||||
if(Race_if(PM_HALF_DRAGON)){
|
||||
//DS half dragons may be more humanoid
|
||||
if((Role_if(PM_NOBLEMAN) && flags.initgend) || Role_if(PM_MADMAN)){
|
||||
if(Humanoid_half_dragon(urole.malenum)){
|
||||
if(carrying_art(ART_DRAGON_S_HEART_STONE))
|
||||
udr += (u.ulevel)/10;
|
||||
else udr += (u.ulevel)/15;
|
||||
|
|
|
@ -1883,6 +1883,9 @@ int newgame;
|
|||
}
|
||||
}
|
||||
}
|
||||
else if(Humanoid_half_dragon(urole.malenum)){
|
||||
urace.attrmax[A_DEX] = 18;
|
||||
}
|
||||
|
||||
/* Fix up the god names */
|
||||
if (flags.pantheon == -1) { /* new game */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue