From 18a0c4054898c97021da8ca77a01f2b42b108483 Mon Sep 17 00:00:00 2001
From: wheals <shm.mark@gmail.com>
Date: Thu, 20 Feb 2014 13:00:17 -0500
Subject: [PATCH] Remove spiny worms.

They had very little purpose, being a slow monster with an
annoyance-branded bite that hardly ever mattered outside, perhaps,
wormcave. There are lots of more interesting monsters in Spider.
---
 crawl-ref/source/dat/des/arrival/small.des          |  4 ++--
 crawl-ref/source/dat/des/branches/abyss.des         |  4 ++--
 .../source/dat/des/branches/depths_encompass.des    |  2 +-
 crawl-ref/source/dat/des/branches/lair.des          |  4 ++--
 crawl-ref/source/dat/des/branches/slime.des         | 21 ---------------------
 crawl-ref/source/dat/des/branches/spider.des        |  4 ++--
 crawl-ref/source/dat/des/branches/swamp.des         |  2 +-
 crawl-ref/source/dat/des/sprint/arena_sprint.des    |  2 +-
 crawl-ref/source/dat/des/sprint/linesprint.des      |  2 +-
 crawl-ref/source/dat/des/sprint/pitsprint.des       |  2 +-
 crawl-ref/source/dat/des/sprint/sprint_mu.des       |  2 +-
 crawl-ref/source/dat/des/variable/mini_monsters.des |  4 ++--
 crawl-ref/source/enum.h                             |  2 +-
 crawl-ref/source/melee_attack.cc                    |  2 --
 crawl-ref/source/mon-data.h                         | 13 +------------
 crawl-ref/source/mon-pick-data.h                    |  4 ----
 crawl-ref/source/tilepick.cc                        |  4 ++++
 17 files changed, 22 insertions(+), 56 deletions(-)

diff --git a/crawl-ref/source/dat/des/arrival/small.des b/crawl-ref/source/dat/des/arrival/small.des
index de25a83..3034f12 100644
--- a/crawl-ref/source/dat/des/arrival/small.des
+++ b/crawl-ref/source/dat/des/arrival/small.des
@@ -2515,7 +2515,7 @@ SHUFFLE: 16
 MONS:    centaur / centaur warrior / yaktaur / yaktaur captain
 MONS:    rat / green rat / orange rat / quokka
 MONS:    worker ant / soldier ant / queen ant
-MONS:    spiny worm / brain worm / worm / giant leech
+MONS:    brain worm / worm / giant leech
 MONS:    lindwurm / death drake / komodo dragon / basilisk / swamp drake
 MONS:    ettin / frost giant / hill giant / stone giant / fire giant
 : else
@@ -2524,7 +2524,7 @@ MONS:    giant gecko / iguana / giant newt / crocodile / komodo dragon
 MONS:    hog / jackal / wolf / hound
 MONS:    giant cockroach / worker ant / butterfly / killer bee /\
          redback / giant mite
-MONS:    swamp worm / lindwurm / worm / spiny worm
+MONS:    swamp worm / lindwurm / worm
 MONS:    swamp drake / hydra / wyvern / fire drake
 MONS:    polar bear / grizzly bear / black bear
 MONS:    black mamba / water moccasin / anaconda / salamander
diff --git a/crawl-ref/source/dat/des/branches/abyss.des b/crawl-ref/source/dat/des/branches/abyss.des
index a10cfaa..d0b7e13 100644
--- a/crawl-ref/source/dat/des/branches/abyss.des
+++ b/crawl-ref/source/dat/des/branches/abyss.des
@@ -257,7 +257,7 @@ MONS:   crimson imp w:12 / white imp / shadow imp / iron imp
 MONS:   kobold demonologist, deep elf summoner / orc sorcerer w:7
 MONS:   worker ant w:40 / goliath beetle w:20 / vampire mosquito
 KMONS:  8 = demonic crawler
-KMONS:  9 = spiny worm / emperor scorpion w:7
+KMONS:  9 = emperor scorpion
 KMONS:  D = place:D:1 perm_ench:shapeshifter w:30 / \
             small abomination w:15 / ugly thing w:15 / chaos spawn
 KMONS:  E = very ugly thing
@@ -1971,7 +1971,7 @@ KMONS:   0 = air elemental
 KMONS:   A = shadow wraith
 KMONS:   B = unseen horror
 KMONS:   C = giant leech
