- Timestamp:
- 05/16/08 10:57:27 (4 months ago)
- Files:
-
- trunk/src/attack.c (modified) (1 diff)
- trunk/src/defines.h (modified) (1 diff)
- trunk/src/dungeon.c (modified) (1 diff)
- trunk/src/effects.c (modified) (6 diffs)
- trunk/src/externs.h (modified) (1 diff)
- trunk/src/list-effects.h (modified) (4 diffs)
- trunk/src/spells2.c (modified) (2 diffs)
- trunk/src/types.h (modified) (1 diff)
- trunk/src/xtra1.c (modified) (3 diffs)
- trunk/src/xtra2.c (modified) (1 diff)
- trunk/src/xtra3.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/attack.c
r895 r899 450 450 451 451 /* Handle player fear */ 452 if (p_ptr-> timed[TMD_AFRAID])452 if (p_ptr->afraid) 453 453 { 454 454 /* Message */ trunk/src/defines.h
r898 r899 435 435 TMD_INVULN, TMD_HERO, TMD_SHERO, TMD_SHIELD, TMD_BLESSED, TMD_SINVIS, 436 436 TMD_SINFRA, TMD_OPP_ACID, TMD_OPP_ELEC, TMD_OPP_FIRE, TMD_OPP_COLD, 437 TMD_OPP_POIS, TMD_OPP_CONF, TMD_AMNESIA, TMD_TELEPATHY, 437 TMD_OPP_POIS, TMD_OPP_CONF, TMD_AMNESIA, TMD_TELEPATHY, TMD_STONESKIN, 438 TMD_TERROR, 438 439 439 440 TMD_MAX trunk/src/dungeon.c
r895 r899 1073 1073 !p_ptr->timed[TMD_BLIND] && !p_ptr->timed[TMD_CONFUSED] && 1074 1074 !p_ptr->timed[TMD_POISONED] && !p_ptr->timed[TMD_AFRAID] && 1075 !p_ptr->timed[TMD_TERROR] && 1075 1076 !p_ptr->timed[TMD_STUN] && !p_ptr->timed[TMD_CUT] && 1076 1077 !p_ptr->timed[TMD_SLOW] && !p_ptr->timed[TMD_PARALYZED] && trunk/src/effects.c
r895 r899 242 242 if (clear_timed(TMD_CONFUSED)) *ident = TRUE; 243 243 if (clear_timed(TMD_AFRAID)) *ident = TRUE; 244 if (clear_timed(TMD_IMAGE)) *ident = TRUE; 245 if (!p_ptr->resist_confu && inc_timed(TMD_OPP_CONF, damroll(4, 10))) 244 246 return TRUE; 245 247 } … … 267 269 case EF_CURE_SERIOUS: 268 270 { 269 if (heal_player(2 5, 25)) *ident = TRUE;271 if (heal_player(20, 25)) *ident = TRUE; 270 272 if (clear_timed(TMD_CUT)) *ident = TRUE; 271 273 if (clear_timed(TMD_BLIND)) *ident = TRUE; … … 277 279 case EF_CURE_CRITICAL: 278 280 { 279 if (heal_player( 33, 33)) *ident = TRUE;281 if (heal_player(25, 30)) *ident = TRUE; 280 282 if (clear_timed(TMD_BLIND)) *ident = TRUE; 281 283 if (clear_timed(TMD_CONFUSED)) *ident = TRUE; … … 961 963 } 962 964 965 case EF_DEEP_DESCENT: 966 { 967 int i = 2; 968 int new_max = p_ptr->max_depth; 969 970 do 971 { 972 if (is_quest(new_max)) continue; 973 if (new_max >= MAX_DEPTH-1) continue; 974 new_max++; 975 } while (--i); 976 977 if (new_max == p_ptr->max_depth) 978 return TRUE; 979 980 p_ptr->max_depth = new_max; 981 *ident = TRUE; 982 983 if (p_ptr->depth == 0) 984 { 985 set_recall(); 986 msg_print("The lower reaches of the dungeon beckon."); 987 } 988 else 989 { 990 message(MSG_TPLEVEL, 0, "You sink through the floor..."); 991 p_ptr->depth = p_ptr->max_depth; 992 p_ptr->leaving = TRUE; 993 } 994 995 *ident = TRUE; 996 return TRUE; 997 } 998 963 999 case EF_LOSHASTE: 964 1000 { … … 976 1012 { 977 1013 if (slow_monsters()) *ident = TRUE; 1014 return TRUE; 1015 } 1016 1017 case EF_LOSCONF: 1018 { 1019 if (confuse_monsters()) *ident = TRUE; 978 1020 return TRUE; 979 1021 } … … 1575 1617 } 1576 1618 1619 case EF_SHROOM_EMERGENCY: 1620 { 1621 (void)set_timed(TMD_IMAGE, rand_spread(250, 50)); 1622 (void)set_timed(TMD_OPP_FIRE, rand_spread(30, 10)); 1623 (void)set_timed(TMD_OPP_COLD, rand_spread(30, 10)); 1624 (void)hp_player(200); 1625 *ident = TRUE; 1626 return TRUE; 1627 } 1628 1629 case EF_SHROOM_TERROR: 1630 { 1631 if (set_timed(TMD_TERROR, rand_spread(100, 20))) 1632 *ident = TRUE; 1633 return TRUE; 1634 } 1635 1636 case EF_SHROOM_STONE: 1637 { 1638 if (set_timed(TMD_STONESKIN, rand_spread(80, 20))) 1639 *ident = TRUE; 1640 return TRUE; 1641 } 1642 1643 case EF_SHROOM_DEBILITY: 1644 { 1645 int stat = one_in_(2) ? A_STR : A_CON; 1646 1647 if (p_ptr->csp < p_ptr->msp) 1648 { 1649 p_ptr->csp = p_ptr->msp; 1650 p_ptr->csp_frac = 0; 1651 msg_print("Your feel your head clear."); 1652 p_ptr->redraw |= (PR_MANA); 1653 *ident = TRUE; 1654 } 1655 1656 (void)do_dec_stat(stat, FALSE); 1657 1658 *ident = TRUE; 1659 } 1660 1661 #if 0 1662 case EF_SHROOM_MANIA: 1663 { 1664 EFFECT(SHROOM_MANIA, FALSE, "makes you subject to manic fits") 1665 of mania (see Sangband) 1666 } 1667 #endif 1668 1577 1669 case EF_RING_ACID: 1578 1670 { trunk/src/externs.h
r891 r899 493 493 extern bool speed_monsters(void); 494 494 extern bool slow_monsters(void); 495 extern bool confuse_monsters(void); 495 496 extern bool sleep_monsters(void); 496 497 extern bool banish_evil(int dist); trunk/src/list-effects.h
r783 r899 18 18 EFFECT(CURE_PARANOIA, FALSE, "removes your fear") 19 19 EFFECT(CURE_CONFUSION, FALSE, "cures confusion") 20 EFFECT(CURE_MIND, FALSE, "cures confusion and removes fear")20 EFFECT(CURE_MIND, FALSE, "cures confusion and hallucination, removes fear and grants you temporary resistance to confusion") 21 21 EFFECT(CURE_BODY, FALSE, "heals cut damage, and cures stunning, poison and blindness") 22 22 23 23 EFFECT(CURE_LIGHT, FALSE, "heals you a little (15% of your wounds, minimum 15HP), heals some cut damage, makes you a little less confused, and cures blindness") 24 EFFECT(CURE_SERIOUS, FALSE, "heals you a little (1/ 4of your wounds, minimum 25HP), heals cut damage, and cures blindness and confusion")25 EFFECT(CURE_CRITICAL, FALSE, "heals you a little (1/ 3 of your wounds, minimum 33HP), heals cut damage, and curespoisoning, blindness, and confusion")24 EFFECT(CURE_SERIOUS, FALSE, "heals you a little (1/5 of your wounds, minimum 25HP), heals cut damage, and cures blindness and confusion") 25 EFFECT(CURE_CRITICAL, FALSE, "heals you a little (1/4 of your wounds, minimum 30HP), heals cut damage, and cures stunning, poisoning, blindness, and confusion") 26 26 EFFECT(CURE_FULL, FALSE, "restores 300 hit points, heals cut damage, and cures stunning, poisoning, blindness, and confusion") 27 27 EFFECT(CURE_FULL2, FALSE, "restores 1200 hit points, heals cut damage, and cures stunning, poisoning, blindness, and confusion") … … 127 127 EFFECT(BLESSING3, FALSE, "increases your AC and to-hit bonus for 1d48+24 turns") 128 128 EFFECT(RECALL, FALSE, "returns you from the dungeon or takes you to the dungeon after a short delay") 129 EFFECT(DEEP_DESCENT, FALSE, "transports you two or three levels below your maximum dungeon depth") 129 130 130 131 EFFECT(EARTHQUAKES, FALSE, "causes an earthquake around you") … … 134 135 EFFECT(LOSSLOW, FALSE, "slows all non-unique monsters within line of sight") 135 136 EFFECT(LOSSLEEP, FALSE, "sleeps all non-unique creatures within line of sight") 137 EFFECT(LOSCONF, FALSE, "confuses all non-unique creatures within line of sight") 136 138 EFFECT(LOSKILL, FALSE, "removes all non-unique monsters within 20 squares, dealing you damage in the process") 137 139 EFFECT(ILLUMINATION, FALSE, "lights up the surrounding area, hurting light-sensitive creatures") … … 218 220 EFFECT(FOOD_GOOD, FALSE, NULL) 219 221 EFFECT(FOOD_WAYBREAD, FALSE, "restores 4d8 hit points and neutralizes poison") 220 222 EFFECT(SHROOM_EMERGENCY, FALSE, "grants temporary resistance to fire and cold, cures 200HP, but also makes you hallucinate wildly") 223 EFFECT(SHROOM_TERROR, FALSE, "speeds up you temporarily but also makes you mortally afraid") 224 EFFECT(SHROOM_STONE, FALSE, "turns your skin to stone briefly, which grants an extra 40AC but slows you down") 225 EFFECT(SHROOM_DEBILITY, FALSE, "restores some mana but also drains either your strength or constitution") 226 EFFECT(SHROOM_MANIA, FALSE, "makes you subject to manic fits") 221 227 EFFECT(RING_ACID, TRUE, "grants acid resistance for d20+20 turns and creates an acid ball of damage 70") 222 228 EFFECT(RING_FLAMES, TRUE, "grants fire resistance for d20+20 turns and creates a fire ball of damage 80") trunk/src/spells2.c
r895 r899 467 467 info[i++] = "You are terrified."; 468 468 } 469 if (p_ptr->timed[TMD_TERROR]) 470 { 471 info[i++] = "You are terrified and feel the need to run away."; 472 } 469 473 if (p_ptr->timed[TMD_CUT]) 470 474 { … … 2109 2113 { 2110 2114 return (project_los(GF_OLD_SLEEP, p_ptr->lev)); 2115 } 2116 2117 /* 2118 * Confuse monsters 2119 */ 2120 bool confuse_monsters(void) 2121 { 2122 return (project_los(GF_OLD_CONF, p_ptr->lev)); 2111 2123 } 2112 2124 trunk/src/types.h
r888 r899 959 959 bool free_act; /* Free action */ 960 960 bool hold_life; /* Hold life */ 961 bool afraid; /* Afraid */ 961 962 962 963 bool impact; /* Earthquake blows */ trunk/src/xtra1.c
r898 r899 769 769 p_ptr->ffall = FALSE; 770 770 p_ptr->hold_life = FALSE; 771 p_ptr->afraid = FALSE; 771 772 p_ptr->telepathy = FALSE; 772 773 p_ptr->sustain_str = FALSE; … … 1081 1082 } 1082 1083 1084 /* Temporary stoneskin */ 1085 if (p_ptr->timed[TMD_STONESKIN]) 1086 { 1087 p_ptr->to_a += 40; 1088 p_ptr->dis_to_a += 40; 1089 p_ptr->pspeed -= 5; 1090 } 1091 1083 1092 /* Temporary "Hero" */ 1084 1093 if (p_ptr->timed[TMD_HERO]) … … 1124 1133 p_ptr->resist_confu = TRUE; 1125 1134 1135 /* Fear */ 1136 if (p_ptr->timed[TMD_AFRAID] || p_ptr->timed[TMD_TERROR]) 1137 p_ptr->afraid = TRUE; 1138 1139 if (p_ptr->timed[TMD_TERROR]) 1140 p_ptr->pspeed += 5; 1126 1141 1127 1142 trunk/src/xtra2.c
r898 r899 73 73 { "You feel your memories fade.", "Your memories come flooding back.", 0, 0, MSG_GENERIC }, 74 74 { "Your mind expands.", "Your horizons are once more limited.", 0, PU_BONUS, MSG_GENERIC }, 75 { "Your skin turns to stone.", "A fleshy shade returns to your skin.", 0, PU_BONUS, MSG_GENERIC }, 76 { "You feel the need to run away, and fast!", "The urge to run dissipates.", 0, PU_BONUS, MSG_AFRAID }, 75 77 }; 76 78 trunk/src/xtra3.c
r898 r899 651 651 { TMD_CONFUSED, S("Confused"), TERM_ORANGE }, 652 652 { TMD_AFRAID, S("Afraid"), TERM_ORANGE }, 653 { TMD_AFRAID, S("Terror"), TERM_ORANGE }, 653 654 { TMD_IMAGE, S("Halluc"), TERM_ORANGE }, 654 655 { TMD_POISONED, S("Poisoned"), TERM_ORANGE }, … … 658 659 { TMD_HERO, S("Hero"), TERM_L_GREEN }, 659 660 { TMD_SHERO, S("Berserk"), TERM_L_GREEN }, 661 { TMD_STONESKIN, S("Stone"), TERM_L_GREEN }, 660 662 { TMD_SHIELD, S("Shield"), TERM_L_GREEN }, 661 663 { TMD_BLESSED, S("Blssd"), TERM_L_GREEN },
