Commit Graph
72 Commits
Author SHA1 Message Date
Shauren d2567a9f2f Core/Entities: Removed unused variable 2012-02-16 21:46:37 +01:00
Subv d790adefe0 Codestyle: Renamed some variables to fit codestyle
Signed-off-by: Subv <[email protected]>
2012-02-12 20:10:09 -05:00
Shocker 08be716ef8 Core/Misc: Rename UNIT_STAT_* enums to UNIT_STATE_* 2012-02-03 19:02:17 +02:00
Machiavelli dbbac0bdaa Core/Movement: Implement spline movement subsystem.
Spline movement controls movements of server-side controlled units (monster movement, taxi movement, etc).
Proper implementation of effects such as charge, jump, cyclic movement will rely on it.
However, need improve our states system before.

Technical changes:

* Added linear, catmullrom and bezier3 splines which based on client's algorthims. They can be reused for proper transport position interpolation.
* Precission increased. There are no more position desync issues since client's position calculation formulas used.
* Now possible to move by paths with multiple points, send whole path to client.

--
Original author of research and implementation: SilverIce. Massive kudos.
Original port for Trinity (ref #4629) Chaplain and Venugh
With the following incremental fixes during my review:

- Restore flightmaster end grid pre-loading
- Fix uninitialized Creature::m_path_id
- Add missing trinity_string entries for .movegens command
- Fix a bug in WaypointMovementGenerator that would trigger unexpected pausing at waypoints for various amounts of time

Known issues:
- Errors like WaypointMovementGenerator::LoadPath creature XXX (Entry: YYYYY GUID: ZZZZZZ) doesn't have waypoint path id: 0.
This is caused by bad DB data. This commit didn't "break" it.

Do not forget to re-run CMake before compiling.
2012-01-14 15:36:07 +01:00
kiper 8299627ed9 Update headers for 2012. HAPPY NEW YEAR!!! 2012-01-01 00:32:13 +01:00
megamage 8cf2062c1f Update grid system. Try to fix some crashes and transport passengers (now they are despawned after a while). 2011-12-20 17:07:09 -05:00
megamage 529af3cd09 Delete obj if it is not successfully added to grid. More to fix. 2011-11-28 14:05:25 -05:00
Bootz d1334624da Core: Codestyle clean-up
"pl"->"player"

 Note: codestyle methods needs maintained, Player* player.
still to do properly clean-up chat.cpp.
2011-11-07 11:18:00 -06:00
tobmaps c0c6000a44 Core/Misc: Fix spelling typo 2011-11-02 19:13:51 +07:00
megamage c29ff41001 Rename some classes in grid system.
Note: The naming of classes is still confusing. "cell" usually refers to class "Grid", and "grid" usually refers to class "NGrid". But it requires a lot of changes to clean this up.
2011-10-18 10:53:34 -04:00
megamage c8251bc619 Remove some "_" from private methods as required by TC standards. Thanks to Shauren for pointing out. 2011-10-13 17:01:55 -04:00
megamage bcc55489f8 More cleanup of CanSeeOrDetect 2011-10-13 14:02:07 -04:00
megamage 5912e2444d Some cleanup of CanSeeOrDetect code. 2011-10-13 13:26:27 -04:00
megamage d156e066cf Rename "SetPosition" to "UpdatePosition".
Replace CreatureRelocation in scripts with new Creature::SetPosition.
2011-10-10 17:08:01 -04:00
megamage eb8cbae0d5 Fix the relocation of creatures across cells. Try to fix #3054. 2011-10-07 17:36:23 -04:00
Bootz 81c0a3a847 REPO: code-style clean-up
* Fixed pPlayer->player
* Fixed pCreature->creature

~DevNote: codestyle for Player should be (*player), not *plr or *p...
same goes for Creatures (*creature)... more cleaning needed.
We've way too many codestyles happening here.
2011-10-07 11:08:09 -05:00
Spp af05915b9e [Cosmetic] Apply codestyle "XXX * " and "XXX *" changed to "XXX* " (with some exceptions) 2011-09-15 14:12:57 +02:00
Spp- aa85553bfd Core: Crash fix (TemporarySummon), remove some warnings and some other minor changes
- "const uint64" and "uint64 const" --> uint64
 - Add some info in LFGDungeonEntry
 - Move some definitions from ".h" files and move to ".cpp"
2011-08-30 13:46:36 +02:00
QAston fc5e924138 Core/Spells: Implement recently discovered target check attributes and move most of target checks to SpellInfo::CheckTarget function. 2011-08-19 14:54:15 +02:00
Spp- acd0fc79f6 Core: Pass by const reference for simple objects replaced with pass by value 2011-08-01 14:23:27 +02:00
QAston b0fe236265 Core: Use new SpellInfo class in core. Sadly, this commit is not compatibile with some of the custom code. To make your code work again you may need to change:
*SpellEntry is now SpellInfo
*GetSpellProto is now GetSpellInfo
*SpellEntry::Effect*[effIndex] is now avalible under SpellInfo.Effects[effIndex].*
*sSpellStore.LookupEntry is no longer valid, use sSpellMgr->GetSpellInfo()
*SpellFunctions from SpellMgr.h like DoSpellStuff(spellId) are now: spellInfo->DoStuff()
*SpellMgr::CalculateEffectValue and similar functions are now avalible in SpellEffectInfo class.
*GET_SPELL macro is removed, code which used it is moved to SpellMgr::LoadDbcDataCorrections
*code which affected dbc data in SpellMgr::LoadSpellCustomAttr is now moved to LoadDbcDataCorrections
2011-07-26 23:09:28 +02:00
Lopin a233e7b9d8 Core/Misc: Add new function for selection nearest player in given distance 2011-07-11 16:17:21 +02:00
kaelima 9a67aaa8b8 DB/Creature:
- Nuke the hacky column DeathState.
- Removed some hacks from Kologarn script, including some cleanup.
- Removed set deathstate command.

BIG thanks to Malcrom for replacing all creatures that had deathstate with proper dynamicflags/auras.
2011-06-27 20:22:53 +02:00
click c77aa6e846 Core: And some more cleanups... 2011-06-12 02:00:43 +02:00
Shauren 66a663b8e0 Core/Creatures: Added GetCorpseDelay method to creatures 2011-05-13 19:16:53 +02:00
Shauren e1a125a5c4 Core/Creatures: Added GetOriginalEntry method returning template id before any modifications to it happened 2011-05-05 12:51:35 +02:00
leak 1003f30448 Add spaces after commas 2011-04-29 20:47:02 +02:00
leak e1647aaa29 Random cleanup after last commit spree 2011-04-29 09:28:32 +02:00
leak c51c817a45 Core/ObjectMgr: Refactor sCreatureStorage 2011-04-28 22:57:08 +02:00
leak c8413a7f27 Core/ObjectMgr: Refactor sCreatureDataAddonStorage 2011-04-28 22:46:40 +02:00
leak a82654debd Core/ObjectMgr: Refactor sItemStorage 2011-04-28 22:42:33 +02:00
leak 03365e9a57 Core/ObjectMgr: Refactor sEquipmentStorage 2011-04-28 22:34:40 +02:00
leak 85a1e9e7ab Core/ObjectMgr: Refactor sCreatureModelStorage 2011-04-28 22:11:45 +02:00
darkstalker 1646f9d91c Core/Spell Mechanics: introduce global cooldown manager for server-side checks for GCD (ported from mangos) 2011-02-22 17:02:47 +06:00
Manuel Carrasco 6b2ffc9039 Core/GuardAI: Guards don't evade if the target casts Vanish and also can detect players with Feign Death.
Core/Scripts: Moved scripts from ScriptedGuardAI to guards.cpp
Core/Creature: Removed custom npcflags UNIT_NPC_FLAG_GUARD (now moved to flag_extras) and UNIT_NPC_FLAG_OUTDOORPVP (not used)

Thanks to Kaelima, Xanadu, Shauren and linencloth.

Signed-off-by: Manuel Carrasco <[email protected]>
2011-02-10 22:36:35 -03:00
Shauren 4a55030f38 Core/Creatures: Flag dungeon bosses for quicker lookups for related encounters 2011-02-09 16:28:56 +01:00
Spp fd66517473 Core/Creatures: Add new extra flag to know if creature is dungeon boss 2011-01-29 09:01:00 +01:00
Shauren 9c0cd63e93 Core/Scripts: Added wrapper method for despawning creatures DespawnOrUnsummon 2011-01-02 21:33:37 +01:00
Machiavelli 957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +01:00
Machiavelli c05ed659cb Core/Entities:
- Rename creature_linked_respawn to linked_respawn
- Update functionality: add field ´linkType´.
** 0 = creature respawn dependant on creature (default)
** 1 = creature respawn dependant on gameobject
** 2 = gameobject respawn dependant on gameobject
** 3 = gameobject respawn dependant on creature

--HG--
branch : trunk
2010-12-24 18:55:50 +01:00
Shauren 0f3b9019a8 Core: Get rid of dirty operator workaround for ACE_Singleton class implementation
--HG--
branch : trunk
2010-12-22 21:25:23 +01:00
leak 739a3b9165 Core/ObjectMgr: Simplify trainer spell loading. Should decrease loading time on decently sized machines
--HG--
branch : trunk
2010-12-21 20:26:59 +01:00
Shauren 82f45966fc Core/Unit: Renamed addUnitState/hasUnitState/clearUnitState to AddUnitState/HasUnitState/ClearUnitState
Core/Vehicles: Allow the vehicle to always damage the passenger (removed unneded dbc hacks from scripts)

--HG--
branch : trunk
2010-12-17 13:43:24 +01:00
Shauren 58a9b15443 Core: Fixes some warnings
Core/SmartAI: Fixed DamageTaken and DamageDealt hooks

--HG--
branch : trunk
extra : rebase_source : 062f1c68cd1d318d192b294a493db17a1943bee2
2010-12-14 22:45:23 +01:00
linencloth bf888285aa Core:
- Redesigned stealth and invisibility handling
  - Implemented the handling of multiple stealth types
- Implemented fake inebriation
- The message deliverer no longer sends packets from a non-visible source
  - The server won't send that much garbage which just takes bandwith
  - It won't be possible to use cheats to detect invisible objects
- Removed a lot of checks for the Z-coord
  - Fixes visibility problems happening while flying
- Limited the grid activation range of creatures to use less resources
- Implemented Shroud of Death
- Implemented increased visibility range for active objects
- Removed visibility check at spellhit (only sanctuary effects should prevent it)
(And a lot of other changes...)

Closes issue 4208
Closes issue 3049
Closes issue 2097
Closes issue 2198
Closes issue 2384
Closes issue 2197
Closes issue 2319

--HG--
branch : trunk
2010-11-13 17:18:09 +01:00
Rat 3809892987 Core/SmartAI: modified ACTION_EQUIP to use a bitmask to send slot updates (for more blzzlike packet handling)
--HG--
branch : trunk
2010-11-06 23:08:33 +01:00
Rat c9cf2f059f Core/AI: delay all AI()->Respawn() hooks by 1 server tick, this way when creatures are just got created they will successfully find other objects in scripts at spawn time
--HG--
branch : trunk
2010-11-03 18:33:47 +01:00
linencloth 07fa1bcbdf Core/Creature: Implement FarTeleportTo (teleport to an other map)
Core/Transport: Cleanup and optimize transport and passenger handling
- Only transports will be active objects
  - Reduced cpu and memory usage
- Using FarTeleportTo for creature passengers at transport teleportation
  - Creatures won't be recreated on teleport

--HG--
branch : trunk
2010-10-24 02:55:50 +02:00
Shauren 91a97c7b83 DB-Schema/World/creature: Added possibility to override npcflag, unit_flags, dynamicflags in creature table
Core/Player: Fixed bad query in previous revision

--HG--
branch : trunk
2010-10-09 17:52:00 +02:00
click 613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02:00