-KMONS:   D = spiny worm
+KMONS:   D = brain worm
 KMONS:   E = elephant
 KMONS:   F = catoblepas / dire elephant
 NSUBST:  J = 1/2, K = 5/6, L = 9/0, M = C/D
diff --git a/crawl-ref/source/dat/des/branches/depths_encompass.des b/crawl-ref/source/dat/des/branches/depths_encompass.des
index b4af9aa..e71febf 100644
--- a/crawl-ref/source/dat/des/branches/depths_encompass.des
+++ b/crawl-ref/source/dat/des/branches/depths_encompass.des
@@ -1575,7 +1575,7 @@ MONS:    lindwurm / death yak / elephant / griffon / polar bear w:5 / \
          red wasp / tarantella w:2 / redback w:3 / wolf spider / \
          sea snake w:5 / alligator / hell hound w:2
 MONS:    swamp dragon w:5 / fire crab w:4 / catoblepas w:4 / \
-         fire dragon w:16 / ice dragon w:16 / orb spider w:1 / spiny worm w:1 / \
+         fire dragon w:16 / ice dragon w:16 / orb spider w:1 / \
          dire elephant w:9 / anaconda / hydra w:15 / snapping turtle / harpy w:4
 MONS:    ghost moth w:4 / death drake w:2 / golden dragon / iron dragon / \
          quicksilver dragon w:15 / shadow dragon w:20 / storm dragon w:20 / \
diff --git a/crawl-ref/source/dat/des/branches/lair.des b/crawl-ref/source/dat/des/branches/lair.des
index 6dbdea8..7d929f6 100644
--- a/crawl-ref/source/dat/des/branches/lair.des
+++ b/crawl-ref/source/dat/des/branches/lair.des
@@ -755,7 +755,7 @@ NAME:   minmay_lair_venomous_thicket
 TAGS:   ruin_lair
 DEPTH:  Lair
 ORIENT: north
-MONS:   black mamba / spiny frog / wolf spider / spiny worm
+MONS:   black mamba / spiny frog / wolf spider
 MONS:   basilisk / komodo dragon / yellow wasp
 MONS:   giant mite / giant centipede
 MONS:   plant / fungus w:2 / bush w:1, bush
@@ -1822,7 +1822,7 @@ TAGS:    no_wall_fixup no_monster_gen no_rotate
 ORIENT:  southeast
 MONS:    plant
 MONS:    elephant slug , worm, brain worm
-MONS:    spiny worm / giant leech w:8, lindwurm, fire dragon
+MONS:    giant leech w:8, lindwurm, fire dragon
 KMONS:   8 = giant firefly
 SHUFFLE: ABC
 SUBST:   P = 11.
diff --git a/crawl-ref/source/dat/des/branches/slime.des b/crawl-ref/source/dat/des/branches/slime.des
index 4edca4d..71efad8 100644
--- a/crawl-ref/source/dat/des/branches/slime.des
+++ b/crawl-ref/source/dat/des/branches/slime.des
@@ -415,27 +415,6 @@ g...x.x.x.x.x...c
       eeeee
 ENDMAP
 
-# Some spiny worms wandered down from Lair.
-NAME: nicolae_slime_spiny_worm_infestation
-DEPTH: Slime, !Slime:$
-SUBST: 2 = 1., X = x., Y = xx.
-KMONS: 1 = spiny worm
-MAP
-  ..@@@@@..
- .....X.....
-.....X.X.....
-...2XY.YX2...
-...XYx1xYX...
-..XYxxxxxYX..
-.X..1xxx1..X.
-..XYxxxxxYX..
-...XYx1xYX...
-...2XY.YX2...
- ....X.X....
-  ....X.....
-   .......
-ENDMAP
-
 NAME: nicolae_slime_barrier
 TAGS: transparent extra
 DEPTH: Slime, !Slime:$
diff --git a/crawl-ref/source/dat/des/branches/spider.des b/crawl-ref/source/dat/des/branches/spider.des
index b2e8698..e5c860e 100644
--- a/crawl-ref/source/dat/des/branches/spider.des
+++ b/crawl-ref/source/dat/des/branches/spider.des
@@ -521,7 +521,7 @@ KMONS:   2 = soldier ant / goliath beetle / vampire mosquito w:5
 KMONS:   3aAdD = brain worm / boulder beetle w:5
 KMONS:   4bB = demonic crawler
 KMONS:   5eE = place:Spider:$ zombie
