From 172527be65069465e9d7b75938178a9cdee60c7d Mon Sep 17 00:00:00 2001 From: ennewalker Date: Fri, 29 Feb 2008 04:25:02 +0000 Subject: Trap art update to have different graphics for each kind of trap. Also, improved ettin and zombie tiles. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3477 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/libgui.cc | 7 +-- crawl-ref/source/rltiles/dc-dngn.txt | 14 ++++-- .../source/rltiles/dc-dngn/dngn_trap_alarm.bmp | Bin 0 -> 2102 bytes .../source/rltiles/dc-dngn/dngn_trap_arrow.bmp | Bin 0 -> 2102 bytes crawl-ref/source/rltiles/dc-dngn/dngn_trap_axe.bmp | Bin 0 -> 2102 bytes .../source/rltiles/dc-dngn/dngn_trap_blade.bmp | Bin 0 -> 2102 bytes .../source/rltiles/dc-dngn/dngn_trap_bolt.bmp | Bin 0 -> 2102 bytes .../source/rltiles/dc-dngn/dngn_trap_dart.bmp | Bin 0 -> 2102 bytes crawl-ref/source/rltiles/dc-dngn/dngn_trap_iii.bmp | Bin 2102 -> 0 bytes .../source/rltiles/dc-dngn/dngn_trap_magical.bmp | Bin 2102 -> 0 bytes .../rltiles/dc-dngn/dngn_trap_mechanical.bmp | Bin 2102 -> 0 bytes .../source/rltiles/dc-dngn/dngn_trap_needle.bmp | Bin 0 -> 2102 bytes crawl-ref/source/rltiles/dc-dngn/dngn_trap_net.bmp | Bin 0 -> 2102 bytes .../source/rltiles/dc-dngn/dngn_trap_spear.bmp | Bin 0 -> 2102 bytes .../source/rltiles/dc-dngn/dngn_trap_teleport.bmp | Bin 0 -> 2102 bytes crawl-ref/source/rltiles/dc-dngn/dngn_trap_zot.bmp | Bin 0 -> 2102 bytes crawl-ref/source/rltiles/dc-mon/ettin.bmp | Bin 2102 -> 2102 bytes crawl-ref/source/rltiles/dc-mon/zombie_large.bmp | Bin 2102 -> 2102 bytes crawl-ref/source/rltiles/dc-mon/zombie_small.bmp | Bin 2102 -> 2102 bytes crawl-ref/source/tile1.cc | 47 ++++++++++++++++++--- crawl-ref/source/tiles.h | 2 +- crawl-ref/source/view.cc | 2 +- 22 files changed, 55 insertions(+), 17 deletions(-) create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_alarm.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_arrow.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_axe.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_blade.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_bolt.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_dart.bmp delete mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_iii.bmp delete mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_magical.bmp delete mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_mechanical.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_needle.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_net.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_spear.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_teleport.bmp create mode 100644 crawl-ref/source/rltiles/dc-dngn/dngn_trap_zot.bmp (limited to 'crawl-ref') diff --git a/crawl-ref/source/libgui.cc b/crawl-ref/source/libgui.cc index 70bd5fac2b..e5cb9f269b 100644 --- a/crawl-ref/source/libgui.cc +++ b/crawl-ref/source/libgui.cc @@ -338,10 +338,7 @@ int tile_idx_unseen_terrain(int x, int y, int what) unsigned short grid_color; get_item_symbol(feature, &grid_symbol, &grid_color); - if (feature == DNGN_SECRET_DOOR) - feature = (unsigned int)grid_secret_door_appearance(x, y); - - int t = tileidx_feature(feature); + int t = tileidx_feature(feature, gc.x, gc.y); if (t == TILE_ERROR || what == ' ') t = tileidx_unseen(what, gc); @@ -402,7 +399,7 @@ void GmapUpdate(int x, int y, int what, bool upd_tile) { env.tile_bk_fg[x][y]= t; if (env.tile_bk_bg[x][y] == 0) - env.tile_bk_bg[x][y] = tileidx_feature(DNGN_UNSEEN); + env.tile_bk_bg[x][y] = tileidx_feature(DNGN_UNSEEN, x, y); } else { diff --git a/crawl-ref/source/rltiles/dc-dngn.txt b/crawl-ref/source/rltiles/dc-dngn.txt index e42055a6bc..96e0562c47 100644 --- a/crawl-ref/source/rltiles/dc-dngn.txt +++ b/crawl-ref/source/rltiles/dc-dngn.txt @@ -97,10 +97,18 @@ dngn_ice_statue DNGN_ICE_STATUE dngn_enter_hell DNGN_ENTER_HELL %rim 0 dngn_branch_stairs DNGN_BRANCH_STAIRS -dngn_trap_mechanical DNGN_TRAP_MECHANICAL -dngn_trap_magical DNGN_TRAP_MAGICAL +dngn_trap_dart DNGN_TRAP_DART +dngn_trap_arrow DNGN_TRAP_ARROW +dngn_trap_spear DNGN_TRAP_SPEAR +dngn_trap_axe DNGN_TRAP_AXE +dngn_trap_teleport DNGN_TRAP_TELEPORT +dngn_trap_alarm DNGN_TRAP_ALARM +dngn_trap_blade DNGN_TRAP_BLADE +dngn_trap_bolt DNGN_TRAP_BOLT +dngn_trap_net DNGN_TRAP_NET +dngn_trap_zot DNGN_TRAP_ZOT +dngn_trap_needle DNGN_TRAP_NEEDLE dngn_trap_shaft DNGN_TRAP_SHAFT -dngn_trap_iii DNGN_TRAP_III ###847 DNGN_UNDISCOVERED_TRAP stone_stairs_down DNGN_STONE_STAIRS_DOWN #nh-dngn/staircase_down DNGN_STONE_STAIRS_DOWN_II diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_alarm.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_alarm.bmp new file mode 100644 index 0000000000..87e83cc7d6 Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_alarm.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_arrow.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_arrow.bmp new file mode 100644 index 0000000000..1656251d6f Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_arrow.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_axe.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_axe.bmp new file mode 100644 index 0000000000..74c0a7908b Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_axe.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_blade.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_blade.bmp new file mode 100644 index 0000000000..77db96cd4f Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_blade.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_bolt.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_bolt.bmp new file mode 100644 index 0000000000..e149ed84d7 Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_bolt.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_dart.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_dart.bmp new file mode 100644 index 0000000000..d2ea12ca2d Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_dart.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_iii.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_iii.bmp deleted file mode 100644 index a32668841a..0000000000 Binary files a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_iii.bmp and /dev/null differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_magical.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_magical.bmp deleted file mode 100644 index 6afd70f5ea..0000000000 Binary files a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_magical.bmp and /dev/null differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_mechanical.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_mechanical.bmp deleted file mode 100644 index 9cd689daaa..0000000000 Binary files a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_mechanical.bmp and /dev/null differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_needle.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_needle.bmp new file mode 100644 index 0000000000..843ff7ca77 Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_needle.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_net.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_net.bmp new file mode 100644 index 0000000000..2b291d7fb6 Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_net.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_spear.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_spear.bmp new file mode 100644 index 0000000000..f42f7ba8ac Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_spear.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_teleport.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_teleport.bmp new file mode 100644 index 0000000000..7e6e37c44e Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_teleport.bmp differ diff --git a/crawl-ref/source/rltiles/dc-dngn/dngn_trap_zot.bmp b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_zot.bmp new file mode 100644 index 0000000000..a32668841a Binary files /dev/null and b/crawl-ref/source/rltiles/dc-dngn/dngn_trap_zot.bmp differ diff --git a/crawl-ref/source/rltiles/dc-mon/ettin.bmp b/crawl-ref/source/rltiles/dc-mon/ettin.bmp index 41a5336f69..d7791d1bd2 100644 Binary files a/crawl-ref/source/rltiles/dc-mon/ettin.bmp and b/crawl-ref/source/rltiles/dc-mon/ettin.bmp differ diff --git a/crawl-ref/source/rltiles/dc-mon/zombie_large.bmp b/crawl-ref/source/rltiles/dc-mon/zombie_large.bmp index 405c01303e..0cbe128672 100644 Binary files a/crawl-ref/source/rltiles/dc-mon/zombie_large.bmp and b/crawl-ref/source/rltiles/dc-mon/zombie_large.bmp differ diff --git a/crawl-ref/source/rltiles/dc-mon/zombie_small.bmp b/crawl-ref/source/rltiles/dc-mon/zombie_small.bmp index 3bd60fc8b6..2a25ca2b28 100644 Binary files a/crawl-ref/source/rltiles/dc-mon/zombie_small.bmp and b/crawl-ref/source/rltiles/dc-mon/zombie_small.bmp differ diff --git a/crawl-ref/source/tile1.cc b/crawl-ref/source/tile1.cc index 3f3e3e5a61..b59feeb8b6 100644 --- a/crawl-ref/source/tile1.cc +++ b/crawl-ref/source/tile1.cc @@ -18,6 +18,7 @@ #include "terrain.h" #include "tiles.h" #include "tiledef-p.h" +#include "traps.h" #include "travel.h" #include "view.h" @@ -1720,7 +1721,40 @@ int tileidx_item_throw(const item_def &item, int dx, int dy) return tileidx_item(item); } -int tileidx_feature(int object) +static int tileidx_trap(trap_type type) +{ + switch (type) + { + case TRAP_DART: + return TILE_DNGN_TRAP_DART; + case TRAP_ARROW: + return TILE_DNGN_TRAP_ARROW; + case TRAP_SPEAR: + return TILE_DNGN_TRAP_SPEAR; + case TRAP_AXE: + return TILE_DNGN_TRAP_AXE; + case TRAP_TELEPORT: + return TILE_DNGN_TRAP_TELEPORT; + case TRAP_ALARM: + return TILE_DNGN_TRAP_ALARM; + case TRAP_BLADE: + return TILE_DNGN_TRAP_BLADE; + case TRAP_BOLT: + return TILE_DNGN_TRAP_BOLT; + case TRAP_NET: + return TILE_DNGN_TRAP_NET; + case TRAP_ZOT: + return TILE_DNGN_TRAP_ZOT; + case TRAP_NEEDLE: + return TILE_DNGN_TRAP_NEEDLE; + case TRAP_SHAFT: + return TILE_DNGN_TRAP_SHAFT; + default: + return TILE_ERROR; + } +} + +int tileidx_feature(int object, int gx, int gy) { switch (object) { @@ -1728,8 +1762,9 @@ int tileidx_feature(int object) return TILE_DNGN_UNSEEN; case DNGN_ROCK_WALL: case DNGN_PERMAROCK_WALL: - case DNGN_SECRET_DOOR: return TILE_DNGN_ROCK_WALL_OFS; + case DNGN_SECRET_DOOR: + return (unsigned int)grid_secret_door_appearance(gx, gy); case DNGN_CLEAR_ROCK_WALL: case DNGN_CLEAR_STONE_WALL: case DNGN_CLEAR_PERMAROCK_WALL: @@ -1764,11 +1799,9 @@ int tileidx_feature(int object) case DNGN_OPEN_DOOR: return TILE_DNGN_OPEN_DOOR; case DNGN_TRAP_MECHANICAL: - return TILE_DNGN_TRAP_MECHANICAL; case DNGN_TRAP_MAGICAL: - return TILE_DNGN_TRAP_MAGICAL; case DNGN_TRAP_NATURAL: - return TILE_DNGN_TRAP_SHAFT; + return tileidx_trap(trap_type_at_xy(gx, gy)); case DNGN_ENTER_SHOP: return TILE_DNGN_ENTER_SHOP; case DNGN_ENTER_LABYRINTH: @@ -2019,7 +2052,7 @@ int tileidx_unseen(int ch, const coord_def& gc) case '[': case ']': res = TILE_UNSEEN_ARMOUR; break; case '\\': res = TILE_STAFF_OFFSET; break; - case '^': res = TILE_DNGN_TRAP_MAGICAL; break; + case '^': res = TILE_DNGN_TRAP_ZOT; break; case '_': case 131: res = TILE_UNSEEN_ALTAR; break; case '~': res = TILE_UNSEEN_ITEM; break; @@ -3641,7 +3674,7 @@ void tile_draw_floor() if (object == DNGN_SECRET_DOOR) object = (int)grid_secret_door_appearance(gc.x, gc.y); - tile_dngn[gc.x][gc.y] = tileidx_feature(object); + tile_dngn[gc.x][gc.y] = tileidx_feature(object, gc.x, gc.y); if (is_travelable_stair((dungeon_feature_type)object) && !travel_cache.know_stair(gc)) diff --git a/crawl-ref/source/tiles.h b/crawl-ref/source/tiles.h index 81853bde5a..6578823d37 100644 --- a/crawl-ref/source/tiles.h +++ b/crawl-ref/source/tiles.h @@ -7,7 +7,7 @@ //**convert in-game data to tile index int tileidx(unsigned int object, int extra); -int tileidx_feature(int object); +int tileidx_feature(int object, int gx, int gy); int tileidx_player(int job); int tileidx_unseen(int ch, const coord_def& gc); int tileidx_item(const item_def &item); diff --git a/crawl-ref/source/view.cc b/crawl-ref/source/view.cc index dea266d6fe..d62aeae652 100644 --- a/crawl-ref/source/view.cc +++ b/crawl-ref/source/view.cc @@ -683,7 +683,7 @@ void clear_map(bool clear_detected_items, bool clear_detected_monsters) env.tile_bk_fg[x][y] = 0; env.tile_bk_bg[x][y] = is_terrain_known(x, y) ? tile_idx_unseen_terrain(x, y, grd[x][y]) : - tileidx_feature(DNGN_UNSEEN); + tileidx_feature(DNGN_UNSEEN, x, y); #endif } } -- cgit v1.2.3-54-g00ecf