in removing several unused functions from the latter file.
Renaming tiles options show_items and title_screen to tile_show_items and tile_title_screen. And as usual, cleaning up tiles code some more.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3876 c06c8d41-db1a-0410-9941-cceddc491573
O6ZMFKDI3XO2SWPNEYHIPYFDWJR4TVDP5BAATK6LVCVETQID6E7AC ZEEHSUEFFOYCPTG47GVQZ3BGZNEJ6ZRQDTFHGN7QG2Q2I6UJ5BLAC NP3I4URC7ZLWSOQ3KFSM7Y2LM2K7QRJGNQTOYW3ZF3FATZZJHCVQC QHRWMYQFJ3Q3FM34HVDEIETLLWDMVBQPDIVHJDF3U7DLNYJAVP2QC NVJBJYMBL5QMGDAXDYBF5Z63UMPKWX27V6PUSQ7QM6NISI3RCFZQC C3OUSRCHDUOJ6ELVDX6YWMQQVXDJLNEXTXWCDDAYWTKNPFPNSONAC NMA2HIGBH56WSZB5KQN2TMFC2BVELZOXJWAKKPOO7ZR6V3Z2ZR2QC S7DVJRHOA2DESNNM77EJYG3GVVOQW7SUNEXMNOLZRFJERKCPS2OQC LCCFD6BLLDJO3PVPKKJ7YJ4PQUHLUKQBWRCYRH26UVMOTYZPJQRQC 67WH6I2XIMRRL26UM4FJJJZEMJIDPW5Q77FFNZGKWGTWS7GTCJ6QC M5JRISNFA35UTUE6EZKABYLNFLD5Y2CM3CEASFEWM4QRNYC3UK3QC SKV6JBDAWUWTFECFSQARSNA3DDPUFCR7N3T7D5J35NYTEDMXLP3QC JDZCDMUCQ7VENYVLB62KQWUIRGABID37OKATOKCBUPCDL7W75NPAC AMBBZGB4EP4MA2ILKQSAY4O2XQAIH673JHCDQ6N4MBGL2MAZGXNAC DMLFJIPOE4ZXUFQ25VVEZCMURP2UPJBBWDGQS3DPQVUNVBBQ4GDQC TM35IHKZZNBCMR3ERBS4EYHGUK5IVCPUT2JUITMT74AYAIUZSYFQC U6ILMKBXTQZYT62IGD2CALYNU4VQGRSTHN6QBFBU7BVUBHWYOEQQC 25CH7HH4LKXFIZ75YNMXS3TSXO6O27DYSOPLOD45K4OCNFWLS4LQC ZWVXM43CBKDWRFNZ432Z6G6J7DBA2GKRRGCSZQCRQS2M4YX53ETQC LP5EK64IEM7AHNYQID4GGKOQJQNZLKY4DCCZN47SIUZ6IXAXH5UAC F7X6HVUKHZXYURABYAZJHRYBV7UZTIPOWJMGCMDK26FQ66WGKFZAC STQDS62PD6PCLYBAB7LPYTG47WMBJP3FIJL55UHC3XFDPGERC3UQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC FRLPNEJJAGFWOJ5KJAE4PUQZN3EA4UAFKKUNN2UL5CRWKJRLMMJQC IHOKNI4O7EEW4UBMKHP6XOZNEIQSW4AYOT4O3JXUIXNNR553IQAQC ZVJPCEGKZ3MMRTTN563KQOSA7LFVFMMUDVARW2W5YQG6XZB6U7UAC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC BDFIS53HAIHOCXQ5BE7WCO2MEOFCUQPFY4JGUWVLWY6JO3IFMEKQC SGR2P5BGJIJHVSSQYQHWS4ORLVHQBZTDES3D4BFC6SVAQXSKENNQC EFWEYIB2R3DPD3JWIPU6LS6SFLPMYN7J7X4GBZR7DJWKHJ3UELSAC HL6BR2XEXRPWBU4MQNI52H65OSJB46KOLC4R3KWNQYDEPPXBAH3AC 4UXFU3FZOCBSLDQ4S7MJKAE2H7VUHCNRDQMIY6NJ3PHYXWNGISDQC VNIAJEGE3PYE6F6EAMCQDWMAS52EQTKJUPAFXK7ARCITZ326WTTQC 74LQ7JXVLAFSHLI7LCBKFX47CNTYSKGUQSXNX5FCIUIGCC2JTR3QC 77H4BWWPPGLM3PLZH4QTAJRXIZTSDVNCOKZE223I437FN2UJ34RQC XDJGQNFELURGXMUAOOVALQMSLAJVHMG63KPKVA33HTJFVZROGZ4AC ESWIM76FGJL4QFLSHU6AC4D74PT7OPLQ7ZCJYWLZS5UCBAJDXYHAC HZK3YN3SAISTDS5JI4COBYFG7YB4ABDVENXWZZEYLFA2LDI232VAC 5CNYJQGEILRX2TAYBWMVECJ6D4OPV2CD6YPDIERS2SR77Z4LTZPAC 43ZTEB57FU7KE5EVMYWZONNVJBZCGF3JEAJZIY25LC4LGE65PG5QC DGB7DKTR6OEQEMOOF3MAHDT4PAPKZ54Y33MWYVD7XIOESPFAXHQQC GT7BSR54BVJKHUCLEBTELGBMNBFFDQW52EVC4XKVEMUVG2UGZMDAC RISMOCQM6BKK4XSIRKYLOBB2UPDYJNDAL6OGIIR5GGNZQAK5YSZAC VDNTHQOGDJKBTO7MKRCYH5MCOPCUWHFLPHAWDYDUIV7JKTKENBYQC 4GFCF6N3MZSCHUB77Z3SQYJ3FYR5N3VBW2CGWANLJ74O5FEQH3CQC 5RK245FAGZFCDDYG4AZAXSC7JPVIJG4DSAVAKHWWVBUNGICHYNJQC 2B4AQJIATJ4E7RFN6OTQITZNDBAPQ2VWWXLBCVYSORAFG2GIIDNQC UKYGZDI6PYZPXDACCQGVPHANUP5ADCSNROOZIE7LYIZQWSNFHJZAC SIKFXNXSAMU6IYRGDG6SWP3LOX6SEE7PDFA7RVQAGG2SLWQ72D2QC 43BZJ22AMZ4562BBF325ABM5W7GLUT3MDUOHAQ5QJPPQFGTBISKAC O2GH2BHUL4XXIIJSMKNV2NIC4KQACE6HLMUL4KEUDFNFEAGMZSZAC BFYHDL4EHSPKKC6EPKDRPESHYAA2WFKC6RXQIRRTSSTF3Z2QPVCAC GSQ72ULBSL6WBJZUB3GJKAPQDXZIQV7B2TDBA5OP2WVGHVJMCQFQC ASFH3NFXSJ6AWVLIBJNTIC35HCOSHY42YQG2ELGPEYAULZUIRRRQC 6BO27PEAAOYJEOL5F5RWDMSLU7WUYSKC4LCANVIDMRZRMZWCEYUAC 45QV77UI6QFW4234P365LD3FGJYRVWTT5455DPB324NG2NFQMKTQC 5K2ANIEXD3CPJM4XNKNPZINP2G4NT7SJBKRN62WNBUKJXFERTILQC CAHE52HL2ZGRJPBYZ3DS4BVKUD2XC7N3SG25TGG7JGHGJDST4P3QC TV3ZC6WOZKSQQJQN26JIVKCHK6UK7WMDBYZDUYRWEAZ4JB4YVNAAC IIN7AVA6JYRBXH6ZYRR7BY7TV6PW7ANAQ2A3PD55FKBKKQFEEF2AC EOMCPVNQLX3IMLC46EAO67DPBH5KEG2FQTPBLGU62HIRWA3UQ7XQC RREJL4WZKWFEMA62AC5G5UDTOXMW4UULIQXVA5RPFASPODMHQZ7AC YWYXUCZKGNIAWAUKUESIPFCAL5HZOKOEWHUEUW7X4DMAX2HG2FSAC UPJVSMMMHGRDUIJG4MZX6IBLQ4ODBF5Z3PF3RHDYTSAEOCVDZM5AC D77K7ISUWRLGNSQGYH5P2KEJZCNYQHDZC5AMLSKTXVBIRNG6F5KQC 3YK4G4IQBXW63HPGU5WRTV6L2FCMKAK4DOTCHFK2FNSB5B3Y3PVQC F2ZJ55CL3T66DFM34BQWCJNHIT4XJFCGTWTA5KESV6NHWFLTGUYAC 3D6NWJ44UYHLZMD3BOQIWXJUEGITAVCHK6Z2WWDQONVQC4HSBRXQC JM6GKZ6VMX6FNVOZIDXIV22HGX7YESMIFZFE6EEQVCMFJIEA3FNAC EAQJ2VSSFA3MKDR7ELP7M5VHTHGN2DCBPPZHXRAXDRKKAX2R6SHQC HBHQQDULNVWISJ75XIL6R6BFEDYRNY22NX3ZTFVNP5ZWJGJSKOEQC OYTCBRC7LE44EUVRZVYTOOVKQWJ6P6YE3FXTOGUTNKEMLNWPHKSQC BWAQ3FHBBM6G3K3KYP75CRTR343RDQZJRYX5ZGYUEXYBAC3APDLAC CYAVI4PYWMMKTPYT5N2B3MI4OSHZFLPKOZFSLFJUXRYAACYXWW3AC 7V4DCKFJCNBXFODMKJ6H3MCDUTSD4XVQ7D4D6XFCD4JNF4HCE4KAC JM7UAK777RAVDAVLQLEOBRTGNW2B47S5G55XITJXO243IUNZHVYQC CH7JECYYH35H4TRHRNRTRJCQTQLZ2WRH62TKV72SUIU2RTK5OH7AC TR4NPGNO5QNNRJNVMNSUEO5QLT37HCXXDOBKXCB5XWXRQNAJ5SHAC JZCODQCOUBBBPPR4TLOAPIB4BQLDY3ORTJXTWEQSUJVJ7DMK7FVAC Y2VKZYSQXLYYQNB6OSQP44IYLT2M56SE2ZW2MHOAZUODKCVDHEAQC HYS3HXTXATFPN7GLN3WBGDCP22UT2D3JBVUS7SP5FE7L54TDCJRQC WCAOZXOYYQBLVRS5FRZTP5ZFOYLQCCPWHGIFM2DLVGHIKVYSQVWQC ANOEQTM6IGCBTESKKQ5PCBSDTZ7VGRCMDIOAFEH4R7DJHKWKDFAAC FBK5ECMQ6HJSQSN7C3DICKJIRJ3CSO3CHCQ3ONPBKLLSHDGPBQ7QC DOZORMA366M4HB5JKSS27BMCR6ET7QNZNND2B7KV3NVEEPR5H7EAC YCL3W2PFE6ILTGBFODCSXNPDIA46KVSZP2TI7HDMYAOEJT65RIEAC AVCMVFA3MKCXHO6H44UK5KJNIHTGQV7UA7GYXM26VI6TXXU5ZN6QC CPGSHENA5WYRZBW6NBZ2MQKNXE4RJS4SR3Q2H5NL5D3DDDRHHVVQC R325RPUV26YH65VIJKYEFZ2XCVXQHO5N3ELPX6RNQ5TSI3JJNQGQC JYCMD6WMNHXA53K4LLKVTNX6PLRLU25F6J2TYMPQXM2ENAE66NIAC LKLHWERPXMDTRNYPEXVDVB6PE7CT5PZ6WMNJJDTBBE5FBHOCEK5AC FCZSQBKDNMJZRJS2LWQQWLUFGOXSKXDJZQIHC7L5S7HXCXQPOMMAC BFZZ7DFLZM4WNHQOKWDJENZOLMXH3UPHZ437BMISYJ3VSO2Y57WQC 3EFDG4W2ZURQDU6I3AFVW4ETTD3ZHSCLQ7MOK5FK7VQCDQDUXIGQC 2HNLFROSOZ6ROLX3Q3W5E7I4Y4ELIWSJ7EX5GDGZZOMRPTK6TBSAC DH3YTI6VVI727SQXO4CXSDCSBG2UN3UAWLFULBGRLBVH22ACRXIAC 3YBQGKQ22WFXA5RXDSKLFWMABLJ6KHBVWEIA3WIDHWM25OECNTYAC P2YNOE2TUTZFAOBTHJOIVD6TCV7J7D2UKUX67LHZUL6QY44ZMENQC XUCCWGMXKPIR34BBCCOI67YHI3RST4STDWSDUZTN4B2CJWXQLQ7AC FVT2J6IVMSQZYKQGUHQVGT4ADYM7AWUQ4U7766GBRRFMSR2WBMLAC LJK4ZQATLSB4MKZG3ARZX5V6RFGTN3NLCN6GTCUGJQKU26SOXMUAC CLIEHAE2PP7ZIGLLIMYCWM4FC54KBOAN5AILOLAZJ5S26GTJM4RQC O4DT3BQQ3XYPL6PQ72G6VPBAVHXZMEOLONFXNHXFMBXBVOYMB6VQC GBUB77EAYHOFY6GQ5IY3ZSBC7FSQFZZKYNBD5QMCQFIKFLYLWHOQC 475LL4U4ND6PTNV4XKC7WQAOJC7RF2VCCVX3DRILP2PKIBFYWE6QC CGYTZT5QWIEGYKUOLOK7MFXSLJKLYRZONER5ZCDZO5XYWSLG475QC RYT42Z6CED4KV5CCJ45CHZ3DQGLFMDCVH6CSQZNXOILULDG4MXVQC YIIILIV4ZPRIPWWT4GL7YWSJCUVH6RJJLXV4XIHY6SF3H7Y3EAYAC 2TECJQA3PK7OYSSTOWZSQFWMTATJRHHA6JV3IGRHFGS3R7U27RZAC 3WRAJZ5ZLOSIZHFBUH5552QC4F3GAK7AXF6VIQFVN6VY7PUO6HPQC ZCRK2DJ5VKECRQXZTWT4NUDL2VT5ZHUK7NT6NQPLRJ56TDX5PJSAC AS2IQQJNNCEQNXXKTGYHLB7RO3ZKCF4F7GK6FJH66BOOKDDRGNIQC const int region_sx_normal[1]={0};const int region_sy_normal[1]={0};const int region_wx_normal[1]={TILE_X};const int region_wy_normal[1]={TILE_Y};
const int region_sx_normal[1] = {0};const int region_sy_normal[1] = {0};const int region_wx_normal[1] = {TILE_X};const int region_wy_normal[1] = {TILE_Y};
int i;for (i=0;i<NUM_WEAPONS;i++)isort_weapon2[isort_weapon[i]] = i;for (i=0;i<NUM_ARMOURS;i++)isort_armour2[isort_armour[i]] = i;
for (int i = 0; i < NUM_WEAPONS; i++)isort_weapon2[isort_weapon[i]] = i;for (int i = 0; i < NUM_ARMOURS; i++)isort_armour2[isort_armour[i]] = i;
// item.base_type <-> char conversion tableconst static char *obj_syms = ")([/%#?=!#+\\0}x";const static char *syms_table[] ={")\\", // weapons and staves"(", // missile"[", // armour"/", // wands"%", // foods"#", // none"?+", // scrolls and books"=", // rings/amulets"!", // potions"#", // none"?+", // books/scrolls")\\", // weapons and staves"0","}","x"};
const char *item_chars = Options.show_items;// XXX: What does this do?// tile_draw_inv is only ever called with item_type = -1, flag = REGION_INV1// (in acr.cc and libgui.cc) --jpegif (item_type >= 0)item_chars = syms_table[item_type];else if (item_type == -2)item_chars = obj_syms;else if (item_type == -3)item_chars = "."; // floor
const char *item_chars = Options.tile_show_items;
const int cmd_n[9]={'b', 'j', 'n', 'h', '.', 'l', 'y', 'k', 'u'};const int cmd_s[9]={'B', 'J', 'N', 'H', '5', 'L', 'Y', 'K', 'U'};
const int cmd_n[9] = {'b', 'j', 'n', 'h', '.', 'l', 'y', 'k', 'u'};const int cmd_s[9] = {'B', 'J', 'N', 'H', '5', 'L', 'Y', 'K', 'U'};
if((mouse_mode==MOUSE_MODE_COMMAND || mouse_mode == MOUSE_MODE_MACRO) &&(mode == REGION_DNGN || mode == REGION_TDNGN))
if ((mouse_mode == MOUSE_MODE_COMMAND || mouse_mode == MOUSE_MODE_MACRO)&& (mode == REGION_DNGN || mode == REGION_TDNGN))
static bool invisible_to_player( const item_def& item );static void item_list_on_square( std::vector<const item_def*>& items,int obj, bool force_squelch = false );static void autoinscribe_item( item_def& item );static void autoinscribe_floor_items();static void autoinscribe_inventory();
static bool _invisible_to_player( const item_def& item );static void _item_list_on_square( std::vector<const item_def*>& items,int obj, bool force_squelch = false );static void _autoinscribe_item( item_def& item );static void _autoinscribe_floor_items();static void _autoinscribe_inventory();
}void show_items(){std::vector<const item_def*> items;item_list_on_square( items, igrd[you.x_pos][you.y_pos], true );if ( items.empty() )mpr("There are no items here.");else {select_items( items, "Things that are here:", true );redraw_screen();}describe_floor();
for (int i = 0, count = selected.size(); i < count; ++i) {for (int j = item_link; j != NON_ITEM; j = mitm[j].link) {if (&mitm[j] == selected[i].item) {
for (int i = 0, count = selected.size(); i < count; ++i){for (int j = item_link; j != NON_ITEM; j = mitm[j].link){if (&mitm[j] == selected[i].item){
static void do_berserk_no_combat_penalty(void);static bool initialise(void);static void input(void);static void move_player(int move_x, int move_y);static void open_door(int move_x, int move_y, bool check_confused = true);static void close_door(int move_x, int move_y);static void start_running( int dir, int mode );
static void _do_berserk_no_combat_penalty(void);static bool _initialise(void);static void _input(void);static void _move_player(int move_x, int move_y);static void _open_door(int move_x, int move_y, bool check_confused = true);static void _close_door(int move_x, int move_y);static void _start_running( int dir, int mode );
static void prep_input();static void input();static void world_reacts();static command_type get_next_cmd();static keycode_type get_next_keycode();static command_type keycode_to_command( keycode_type key );static void setup_cmd_repeat();static void do_prev_cmd_again();static void update_replay_state();
static void _prep_input();static void _world_reacts();static command_type _get_next_cmd();static keycode_type _get_next_keycode();static command_type _keycode_to_command( keycode_type key );static void _setup_cmd_repeat();static void _do_prev_cmd_again();static void _update_replay_state();
static void show_commandline_options_help();static void wanderer_startup_message();static void god_greeting_message( bool game_start );static void take_starting_note();static void startup_tutorial();
static void _show_commandline_options_help();static void _wanderer_startup_message();static void _god_greeting_message( bool game_start );static void _take_starting_note();static void _startup_tutorial();
case CMD_OPEN_DOOR_UP_RIGHT: open_door(-1, -1); break;case CMD_OPEN_DOOR_UP: open_door( 0, -1); break;case CMD_OPEN_DOOR_UP_LEFT: open_door( 1, -1); break;case CMD_OPEN_DOOR_RIGHT: open_door( 1, 0); break;case CMD_OPEN_DOOR_DOWN_RIGHT: open_door( 1, 1); break;case CMD_OPEN_DOOR_DOWN: open_door( 0, 1); break;case CMD_OPEN_DOOR_DOWN_LEFT: open_door(-1, 1); break;case CMD_OPEN_DOOR_LEFT: open_door(-1, 0); break;
case CMD_OPEN_DOOR_UP_RIGHT: _open_door(-1, -1); break;case CMD_OPEN_DOOR_UP: _open_door( 0, -1); break;case CMD_OPEN_DOOR_UP_LEFT: _open_door( 1, -1); break;case CMD_OPEN_DOOR_RIGHT: _open_door( 1, 0); break;case CMD_OPEN_DOOR_DOWN_RIGHT: _open_door( 1, 1); break;case CMD_OPEN_DOOR_DOWN: _open_door( 0, 1); break;case CMD_OPEN_DOOR_DOWN_LEFT: _open_door(-1, 1); break;case CMD_OPEN_DOOR_LEFT: _open_door(-1, 0); break;
case CMD_MOVE_DOWN_LEFT: move_player(-1, 1); break;case CMD_MOVE_DOWN: move_player( 0, 1); break;case CMD_MOVE_UP_RIGHT: move_player( 1, -1); break;case CMD_MOVE_UP: move_player( 0, -1); break;case CMD_MOVE_UP_LEFT: move_player(-1, -1); break;case CMD_MOVE_LEFT: move_player(-1, 0); break;case CMD_MOVE_DOWN_RIGHT: move_player( 1, 1); break;case CMD_MOVE_RIGHT: move_player( 1, 0); break;
case CMD_MOVE_DOWN_LEFT: _move_player(-1, 1); break;case CMD_MOVE_DOWN: _move_player( 0, 1); break;case CMD_MOVE_UP_RIGHT: _move_player( 1, -1); break;case CMD_MOVE_UP: _move_player( 0, -1); break;case CMD_MOVE_UP_LEFT: _move_player(-1, -1); break;case CMD_MOVE_LEFT: _move_player(-1, 0); break;case CMD_MOVE_DOWN_RIGHT: _move_player( 1, 1); break;case CMD_MOVE_RIGHT: _move_player( 1, 0); break;
static bool decrement_a_duration(duration_type dur, const char* endmsg = NULL,int midpoint = -1, int midloss = 0,const char* midmsg = NULL,msg_channel_type chan = MSGCH_DURATION )
static bool _decrement_a_duration(duration_type dur, const char* endmsg = NULL,int midpoint = -1, int midloss = 0,const char* midmsg = NULL,msg_channel_type chan = MSGCH_DURATION )
decrement_a_duration(DUR_REPEL_MISSILES,"You feel less protected from missiles.",6, coinflip(),"Your repel missiles spell is about to expire...");
_decrement_a_duration(DUR_REPEL_MISSILES,"You feel less protected from missiles.",6, coinflip(),"Your repel missiles spell is about to expire...");
decrement_a_duration(DUR_DEFLECT_MISSILES,"You feel less protected from missiles.",6, coinflip(),"Your deflect missiles spell is about to expire...");
_decrement_a_duration(DUR_DEFLECT_MISSILES,"You feel less protected from missiles.",6, coinflip(),"Your deflect missiles spell is about to expire...");
decrement_a_duration(DUR_REGENERATION,"Your skin stops crawling.",6, coinflip(),"Your skin is crawling a little less now.");
_decrement_a_duration(DUR_REGENERATION,"Your skin stops crawling.",6, coinflip(),"Your skin is crawling a little less now.");
decrement_a_duration(DUR_REPEL_UNDEAD,"Your holy aura fades away.",4, random2(3),"Your holy aura is starting to fade.");decrement_a_duration(DUR_SWIFTNESS,"You feel sluggish.",6, coinflip(),"You start to feel a little slower.");decrement_a_duration(DUR_INSULATION,"You feel conductive.",6, coinflip(),"You start to feel a little less insulated.");
_decrement_a_duration(DUR_REPEL_UNDEAD,"Your holy aura fades away.",4, random2(3),"Your holy aura is starting to fade.");_decrement_a_duration(DUR_SWIFTNESS,"You feel sluggish.",6, coinflip(),"You start to feel a little slower.");_decrement_a_duration(DUR_INSULATION,"You feel conductive.",6, coinflip(),"You start to feel a little less insulated.");
if ( decrement_a_duration(DUR_STONEMAIL,"Your scaly stone armour disappears.",6, coinflip(),"Your scaly stone armour is starting ""to flake away.") )
if ( _decrement_a_duration(DUR_STONEMAIL,"Your scaly stone armour disappears.",6, coinflip(),"Your scaly stone armour is starting ""to flake away.") )
decrement_a_duration(DUR_CONTROL_TELEPORT,"You feel uncertain.",6, coinflip(),"You start to feel a little uncertain.");
_decrement_a_duration(DUR_CONTROL_TELEPORT,"You feel uncertain.",6, coinflip(),"You start to feel a little uncertain.");
decrement_a_duration(DUR_DEATH_CHANNEL,"Your unholy channel expires.",6, coinflip(),"Your unholy channel is weakening.");
_decrement_a_duration(DUR_DEATH_CHANNEL,"Your unholy channel expires.",6, coinflip(),"Your unholy channel is weakening.");
decrement_a_duration(DUR_SAGE, "You feel less studious.");decrement_a_duration(DUR_STEALTH, "You feel less stealthy.");decrement_a_duration(DUR_RESIST_FIRE, "Your fire resistance expires.");decrement_a_duration(DUR_RESIST_COLD, "Your cold resistance expires.");decrement_a_duration(DUR_RESIST_POISON, "Your poison resistance expires.");decrement_a_duration(DUR_SLAYING, "You feel less lethal.");
_decrement_a_duration(DUR_SAGE, "You feel less studious.");_decrement_a_duration(DUR_STEALTH, "You feel less stealthy.");_decrement_a_duration(DUR_RESIST_FIRE, "Your fire resistance expires.");_decrement_a_duration(DUR_RESIST_COLD, "Your cold resistance expires.");_decrement_a_duration(DUR_RESIST_POISON, "Your poison resistance expires.");_decrement_a_duration(DUR_SLAYING, "You feel less lethal.");
decrement_a_duration(DUR_BARGAIN, "You feel less charismatic.");decrement_a_duration(DUR_CONF, "You feel less confused.");
_decrement_a_duration(DUR_BARGAIN, "You feel less charismatic.");_decrement_a_duration(DUR_CONF, "You feel less confused.");
if ( decrement_a_duration(DUR_LEVITATION,"You float gracefully downwards.",10, random2(6),"You are starting to lose your buoyancy!") )
if ( _decrement_a_duration(DUR_LEVITATION,"You float gracefully downwards.",10, random2(6),"You are starting to lose your buoyancy!") )