*modified most of the scripts to use normal_mode spell for casting (code was autogenerated, post errors if any)
*added sql for all modded spells (autogenerated..)
--HG--
branch : trunk
*added spell searcher based on creature's map difficulty, usage is optional and only for scipts for now
*added new table spelldifficulty_dbc
--HG--
branch : trunk
*do not use original caster for trigger spell/trigger spell with value effects
*correct caster selection for force cast/trigger spell/trigger spell with value spell effects
--HG--
branch : trunk
* Credits (in no particular order) to:
* n0n4m3, raczman, manuel, Spp, Malcrom, Teacher, QAston, Tartalo,
* thenecromancer, Xanadu, Trazom, Zor, kiper
* Additional credits to:
* TOM_RUS and NoFantasy from MaNGOS
* Thanks for testing Aokromes and XTElite1
* SoTA still needs some work, but is very playable (huge thanks to raczman and
* kiper)
* To upgrade, you need to apply all SQL from sql/updates/3.2.2a_old from the
* last rev you are on
* and then apply all SQL from sql/updates/3.3.2_old to char / realmd / world
* DBs
* Known problem with guild banks.
--HG--
branch : trunk
*Add spell_group_stack_rules table (for more info see wiki)
*The table is maintained by core team
*Move some spell specific out of core to the new table
--HG--
branch : trunk
*add spell_group table for storage of groups of spell (kinda obvious, isn't it?) and populate the table with converted spell_elixir table data
*the table is going to be maintained by core team
*fix percentage display at spell_ranks table loading
*add TARGET_UNIT_CASTER to allowed learn spell targets in npc_trainer table, thanks to Aokromes for noticing the issue.
--HG--
branch : trunk
*Allow spell_required table to store more than 1 spell learn requirement for a spell
*spell_required table data is removed from world.sql and since this commit the data for it should be maintained by db project you're using.
--HG--
branch : trunk
-added ScriptMgr for loading scripts
-removed bindings
-moved script system to src/game
-moved scripts to src/scripts
-VC project files updated
-cmakes updated (not 100% done yet)
NOTE to Devs:
-file locations changed
-precompiled renamed to ScriptedPch
-ecsort_ai renamed to ScriptedEscortAI
-follower_ai renamed to ScriptedFollowerAI
-guard_ai renamed to ScriptedGuardAI
-simple_ai renamed to ScriptedSimpleAI
-sc_creature renamed to ScriptedCreature
-sc_gossip renamed to ScriptedGossip
-sc_instance renamed to ScriptedInstance
*use the new headers in scripts, thank you
NOTE to ALL:
cmake not fully tested, please report any errors with it
could make creashes, incompability
USE AT YOUR OWN RISK before further tests!!
--HG--
branch : trunk
*Not allow cast on invisible/stealth target if not detected
*Not allow banish/cyclone tapped unit
*Not allow pickpocket players and units that can never be pickpocketed
*Not allow disarm unarmed units
--HG--
branch : trunk
* 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
*[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 <[email protected]>
Thanks to Stryker and onkelz28!
--HG--
branch : trunk
*Add aura_required, aura_forbidden, user_type columns to npc_spellclick_spells table for additional requirement checks
*Remove workarounds from lightwell code and use new npc_spellclick_spells fields instead.
--HG--
branch : trunk
*Add function void AuraEffect::HandleAuraEffectSpecificMods(bool apply, bool Real, bool changeAmount), and aura effect specific stuff to it.
*More correct aura scaling with lvl for area auras.
*Prevent exploits with relog while having auras with modified amount.
--HG--
branch : trunk