Commit Graph

80 Commits

Author SHA1 Message Date
Treeston
b4cdf556f1 missing base class forward, 042f551 follow-up 2018-08-23 16:42:55 +02:00
Treeston
042f5515e4 Core/AI: Clean up charm AI handling, we now have two unique_ptr instead of a crapton of booleans 2018-08-23 16:34:42 +02:00
Treeston
c00a2efb21 Core/AI: Remove unnecessary parameter from DoZoneInCombat after eb1972f 2018-08-22 21:51:16 +02:00
Treeston
eb1972f21d Core/AI: Some cleanup to DoZoneInCombat and Malygos' AI that I found while working out #22226. 2018-08-20 19:04:21 +02:00
ccrs
982643cd96 Core/Movement: MotionMaster reimplementation (#21888)
Internal structure and handling changes, nothing behavioural (or thats the intention at least).
2018-06-03 10:06:57 -07:00
Treeston
4692e10ca2 Core/Position: Refactor GetAngle -> GetAbsoluteAngle because code clarity is good. 2018-04-01 13:52:36 +02:00
Treeston
df639d85e4 Core/CreatureAI: CheckBoundary -> IsInBoundary, better reflects what it does. Also moved to public so spellscript can use it. 2018-03-08 18:41:46 +01:00
Treeston
c69584a967 Game/AI: Remove some unused old logic. 2018-01-29 01:57:31 +01:00
Treeston
9f9507e6a1 Core/Misc: A variety of clean-up changes, mostly following up on 532ab1c to fix legacy bugs exposed by it:
- Triggers can no longer have a threat list (this may expose some ugliness in old legacy scripts)
- Threat entries are forced to OFFLINE if the AI refuses to attack the target
- Clean up passive creature evade behavior to be more consistent
- Fix a months old issue in spawn group management that would cause "Inactive" to incorrectly show in .list respawns for system groups outside of map 0
- Valithria script cleanups, remove old hacks and make it work with the new system. Closes #21174.
- Some strings cleanup
2018-01-04 04:46:41 +01:00
Treeston
532ab1c7f8 Core: Combat/threat system rewrite (PR #19930)
- PvE combat is now always mutual. UNIT_FLAG_IN_COMBAT is backed by actual references to the units we're in combat with.
- PvP combat is now also tracked, and almost always mutual; spells like Vanish and Feign Death can break this rule. That means we can easily determine a list of players we're fighting.
- By extension, IsInCombatWith now has sensible behavior when invoked on nonplayers.
- Threat and combat systems are no longer the same.
  - They still have an enforced relationship (threat implies combat - clearing combat clears threat)...
  - ...but we can have combat without threat. A creature (with threat list) isn't considered to be engaged until it has an entry on its threat list...
  - ...which means we can now faithfully replicate retail engage behavior. Combat on projectile launch - engagement start on projectile impact. Yay for progress!
- AI method refactor, as already ported in 6113b9d - `JustEngagedWith`, `JustEnteredCombat` and `JustExitedCombat`.
- Vehicle threat is now properly pooled on the main vehicle body (fixes #16542).
- Various edge case bug fixes for threat redirects (Misdirection "cancelling" Vigilance and similar).
- Target re-selection is now significantly faster.
- Fixed a ton of other smaller edge case bugs, probably.

Closes #7951 and #19998.
2018-01-03 20:04:19 +01:00
tkrokli
f6b6f57a6d Update copyright note for 2018
Best wishes for the new year.
2018-01-01 01:55:29 +01:00
treeston
74af880217 Hi, I'm Treeston, and welcome to Combat PR Prep Refactors.
Today, we're moving UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC to higher-level abstraction so combat manager can react to it.
New methods on Unit:
- void SetImmuneTo<All/PC/NPC>(apply, keepCombat = false);
- bool IsImmuneTo<All/PC/NPC>() const;
2017-07-09 02:07:29 +02:00
Treeston
e2a1ccd118 [3.3.5] Combat/Threat rewrite - prep & refactor (#19966)
* Combat/Threat rewrite (PR #19930) prep work. Mostly refactors, and a compatibility layer on ThreatManager/HostileReference that allows scripts to be changed already.
2017-07-01 20:18:02 +02:00
ariel-
85a7d5ce9a Core: ported headers cleanup from master branch 2017-06-19 23:20:06 -03:00
Treeston
1660bb7d27 Pet/Guardian AI hook re-organizing (#19824)
* Pet/Guardian AI hook re-organizing:
- Adjust OwnerAttacked/OwnerAttackedBy hooks on CreatureAI to fire for all owned units, not just player pets. This should allow guardians to more reliably recognize valid targets.
- Kill off the AttackedBy hook. While it was defined in CreatureAI.h as virtual, it was only ever invoked for player pets in specific situations. This makes it classic developer bait.
  - Adjust PetAI to use DamageTaken instead of AttackedBy.
  - Adjust behavior of AttackStart on PetAI to compensate.
2017-06-07 02:33:47 +02:00
ccrs
c7a57e2a09 Core/Unit: 2170541a51 followup
use true as default value since pretty much all the script calls will expect that
2017-04-27 14:55:06 +02:00
ccrs
5fc366d03b Core/CreatureAI: b6b0353bff followup 2017-04-27 14:00:57 +02:00
ariel-
6892404b27 Core/AI: some tweaks on boundary functionality:
- Moved SetBoundary to public scope to allow for greater flexibility (ie set from external script)
- Extended to allow checking inverted boundaries
2017-04-26 04:20:38 -03:00
ariel-
b6b0353bff Core/AI: prevent launching a new MoveChase if victim didn't change
Thanks ccrs for feedback :P
2017-04-23 21:48:05 -03:00
ariel-
2f99fa09c9 Core/AI: AreaBoundary refactor
- Added an auxiliary function IsInBounds to base CreatureAI
- Changed container to vector. Set had no sense because we're storing new pointers, they have different addresses even if the boundary is the same
2017-03-28 01:52:49 -03:00
xinef1
3c81a9a6d4 Properly clear focused target on evade (#18992)
Closes #18095
2017-01-27 19:42:50 -03:00
tkrokli
6a51a88767 Update Copyright notice for 2017
Happy new year!
2017-01-02 19:52:45 +01:00
treeston
2170541a51 Core/Unit: Standardize SetFacingTo and SetFacingToObject behavior while moving. Both now fail while moving unless arg2 bool is true.
Movement/SplineChain: Bump value range for DB chainId up to uint16 (0 to 65535) from uint8 (0 to 255). Turns out sniffs generate far more chains than I expected.
2016-09-20 20:19:15 +02:00
Aokromes
b51409a5d3 Core/Logs: Fine tunning some logs 2016-08-05 21:22:12 +02:00
treeston
b7f2c87d37 Creature/CreatureAI:
- Default range for DoZoneInCombat: 50.0f -> 250.0f.
- Add optional second arg to SummonList::DoZoneInCombat to specify range.
- Also a bunch of random NULL -> nullptr cleanup.
2016-05-11 23:24:26 +02:00
treeston
59ac775223 Merge branch '3.3.5-evademore' into 3.3.5 (PR #16834) 2016-05-05 13:20:52 +02:00
treeston
26b084a90f CreatureAI: Adjust AI behavior when a charm ends. OnCharmed will be invoked on the creature's base (non-charmed) AI, allowing the AI to react to the creature no longer being charmed. 2016-05-03 13:23:18 +02:00
Rushor
e869ccb297 Merge pull request #16503 from Rushor/evading
[3.3.5][6.x]Core/Unit: Do not remove auras from Pets and Guardians after evading
2016-04-25 11:46:00 +02:00
treeston
7b1560fccb Entities/Unit: Finally fix no-path evasion.
- When a creature cannot find a path to its victim, it begins evading all attacks and regenerating health.
- If this persists for 5 seconds, it evades back to spawn position with new EvadeReason value EVADE_REASON_NO_PATH.
- Also some SmartAI cleanup (why oh why does it have so much duplicated code) and getting rid of #defines in favor of type-checked compile-time constants.
2016-04-10 19:49:40 +02:00
Vincent-Michael
5e74c2223b Core: Remove whitespaces 2016-03-16 21:40:15 +01:00
treeston
bfac62c5c9 Fix some behavioral weirdness resulting from 79a945d5 - thanks ccrs. 2016-02-28 01:56:13 +01:00
treeston
b5b7ce44cf Core/Threat: Prevent bosses (and other stuff using DoZoneInCombat) from switching off of the person pulling if they are pulled without generating threat. 2016-02-22 23:00:35 +01:00
treeston
8e6fb3b1c5 Core/AI: Fully move react state check from CreatureUnitRelocationWorker to CreatureAI::MoveInLineOfSight. This means that AI for passive/defensive creatures can now once again use MoveInLineOfSight (and fixes that weird thing where triggers decided it would be funny to attack players). 2016-02-11 18:36:01 +01:00
Rushor
5c0b0add27 Core/Unit: Do not remove auras from Pets and Guardians after evading
* this adds free space for further adjustments
* this fixes #14347
2016-02-10 14:33:58 +01:00
treeston
19ed18c881 AI/BossAI: Make creature never chase targets that are out of bounds
- Add missing const attribute on CheckBoundary arg.
- Prevent AI from attacking a target that is out of bounds. This prevents exploids such as killing Gluth/Deathbringer from out of bounds.
2016-02-09 22:46:57 +01:00
treeston
233297c5c8 Merge branch '3.3.5-spellfacing' into 3.3.5-base (PR #15641) 2016-01-13 18:38:54 +01:00
treeston
f481ae1048 Core/Spells: Creature spellcast facing rework:
- Fixes creatures turning just before a spellcast finishes and smacking players with supposedly-unavoidable damage. Fixes and closes #15393, #10803, and probably others.
- Fixes visual effects not lining up with the correct target for spells that have their visual aligned with the caster's orientation (examples: Anub'rekhan Impale, Ingvar's Smash/Dark Smash, etc.). Fixes and closes #2947 and probably a bunch of others, including the aforementioned #15393 and #10803.
- Creatures' displayed target now properly matches the unit they are targeting with spells for a split second (blizzlike). This is necessary to get proper client-side orientation.
2016-01-13 18:35:44 +01:00
treeston
2da458c56d Scripts/Instances: Complete rewrite of the boundary system.
- Migrate boundary logic to Maps/AreaBoundary instead of having it sit in InstanceScript (to possibly allow use for other purposes).
- Implement the first five boundary types in Maps/AreaBoundary.cpp.
- Add boundary checks to Creature's update logic
- Add boundary data for all Northrend raids
- Add boundary initialization structures and methods to InstanceScript
- Modify EnterEvadeMode signature. It now passes a value from the EvadeReason enum as parameter to allow special casing depending on evade reason
- Remove previous (weird) boundary code that had them linked to GO spawns
2016-01-12 22:24:23 +01:00
Rushor
923a368ac7 Update copyright note for 2016 2016-01-01 12:02:33 +01:00
pete318
1e0213bc57 The following stealth changes are implemented.
- Combat no longer removes stealth, only damage does
 - Creatures will pursue a stealthed unit they cannot see if they're already in combat with them
 - When a player is ~~3 yards~~ 8% + 1.5 yards away from the usual stealth detection distance, the creature will perform the "alerted" effect.
 - When sitting/sleeping creatures are distracted or alerted, they will stand up
 - Idle movement creatures will return to their original (spawn) orientation after distract/alert
 - When entering combat with a distracted/alerted creature, distract state is removed
 - NPC no longer have a limit to stealth visibility (granted by stealth modifier spells/buffs)
 - If alert visibility is greater than aggro range, no alert sent
2015-07-02 23:11:20 +00:00
Vincent-Michael
f3e86d3e68 Update copyright note for 2015
Happy new year

Conflicts:
	src/server/bnetserver/Authentication/AuthCodes.h
	src/server/bnetserver/Authentication/BattlenetPacketCrypt.cpp
	src/server/bnetserver/Authentication/BattlenetPacketCrypt.h
	src/server/bnetserver/Packets/AchievementPackets.h
	src/server/bnetserver/Packets/AuthenticationPackets.cpp
	src/server/bnetserver/Packets/AuthenticationPackets.h
	src/server/bnetserver/Packets/BitStream.cpp
	src/server/bnetserver/Packets/BitStream.h
	src/server/bnetserver/Packets/CachePackets.cpp
	src/server/bnetserver/Packets/CachePackets.h
	src/server/bnetserver/Packets/ChatPackets.h
	src/server/bnetserver/Packets/ConnectionPackets.cpp
	src/server/bnetserver/Packets/ConnectionPackets.h
	src/server/bnetserver/Packets/FriendsPackets.cpp
	src/server/bnetserver/Packets/FriendsPackets.h
	src/server/bnetserver/Packets/PacketManager.cpp
	src/server/bnetserver/Packets/PacketManager.h
	src/server/bnetserver/Packets/Packets.h
	src/server/bnetserver/Packets/PacketsBase.cpp
	src/server/bnetserver/Packets/PacketsBase.h
	src/server/bnetserver/Packets/PresencePackets.cpp
	src/server/bnetserver/Packets/PresencePackets.h
	src/server/bnetserver/Packets/ProfilePackets.h
	src/server/bnetserver/Packets/SupportPackets.h
	src/server/bnetserver/Packets/WoWRealmPackets.cpp
	src/server/bnetserver/Packets/WoWRealmPackets.h
	src/server/bnetserver/Realms/RealmList.cpp
	src/server/bnetserver/Realms/WorldListener.cpp
	src/server/bnetserver/Realms/WorldListener.h
	src/server/bnetserver/Server/ComponentManager.cpp
	src/server/bnetserver/Server/ComponentManager.h
	src/server/bnetserver/Server/ModuleManager.cpp
	src/server/bnetserver/Server/ModuleManager.h
	src/server/bnetserver/Server/Session.cpp
	src/server/bnetserver/Server/Session.h
	src/server/bnetserver/Server/SessionManager.cpp
	src/server/bnetserver/Server/SessionManager.h
	src/server/game/Accounts/BattlenetAccountMgr.cpp
	src/server/game/Accounts/BattlenetAccountMgr.h
	src/server/game/Battlegrounds/Zones/BattlegroundBFG.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundBFG.h
	src/server/game/Battlegrounds/Zones/BattlegroundTP.cpp
	src/server/game/Battlegrounds/Zones/BattlegroundTP.h
	src/server/game/Entities/AreaTrigger/AreaTrigger.cpp
	src/server/game/Entities/AreaTrigger/AreaTrigger.h
	src/server/game/Entities/Item/ItemTemplate.cpp
	src/server/game/Guilds/GuildFinderMgr.cpp
	src/server/game/Guilds/GuildFinderMgr.h
	src/server/game/Handlers/GuildFinderHandler.cpp
	src/server/game/Handlers/VoidStorageHandler.cpp
	src/server/game/Movement/MovementStructures.cpp
	src/server/game/Movement/MovementStructures.h
	src/server/game/Movement/PathGenerator.cpp
	src/server/game/Server/BattlenetServerManager.cpp
	src/server/game/Server/BattlenetServerManager.h
	src/server/game/Server/Packet.cpp
	src/server/game/Server/Packet.h
	src/server/game/Server/Packets/AchievementPackets.cpp
	src/server/game/Server/Packets/AchievementPackets.h
	src/server/game/Server/Packets/AuctionHousePackets.cpp
	src/server/game/Server/Packets/AuctionHousePackets.h
	src/server/game/Server/Packets/AuthenticationPackets.cpp
	src/server/game/Server/Packets/AuthenticationPackets.h
	src/server/game/Server/Packets/BattlegroundPackets.cpp
	src/server/game/Server/Packets/BattlegroundPackets.h
	src/server/game/Server/Packets/ChannelPackets.cpp
	src/server/game/Server/Packets/ChannelPackets.h
	src/server/game/Server/Packets/CharacterPackets.cpp
	src/server/game/Server/Packets/CharacterPackets.h
	src/server/game/Server/Packets/ChatPackets.cpp
	src/server/game/Server/Packets/ChatPackets.h
	src/server/game/Server/Packets/ClientConfigPackets.cpp
	src/server/game/Server/Packets/ClientConfigPackets.h
	src/server/game/Server/Packets/CombatLogPackets.cpp
	src/server/game/Server/Packets/CombatLogPackets.h
	src/server/game/Server/Packets/CombatPackets.cpp
	src/server/game/Server/Packets/CombatPackets.h
	src/server/game/Server/Packets/EquipmentSetPackets.cpp
	src/server/game/Server/Packets/EquipmentSetPackets.h
	src/server/game/Server/Packets/GameObjectPackets.cpp
	src/server/game/Server/Packets/GameObjectPackets.h
	src/server/game/Server/Packets/GuildPackets.cpp
	src/server/game/Server/Packets/GuildPackets.h
	src/server/game/Server/Packets/ItemPackets.cpp
	src/server/game/Server/Packets/ItemPackets.h
	src/server/game/Server/Packets/LootPackets.h
	src/server/game/Server/Packets/MiscPackets.cpp
	src/server/game/Server/Packets/MiscPackets.h
	src/server/game/Server/Packets/MovementPackets.cpp
	src/server/game/Server/Packets/MovementPackets.h
	src/server/game/Server/Packets/NPCPackets.cpp
	src/server/game/Server/Packets/NPCPackets.h
	src/server/game/Server/Packets/QueryPackets.cpp
	src/server/game/Server/Packets/QueryPackets.h
	src/server/game/Server/Packets/QuestPackets.cpp
	src/server/game/Server/Packets/QuestPackets.h
	src/server/game/Server/Packets/ReputationPackets.cpp
	src/server/game/Server/Packets/ReputationPackets.h
	src/server/game/Server/Packets/SpellPackets.cpp
	src/server/game/Server/Packets/SpellPackets.h
	src/server/game/Server/Packets/SystemPackets.cpp
	src/server/game/Server/Packets/SystemPackets.h
	src/server/game/Server/Packets/TalentPackets.cpp
	src/server/game/Server/Packets/TalentPackets.h
	src/server/game/Server/Packets/TradePackets.h
	src/server/game/Server/Packets/WorldStatePackets.cpp
	src/server/game/Server/Packets/WorldStatePackets.h
	src/server/game/Server/WorldSocket.cpp
	src/server/ipc/CMakeLists.txt
	src/server/ipc/Commands.cpp
	src/server/ipc/Commands.h
	src/server/ipc/ZMQTask.cpp
	src/server/ipc/ZMQTask.h
	src/server/ipc/ZmqContext.cpp
	src/server/ipc/ZmqContext.h
	src/server/ipc/ZmqListener.cpp
	src/server/ipc/ZmqListener.h
	src/server/ipc/ZmqMux.cpp
	src/server/ipc/ZmqMux.h
	src/server/ipc/ZmqWorker.cpp
	src/server/ipc/ZmqWorker.h
	src/server/scripts/Commands/cs_battlenet_account.cpp
	src/server/scripts/Commands/cs_mmaps.cpp
	src/server/scripts/EasternKingdoms/BaradinHold/boss_alizabal.cpp
	src/server/scripts/EasternKingdoms/BaradinHold/boss_occuthar.cpp
	src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp
	src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/blackrock_caverns.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/blackrock_caverns.h
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/boss_ascendant_lord_obsidius.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/boss_beauty.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/boss_corla.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/boss_karsh_steelbender.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/boss_romogg_bonecrusher.cpp
	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/instance_blackrock_caverns.cpp
	src/server/scripts/EasternKingdoms/Deadmines/deadmines.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_daakara.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_hexlord.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_janalai.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_nalorakk.cpp
	src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp
	src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
	src/server/scripts/EasternKingdoms/ZulAman/zulaman.h
	src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo_the_godbreaker.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/boss_kilnara.cpp
	src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
	src/server/scripts/EasternKingdoms/zone_burning_steppes.cpp
	src/server/scripts/EasternKingdoms/zone_ironforge.cpp
	src/server/scripts/EasternKingdoms/zone_stormwind_city.cpp
	src/server/scripts/EasternKingdoms/zone_tirisfal_glades.cpp
	src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp
	src/server/scripts/Kalimdor/Firelands/firelands.h
	src/server/scripts/Kalimdor/Firelands/instance_firelands.cpp
	src/server/scripts/Kalimdor/HallsOfOrigination/boss_anraphet.cpp
	src/server/scripts/Kalimdor/HallsOfOrigination/boss_earthrager_ptah.cpp
	src/server/scripts/Kalimdor/HallsOfOrigination/boss_temple_guardian_anhuur.cpp
	src/server/scripts/Kalimdor/HallsOfOrigination/halls_of_origination.h
	src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp
	src/server/scripts/Kalimdor/zone_azshara.cpp
	src/server/scripts/Kalimdor/zone_darkshore.cpp
	src/server/scripts/Kalimdor/zone_felwood.cpp
	src/server/scripts/Kalimdor/zone_moonglade.cpp
	src/server/scripts/Kalimdor/zone_orgrimmar.cpp
	src/server/scripts/Kalimdor/zone_stonetalon_mountains.cpp
	src/server/scripts/Maelstrom/Stonecore/boss_corborus.cpp
	src/server/scripts/Maelstrom/Stonecore/boss_high_priestess_azil.cpp
	src/server/scripts/Maelstrom/Stonecore/boss_ozruk.cpp
	src/server/scripts/Maelstrom/Stonecore/boss_slabhide.cpp
	src/server/scripts/Maelstrom/Stonecore/instance_stonecore.cpp
	src/server/scripts/Maelstrom/Stonecore/stonecore.cpp
	src/server/scripts/Maelstrom/Stonecore/stonecore.h
	src/server/shared/Cryptography/Authentication/AuthCrypt.h
	src/server/shared/Cryptography/Authentication/PacketCrypt.cpp
	src/server/shared/Cryptography/Authentication/WorldPacketCrypt.cpp
	src/server/shared/Cryptography/HmacHash.cpp
	src/server/shared/Cryptography/SHA256.cpp
	src/server/shared/Cryptography/SHA256.h
	src/server/shared/Database/Implementation/HotfixDatabase.cpp
	src/server/shared/Database/Implementation/HotfixDatabase.h
	src/server/shared/Realm/Realm.cpp
	src/server/shared/Realm/Realm.h
	src/tools/connection_patcher/CMakeLists.txt
	src/tools/connection_patcher/Constants/BinaryTypes.hpp
	src/tools/connection_patcher/Helper.cpp
	src/tools/connection_patcher/Helper.hpp
	src/tools/connection_patcher/Patcher.cpp
	src/tools/connection_patcher/Patcher.hpp
	src/tools/connection_patcher/Patches/Common.hpp
	src/tools/connection_patcher/Patches/Mac.hpp
	src/tools/connection_patcher/Patches/Windows.hpp
	src/tools/connection_patcher/Patterns/Common.hpp
	src/tools/connection_patcher/Patterns/Mac.hpp
	src/tools/connection_patcher/Patterns/Windows.hpp
	src/tools/connection_patcher/Program.cpp
	src/tools/map_extractor/loadlib/DBFilesClientList.h
2015-01-01 00:32:50 +01:00
joschiwald
e567ab9597 Core/Texts: added TextRange parameter to creature_text
Ranges:
0 - Normal (Default)
1 - Area
2 - Zone
3 - Map
4 - World

Ref #13116
2014-09-18 23:33:59 +02:00
Shauren
7532864264 Buildsystem/MSVC: Warning fixes
C4800 'type' : forcing value to bool 'true' or 'false' (performance warning)
C4127 conditional expression is constant
2014-07-17 15:42:57 +02:00
Trisjdc
106c54cf25 Core/CreatureAI: Implement CreatureAI::TalkToMap for all your map-wide talking needs. Could also replace Battleground::SendChatMessage 2014-05-09 10:19:44 +01:00
jackpoz
2585e799f9 Core/Misc: Change how Position struct is retrieved
Update Position::GetPosition() and similar methods signatures to reflect 2a4c9bcaf9 changes by return a Position object instead of accepting a Position parameter by reference.
2014-04-25 21:19:30 +02:00
Vincent_Michael
20004050bc Update copyright note for 2014.
Happy new year.
2014-01-01 00:07:53 +01:00
Shauren
107af52853 Core/Chat: Refactored building chat packets
* Moved everything into one specialized method instead of being scattered all over the place
* Allow localizing creature names in chat messages (when using $N)
* Send SMSG_GM_MESSAGECHAT for gm messages
2013-12-23 14:23:49 +01:00
Spp
94e2b9332a Core/Logging: Remove LOG_FILTER_XXX defines with it's value (remember logger names are case-sensitive) 2013-11-08 10:50:51 +01:00
Sebastian Valle
24f8b2b994 Core/Misc: Fixed some more issues found by code analysis tools. 2013-09-03 15:09:37 -05:00
Nay
d0bde02b21 Core/CreatureAI: Do not remove clone_caster auras on evade (in addition to control_vehicle auras) 2013-08-11 15:52:23 +01:00