-KMONS:   6cCfF = spiny worm / emperor scorpion w:8
+KMONS:   6cCfF = wolf spider / emperor scorpion w:8
 KMONS:   0% = crawling corpse hd:3 / nothing
 KITEM:   fF = star_item w:8 / superb_item w:2
 KITEM:   6 = superb_item w:5 / any armour good_item ego:poison_resistance w:5
@@ -1052,7 +1052,7 @@ NSUBST: a = 1:} / 1:] / 1:) / 1:1 / *:.
 KMONS:  bcdefghi = tarantella / redback / wolf spider / \
         jumping spider / orb spider / demonic crawler / \
         scorpion / emperor scorpion / \
-        trapdoor spider / spiny worm / yellow wasp / \
+        trapdoor spider / yellow wasp / \
         red wasp / giant mite / nothing w:100
 SUBST: X = xxxx^....0
 KFEAT: ^ = web / floor w:20
diff --git a/crawl-ref/source/dat/des/branches/swamp.des b/crawl-ref/source/dat/des/branches/swamp.des
index d7cdf41..51bd346 100644
--- a/crawl-ref/source/dat/des/branches/swamp.des
+++ b/crawl-ref/source/dat/des/branches/swamp.des
@@ -299,7 +299,7 @@ NAME:    hangedman_swamp_wriggling
 TAGS:    no_pool_fixup no_monster_gen patrolling transparent
 DEPTH:   Swamp:1-4
 KMONS:   0 = swamp worm
-MONS:    giant leech, spiny worm
+MONS:    giant leech, worm
 KFEAT:   0 = shallow_water
 KFEAT:   t = mangrove
 SHUFFLE: })
diff --git a/crawl-ref/source/dat/des/sprint/arena_sprint.des b/crawl-ref/source/dat/des/sprint/arena_sprint.des
index 7bdbd1d..de71dac 100644
--- a/crawl-ref/source/dat/des/sprint/arena_sprint.des
+++ b/crawl-ref/source/dat/des/sprint/arena_sprint.des
@@ -318,7 +318,7 @@ function arena_sprint_get_monster_set(round, boss)
                 -- Misc
                 "centaur w:20 / centaur warrior w:2 / nessos w:1",
                 "ugly thing",
-                "spiny worm w:5 / giant leech / worm / brain worm w:5",
+                "giant leech / worm / brain worm w:5",
                 "ogre w:15 / two-headed ogre / ogre mage w:5 / w:1 erolcha",
                 "troll / deep troll w:12 / iron troll w:2",
                 "fire drake / swamp drake / steam dragon / swamp dragon /\
diff --git a/crawl-ref/source/dat/des/sprint/linesprint.des b/crawl-ref/source/dat/des/sprint/linesprint.des
index 3ac8a6a..19947af 100644
--- a/crawl-ref/source/dat/des/sprint/linesprint.des
+++ b/crawl-ref/source/dat/des/sprint/linesprint.des
@@ -297,7 +297,7 @@ NAME:     lair_end
 TAGS:     lair_end
 KMONS:    1 = wolf w:15 / warg / hell hound w:8
 KMONS:    2 = yak / death yak w:15 / catoblepas w:5
-KMONS:    3 = worm w:15 / spiny worm / lindwurm / giant firefly / brain worm
+KMONS:    3 = worm w:15 / lindwurm / giant firefly / brain worm
 KMONS:    4 = black bear / grizzly bear / polar bear
 KMONS:    5 = spiny frog / blink frog / vampire mosquito / giant frog /\
               giant leech
diff --git a/crawl-ref/source/dat/des/sprint/pitsprint.des b/crawl-ref/source/dat/des/sprint/pitsprint.des
index f602d78..e60de40 100644
--- a/crawl-ref/source/dat/des/sprint/pitsprint.des
+++ b/crawl-ref/source/dat/des/sprint/pitsprint.des
@@ -52,7 +52,7 @@ function base_monster_setup(e)
            water elemental / earth elemental / deep elf knight band w:5 /\
            deep elf mage band w:3 / deep elf summoner band w:3 /\
            great orb of eyes / naga mage band w:5 / naga warrior band w:5 /\
-           necromancer band w:5 / orc knight band w:5 / spiny worm /\
+           necromancer band w:5 / orc knight band w:5 /\
            harpy band w:5 / fire crab / redback band /\
            vapour / deep elf priest band w:3 / shapeshifter / zombie /\
            skeleton / deep dwarf death knight / eidolon / elephant band w:5 /\
