Commit graph

35 commits

Author SHA1 Message Date
VladimirMangos
acd0716297 [10432] Rename ASSERT -> MANGOS_ASSERT and related fixes
ASSERT hard use in predictable way because diff. 3rd party libs code
redefine it inf different ways and hard make sure that used in end
of mangos define version. This is real detected problem make some
expected assert checks ignored and so bugs not detected as expected from code.

In addition made related changes:
* Common.h header expected to be first include in any src/game/header except most simple cases.
* Related FILE.h header expected to be first include in FILE.cpp
* Fixed some absent includes and type forwards for safe build without PCH enabled.
* Avoid using MANGOS_ASSERT in src/framework code
2010-09-02 05:13:16 +04:00
VladimirMangos
6f4481a591 [10113] Some cleanups in Instance loading code.
* Remove reduncent chekc and args for MapInstanced::CreateInstance(const uint32 mapId, Player * player)
* Rename for avoid name duplication raw InstanceMap creating to MapInstanced::CreateInstanceMap
* Move lookup code of player/group bounde instance save to Player::GetBoundInstanceSaveForSelfOrGroup
2010-06-27 19:50:52 +04:00
VladimirMangos
722135b326 [9838] More log filters and macro uses.
* LogFilter_Weather
* LogFilter_PeriodicAffects
* LogFilter_PlayerMoves
* LogFilter_SQLText
* LogFilter_AIAndMovegens
* LogFilter_PlayerStats
2010-05-05 18:46:10 +04:00
hunuza
6750ce9185 [9650] Some corpse related clean ups.
Old bones remove code anyway was dead, so remove it.

Signed-off-by: hunuza <hunuza@gmail.com>
2010-03-31 16:40:47 +02:00
XTZGZoReX
51fd11c92c [9638] Replace all C assert()s with MaNGOS ASSERT() macro. 2010-03-29 19:29:42 +02:00
balrok
24d45c6a08 [9597] create battleground map at bg creation
when a bg gets created it will also get it's map
(old behaviour was, that map got's created when first player entered the instance)

the reason why battlegroundmaps aren't instantiated with a player object:
    * the only information from player-class we need is player->GetBattleGround()
      also we can't use anything else
      (e.g. playerlevel can be outside of bg-levelrange)
      -> cause bgs depend pretty much on their maps this caused circualr dependencies between map,bg,player
    * battlegroundmaps will _always_ be prepared by the bgsystem to set the proper data
    * there is not much shared in the creational process with dungeonmaps
      even the functioncall is different since players need to enqueue first for bgs,
      therefore again the player's way to that instance is only through the bgMgr
2010-03-17 00:41:54 +01:00
VladimirMangos
e692862827 [9593] Fixed bug in instance binding in case heroic/25-man raids difficulties
In fact typo in my old commit at adding support MapDifficulty.dbc.
2010-03-16 18:15:29 +03:00
VladimirMangos
5af05a314e [9405] Make all movements instant applied.
* Drop delayed moves list in Map code
* Apply movement coords update always at call including movement to different cell/grid.
* Instead removed functionality mark creature as need move notify broadcast at next tick, do it.

This must resolve porblesm with CreatureRelocation in past not always update position to new expected at call
And in resul next code fail or work in strange way. Mark creature for notifier call at next Update
let safe main part remopved functionality implemented in another way: prevent cascade (or infinity chain)
in move updates. In fiture possible implement move notify call not at each tick for save time.
2010-02-18 01:09:33 +03:00
AlexDereka
ebfb0f9835 [9389] Cleanup config data. Use proper names and expected types. 2010-02-15 15:29:06 +03:00
VladimirMangos
63709fdc49 Use PVPDificulty.dbc for bg/arena bracket selection (levels and difficulty) 2010-01-09 03:36:27 +03:00
VladimirMangos
3e3c090348 [9129] Rename BG/arena queue_id to bracket_id and related functions/etc
This is more consistent to wide used terms

Also some other cleanups.
2010-01-08 22:40:34 +03:00
VladimirMangos
fe6e2e1746 [9122] Updated copyright notice for new year.
Also fix some lost in past cases.
2010-01-08 00:02:21 +03:00
XTZGZoReX
0734adb746 [8789] Rename several singleton macros to use more consistent names.
* objmgr -> sObjectMgr
 * spellmgr -> sSpellMgr
 * WaypointMgr -> sWaypointMgr
 * poolhandler -> sPoolMgr
 * objaccessor -> sObjectAccessor
 * mapmgr -> sMapMgr
 * sInstanceSaveManager -> sInstanceSaveMgr
 * ticketmgr -> sTicketMgr
 * CreatureEAI_Mgr -> sEventAIMgr
 * auctionmgr -> sAuctionMgr
 * achievementmgr -> sAchievementMgr
2009-11-08 12:11:34 +01:00
XTZGZoReX
dc725ad6b8 [8785] Use macro instead of explicit call to singleton Instance().
* For: ObjectAccessor, MapManager.
2009-11-08 03:54:41 +01:00
XTZGZoReX
1f23884757 Don't use singleton to access static functions.
* This affects especially ObjectMgr functions:
   - GetCreatureInfo
   - GetGameObjectInfo
   - GetInstanceTemplate
   These are in fact static functions.
2009-11-08 03:54:27 +01:00
balrok
a6d245058d [8778] corrected bg-spawnmodes based on dbc-data
so it seems, that the difficulty-level isn't implemented
for all battlegrounds (in fact only for alterac valley)
we now set the difficulty level based on queue-id and then go down
to the highest difficulty-level possible for this map

big thx to vladimir for information and help with code :)
2009-11-05 13:29:06 +01:00
balrok
c50df41b3c [8775] implement all creature difficulties + support bgs with this
former know as heroic_entry we now have 3 of those
which let us chose different creature_templates for different
map-types

