Aeadoin
db916e946e
[Bug Fix] Fix issue with spawning Mercs ( #3327 )
2023-04-29 18:45:35 -04:00
Alex King
958549b407
[Bug Fix] Possible issues with SummonItem in Client::QuestReward() methods ( #3325 )
...
# Notes
- These methods were ignoring the sixth augment slot and could cause item to be summoned attuned being `EQ::invslot::slotCursor` is a non-zero value.
2023-04-26 21:28:24 -04:00
Paul Coene
71ebf1b2d4
[Messages] Remove duplicate you have lost a level message ( #3323 )
2023-04-25 17:42:31 -04:00
Paul Coene
e19b8d3056
[Bug Fix] Fix issue with NPCs no longer using some armor. ( #3318 )
...
* [BugFix/NPCs] Fix issue with NPCs no longer using some armor.
* Removed redundant memory clear
2023-04-24 17:05:29 -04:00
Alex King
8b1d64a043
[Cleanup] quest::createBot() unnecessary check against nullptr ( #3302 )
...
# Notes
- We initialize this variable, so it can never be a nullptr.
2023-04-23 15:08:50 -04:00
Alex King
576f99f292
[Cleanup] Add initiator/owner checks to various methods in questmgr.cpp ( #3306 )
...
* [Cleanup] Add initiator/owner checks to various methods in questmgr.cpp
# Notes
- Add `initiator` check to `quest::permaclass()`.
- Add `initiator` check to `quest::permarace()`.
- Add `initiator` check to `quest::permagender()`.
- Add `initiator` check to `quest::scribespells()`.
- Add `initiator` check to `quest::traindiscs()`.
- Add `initiator` check to `quest::unscribespells()`.
- Add `initiator` check to `quest::untraindiscs()`.
- Cleanup `initiator` check in `quest::pvp()`.
- Cleanup `initiator` check in `quest::movepc()`.
- Cleanup `initiator` check in `quest::gmmove()`.
- Cleanup `initiator` check in `quest::movegrp()`.
- Add `owner` check to `quest::doanim()`.
- Cleanup `initiator` check in `quest::addskill()`.
- Cleanup `initiator` check in `quest::setlanguage()`.
- Cleanup `initiator` check in `quest::setskill()`.
* Update questmgr.cpp
* Update questmgr.cpp
* Update questmgr.cpp
* Update questmgr.cpp
2023-04-23 15:08:32 -04:00
Alex King
e3761cf2a3
[Cleanup] Add check for owner in quest::resumetimer() ( #3305 )
...
# Notes
- We didn't check for owner before doing `owner->GetName()`.
2023-04-23 15:07:49 -04:00
Alex King
ad1764b464
[Cleanup] Add cehck for owner in quest::pausetimer() ( #3304 )
...
# Notes
- We didn't check for `owner` before doing `owner->GetName()`.
2023-04-23 15:07:09 -04:00
Alex King
1c9ea57a4e
[Cleanup] Fix possible nullptr in quest::addloot() ( #3303 )
...
# Notes
- We didn't check for `owner` before calling `owner->IsNPC()`.
2023-04-23 15:06:53 -04:00
Alex King
03c158b674
[Crash] Fix possible nullptr in Client::GetCharMaxLevelFromQGlobal() ( #3317 )
...
# Notes
- We could possibly not have a `zone` here, causing a crash.
- http://spire.akkadius.com/dev/release/22.9.1?id=3051
- http://spire.akkadius.com/dev/release/22.9.1?id=3052
- http://spire.akkadius.com/dev/release/22.9.1?id=3073
- http://spire.akkadius.com/dev/release/22.9.1?id=3102
- http://spire.akkadius.com/dev/release/22.9.1?id=3103
- http://spire.akkadius.com/dev/release/22.9.1?id=3104
- http://spire.akkadius.com/dev/release/22.9.1?id=3107
- http://spire.akkadius.com/dev/release/22.9.1?id=3108
- http://spire.akkadius.com/dev/release/22.9.1?id=3109
- http://spire.akkadius.com/dev/release/22.9.1?id=3110
- http://spire.akkadius.com/dev/release/22.9.1?id=3111
- http://spire.akkadius.com/dev/release/22.9.1?id=3112
- http://spire.akkadius.com/dev/release/22.9.1?id=3113
- http://spire.akkadius.com/dev/release/22.9.1?id=3114
2023-04-23 15:05:47 -04:00
Aeadoin
39b5374e92
[Crash] Fix possible dereference of nullptr in Client::CalcHPRegen ( #3316 )
2023-04-23 14:27:43 -04:00
Aeadoin
ed09281f66
[Bug Fix] Camping was causing player to leave raid, causing unexpected behavior ( #3299 )
2023-04-22 10:03:40 -04:00
Alex King
844efa7e20
[Cleanup] Breaks in wrong spot in cases in spell_effects.cpp ( #3297 )
...
* [Cleanup] Breaks in wrong spot in cases in spell_effects.cpp
# Notes
- These breaks were inside conditions, meaning the case wasn't always broken.
* Update spell_effects.cpp
2023-04-22 08:49:13 -04:00
Alex King
fa3a5c7a72
[Feature] Make ornamentations work with any augment type ( #3281 )
...
* [Feature] Make ornamentations work with any augment type
# Notes
- On Live there are augments that are not type 20/21 and are ornamentations.
- We also only allow a singular augment type to be ornamentation augment types, this will allow you to use any augment type as an ornamentation if it has a proper Hero's Forge model or a non-IT63/non-IT64 idfile.
* Update ruletypes.h
* Update client_packet.cpp
* Update item_instance.cpp
* Cleanup.
2023-04-16 10:26:19 -04:00
Aeadoin
93db35658a
[Crash] Add additional raid integrity checks on Bot Spawn. ( #3295 )
...
* simple cleanup before changes
* can't be in a raid yet
* change to sizeof
* change to use sizeof
2023-04-16 10:06:19 -04:00
Alex King
d45a57056a
[Cleanup] Remove getd(), geti(), InUse(), lasterr(), my_get_sv(), and VarExists() in embperl.cpp/embperl.h ( #3283 )
...
* [Cleanup] Remove getd(), geti(), InUse(), lasterr(), and VarExists() in embperl.cpp/embperl.h
# Notes
- These are unused.
* Update embperl.h
* Update embperl.cpp
2023-04-15 13:20:18 -04:00
Alex King
ff40dbc710
[Cleanup] Utilize IsTaunting(), SetPetPower(), SetPetType(), and SetTaunting() ( #3275 )
...
* [Cleanup] Utilize SetPetPower() in zone/pets.cpp
# Notes
- This wasn't used before.
* Utilize other methods.
* Update special_attacks.cpp
2023-04-15 13:20:04 -04:00
Aeadoin
7523c972fa
[Crash] Fix crash with uninitialized item instance, and Bot timeout ( #3296 )
2023-04-15 13:12:48 -04:00
Alex King
4320c1429e
[Cleanup] Remove _GetMovementSpeed() from mob.h ( #3276 )
...
# Notes
- This is unused.
2023-04-14 19:42:48 -04:00
Alex King
dc8bfddd7a
[Cleanup] Remove IsFullHP from mob.cpp/mob.h ( #3277 )
...
# Notes
- This is unused.
2023-04-14 19:42:39 -04:00
Alex King
a8cdfb07e6
[Cleanup] Remove pendinggroup from mob.h ( #3278 )
...
# Notes
- This is unused.
2023-04-14 19:42:27 -04:00
Alex King
0cc76ab489
[Cleanup] Remove position_same_update_count from client.cpp/client.h ( #3280 )
...
# Notes
- This is unused.
2023-04-14 19:42:01 -04:00
Alex King
c5c9985e0d
[Cleanup] Remove ExportVarComplex() from embparser.cpp/embparser.h ( #3282 )
...
# Notes
- This is unused.
2023-04-14 19:41:23 -04:00
Alex King
a7e95d7818
[Cleanup] Delete embxs.cpp/embxs.h ( #3284 )
...
* [Cleanup] Delete embxs.cpp/embxs.h
# Notes
- These files and the one method in them are unused.
* Update embperl.cpp
2023-04-14 19:40:51 -04:00
Alex King
933d856b5b
[Cleanup] Remove GetQGlobal() from qglobals.cpp/qglobals.h ( #3285 )
...
# Notes
- This is unused.
2023-04-14 19:40:35 -04:00
Alex King
285cc3af29
[Cleanup] Remove item_timers from questmgr.cpp/questmgr.h ( #3286 )
...
* [Cleanup] Remove item_timers from questmgr.cpp/questmgr.h
# Notes
- This is unused.
* Update questmgr.h
2023-04-14 19:40:21 -04:00
Alex King
de8ae7afa6
[Cleanup] Cleanup zone/zoning.cpp ( #3289 )
...
# Notes
- Duplicate outcome cases in `Client::Handle_OP_ZoneChange`.
- Use `.length()` over `strlen` in array defintition.
- Remove unnecessary `else if` in `Client::ZonePC`
2023-04-14 19:40:01 -04:00
Alex King
1b272cba50
[Cleanup] Remove unused ctor and use default dtor in xtargetautohaters.h ( #3290 )
...
* [Cleanup] Remove unused ctor and use default dtor in xtargetautohaters.h
# Notes
- Utilize default dtor.
- Remove unused ctor.
* Update zone_event_scheduler.cpp
2023-04-14 19:39:25 -04:00
Alex King
e35e38b039
[Cleanup] Remove unused variables and use reference in task_manager.cpp ( #3291 )
...
# Notes
- Remove unused `query` and `item` variable.
- Use a reference for task data instead of calling `cts->m_completed_tasks[task_index]` over and over.
2023-04-14 19:39:07 -04:00
Alex King
9215ba7a8a
[Cleanup] Remove always true statements in task_client_state.cpp ( #3292 )
...
# Notes
- `!tasks_enabled.empty()` is always true.
- `tasks_disabled.size()` is always true.
2023-04-14 19:38:35 -04:00
Alex King
3f4334985b
[Cleanup] Remove unnecessary condition and cleanup variable name in tasks.cpp ( #3293 )
...
# Notes
- `task_state` is verified by `safe_delete`.
- `size` is the name of a member variable, we should just use `sizeof(uint32_t)` instead.
2023-04-14 19:38:28 -04:00
Alex King
21002c2e8a
[Quest API] Fix LDoN Methods in Perl/Lua ( #3287 )
...
# Perl
- Add `quest::removeldonloss(theme_id)`.
- Add `quest::removeldonwin(theme_id)`.
# Lua
- Fix `eq.remove_ldon_win(theme_id)` as it was using `quest_manager.addldonwin(theme_id)` instead of `quest_manager.removeldonwin(theme_id)`.
2023-04-10 16:16:54 -04:00
Alex King
445f967ed6
[Quest API] Add ApplySpellRaid() and SetSpellDurationRaid() to Bots in Perl/Lua ( #3274 )
...
# Perl
- Add `$bot->ApplySpellRaid(spell_id)`.
- Add `$bot->ApplySpellRaid(spell_id, duration)`.
- Add `$bot->ApplySpellRaid(spell_id, duration, allow_pets)`.
- Add `$bot->ApplySpellRaid(spell_id, duration, allow_pets, is_raid_group_only)`.
- Add `$bot->SetSpellDuration(spell_id)`.
- Add `$bot->SetSpellDuration(spell_id, duration)`.
- Add `$bot->SetSpellDuration(spell_id, duration, allow_pets)`.
- Add `$bot->SetSpellDuration(spell_id, duration, allow_pets, is_raid_group_only)`.
# Lua
- Add `bot:ApplySpellRaid(spell_id)`.
- Add `bot:ApplySpellRaid(spell_id, duration)`.
- Add `bot:ApplySpellRaid(spell_id, duration, allow_pets)`.
- Add `bot:ApplySpellRaid(spell_id, duration, allow_pets, is_raid_group_only)`.
- Add `bot:SetSpellDuration(spell_id)`.
- Add `bot:SetSpellDuration(spell_id, duration)`.
- Add `bot:SetSpellDuration(spell_id, duration, allow_pets)`.
- Add `bot:SetSpellDuration(spell_id, duration, allow_pets, is_raid_group_only)`.
# Notes
- These methods weren't added initially as we did not support bots in raid groups until recently.
2023-04-09 12:00:12 -04:00
Alex King
57a15d473f
[Quest API] Add GetBuffSpellIDs() to Perl/Lua ( #3273 )
...
# Perl
- Add `$mob->GetBuffSpellIDs()`.
# Lua
- Add `$mob->GetBuffSpellIDs()`.
# Notes
- These methods allow operators to get a list of a mob's buff IDs without having to loop through their buffs themselves.
2023-04-09 10:58:35 -04:00
Trent
df92c578d2
[Rules] Optional summoning when already in melee range ( #3204 )
...
* Add summon melee range rule
* Fix compilation
* Remove redundant range check for HateSummon
2023-04-08 18:04:17 -04:00
Alex King
4a9cb07132
[Cleanup] Remove unnecessary setting of reuse variable in Bot::DoClassAttacks() ( #3233 )
...
# Notes
- Bash, Kick, and Taunt have the same reuse time, no reason to set it to the same value.
2023-04-05 19:17:15 -04:00
Alex King
8f1b62d166
[Cleanup] Remove always true/false conditions from bot.cpp ( #3237 )
...
* [Cleanup] Remove always true/false conditions from bot.cpp
# Notes
- Some of these conditions were always true or false based on previous conditions.
* Update bot.cpp
2023-04-05 19:05:49 -04:00
Alex King
7e9994b5d4
[Cleanup] Fix ornamentation augment icons in inspect requests ( #3264 )
...
* [Cleanup] Fix ornamentation augment icons in inspect requests
# Notes
- We were not setting `aug_item` to the ornamentation augment when we found one.
* Update client.cpp
2023-04-05 19:04:32 -04:00
Alex King
e939c82717
[Cleanup] Convert equipable_slot_list to std::vector from std::list in bot_command.cpp ( #3253 )
...
# Notes
- No need to use a `std::list` here.
2023-04-05 11:35:04 -04:00
Alex King
d1b7c675f9
[Cleanup] Validate for nullptrs in bot.cpp ( #3232 )
...
* [Cleanup] Validate for nullptrs in bot.cpp
# Notes
- Validate for nullptrs in these spots in bot.cpp before using the variable.
* Update bot.cpp
2023-04-05 11:15:46 -04:00
Alex King
a40e1cf893
[Cleanup] Add missing breaks and returns in bonuses.cpp ( #3231 )
...
# Notes
- Many spots were missing a `break;` or a `return` for their value.
2023-04-05 11:15:22 -04:00
Alex King
c81ab00764
[Cleanup] Set bonuses to use spell ID instead of boolean ( #3230 )
...
# Notes
- Spell bonuses `Illusion` is the spell ID, not a boolean.
2023-04-05 11:14:55 -04:00
Alex King
025ef5e1d6
[Cleanup] Move unreachable code in ApplySpellsBonuses() ( #3229 )
...
# Notes
- This code was unreachable since it was inside the switch and should have been checked on its own in the condition where we verify we are using AISpellEffects.
2023-04-05 11:14:28 -04:00
Alex King
1f29a40e6d
[Cleanup] Remove extraneous check for NegateAttacks in SE_NegateAttacks ( #3228 )
...
# Notes
- We checked both, we only need to check one.
2023-04-05 11:12:02 -04:00
Alex King
66cadd599b
[Cleanup] Remove extraneous parentheses around math in Mob::ApplySpellsBonuses() ( #3227 )
...
# Notes
- Extra parentheses.
2023-04-05 11:11:41 -04:00
Alex King
aa0345c1f1
[Cleanup] Cleanup duplicate conditions in negate bonuses in bonuses.cpp ( #3226 )
...
# Notes
- Lots of duplicate conditions.
2023-04-05 11:11:22 -04:00
Alex King
73b11c5036
[Cleanup] SE_StrikeThrough and SE_StrikeThrough2 are the same in bonuses.cpp ( #3223 )
...
# Notes
- These were the same code duplicated.
2023-04-05 11:05:59 -04:00
Alex King
efbeb2dbb7
[Cleanup] SE_AttackSpeed3 effect_value is always less than 0 ( #3222 )
...
# Notes
- This was always false.
2023-04-05 11:05:44 -04:00
Alex King
8c97c20727
[Cleanup] Fix skill_used being used as boolean in Mob::CommonDamage() ( #3220 )
...
# Notes
- This is unnecessary as we always have a skill value.
2023-04-05 11:03:28 -04:00
Alex King
f2d07e5c69
[Cleanup] Remove unnecessary break in while loop in Mob::AddToHateList() ( #3219 )
...
# Notes
- This is unnecessary and breaks the loop for no reason.
2023-04-05 10:31:57 -04:00