diff --git a/crawl-ref/source/dat/des/sprint/sprint_mu.des b/crawl-ref/source/dat/des/sprint/sprint_mu.des
index 1e582c0..a7e86ef 100644
--- a/crawl-ref/source/dat/des/sprint/sprint_mu.des
+++ b/crawl-ref/source/dat/des/sprint/sprint_mu.des
@@ -500,7 +500,7 @@ KMONS: b = death yak
 KMONS: f = blink frog
 KMONS: d = black mamba
 KMONS: e = azure jelly
-KMONS: g = spiny worm
+KMONS: g = brain worm
 KMONS: A = lindwurm
 KMONS: h = redback
 KMONS: i = hydra
diff --git a/crawl-ref/source/dat/des/variable/mini_monsters.des b/crawl-ref/source/dat/des/variable/mini_monsters.des
index 8071a26..84ebd6f 100644
--- a/crawl-ref/source/dat/des/variable/mini_monsters.des
+++ b/crawl-ref/source/dat/des/variable/mini_monsters.des
@@ -134,10 +134,10 @@ ENDMAP
 # Should work without explicit floor margin (dp)
 NAME:  hive_lemuel
 DEPTH: D:9-, Spider
-MONS:  killer bee, yellow wasp, red wasp, spiny worm
+MONS:  killer bee, yellow wasp, red wasp
 SUBST: ? : .w
 SUBST: 1 = 1 a:2
-SUBST: 1 : 1:15 2 3:2 4:1
+SUBST: 1 : 1:15 2 3:2
 SUBST: * : * R:3
 KITEM: R = w:2 honeycomb / w:1 royal jelly
 COLOUR:a = yellow
diff --git a/crawl-ref/source/enum.h b/crawl-ref/source/enum.h
index 75e78d0..fd704d1 100644
--- a/crawl-ref/source/enum.h
+++ b/crawl-ref/source/enum.h
@@ -2248,8 +2248,8 @@ enum monster_type                      // menv[].type
     MONS_BRAIN_WORM,
 #if TAG_MAJOR_VERSION == 34
     MONS_ROCK_WORM,
-#endif
     MONS_SPINY_WORM,
+#endif
     MONS_WYVERN,
 #if TAG_MAJOR_VERSION > 34
     MONS_DRAKE,                 // genus
diff --git a/crawl-ref/source/melee_attack.cc b/crawl-ref/source/melee_attack.cc
index 4f4dd2d..6aa7f6d 100644
--- a/crawl-ref/source/melee_attack.cc
+++ b/crawl-ref/source/melee_attack.cc
@@ -4787,8 +4787,6 @@ void melee_attack::mons_apply_attack_flavour()
     }
 
     case AF_ACID:
-        if (attacker->type == MONS_SPINY_WORM)
-            defender->poison(attacker, 2 + random2(4));
         splash_defender_with_acid(3);
         break;
 
diff --git a/crawl-ref/source/mon-data.h b/crawl-ref/source/mon-data.h
index 773351f..3c06377 100644
--- a/crawl-ref/source/mon-data.h
+++ b/crawl-ref/source/mon-data.h
@@ -222,6 +222,7 @@ static monsterentry mondata[] =
     AXED_MON(MONS_JELLYFISH)
     AXED_MON(MONS_MONSTROUS_ITEM_MIMIC)
     AXED_MON(MONS_AGATE_SNAIL)
+    AXED_MON(MONS_SPINY_WORM)
 #endif
 
 // Real monsters begin here {dlb}:
@@ -2266,18 +2267,6 @@ static monsterentry mondata[] =
 },
 
 {
-    MONS_SPINY_WORM, 'w', LIGHTGREEN, "spiny worm",
-    M_NO_SKELETON,
-    MR_VUL_POISON | mrd(MR_RES_ACID, 3),
-    1650, 13, MONS_WORM, MONS_SPINY_WORM, MH_NATURAL, -3,
-    { {AT_STING, AF_ACID, 32}, AT_NO_ATK, AT_NO_ATK, AT_NO_ATK },
-    { 12, 3, 5, 0 },
-    10, 6, MST_NO_SPELLS, CE_POISON_CONTAM, Z_BIG, S_SILENT,
-    I_PLANT, HT_LAND, FL_NONE, 8, DEFAULT_ENERGY,
-    MONUSE_NOTHING, MONEAT_NOTHING, SIZE_BIG
-},
-
-{
     MONS_GIANT_LEECH, 'w', RED, "giant leech",
     M_NO_SKELETON | M_BLOOD_SCENT,
     MR_NO_FLAGS,
diff --git a/crawl-ref/source/mon-pick-data.h b/crawl-ref/source/mon-pick-data.h
index 5ad336e..9282aea 100644
--- a/crawl-ref/source/mon-pick-data.h
+++ b/crawl-ref/source/mon-pick-data.h
@@ -102,7 +102,6 @@ static const pop_entry pop_d[] =
   { 16, 20,  136, SEMI, MONS_DEEP_ELF_FIGHTER },
   { 16, 22,   40, PEAK, MONS_KOBOLD_DEMONOLOGIST },
   { 16, 24,  258, PEAK, MONS_FREEZING_WRAITH },
-  { 16, 24,  176, PEAK, MONS_SPINY_WORM },
   { 16, 24,   89, PEAK, MONS_REDBACK },
   { 16, 24,   66, PEAK, MONS_BORING_BEETLE },
   { 16, 24,   25, PEAK, MONS_SHADOW_WRAITH },
@@ -291,7 +290,6 @@ static const pop_entry pop_lair[] =
   {  5,  9,   17, SEMI, MONS_REDBACK },
   {  5,  9,   17, SEMI, MONS_WANDERING_MUSHROOM },
   {  3,  8,  192, UP  , MONS_DEATH_YAK },
-  {  6, 10,   21, SEMI, MONS_SPINY_WORM },
   {  8,  8,    1, FLAT, MONS_FIRE_CRAB },
   {  3,  8,  180, UP  , MONS_BORING_BEETLE },
   {  4,  8,   89, UP  , MONS_BOULDER_BEETLE },
@@ -400,7 +398,6 @@ static const pop_entry pop_spider[] =
   {  1,  5,   89, FLAT, MONS_GOLIATH_BEETLE },
   {  1,  5,  879, FLAT, MONS_TRAPDOOR_SPIDER },
   {  1,  5,  607, FLAT, MONS_REDBACK },
-  {  1,  7,   52, SEMI, MONS_SPINY_WORM },
   {  1,  7,   52, SEMI, MONS_BORING_BEETLE },
   {  1,  7,   89, SEMI, MONS_BOULDER_BEETLE },
   {  1,  7,  763, FLAT, MONS_JUMPING_SPIDER },
@@ -476,7 +473,6 @@ static const pop_entry pop_vaults[] =
   {  0,  2,    3, SEMI, MONS_TOENAIL_GOLEM },
   { -4,  6,  334, SEMI, MONS_YAKTAUR },
   { -4,  6,  420, SEMI, MONS_OGRE_MAGE },
-  { -3,  7,  192, PEAK, MONS_SPINY_WORM },
   {  0, 10,  367, FLAT, MONS_VAULT_WARDEN },
   { -2,  6,   89, PEAK, MONS_ICE_DRAGON },
   { -2,  6,  136, SEMI, MONS_GREAT_ORB_OF_EYES },
diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc
index b1f362a..47daea0 100644
--- a/crawl-ref/source/tilepick.cc
+++ b/crawl-ref/source/tilepick.cc
@@ -1393,8 +1393,10 @@ static tileidx_t _tileidx_monster_base(int type, bool in_water, int colour,
         return TILEP_MONS_SWAMP_WORM;
     case MONS_GIANT_LEECH:
         return TILEP_MONS_GIANT_LEECH;
+#if TAG_MAJOR_VERSION == 34
     case MONS_SPINY_WORM:
         return TILEP_MONS_SPINY_WORM;
+#endif
 
     // small abominations ('x')
     case MONS_UNSEEN_HORROR:
@@ -4023,8 +4025,10 @@ static tileidx_t _tileidx_corpse(const item_def &item)
         return TILE_CORPSE_SWAMP_WORM;
     case MONS_GIANT_LEECH:
         return TILE_CORPSE_GIANT_LEECH;
+#if TAG_MAJOR_VERSION == 34
     case MONS_SPINY_WORM:
         return TILE_CORPSE_SPINY_WORM;
+#endif
 
     // flying insects ('y')
     case MONS_VAMPIRE_MOSQUITO:
-- 
1.8.1.4