normal maps will need a bit more support to use correct
spawnmodes

but for battlegrounds it works already good:
they are divided by levelrange:
    0-59  == normal spawn -> spiritguides level 60
    60-69 == difficulty=1 -> spritiguides level 70
    70-79 == difficulty=2 -> spiritguides level 80
    80    == difficulty=3 -> spiritguides level 80

this is needed mostly for alterac valley to get
right creature-templates spawned
and with that all creature->SetLevel hacks could
get removed from alterac valley code
2009-11-05 10:48:15 +01:00
begemot
e83563b671 [8761] typo fix and codestyle
typo was at PetLevelInfo loading
which didn't display the progressbar right when
there was no petlevelinfo available
2009-11-01 21:04:19 +01:00
laise
211b50ce63 [8699] Fix instance bound difficulty selection.
This must fix crashes at enter to heroic mode instances and raids showup after client switch.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>

I can't repeat crashes with existed raids after changes apply but possible in some cases
need drop content of related DB table for resolve some crashes.
2009-10-21 22:51:43 +04:00
VladimirMangos
a9af7f2b1c Use reset time for normal/heroic from new DBC. Improve basic support for raid difficalties. 2009-10-06 02:12:02 +04:00
VladimirMangos
59befa2e0e Merge branch 'master' into 320 2009-10-02 19:09:06 +04:00
XTZGZoReX
c5a22f775b [8574] Use map pointer in BattleGround for faster access
this avoids the HashMapHolder usage when searching
for objects
2009-09-30 18:18:33 +02:00
tomrus88
546f7a7fe5 Merge commit 'origin/master' into 320
Conflicts:
	src/game/BattleGround.cpp
2009-09-28 19:52:54 +04:00
balrok
bd87209498 call OnObjectDBLoad(Creature/GameObject) for battleground at object-loading
this is a virtual function and can be used to move gameobjects
and creatures from battlegroundcode to database

for this i also had to add a BattleGround-pointer to the map
so i renamed CreateBattleGround(instanceid) to CreateBattleGroundMap(instanceid, Battleground*)
2009-09-28 16:15:01 +02:00
tomrus88
258e19a4a3 Merge commit 'origin/master' into 320 2009-09-22 18:14:06 +04:00
Ambal
cfea99ea62 [8524] New cell search algorithm implemented. You can now choose different visibility distances on continents, in BG/Arenas and instances.
Please, update your config files and check new options:

Visibility.Distance.Continents    = 90
Visibility.Distance.Instances     = 120
Visibility.Distance.BGArenas      = 180

Thanks everyone involved in patch tests!

Signed-off-by: Ambal <pogrebniak@gala.net>
2009-09-21 23:25:29 +03:00
tomrus88
1a47420fe8 Merge commit 'origin/master' into 320
Conflicts:
	src/game/Map.cpp
	src/game/MapInstanced.cpp
	src/game/Player.cpp
	src/game/SpellEffects.cpp
	src/game/Totem.cpp
2009-07-15 09:40:13 +04:00
Ambal
58209ee79a [8182] Store and use Map* pointer in WorldObject instead map ids for speedup
Also some code logic cleanups.
Changes let make more cleanups in base map access and other places,
but this chnages not inlcuded in patch.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-07-15 02:13:52 +04:00
tomrus88
02bcc56919 Added placeholders for new battlegrounds, some other stuff. 2009-06-25 19:08:53 +04:00
AlexDereka
c9d51a6dc7 [7716] Fixed some typos and possible crashes. 2009-04-26 18:49:07 +04:00
arrai
c6f48843ad [7017] Updated copyright notice for new year 2009-01-03 18:09:51 +01:00
ApoC
a5331ab517 [6910] Implemented rewritten arenas. Original author w12x@getmangos.com
Many thanks also to:
  Balrok@github.com for long time updating.
  Triply@github.com for great work in rewriting process.
  All who I forget to name.
Signed-off-by: ApoC <apoc@nymfe.net>
2008-12-16 00:17:24 +01:00
balrok
2e08a63da7 [6884] Replaced iterator++ with ++iterator in for-loop-headers
i used this script
for i in ls *.[ch]*; do cat $i | sed -r 's/(.*for.*iterator.*;\
    *)([a-z0-9\_\*]+)\ *\+\+(.*)/\1++\2\3/' > /tmp/mangos/$i; done
for i in ls *.[ch]*; do cp /tmp/mangos/$i $i; done

and rechecked it with my eyes, if everything is right
i took only for-loops cause they can be gathered easier with a script

Signed-off-by: hunuza <hunuza@gmail.com>
2008-12-07 19:49:45 +01:00
VladimirMangos
88b1974df6 Fixed warnings, unused code and typos.
Including fix  _SCallback for 3 params, triggred mode correct call for .cast back and .cast target.
Remove outdated code for support old 19421 (and ranks) implementation in client data.
2008-11-05 05:06:35 +03:00
TheLuda
800ee76535 Imported MaNGOS revision 6767 from http://mangos.svn.sourceforge.net/svnroot/mangos/trunk/ 2008-10-14 00:29:20 +02:00