Alex King 9d1ace627c
[Feature] Add support for -1 extradmgskill to allow all skills to be scaled. (#3136)
* [Feature] Add support for -1 extradmgskill to allow all skills to be scaled.

- `$mob->GetSkillDmgAmt(skill_id)` now uses `int` instead of `uint16`.

- `statbonuses:GetSkillDamageAmount(skill_id)` now uses `-1` properly.
- `mob:GetSkillDmgAmt(skill_id)` now uses `int` instead of `uint16`.

- A `-1` value in `extradmgskill` denotes the ability to scale all skills at once.
- Consolidated `AddItemBonuses()`, `AdditiveWornBonuses()`, `CalcItemBonuses()`, and `CalcRecommendedLevelBonus()` to mob-based methods to avoid code duplication.
- Bots, NPCs, and Mercs can now use additive worn effects if the rule is enabled, as well as all other proper stat bonuses that only clients had before.
- No SQL update required to change `extradmgskill` and `extradmgamt` to `int` as they already are this type in the database, just had to adjust `item_data.h` and `shareddb.cpp`.

* Update mob.cpp

* Cleanup.

* Cleanup.

* Move #include <vector> to header.

* Add method for GetExtraDamageSkills

* fix additembonuses

* Update bonuses.cpp

* Update mob.cpp

* Out of bounds.

* Update bonuses.cpp

---------

Co-authored-by: Aeadoin <109764533+Aeadoin@users.noreply.github.com>
2023-03-25 20:26:01 -04:00
..
2020-07-07 02:09:39 -05:00
2016-05-30 06:52:25 -04:00
2017-01-22 22:26:34 -08:00
2016-05-25 16:10:28 -04:00
2015-12-17 14:14:04 -08:00
2015-12-17 14:14:04 -08:00
2018-04-27 21:41:52 -04:00
2018-04-27 21:41:52 -04:00
2016-05-25 02:38:06 -04:00
2020-01-16 17:17:31 -05:00
2020-05-09 14:40:33 -05:00
2021-07-16 21:50:46 -04:00
2014-12-15 22:42:59 -06:00
2019-04-16 01:09:25 -07:00
2019-04-16 01:09:25 -07:00
2019-09-01 23:54:24 -05:00
2016-10-16 21:36:39 -04:00
2019-09-01 23:41:26 -05:00
2018-07-14 17:41:42 -04:00
2022-10-15 15:17:50 -05:00