… | |
… | |
585 | new_draw_info (NDI_UNIQUE, 0, op, "You feel very mundane"); |
585 | new_draw_info (NDI_UNIQUE, 0, op, "You feel very mundane"); |
586 | else |
586 | else |
587 | { |
587 | { |
588 | new_draw_info (NDI_UNIQUE, 0, op, "You have:"); |
588 | new_draw_info (NDI_UNIQUE, 0, op, "You have:"); |
589 | new_draw_info (NDI_UNIQUE, 0, op, cp); |
589 | new_draw_info (NDI_UNIQUE, 0, op, cp); |
|
|
590 | |
590 | if (tmp != NULL) |
591 | if (tmp) |
591 | { |
|
|
592 | for (i = 0; i < NUM_STATS; i++) |
592 | for (i = 0; i < NUM_STATS; i++) |
593 | { |
593 | if (tmp->stats.stat (i) < 0) |
594 | if (get_attr_value (&tmp->stats, i) < 0) |
|
|
595 | { |
|
|
596 | new_draw_info_format (NDI_UNIQUE, 0, op, "Your %s is depleted by %d", statname[i], -(get_attr_value (&tmp->stats, i))); |
594 | new_draw_info_format (NDI_UNIQUE, 0, op, "Your %s is depleted by %d", statname[i], -tmp->stats.stat (i)); |
597 | } |
|
|
598 | } |
|
|
599 | } |
|
|
600 | } |
595 | } |
601 | |
596 | |
602 | if (is_dragon_pl (op)) |
597 | if (is_dragon_pl (op)) |
603 | { |
598 | { |
604 | /* now grab the 'dragon_ability'-force from the player's inventory */ |
599 | /* now grab the 'dragon_ability'-force from the player's inventory */ |
… | |
… | |
1368 | if (tmp->type == PLAYER) |
1363 | if (tmp->type == PLAYER) |
1369 | { |
1364 | { |
1370 | /* Stat adjustment spells */ |
1365 | /* Stat adjustment spells */ |
1371 | for (i = 0; i < NUM_STATS; i++) |
1366 | for (i = 0; i < NUM_STATS; i++) |
1372 | { |
1367 | { |
1373 | sint8 stat = get_attr_value (&spell_ob->stats, i), k, sm; |
1368 | if (sint8 stat = spell_ob->stats.stat (i)) |
1374 | |
|
|
1375 | if (stat) |
|
|
1376 | { |
1369 | { |
1377 | sm = 0; |
1370 | sint8 sm = 0; |
1378 | for (k = 0; k < stat; k++) |
1371 | for (sint8 k = 0; k < stat; k++) |
1379 | sm += rndm (1, 3); |
1372 | sm += rndm (1, 3); |
1380 | |
1373 | |
1381 | if ((get_attr_value (&tmp->stats, i) + sm) > (15 + 5 * stat)) |
1374 | if (tmp->stats.stat (i) + sm > 15 + 5 * stat) |
1382 | { |
1375 | sm = max (0, (15 + 5 * stat) - tmp->stats.stat (i)); |
1383 | sm = (15 + 5 * stat) - get_attr_value (&tmp->stats, i); |
1376 | |
1384 | if (sm < 0) |
1377 | force->stats.stat (i) = sm; |
1385 | sm = 0; |
1378 | |
1386 | } |
|
|
1387 | set_attr_value (&force->stats, i, sm); |
|
|
1388 | if (!sm) |
1379 | if (!sm) |
1389 | new_draw_info (NDI_UNIQUE, 0, op, no_gain_msgs[i]); |
1380 | new_draw_info (NDI_UNIQUE, 0, op, no_gain_msgs[i]); |
1390 | } |
1381 | } |
1391 | } |
1382 | } |
1392 | } |
1383 | } |