* Initial fix for #20509
* small revert
* Two way visibility between ghosts.
* clean up temporary changes.
* clean up debug code.
* small typo
* revert .gitignore
* fix codestyle
* Add missing flag, resolve issue where cast was failing while alive.
* Update SpellInfo.cpp
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
---------
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
* enable CREATURE_FLAG_EXTRA_USE_OFFHAND_ATTACK
* sql set CREATURE_FLAG_EXTRA_USE_OFFHAND
* use new HasOffHandWeaponForAttack instead of haveOffhandWeapon
no longer requires m_CanDualwield set to use Offhand attack
requires non-disarmed weapon in Offhand OR creature_flag_extra enabled
Co-authored-by: Ovah <dreadkiller@gmx.de>
Co-authored-by: Warlockbugs <warlockbugs@outlook.com>
* Make shapeshift forms which dont override attack speed use weapon damage
Co-authored-by: killerwife <killerwife@gmail.com>
* SetEquipmentSlots turning off damage update when using template default
Co-authored-by: killerwife <killerwife@gmail.com>
* Setup DualWield & Damage On Equipment Updates, implement Set and GetVirtualItem
Co-authored-by: Yatzii <47720837+Yatzii93@users.noreply.github.com>
* creature disarm damage
set disarm to reduce minmax damage by 50% instead of setting to 0
Co-authored-by: Warlockbugs <warlockbugs@outlook.com>
---------
Co-authored-by: Ovah <dreadkiller@gmx.de>
Co-authored-by: Warlockbugs <warlockbugs@outlook.com>
Co-authored-by: killerwife <killerwife@gmail.com>
Co-authored-by: Yatzii <47720837+Yatzii93@users.noreply.github.com>
* Init.
* Use GetGameTime() instead of system call.
Co-Authored-By: Anton Popovichenko <walkline.ua@gmail.com>
* Update leash timer if rooted.
* Remove unnecessary checks, add extension for fanning.
More parity with VMaNGOS implementation.
---------
Co-authored-by: Anton Popovichenko <walkline.ua@gmail.com>
* Init.
https: //github.com/vmangos/core/commit/7d2f1e2923734ea1b983eeaa0208cfd158d4af02
Co-Authored-By: ratkosrb <35845488+ratkosrb@users.noreply.github.com>
* Hackfix for pets.
* Whoops.
* Correct evade uses.
* Conflict.
* Actually fix grace timer.
* Add visibility distance check.
Creatures should always fail combat checks in the open world if they're outside of visibility distance, might not be the case for worldbosses.
---------
Co-authored-by: ratkosrb <35845488+ratkosrb@users.noreply.github.com>
* initial release
* fix reviews
* fix some typo and add new documetations for MotionMaster
* new update and fix the cli-codestyle
* fix typo
* fix reviews
* fix(Core/Creature): Prevent combat movement disabled creatures from repositioning if target moves within model boundary
* fixbuild
* Apply suggestions from code review
* Class Comparison Logic Encapsulation - Parity
* Add Context to IsClass
* Add Unit IsClass script hook
* Replace additional getClass with IsClass
* Update CanUseItem to replace getClass with IsClass
* Add separate context for pet vs ability
* Change Create to Init since not all referenced contexts are creation
* Align spacing in ClassContext
* Drop context on LFGManager max power
* Update IsClass context that wraps around Missle Barrage
* Rename context for swapping weapons
* Be more specific than CLASS_CONTEXT_TALENT
* Remove duplicate context
* Moved IsClass Hook to Player
* Removed unused parameter in virtual base function
* Added maybe_unused to IsClass virtual in order to compile
To match the override signature, the virtual base needs to include the parameter in question, so using [maybe_unused] to signal to the compiler to allow it
* Remove extra blank line
* Add ABILITY_REACTIVE context
* Add context for PET_CHARM
* Remove explicit nullopt check per review
* Code Readability - Change if to if else in pet
Due to the return pattern, this doesn't change functionality in any way
* Add OnPlayer to disambiguate
---------
Co-authored-by: NathanHandley <nathanhandley@protonmail.com>
- this is necessary to correctly spawn creatures within small defines
- 0.42f is as good as 1.0f to detect and correct reasonable z errors
in DB spawn data
* fix(Scripts/SSC): Fix being able to damage Leo's minions if you are not the target player
* implement helper
* Update Creature.cpp
* Update Creature.h
* Bug fixes
- Corrected std::chrono from seconds to milliseconds
- Got rid of leftover code that caused objects to not show up on time
* Removed logic to set gameobject as active
- More alignement with TC.
- Reduces CPU usage drastically
* Revert back to using time_t instead of std chrono
* Invoke SetNoCreate() method to reduce CPU usage drastically
* Remove setActive from static and motion transports
* Fix performance issues
* Added SetFarVisible to WG and some dungeon scripts
- Also removed setActive(true) from creatures in Wintergrasp. As for gameobjects they are set to active upon being damaged/destroyed and removed from active on rebuild (reset)
* Removed comments related to VISIBILITY_COMPENSATION
* Fix log
* Deleted unused files + corrected a check
* Added missing header
* Removed unused parameter
* Removed another unsued parameter
* Changed vector to set for i_visibleNow
- Changed vector to set for i_visibleNow in VisibleNotifer
- Adjusted HaveAtClient to accept Object*
- Adjusted SendUpdateToPlayer to send createobject packet only if not known to client
* Add `OnBeforeCreatureSelectLevel()` hook
- allows modules to alter the level of a creature just before it is set
* Fix missing class name.
* Hook should catch even if the level isn't being changed.
* Trim whitespace.
* Revert "Trim whitespace."
This reverts commit 76768d85c0b9878828b71a008e709c1df7ddadc5.
* Fix whitespace
- Fix drinking being interrupted by dots
- Fix first super timer
- Fix missing Arcane Explosion emote
- Fix supers being locked by spell interrupt
- Correct drinking to 10% mana down from 20%