-+-+-+-+-+-+-+-+ START OF PART 24 -+-+-+-+-+-+-+-+ X END X else X afraid := afraid + 3; X prt_chp X END; X`7BFire attack `7D 5 : BEGIN X msg_print('You are enveloped in flames!'); X fire_dam(damroll(damstr),ddesc) X END; X`7BAcid attack `7D 6 : BEGIN X msg_print('You are covered in acid!'); X acid_dam(damroll(damstr),ddesc) X END; X`7BCold attack `7D 7 : BEGIN X msg_print('You are covered with frost!'); X cold_dam(damroll(damstr),ddesc) X END; X`7BLightning attack`7D 8 : BEGIN X msg_print('Lightning strikes you!'); X light_dam(damroll(damstr),ddesc) X END; X`7BCorrosion attack`7D 9 : BEGIN X msg_print('A stinging red gas swirls about you.'); X corrode_gas(ddesc); X take_hit(damroll(damstr),ddesc); X prt_chp X END; X`7BBlindness attack`7D 10 : with py.flags do X BEGIN X take_hit(damroll(damstr),ddesc); X if (blind < 1) then X BEGIN X blind := blind + 10 + randint(level) V; X msg_print('Your eyes begin to sting. V'); X msg_print(' ') X END; X blind := blind + 5; X prt_chp X END; X`7BParalysis attack`7D 11 : with py.flags do X BEGIN X take_hit(damroll(damstr),ddesc); X if (player_saves(con_adj)) then X msg_print('You resist the effects!') X else if (paralysis < 1) then X BEGIN X if (free_act) then X msg_print('You are unaffected.') X else X begin X paralysis:=randint(level) + 3; X msg_print('You are paralyzed.') X END X END; X prt_chp X END; X`7BSteal Money `7D 12 : with py.misc do X BEGIN X`7B 5% guaranteed success. `7D if (((randint(100) > 95) or X`09`09`09`09 (randint(60) < py.stat.cdex)) X and (py.flags.paralysis < 1)) then X msg_print('You quickly protect your money pouch!') X else X BEGIN X i1 := trunc(au/10) + randint(25); X if (i1 > au) then X au := 0 X else X au := au - i1; X msg_print('Your purse feels lighter. V'); X prt_gold X END; X if (randint(2) = 1) then X BEGIN X msg_print('There is a puff of smoke! V'); X teleport_away(monptr,max_sight) X END X END; X`7BSteal Object `7D 13 : with py.stat do X BEGIN X`7B 5% guaranteed sucess. `7D if (((randint(100) > 95) or X`09`09`09`09 (randint(60) < py.stat.cdex)) X and (py.flags.paralysis < 1)) then X msg_print('You grab hold of your backpack!') X else X BEGIN X i1 := randint(inven_ctr); X inven_destroy(i1); X msg_print('Your backpack feels lighter.') X END; X if (randint(2) = 1) then X BEGIN X msg_print('There is a puff of smoke! V'); X teleport_away(monptr,max_sight) X END X END; X`7BPoison `7D 14 : with py.flags do X BEGIN X take_hit(damroll(damstr),ddesc); X prt_chp; X msg_print('You feel very sick.'); X poisoned := poisoned+randint(level)+5; X Opusii_vomit(randint(level)+5); X END; X`7BLose dexterity `7D 15 : with py.flags do X BEGIN X take_hit(damroll(damstr),ddesc); X if (sustain_dex) then X msg_print('You feel clumsy for a moment, then it passes.') X else X BEGIN X msg_print('You feel more clumsy.'); X py.stat.cdex := de_statp(py.stat.cde Vx); X prt_dexterity X END; X prt_chp X END; X`7BLose constitution `7D 16 : with py.flags do X BEGIN X take_hit(damroll(damstr),ddesc); X if (sustain_con) then X msg_print('Your body resists the effects of the disease.') X else X BEGIN X msg_print('Your health is damaged!') V; X py.stat.ccon := de_statp(py.stat.cco Vn); X prt_constitution X END; X prt_chp X END; X`7BLose intelligence `7D 17 : with py.flags do X BEGIN X take_hit(damroll(damstr),ddesc); X if (sustain_int) then X BEGIN X msg_print('You feel your memories fading...'); X msg_print('Your memories are suddenly restored!') X END X else X BEGIN X msg_print('You feel your memories fading...'); X py.stat.cint:=de_statp(py.stat.cint) V; X prt_intelligence X END; X prt_chp; X END; X`7BLose wisdom `7D 18 : with py.flags do X BEGIN X take_hit(damroll(damstr),ddesc); X if (sustain_wis) then X msg_print('Your wisdom is sustained.') X else X BEGIN X msg_print('You feel less astute.'); X py.stat.cwis := de_statp(py.stat.cwi Vs); X prt_wisdom X END; X prt_chp X END; X`7BLose experience `7D 19: BEGIN X msg_print('You feel your life draining away! V'); X i1:=damroll(damstr)+ X (py.misc.exp div 100)*mon$drain_life V; X lose_exp(i1) X END; X`7BAggravate monster`7D 20: aggravate_monster(5); X`7BDisenchant `7D 21: BEGIN X flag := false; X CASE randint(6) of X 1 : i1 := 23; X 2 : i1 := 26; X 3 : i1 := 27; X 4 : i1 := 32; X 5 : i1 := 28; X 6 : i1 := 24 X END; X with equipment`5Bi1`5D do X BEGIN X if (tohit > 0) then X BEGIN X tohit := tohit - randint(2); X flag := true X END; X if (todam > 0) then X BEGIN X todam := todam - randint(2); X flag := true X END; X if (toac > 0) then X BEGIN X toac := toac - randint(2); X flag := true X END X END; X if (flag) then X BEGIN X msg_print('There is a static feeling in the air...'); X py_bonuses(blank_treasure,1) X END X END; X`7BEat food `7D 22: BEGIN X if (find_range(`5B80`5D,i1,i2)) then X inven_destroy(i1) X`09`09`09`09 else`20 X`09`09`09`09 msg_print(cdesc+'is unsatiated.'); X END; X`7BEat light `7D 23: BEGIN X with equipment`5B33`5D do X if (p1 > 0) then X BEGIN X p1 := p1 - 250 - randint(250); X if (p1 < 1) then p1 := 1; X msg_print('Your light dims...') X END `20 X END; X`7BEat charges `7D 24: if (inven_ctr > 0) then X BEGIN X i1 := randint(inven_ctr); X with inventory`5Bi1`5D do X if (tval in `5B55,60,65`5D) then X if (p1 > 0) then X BEGIN X hp := hp +5*p1; X p1 := 0; X msg_print('Energy drains from your pack!'); X END X END; `20 X`7BVampire Bite -MWK`7D 25: BEGIN X `7BLose experience`7D X msg_print('You feel your life draining away! V'); X i1:=damroll(damstr)+ X (py.misc.exp div 100)*mon$drain_life V; X lose_exp(i1); X `7BPoison Strength`7D X take_hit(damroll(damstr),ddesc); X if (py.flags.sustain_str) then X msg_print('You feel weaker for a moment, then it passes.') X else X if (randint(2) = 1) then X BEGIN X msg_print('You feel weaker.'); X py.stat.cstr := de_statp(py.stat.cstr) V; X prt_strength X END; X prt_chp X END; X`09`09 26 : if (randint(100) > 50) then `7Bturn to stone -jeb`7D X BEGIN X py.flags.petrified := py.flags.petrified + X`09`09`09`09 randint(20);`20 X`09`09`09`09 if (py.flags.petrified < 40) then X`09`09`09`09 msg_print('Your blood thickens!') X`09`09`09`09 else if (py.flags.petrified < 80) then X`09`09`09`09 msg_print('You need a rubdown!') X`09`09`09`09 else if (py.flags.petrified < 120) then X`09`09`09`09 msg_print('Your joints stiffen...') X`09`09`09`09 else if (py.flags.petrified < 160) then X`09`09`09`09 msg_print('Your skin turns stoney grey!') X`09`09`09`09 else if (py.flags.petrified < 200) then X`09`09`09`09 msg_print('You can barely move!') X`09`09`09`09 else X`09`09`09`09 msg_print('You are thoroughly stoned.'); X`09`09`09`09 if (py.flags.petrified > 200) then X`09 `09`09`09 begin X`09`09`09`09 py.misc.chp := -1; +-+-+-+-+-+-+-+- END OF PART 24 +-+-+-+-+-+-+-+-