| 1328 | | |
|---|
| 1329 | | /* Potions -- Potions of life, healing, *healing* are good, |
|---|
| 1330 | | * restore mana for spell casters are good, |
|---|
| 1331 | | * as are stat potions, when the stat is not maximised, |
|---|
| 1332 | | * as is augmentation (acts as a potion of 'restoration' if all |
|---|
| 1333 | | * stats are maximised). |
|---|
| 1334 | | * |
|---|
| 1335 | | * XXX If we make too many useful items 'good' we may want to |
|---|
| 1336 | | * consider limiting the total number of good drops to uniques |
|---|
| 1337 | | * and truely nasty monsters. |
|---|
| 1338 | | */ |
|---|
| 1339 | | case TV_POTION: |
|---|
| 1340 | | { |
|---|
| 1341 | | if (k_ptr->sval == SV_POTION_HEALING) return (TRUE); |
|---|
| 1342 | | if (k_ptr->sval == SV_POTION_STAR_HEALING) return (TRUE); |
|---|
| 1343 | | if (k_ptr->sval == SV_POTION_LIFE) return (TRUE); |
|---|
| 1344 | | if ((k_ptr->sval == SV_POTION_RESTORE_MANA) && (p_ptr->msp > 0)) return (TRUE); |
|---|
| 1345 | | if ((k_ptr->sval >= SV_POTION_INC_STR) && (k_ptr->sval <= SV_POTION_INC_CHR)) |
|---|
| 1346 | | { |
|---|
| 1347 | | if (p_ptr->stat_cur[k_ptr->sval - SV_POTION_INC_STR] < 18+100) return (TRUE); |
|---|
| 1348 | | } |
|---|
| 1349 | | if (k_ptr->sval == SV_POTION_AUGMENTATION) return (TRUE); |
|---|
| 1350 | | return (FALSE); |
|---|
| 1351 | | } |
|---|