Commit 4803c2a
committed
Add raid_events=shield + non-mutating absorb pipeline for enemies
A new `shield` raid event puts an absorb buff on a target enemy
(target=, amount=, school= options plus standard timing controls).
To support this without breaking class on-hit triggers,
account_absorb_buffs no longer mutates s->result_amount when the
target is an enemy. The absorbed amount is tracked via
s->result_absorbed (already the HP-impact field) and applied at
do_damage time. Player-side behavior is unchanged.
Also adds player_t::has_absorb() and current_absorb_amount() helpers.1 parent d7e65df commit 4803c2a
3 files changed
Lines changed: 125 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5888 | 5888 | | |
5889 | 5889 | | |
5890 | 5890 | | |
| 5891 | + | |
| 5892 | + | |
| 5893 | + | |
| 5894 | + | |
| 5895 | + | |
| 5896 | + | |
| 5897 | + | |
| 5898 | + | |
| 5899 | + | |
| 5900 | + | |
| 5901 | + | |
| 5902 | + | |
| 5903 | + | |
| 5904 | + | |
| 5905 | + | |
| 5906 | + | |
| 5907 | + | |
5891 | 5908 | | |
5892 | 5909 | | |
5893 | 5910 | | |
| |||
8481 | 8498 | | |
8482 | 8499 | | |
8483 | 8500 | | |
| 8501 | + | |
| 8502 | + | |
| 8503 | + | |
| 8504 | + | |
| 8505 | + | |
| 8506 | + | |
8484 | 8507 | | |
8485 | 8508 | | |
8486 | 8509 | | |
| |||
8607 | 8630 | | |
8608 | 8631 | | |
8609 | 8632 | | |
| 8633 | + | |
| 8634 | + | |
| 8635 | + | |
8610 | 8636 | | |
8611 | 8637 | | |
8612 | 8638 | | |
| |||
8694 | 8720 | | |
8695 | 8721 | | |
8696 | 8722 | | |
8697 | | - | |
| 8723 | + | |
8698 | 8724 | | |
8699 | | - | |
| 8725 | + | |
8700 | 8726 | | |
8701 | 8727 | | |
8702 | 8728 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1413 | 1413 | | |
1414 | 1414 | | |
1415 | 1415 | | |
| 1416 | + | |
| 1417 | + | |
| 1418 | + | |
| 1419 | + | |
1416 | 1420 | | |
1417 | 1421 | | |
1418 | 1422 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
| 11 | + | |
10 | 12 | | |
11 | 13 | | |
12 | 14 | | |
| |||
1667 | 1669 | | |
1668 | 1670 | | |
1669 | 1671 | | |
| 1672 | + | |
| 1673 | + | |
| 1674 | + | |
| 1675 | + | |
| 1676 | + | |
| 1677 | + | |
| 1678 | + | |
| 1679 | + | |
| 1680 | + | |
| 1681 | + | |
| 1682 | + | |
| 1683 | + | |
| 1684 | + | |
| 1685 | + | |
| 1686 | + | |
| 1687 | + | |
| 1688 | + | |
| 1689 | + | |
| 1690 | + | |
| 1691 | + | |
| 1692 | + | |
| 1693 | + | |
| 1694 | + | |
| 1695 | + | |
| 1696 | + | |
| 1697 | + | |
| 1698 | + | |
| 1699 | + | |
| 1700 | + | |
| 1701 | + | |
| 1702 | + | |
| 1703 | + | |
| 1704 | + | |
| 1705 | + | |
| 1706 | + | |
| 1707 | + | |
| 1708 | + | |
| 1709 | + | |
| 1710 | + | |
| 1711 | + | |
| 1712 | + | |
| 1713 | + | |
| 1714 | + | |
| 1715 | + | |
| 1716 | + | |
| 1717 | + | |
| 1718 | + | |
| 1719 | + | |
| 1720 | + | |
| 1721 | + | |
| 1722 | + | |
| 1723 | + | |
| 1724 | + | |
| 1725 | + | |
| 1726 | + | |
| 1727 | + | |
| 1728 | + | |
| 1729 | + | |
| 1730 | + | |
| 1731 | + | |
| 1732 | + | |
| 1733 | + | |
| 1734 | + | |
| 1735 | + | |
| 1736 | + | |
| 1737 | + | |
| 1738 | + | |
| 1739 | + | |
| 1740 | + | |
| 1741 | + | |
| 1742 | + | |
| 1743 | + | |
| 1744 | + | |
| 1745 | + | |
| 1746 | + | |
| 1747 | + | |
| 1748 | + | |
| 1749 | + | |
| 1750 | + | |
| 1751 | + | |
| 1752 | + | |
| 1753 | + | |
| 1754 | + | |
| 1755 | + | |
| 1756 | + | |
| 1757 | + | |
| 1758 | + | |
| 1759 | + | |
| 1760 | + | |
1670 | 1761 | | |
1671 | 1762 | | |
1672 | 1763 | | |
| |||
2305 | 2396 | | |
2306 | 2397 | | |
2307 | 2398 | | |
| 2399 | + | |
| 2400 | + | |
2308 | 2401 | | |
2309 | 2402 | | |
2310 | 2403 | | |
| |||
0 commit comments