Skip to content

Commit

Permalink
Add FD to that entry vault
Browse files Browse the repository at this point in the history
Ensure the vaults that show player species can show faerie dragons.
We use draconian skeletons and zombie tiles because they're good
enough and it's pretty unlikely the player will learn Shatter and
come back for the express purpose of animating one dead FD.
  • Loading branch information
damerell committed May 5, 2019
1 parent 4933f74 commit 3dfa8d1
Show file tree
Hide file tree
Showing 10 changed files with 39 additions and 9 deletions.
16 changes: 10 additions & 6 deletions crawl-ref/source/dat/des/arrival/twisted.des
Expand Up @@ -111,7 +111,7 @@ KMONS: V = octopode ; nothing
KMONS: W = formicid ; nothing
KMONS: X = gargoyle ; nothing
KMONS: Y = vine stalker ; nothing
KMONS: Z = nothing
KMONS: Z = faerie dragon spells:. ; nothing
MAP
ccccc
c.{.c
Expand Down Expand Up @@ -167,20 +167,22 @@ KMONS: M = human / elf / orc; nothing / naga; nothing / centaur; nothing / \
draconian; nothing / ogre; nothing / minotaur / troll / kobold / \
mummy / ghoul / spriggan; nothing / dwarf; nothing / felid / \
octopode; nothing / vampire spells:. / formicid; nothing / \
gargoyle; nothing / vine stalker; nothing
gargoyle; nothing / vine stalker; nothing / \
faerie dragon spells:. ; nothing
# Player monsters, zombie versions (ghouls drop out because they need sustenance
# and can't be reanimated once starved; gargoyles don't leave corpses):
KMONS: N = human zombie / elf zombie / orc zombie / naga zombie / ogre zombie / \
centaur zombie / draconian zombie / minotaur zombie / troll zombie / \
kobold zombie / mummy / spriggan zombie / merfolk zombie / \
dwarf zombie / felid zombie / octopode zombie / formicid zombie
dwarf zombie / felid zombie / octopode zombie / formicid zombie / \
faerie dragon zombie
# Player monsters, skeleton versions (octopodes and formicids drop out because
# they have no skeletons):
KMONS: O = human skeleton / elf skeleton / orc skeleton / naga skeleton / \
centaur skeleton / draconian skeleton / ogre skeleton / \
minotaur skeleton / troll skeleton / kobold skeleton / mummy / \
spriggan skeleton / dwarf skeleton / merfolk skeleton / \
felid skeleton
felid skeleton / faerie dragon skeleton
# And now for something completely different (if any of these turn out to be
# able to escape or project spells out of their cells, they should be removed):
KMONS: Q = orb of fire / ice dragon / shadow dragon / iron dragon / \
Expand Down Expand Up @@ -722,7 +724,8 @@ KMONS: ! = human / elf / orc; nothing / naga; nothing / centaur; nothing / \
draconian; nothing / ogre; nothing / minotaur; nothing / troll / \
kobold; nothing / mummy / ghoul / spriggan; nothing / \
dwarf; nothing / octopode; nothing / vampire spells:. / \
formicid; nothing / gargoyle; nothing / vine stalker; nothing
formicid; nothing / gargoyle; nothing / vine stalker; nothing / \
faerie dragon spells:. ; nothing
KPROP: Kw'! = no_tele_into
KMASK: '! = no_item_gen
KFEAT: ' = .
Expand Down Expand Up @@ -753,7 +756,8 @@ KMONS: ! = human / elf / orc; nothing / naga; nothing / centaur; nothing / \
draconian; nothing / ogre; nothing / minotaur; nothing / troll / \
kobold; nothing / mummy / ghoul / spriggan; nothing / \
dwarf; nothing / octopode; nothing / vampire spells:. / \
formicid; nothing / gargoyle; nothing / vine stalker; nothing
formicid; nothing / gargoyle; nothing / vine stalker; nothing / \
faerie dragon spells:. ; nothing
KPROP: Kw'! = no_tele_into
KMASK: '! = no_item_gen
KFEAT: ' = .
Expand Down
3 changes: 2 additions & 1 deletion crawl-ref/source/dat/des/branches/pan.des
Expand Up @@ -2365,7 +2365,8 @@ WEIGHT: 1
KMONS: p = human / elf / orc / naga / centaur / draconian / ogre / \
minotaur / troll / kobold / mummy / ghoul / spriggan / felid / \
deep dwarf / octopode / vampire / base draconian / demigod / \
demonspawn / merfolk / halfling / gargoyle / formicid / vine stalker
demonspawn / merfolk / halfling / gargoyle / formicid / \
vine stalker / faerie dragon
NSUBST: t = 10:p / *:', b = 10:p / *:'
KPROP: p' = no_tele_into
: pan_demonic_rune(_G, 'P', true)
Expand Down
4 changes: 4 additions & 0 deletions crawl-ref/source/dat/descript/monsters.txt
Expand Up @@ -1073,6 +1073,10 @@ eye of draining

A hovering horror that waxes strong on magic.
%%%%
faerie dragon

A half-dragon humanoid with shimmering scales and an attument to magic.
%%%%
faun

A hybrid with the torso of a human atop the forelegs of a goat. It is fabled
Expand Down
14 changes: 14 additions & 0 deletions crawl-ref/source/mon-data.h
Expand Up @@ -6273,6 +6273,20 @@ DUMMY(MONS_HELL_LORD, '&', COLOUR_UNDEF, "hell lord", TILEP_MONS_PROGRAM_BUG)
},

