aboutsummaryrefslogtreecommitdiff
path: root/src/game/BattleGround.cpp
AgeCommit message (Collapse)Author
2010-01-18*Remove some of no longer needed debug code.QAston
--HG-- branch : trunk
2010-01-18*Add some debug info to trac reason of assertion fail in Unit destructor.QAston
--HG-- branch : trunk
2010-01-16Updated copyright for new year.n0n4m3
--HG-- branch : trunk
2010-01-14Issue 322: build BG status packet and send it to player added to BG.thenecromancer
--HG-- branch : trunk
2010-01-10* Make sure that aura is applied on unit before trying to remove it.QAston
--HG-- branch : trunk
2010-01-10Update aura system:QAston
* Change system logic - unify Auras, AreaAuras and PersistentAreaAuras: * Aura has now its owner - which is the WorldObject, which applies aura (creates AuraApplication object) dependant on aura radius, and effect type * Owner can be Dynobj (DynObjAura class) for PersistentAreaAuras, or Unit (UnitAura class) for Area and nonArea auras * Aura data is shared for all units which have AuraApplication of the Aura * Because of that AuraEffect handlers , and periodic tick functions can't modify AuraEffect object (they are const now) * Remove spell source and AreaAuraEffect classes * Add AuraEffect::UpdatePeriodic function, to allow periodic aura object modification (target independant) * Add AuraEffect::CalculateAmount and AuraEffect::CalculateSpellMod function, to allow non-default amount calculation * AreaAura updates are done in owner _UpdateSpells cycle * Since now you don't need to wait an aura update cycle to get area aura applied on it's correct target list * And you can access area aura target list * Add basic support for aura amount recalculation * Save recalculation state and base amount of auras to db * Add AuraEffect::CalculatePeriodic function to determine if aura is periodic, and to set correct tick number after aura is loaded from db * Add ChangeAmount function in addition to SetAmount function, to allow easy reapplication of AuraEffect handlers on all targets * Sort aura effect handlers in SpellAuras.cpp and .h by their use * Add check for already existing aura of that type to some AuraEffect handlers, to prevent incorrect effect removal * SPELL_AURA_CONVERT_RUNE and MOD_POWER_REGEN and MOD_REGEN hacky handlers are now implemented correctly * Send aura application client update only once per unit update - prevent unnecesary packet spam * Fix ByteBuffer::appendPackGUID function - it added additionall 0s at the end of the packet * Fix memory leak at player creation (not deleted auras) * Updated some naming conventions (too many to mention) * Added Unit::GetAuraOfRankedSpell() function * Remove procflags on aura remove, use Aura::HandleAuraSpecificMods instead * Added functions to maintain owned auras (GetOwnedAuras, GetOwnedAura, RemoveOwnedAura, etc) * Implement AURA_INTERRUPT_FLAG_LANDING * Implement EffectPlayerNotification (thanks to Spp) * Remove wrong aura 304 handler * Add better handler for death runes * Remove unnecesary variables from DynamicObject class, and cleanup related code, link dynobj duration with aura * Add GetAuraEffectTriggerTarget function in CreatureAi for special target selection for periodic trigger auras used in a script * Add many assert() procection from idiots using some functions in wrong way * I am to lazy to write here anything more Thanks to Visagalis for testing this patch PS: Do not make patches like this, please --HG-- branch : trunk
2009-12-27Revert some commits. Now repo is stable. I recommend to disable Wintergrasp, ↵n0n4m3
because now its use leads to a crash. --HG-- branch : trunk
2009-12-26Removed SPELL_AURA_MOUNTED when BG end and player leaven0n4m3
--HG-- branch : trunk
2009-12-24Temporary revert 6743 commit. I fix this patch across 1-2 days.n0n4m3
--HG-- branch : trunk
2009-12-23Replaced time(NULL) on sGameTime.GetGameTime() this is used for better ↵n0n4m3
performance. Original Timer.h divided into 2 parts. Shared project has no need to know about GameTime Singleton. 2 Identical structures with different types are now replaced with one generic templated structure and 2 typedefs. --HG-- branch : trunk
2009-12-20*apply trinity style to whole sourceRat
*comment out all mangos to trinity defines *this will make merging a little harder, but code will be more clear --HG-- branch : trunk
2009-12-18*Cleanup, proper indentation, and remove some wrong/irrelevant comments ↵maximius
copied from custom patches.. --HG-- branch : trunk
2009-12-17Restore some commits from trinitycore2 3.1.3n0n4m3
--HG-- branch : trunk
2009-12-17Update BattleGround System for 322an0n4m3
--HG-- branch : trunk
2009-12-17Set max health and mana at the end BGn0n4m3
--HG-- branch : trunk
2009-12-16Restore work arena unit framewin32
Closes #289 --HG-- branch : trunk
2009-12-16MaNGOS merge: Mail System.win32
* Store loot in mail_loot_template indexed by mail template ids. * Implement proper creating mail text copy item from mail template based mail. * Move send functions to new MailDraft class from WorldSession. * Implement mails sending at player levelup. * Autor VladimirMangos, converted by me. --HG-- branch : trunk
2009-11-20*Some cleanup (mostly whitespace changes)maximius
--HG-- branch : trunk
2009-10-17*Massive cleanup redux.maximius
--HG-- branch : trunk
2009-10-17*Backed out changeset 3be01fb200a5maximius
--HG-- branch : trunk
2009-10-17*Massive cleanup (\n\n -> \n, *\n -> \n, cleanup for(...) to for (...), and ↵maximius
some other cleanups by hand) *Fix a possible crash in Spell::DoAllEffectOnTarget --HG-- branch : trunk
2009-10-06* Implement Spell 6962 by Muhaha & Nevan , based on ↵Muhaha
http://bitbucket.org/panaut0lordv/tc2-patches/src/tip/bgpetressurect --HG-- branch : trunk
2009-09-18*[8475] fixed some gcc-warnings Author: balrokmaximius
*[8476] Revert some recent cleanup changes, some other fixes and cleanups. Author: VladimirMangos *[8489] Fixed player visibility update in case view point different from player itself. Author: SilverIce *[8493] Avoid unexpected multiply error messages at wrong `quest_template`.`RewSpell*` Author: VladimirMangos *[8496] Resolve some #include cycles and unsafe code. * Common.h -> Threading.h -> Errors.h -> Common.h * Remove reduncdent #include "ByteBuffer.h" in headers * Remove redundent #include "Auth/BigNumber.h" in headers * Avoid multyply data copy at use some now dropped functions in BigNumber. * Avoid copy fixed byte count from byte arrays with unknown real size created from BigNumber. * Avoid possible problems for build mangos at different platform or compilers. Author: VladimirMangos. *[8501] Apply code style and cleanups to some Player functions. Author: VladimirMangos. *[8502] Disable quests related to specific game events at startup if event not active. Also rename member boolean variable. Author: NoFantasy *[8506] Add check for IsAutoComplete() in SendPreparedQuest(). For cases where quest is repeatable but has Method!=0, QuestDetails must be sent instead of RequestItems. Some additional code cleanup. Author: NoFantasy *[8507] Check amount of spawned pools before decrement to avoid unexpected result. Also rename variable to more meaningful name. Signed-off-by: NoFantasy <nofantasy@nf.no> Thanks to Stryker and onkelz28! --HG-- branch : trunk
2009-09-14Backed out changeset d3fe2d6d504a (please test your patches thoroughly ↵maximius
before getting me to push them ogeraisi) --HG-- branch : trunk
2009-09-14*Merged MaNGOS [8458], [8475], [8476] by ogeraisi, thanks to all authors :)maximius
--HG-- branch : trunk
2009-09-11*[8474] Allow to delete BattleGround objects when any of invited players ↵maximius
didn't click to enter battle. Rename m_TeamScores500disadvantage to m_TeamScores500Disadvantage, and optimize its update. Patch is tested. Author: Triply *Added some missed changes that might of broken compile in the last 2~ commits. *Some fixes to Warlock's Death Coil by Gyullo. *Last MaNGOS merge until KingPin says otherwise.. --HG-- branch : trunk
2009-08-27 [8427] remove afk-flag at bg-joinmegamage
Signed-off-by: balrok <der-coole-carl@gmx.net> --HG-- branch : trunk
2009-08-23*Update vehicle system. Make vehicle a seperate class from creature.megamage
--HG-- branch : trunk
2009-08-14*stop combat on battleground end, so creatures won't kill playersRat
*added enum from BGCreatures --HG-- branch : trunk
2009-08-12[8344] In case battleground reward items player must "receive" instead ↵megamage
"create" item in message. Author: VladimirMangos --HG-- branch : trunk
2009-08-12 [8339] Improved storing/restoring BG entry pointmegamage
* Introduced new table character_battleground_data * Entry point is now stored on BG enter event not join event * Entry point for dungeons is now correctly set to nearest graveyard (this prevent well known assert in GetInstance because of porting to already destroyed instance) * Teleporting from BG correctly restore mount state * Teleporting from BG correctly restore taxi flight (in multipath flight you will end up in nearest transition point on the route) Signed-off-by: ApoC <apoc@nymfe.net> --HG-- branch : trunk
2009-08-09 [8331] Restore spirit guids work, step 2 Author: VladimirMangosmegamage
Remove hack in battleground code that prevent proper work guids in result sabotage of now correct work spell itself. --HG-- branch : trunk
2009-08-08*Cleanups, remove obsolete code and minor optimizations in spellauras.cpp ↵QAston
and spelleffects.cpp *Remove GetDummyAura(uint32 spellid) function - it is faster to use GetAuraEffect or GetAura if id is known than iterate threw dummy auras list *Move Death Strike code from HandleDummyAuraProc to Spell::EffectDummy - original patch by hununza. --HG-- branch : trunk
2009-08-06 [8315] Fixed memory leaks (mostly at server shutdown) and code cleanups. ↵megamage
Author: VladimirMangos * Fixed leak in BattleGround::m_PlayerScores at BattleGround::Reset, add and use BattleGroundScoreMap typedef * Delete AreaTeam objects stored in global map at shutdown * Delete Corpse objects stored in global map at shutdown * Store guild bank log entries as objectes instead pointers in log event lists --HG-- branch : trunk
2009-08-04*fixed Alterac ValleyRat
--HG-- branch : trunk
2009-07-31 [8276] Implement achievment ACHIEVEMENT_CRITERIA_TYPE_WIN_BG Author: ↵megamage
VladimirMangos * including new achievement createria data type ACHIEVEMENT_CRITERIA_DATA_TYPE_BG_LOSS_TEAM_SCORE Note: Some achivement creteria for success need data in `achievement_criteria_data` --HG-- branch : trunk
2009-07-31 [8274] use virtual m_TeamScore for battlegroundsmegamage
score is used in every battleground (not arena) so we can use it as a virtual variable to access it also from BattleGround-class Signed-off-by: balrok <der-coole-carl@gmx.net> --HG-- branch : trunk
2009-07-22*Implement ACHIEVEMENT_CRITERIA_TYPE_WIN_BG - by BudIcePenguin.QAston
--HG-- branch : trunk
2009-07-01 [8102] Simplify code base at new root method ↵megamage
WorldObject::CleanupsBeforeDelete Author: VladimirMangos * Call it from Map::AddObjectToRemoveList and remove now not needed explcit calls * Create Gameobject version to make GO with owner more safe for remove --HG-- branch : trunk
2009-06-16*Do not give rating if two groups from the same arena teams fight against ↵megamage
each other. (This is a temp fix. They should not even begin the battle) --HG-- branch : trunk
2009-06-14[8006] Fixed crash in EndBattleGround(). Author: AlexDerekamegamage
--HG-- branch : trunk
2009-06-04*A missing part of previous patch.megamage
--HG-- branch : trunk
2009-06-04*Including style fixing - part 1panaut0lordv
--HG-- branch : trunk
2009-06-03fixed the bg ballance system By Farahmegamage
In this patch only in preparation state invites anyone. If BG is already started do not allow to join too much players of one faction and allow to join one person if the sides are equal. --HG-- branch : trunk
2009-06-01 [7934] Implement ACHIEVEMENT_CRITERIA_TYPE_WIN_RATED_ARENA Author: Trazommegamage
Also added ACHIEVEMENT_CRITERIA_DATA_TYPE_VALUE and support this criteira special cases base at `achievement_criteria_data` that required DB support. --HG-- branch : trunk
2009-06-01*Merge.megamage
--HG-- branch : trunk
2009-06-01Detailed log of arena fights and arena team creation.krz
--HG-- branch : trunk
2009-05-31 [7918] Improve portability in work with uint64 string format specifiers ↵megamage
and in code literals. Author: VladimirMangos * Replace platform seelction MaNGOS code for select format descriptor for uint64 by using ACE define. I64FMTD renamed to UI64FMTD for more clear name. * Add new define UI64LIT (base at ACE seelction) for build portables uint64 literals. Please always use UI64LIT(0x00001) instead less portable 0x00001LL --HG-- branch : trunk
2009-05-30*Provide another way to implement dynamic spawns. Now a creature will call ↵megamage
its zonescript before spawn to determine the spawned entry. This can be used to implement zones such as wintergrasp with less data requirement (only need to know the entry of counterpart creatures, not require spawn points) *Use zonescript as basic class of opvp script and dugeon script (can also be used for bg) *Store zonescript in worldobject. *Add door for sapphiron. --HG-- branch : trunk
2009-05-30Do not remove poison enchantment auras when entering arena battle.tvaroh
--HG-- branch : trunk