summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-12-07 16:04:17 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-12-07 16:04:17 +0000
commit9575aca8560b78a5c4dbb50698ab7902863708d3 (patch)
tree042915f3166e0e75e6973a840f370991bb98ba76 /crawl-ref
parent247c86d819723d311cdf53eed4bbbe63b272eadc (diff)
downloadcrawl-ref-9575aca8560b78a5c4dbb50698ab7902863708d3.tar.gz
crawl-ref-9575aca8560b78a5c4dbb50698ab7902863708d3.zip
Add tiles for disturbance in shallow water (only preliminary since you
can only recognize them if you're looking for them), and for closed shops. Move statue tiles into monster folder. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7767 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/mon-data.h4
-rw-r--r--crawl-ref/source/rltiles/dc-dngn.txt35
-rw-r--r--crawl-ref/source/rltiles/dc-dngn/dngn_enter_shop.pngbin1366 -> 0 bytes
-rw-r--r--crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_disturbance.pngbin0 -> 1112 bytes
-rw-r--r--crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_murky_disturbance.pngbin0 -> 1111 bytes
-rw-r--r--crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop.pngbin0 -> 1514 bytes
-rw-r--r--crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop_closed.pngbin0 -> 1641 bytes
-rw-r--r--crawl-ref/source/rltiles/dc-mon.txt8
-rw-r--r--crawl-ref/source/rltiles/dc-mon/ice_statue.png (renamed from crawl-ref/source/rltiles/dc-dngn/dngn_ice_statue.png)bin695 -> 695 bytes
-rw-r--r--crawl-ref/source/rltiles/dc-mon/orange_crystal_statue.png (renamed from crawl-ref/source/rltiles/dc-dngn/dngn_orange_crystal_statue.png)bin694 -> 694 bytes
-rw-r--r--crawl-ref/source/rltiles/dc-mon/silver_statue.png (renamed from crawl-ref/source/rltiles/dc-dngn/dngn_silver_statue.png)bin690 -> 690 bytes
-rw-r--r--crawl-ref/source/shopping.cc17
-rw-r--r--crawl-ref/source/shopping.h1
-rw-r--r--crawl-ref/source/tilepick.cc21
-rw-r--r--crawl-ref/source/tilesdl.cc2
15 files changed, 53 insertions, 35 deletions
diff --git a/crawl-ref/source/mon-data.h b/crawl-ref/source/mon-data.h
index ea44be5c0f..54f5ffb8a3 100644
--- a/crawl-ref/source/mon-data.h
+++ b/crawl-ref/source/mon-data.h
@@ -2159,11 +2159,11 @@ static monsterentry mondata[] = {
MONS_HARPY, 'H', GREEN, "harpy",
M_FLIES | M_WARM_BLOOD | M_BATTY,
MR_RES_POISON,
- 1000, 10, MONS_HARPY, MONS_HARPY, MH_NATURAL, -3,
+ 1000, 12, MONS_HARPY, MONS_HARPY, MH_NATURAL, -3,
{ {AT_BITE, AF_PLAIN, 10}, {AT_CLAW, AF_PLAIN, 8},
{AT_CLAW, AF_STEAL_FOOD, 5}, AT_NO_ATK },
{ 7, 3, 5, 0 },
- 2, 10, MST_NO_SPELLS, CE_CONTAMINATED, Z_BIG, S_SCREECH, I_ANIMAL,
+ 2, 10, MST_NO_SPELLS, CE_CONTAMINATED, Z_BIG, S_SCREECH, I_NORMAL,
HT_LAND, 30, DEFAULT_ENERGY, MONUSE_NOTHING, SIZE_MEDIUM
},
diff --git a/crawl-ref/source/rltiles/dc-dngn.txt b/crawl-ref/source/rltiles/dc-dngn.txt
index 7f4c9b3ad7..b2e577261e 100644
--- a/crawl-ref/source/rltiles/dc-dngn.txt
+++ b/crawl-ref/source/rltiles/dc-dngn.txt
@@ -315,21 +315,11 @@ floor/lava1
floor/lava2
floor/lava3
dngn_deep_water DNGN_DEEP_WATER
-dngn_deep_water
-dngn_deep_water
-dngn_deep_water
dngn_shallow_water DNGN_SHALLOW_WATER
-dngn_shallow_water
-dngn_shallow_water
-dngn_shallow_water
+dngn_shallow_water_disturbance DNGN_SHALLOW_WATER_DISTURBANCE
dngn_deep_water_murky DNGN_DEEP_WATER_MURKY
-dngn_deep_water_murky
-dngn_deep_water_murky
-dngn_deep_water_murky
dngn_shallow_water_murky DNGN_SHALLOW_WATER_MURKY
-dngn_shallow_water_murky
-dngn_shallow_water_murky
-dngn_shallow_water_murky
+dngn_shallow_water_murky_disturbance DNGN_SHALLOW_WATER_MURKY_DISTURBANCE
wall/stone2_gray0 DNGN_STONE_WALL
wall/stone2_gray1
@@ -373,20 +363,23 @@ rock_stairs_down DNGN_ROCK_STAIRS_DOWN
stone_stairs_up DNGN_STONE_STAIRS_UP
rock_stairs_up DNGN_ROCK_STAIRS_UP
+%sdir dc-dngn/shops
##dngn_enter_shop DNGN_ENTER_SHOP
%shrink 0
%back dngn_enter_shop
-shops/shop_general SHOP_GENERAL
-shops/shop_weapon SHOP_WEAPONS
-shops/shop_armour SHOP_ARMOUR
-shops/shop_food SHOP_FOOD
-shops/shop_books SHOP_BOOKS
-shops/shop_scrolls SHOP_SCROLLS
-shops/shop_wands SHOP_WANDS
-shops/shop_jewellery SHOP_JEWELLERY
-shops/shop_potions SHOP_POTIONS
+shop_general SHOP_GENERAL
+shop_weapon SHOP_WEAPONS
+shop_armour SHOP_ARMOUR
+shop_food SHOP_FOOD
+shop_books SHOP_BOOKS
+shop_scrolls SHOP_SCROLLS
+shop_wands SHOP_WANDS
+shop_jewellery SHOP_JEWELLERY
+shop_potions SHOP_POTIONS
%back none
%shrink 1
+dngn_enter_shop_closed SHOP_CLOSED
+%sdir dc-dngn
dngn_enter_labyrinth DNGN_ENTER_LABYRINTH
dngn_enter_dis DNGN_ENTER_DIS
diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_enter_shop.png b/crawl-ref/source/rltiles/dc-dngn/dngn_enter_shop.png
deleted file mode 100644
index 8018eaf621..0000000000
--- a/crawl-ref/source/rltiles/dc-dngn/dngn_enter_shop.png
+++ /dev/null
Binary files differ
diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_disturbance.png b/crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_disturbance.png
new file mode 100644
index 0000000000..55fea55e82
--- /dev/null
+++ b/crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_disturbance.png
Binary files differ
diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_murky_disturbance.png b/crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_murky_disturbance.png
new file mode 100644
index 0000000000..75d75e96eb
--- /dev/null
+++ b/crawl-ref/source/rltiles/dc-dngn/dngn_shallow_water_murky_disturbance.png
Binary files differ
diff --git a/crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop.png b/crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop.png
new file mode 100644
index 0000000000..fb776a6f8e
--- /dev/null
+++ b/crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop.png
Binary files differ
diff --git a/crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop_closed.png b/crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop_closed.png
new file mode 100644
index 0000000000..20cb78aa03
--- /dev/null
+++ b/crawl-ref/source/rltiles/dc-dngn/shops/dngn_enter_shop_closed.png
Binary files differ
diff --git a/crawl-ref/source/rltiles/dc-mon.txt b/crawl-ref/source/rltiles/dc-mon.txt
index 846f426cbe..273a2a168f 100644
--- a/crawl-ref/source/rltiles/dc-mon.txt
+++ b/crawl-ref/source/rltiles/dc-mon.txt
@@ -202,11 +202,9 @@ toenail_golem MONS_TOENAIL_GOLEM /*'8'*/
wood_golem MONS_WOOD_GOLEM /*'8'*/
## Statues
-%sdir dc-dngn
-dngn_ice_statue ICE_STATUE /*'8'*/
-dngn_silver_statue SILVER_STATUE /*'8'*/
-dngn_orange_crystal_statue ORANGE_CRYSTAL_STATUE /*'8'*/
-%sdir dc-mon
+ice_statue ICE_STATUE /*'8'*/
+silver_statue SILVER_STATUE /*'8'*/
+orange_crystal_statue ORANGE_CRYSTAL_STATUE /*'8'*/
## Gargoyles
gargoyle MONS_GARGOYLE /*'9'*/
diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_ice_statue.png b/crawl-ref/source/rltiles/dc-mon/ice_statue.png
index fa946250bd..fa946250bd 100644
--- a/crawl-ref/source/rltiles/dc-dngn/dngn_ice_statue.png
+++ b/crawl-ref/source/rltiles/dc-mon/ice_statue.png
Binary files differ
diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_orange_crystal_statue.png b/crawl-ref/source/rltiles/dc-mon/orange_crystal_statue.png
index 04cdce0087..04cdce0087 100644
--- a/crawl-ref/source/rltiles/dc-dngn/dngn_orange_crystal_statue.png
+++ b/crawl-ref/source/rltiles/dc-mon/orange_crystal_statue.png
Binary files differ
diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_silver_statue.png b/crawl-ref/source/rltiles/dc-mon/silver_statue.png
index ccd5986f35..ccd5986f35 100644
--- a/crawl-ref/source/rltiles/dc-dngn/dngn_silver_statue.png
+++ b/crawl-ref/source/rltiles/dc-mon/silver_statue.png
Binary files differ
diff --git a/crawl-ref/source/shopping.cc b/crawl-ref/source/shopping.cc
index 7233e11905..455abd005a 100644
--- a/crawl-ref/source/shopping.cc
+++ b/crawl-ref/source/shopping.cc
@@ -1667,6 +1667,15 @@ unsigned int item_value( item_def item, bool ident )
return (valued);
} // end item_value()
+// Returns true if a shop is out of stock.
+bool shop_is_closed(const coord_def &where)
+{
+ for (int i = 0; i < MAX_SHOPS; i++)
+ if (env.shop[i].pos == where)
+ return _shop_get_stock(i).empty();
+
+ return (false);
+}
void shop()
{
@@ -1703,12 +1712,12 @@ shop_struct *get_shop(const coord_def& where)
if (grd(where) != DNGN_ENTER_SHOP)
return (NULL);
- // find shop
+ // Find shop.
for (int shoppy = 0; shoppy < MAX_SHOPS; shoppy ++)
{
- // find shop index plus a little bit of paranoia
- if (env.shop[shoppy].pos == where &&
- env.shop[shoppy].type != SHOP_UNASSIGNED)
+ // Find shop index plus a little bit of paranoia.
+ if (env.shop[shoppy].pos == where
+ && env.shop[shoppy].type != SHOP_UNASSIGNED)
{
return (&env.shop[shoppy]);
}
diff --git a/crawl-ref/source/shopping.h b/crawl-ref/source/shopping.h
index 8cdb713626..67930c6fe3 100644
--- a/crawl-ref/source/shopping.h
+++ b/crawl-ref/source/shopping.h
@@ -18,6 +18,7 @@ int randart_value( const item_def &item );
// ident == true overrides the item ident level and gives the price
// as if the item was fully id'd
unsigned int item_value( item_def item, bool ident = false );
+bool shop_is_closed(const coord_def &where);
void shop();
shop_struct *get_shop(const coord_def& where);
diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc
index b6a584da64..b192db52e8 100644
--- a/crawl-ref/source/tilepick.cc
+++ b/crawl-ref/source/tilepick.cc
@@ -2245,7 +2245,12 @@ static int _tileidx_trap(trap_type type)
static int _tileidx_shop(coord_def where)
{
+ if (shop_is_closed(where))
+ return TILE_SHOP_CLOSED;
+
const shop_struct *shop = get_shop(where);
+ if (!shop)
+ return TILE_ERROR;
switch (shop->type)
{
@@ -2315,12 +2320,22 @@ int tileidx_feature(int object, int gx, int gy)
}
return TILE_DNGN_DEEP_WATER;
case DNGN_SHALLOW_WATER:
+ {
+ int t = TILE_DNGN_SHALLOW_WATER;
if (_is_sewers() || env.grid_colours[gx][gy] == GREEN
|| env.grid_colours[gx][gy] == LIGHTGREEN)
{
- return TILE_DNGN_SHALLOW_WATER_MURKY;
+ t = TILE_DNGN_SHALLOW_WATER_MURKY;
}
- return TILE_DNGN_SHALLOW_WATER;
+ if (mgrd[gx][gy] != NON_MONSTER)
+ {
+ monsters *mon = &menv[mgrd[gx][gy]];
+ // Add disturbance to tile.
+ if (mons_is_submerged(mon))
+ t++;
+ }
+ return (t);
+ }
case DNGN_FLOOR:
case DNGN_UNDISCOVERED_TRAP:
return TILE_FLOOR_NORMAL;
@@ -2634,7 +2649,7 @@ static inline void _finalize_tile(unsigned int *tile,
// TODO enne - expose this as an option, so ziggurat can use it too.
// Alternatively, allow the stone type to be set.
- //
+ //
// Hack: Swap rock/stone in crypt and tomb, because there are
// only stone walls.
if ((you.where_are_you == BRANCH_CRYPT || you.where_are_you == BRANCH_TOMB)
diff --git a/crawl-ref/source/tilesdl.cc b/crawl-ref/source/tilesdl.cc
index 039a542321..0fecc43dd4 100644
--- a/crawl-ref/source/tilesdl.cc
+++ b/crawl-ref/source/tilesdl.cc
@@ -190,6 +190,8 @@ bool TilesFramework::initialise()
return false;
}
+ init_player_map();
+
m_region_tile = new DungeonRegion(&m_image, m_fonts[lbl_font].font,
TILE_X, TILE_Y);
m_region_map = new MapRegion(Options.tile_map_pixels);