// "d"raconians.
{
// for those entry vaults alone
MONS_FAERIE_DRAGON, 'd', LIGHTBLUE, "faerie dragon",
M_SPEAKS | M_NO_POLY_TO | M_FLIES,
MR_NO_FLAGS,
10, MONS_FAERIE_DRAGON, MONS_FAERIE_DRAGON, MH_NATURAL, 40,
{ {AT_HIT, AF_PLAIN, 10}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
8, 360,
3, 15, MST_JESSICA, CE_CLEAN, S_SHOUT,
I_HUMAN, HT_LAND, 10, DEFAULT_ENERGY,
MONUSE_WEAPONS_ARMOUR, SIZE_MEDIUM, MON_SHAPE_HUMANOID,
{TILEP_MONS_FAERIE_DRAGON}, TILE_CORPSE_FAERIE_DRAGON
},

{
MONS_TIAMAT, 'd', COLOUR_UNDEF, "Tiamat",
M_UNIQUE | M_SEE_INVIS | M_COLD_BLOOD | M_SPEAKS | M_FEMALE | M_FLIES,
Expand Down
5 changes: 3 additions & 2 deletions crawl-ref/source/monster-type.h
Expand Up @@ -1048,8 +1048,9 @@ enum monster_type // menv[].type
MONS_FROG,
MONS_BARACHI,
MONS_BULTUNGIN, // remove this someday
MONS_TRICERATOPS,
MONS_TEST_STATUE,
MONS_TRICERATOPS, // whoops breaking savefile compat for saves
MONS_TEST_STATUE, // with test statues in
MONS_FAERIE_DRAGON,
#endif

NUM_MONSTERS, // used for polymorph
Expand Down
2 changes: 2 additions & 0 deletions crawl-ref/source/rltiles/dc-corpse.txt
Expand Up @@ -355,6 +355,8 @@ base/octopode1 CORPSE_OCTOPODE
%compose drchead/drchead_yellow
%finish CORPSE_DRACONIAN_YELLOW

mon/demihumanoids/faerie_dragon CORPSE_FAERIE_DRAGON

# Demonspawn ('6')
%sdir mon/humanoids/demonspawn
demonspawn CORPSE_DEMONSPAWN
Expand Down
1 change: 1 addition & 0 deletions crawl-ref/source/rltiles/dc-mon.txt
Expand Up @@ -1114,6 +1114,7 @@ draco-job-scorcher DRACO_SCORCHER
draco-job-shifter DRACO_SHIFTER
## From the Wucad Mu wizard laboratory
mon/vault/draconian_monk_ghost MONS_FAINT_GREY_DRACONIAN_MONK
mon/demihumanoids/faerie_dragon MONS_FAERIE_DRAGON

%rim 1
mon/nonliving/test_spawner MONS_TEST_SPAWNER
Expand Down
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions crawl-ref/source/tilemcache.cc
Expand Up @@ -328,6 +328,7 @@ bool mcache_monster::get_weapon_offset(tileidx_t mon_tile,
case TILEP_MONS_ANCESTOR_KNIGHT:
case TILEP_MONS_ANCESTOR_BATTLEMAGE:
case TILEP_MONS_RAGGED_HIEROPHANT:
case TILEP_MONS_FAERIE_DRAGON:
*ofs_x = 0;
*ofs_y = 0;
break;
Expand Down Expand Up @@ -842,6 +843,7 @@ bool mcache_monster::get_shield_offset(tileidx_t mon_tile,
case TILEP_MONS_SOJOBO:
case TILEP_MONS_FORMICID:
case TILEP_MONS_VINE_STALKER:
case TILEP_MONS_FAERIE_DRAGON:
case TILEP_MONS_OCTOPODE:
case TILEP_MONS_CHERUB:
case TILEP_MONS_MENNAS:
Expand Down
1 change: 1 addition & 0 deletions crawl-ref/source/tilepick.cc
Expand Up @@ -1257,6 +1257,7 @@ static tileidx_t _mon_to_zombie_tile(const monster_info &mon)
{ MONS_OGRE, TILEP_MONS_ZOMBIE_OGRE },
{ MONS_HARPY, TILEP_MONS_ZOMBIE_HARPY },
{ MONS_DRACONIAN, TILEP_MONS_ZOMBIE_DRACONIAN },
{ MONS_FAERIE_DRAGON, TILEP_MONS_ZOMBIE_DRACONIAN },
{ MONS_DRAGON, TILEP_MONS_ZOMBIE_DRAGON },
{ MONS_WYVERN, TILEP_MONS_ZOMBIE_WYVERN },
{ MONS_DRAKE, TILEP_MONS_ZOMBIE_DRAKE },
Expand Down

0 comments on commit 3dfa8d1

Please sign in to comment.