Commit graph

87 commits

Author SHA1 Message Date
freghar
cd17ada2e5 [8221] Removed trailing whitespaces
With excluded dep/ - as usual.

Signed-off-by: freghar <compmancz@gmail.com>
2009-07-20 17:53:14 +02: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
VladimirMangos
8d2dab1093 [8119] Speedup code and prevent crash at pet stats reset in time owner not in world. 2009-07-05 13:58:16 +04:00
ApoC
aab121fcb2 [8111] Implemented support for implicit specify owner when initializing stats for summoned pets.
* Speedup of summoning pets (no need to seach owner by guid)
* Fixed problem that summond pets from NPC had not initialized stats
  (pet was not in world in time of stat init thus owner was not found)

Signed-off-by: ApoC <apoc@nymfe.net>
2009-07-03 19:28:22 +02:00
VladimirMangos
9f41772828 [8102] Simplify code base at new root method WorldObject::CleanupsBeforeDelete
* Call it from Map::AddObjectToRemoveList and remove now not needed explcit calls
* Create Gameobject version to make GO with owner more safe for remove
2009-07-01 11:09:34 +04:00
VladimirMangos
1baec77845 [8098] Support uint32 spell ids in code.
* Propertly work with uint32 spell ids in player action bar
* Fix in same time bug with not save equipment set button with id==0
* Merge misc field in character_action and playercreateinfo_action to action field as 3 byte
* Propertly load uint32 spell ids from character_spell
* Fixed types for some pet/creature related structure for spell id storing.
2009-06-30 11:25:32 +04:00
VladimirMangos
d56de2cd77 [8053] At character talents reset using chat command also reset talents for all character pets.
This applied to .reset talents and .reset all talents commands.
2009-06-21 00:29:46 +04:00
VladimirMangos
cb2df3028f Fixed pet talent show after loading. 2009-06-10 20:51:39 +04:00
tomrus88
1f87157edf Merge commit 'origin/master' into 310
Conflicts:
	src/game/UpdateData.cpp
2009-06-07 21:42:02 +04:00
VladimirMangos
5ac6b2f34b [7971] Implement support exotic pets limtations related to hunter telent 53270.
Note: before this commit hunters can tame exotic pets like any other.
      After patch like not propertly contriolled pets will auto-dismiss at loading
      if talent not learned.
2009-06-06 21:21:27 +04:00
tomrus88
b9b2e254b5 Merge branch 'master' into 310 2009-06-03 16:03:44 +04:00
NoFantasy
be6e3923d1 [7948] Use SetFaction instead explcit field set, other cleanups.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-06-03 15:35:33 +04:00
tomrus88
cffbb8661b Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
	src/game/SpellAuras.cpp
2009-06-02 15:01:26 +04:00
VladimirMangos
65657533ab [7941] Restore autocast pet spell state at load/resummon
* Revert partly "[7903] Load and save for pets only talents."
* Avoid use enum with bit size limit field (with unexpected work in cases use values negative for related biz size int type)
2009-06-02 11:26:55 +04:00
VladimirMangos
7d6bf1fdbf [7932] Store in DB only spell part of pet action bar, set other to default state (reaction saved). 2009-06-01 04:44:02 +04:00
tomrus88
cae3f0a532 Merge commit 'origin/master' into 310
Conflicts:
	src/game/SpellAuras.cpp
2009-05-31 12:16:25 +04:00
VladimirMangos
2a27a44e2a [7918] Improve portability in work with uint64 string format specifiers and in code literals.
* 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
2009-05-30 22:44:20 +04:00
tomrus88
84ed071e16 Merged and fixed some whitespaces. 2009-05-29 10:40:13 +04:00
VladimirMangos
b83f32fc19 [7905] Implement ACTION_T_SET_SHEATH for creature event ai make possibility set ranged fire state.
Also related cleanup code in field cases and player Player::SetSheath.
2009-05-29 01:05:39 +04:00
tomrus88
f6e2b55e2c Merge branch 'master' into 310
Conflicts:
	src/game/Player.cpp
2009-05-28 10:16:02 +04:00
VladimirMangos
0614a9eb75 [7903] Load and save for pets only talents. Not store unused (in fact) free talent point amount.
* Other pet spell types auto-learned at level setup/load.
* Code will cleanup pet_spell table from non-talents spell if detect any at load.
* Free talents points recalculated at loading and levelup so store its in DB useless.

Note: bug with not highlighting learned pet talents (except first line) until learn one more talent not fixed.
2009-05-28 03:36:28 +04:00
VladimirMangos
4d8adefe70 [7901] Refactoting pet action bar related code. Fixed some related bugs.
* Correctly update action bar at loading and other cases when listed unlearned/not existed spells
* Avoid send data by PetSpellInitialize() many times while pet loading
2009-05-27 19:43:57 +04:00
tomrus88
afd82229d7 Merge commit 'origin/master' into 310
Conflicts:
	src/game/SpellAuras.cpp
	src/game/SpellEffects.cpp
2009-05-24 10:11:26 +04:00
VladimirMangos
c56ef09fa3 [7887] Drop pet spell teaching code, including field in character_pet. 2009-05-24 07:20:13 +04:00
VladimirMangos
8171bb57dd [7886] Drop use table petcreateinfo_spell
This is first commit in chain for remove oudated and not used pet functionality.

* Use instead dropped table CreatureSpellData.dbc if creature_template.PetSpellDataId set (mostly hunter pets)
* Use creature_template.spellN if not set creature_template.PetSpellDataId (mostly different summon creatures)
* Fixed bug with not removing from action bar spell icon for not ranked unlearned spells.

Note: summoned controllable creatures without PetSpellDataId must have expected spells in spellN feilds for creature_template.
2009-05-24 06:39:29 +04:00
VladimirMangos
f72a8bc6dc Merge commit 'origin/master' into 310 2009-05-23 01:55:33 +04:00
VladimirMangos
bc4611e8c0 [7877] Correctly set totem PvP state at loading and owner PvP state change, including GM totem case.
* Also set PvP state in proper way at pet loading if owner in PvP state.
2009-05-23 00:37:49 +04:00
tomrus88
ebb03b7b9f Merge commit 'origin/master' into 310
Hope it works with live 3.1.2.9901 client
2009-05-20 10:53:55 +04:00
Naicisum
53699e1aa3 [7840] Fixed unexpected rounding in pet size scale calculation.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-05-17 19:04:27 +04:00
VladimirMangos
122c9c5785 [7838] More fixes in pet's levelup spells.
* Fixed not updating levelup spells at warlock pet summon firsy time (overwriting by default original ranks in fact)
* Correctly upgrade/doungrade spell ranks in action bar.
* Fixed spell learning spam at warlock pet re-summon in some cases.

TODO: currently (before this commit and in it) PetSpellInitialize() called too oftern. Maybe possible cache update flag and do it one time somewhere in Pet::Update....
2009-05-16 17:15:45 +04:00
tomrus88
6734694a90 Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
2009-05-16 00:47:37 +04:00
VladimirMangos
7a7ee86f97 [7835] Store structures (with size = uint32) insteed pointer to structure in PetSpellMap. 2009-05-15 17:22:44 +04:00
VladimirMangos
a1f4549862 [7833] Implement levelup spells for non-hunter pets.
* Use less hacky way to prepare data in SpellMgr::LoadPetLevelupSpellMap.
* Fill data for all pet families including not hunter pets.
* Fixed bug with lost/unexpected learned spells for some hunter pet families.

Use less hackky way for
2009-05-15 06:26:19 +04:00
VladimirMangos
e134b5383b [7831] Prevent have hunter pet with level greater player levels at level changes. Propertly set hunter pet xp values at level update. 2009-05-15 05:33:46 +04:00
tomrus88
c9f5062955 Merge commit 'origin/master' into 310 2009-05-08 15:31:27 +04:00
Astellar
55392c3417 [7794] Add DK pet type support for proper show it in client Pet tab.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-05-07 13:19:49 +04:00
tomrus88
6821c24268 Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
2009-05-06 09:40:35 +04:00
Astellar
7355eb2f52 [7785] Allow regenerate energy for pets if this current power type.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-05-06 07:30:08 +04:00
tomrus88
395670f05a Added missing talent points update at player/pet level change. 2009-05-05 17:25:52 +04:00
Az@zel
53967893be [7752] Correctly restore autocast state for spells at spell loading.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-05-04 05:42:19 +04:00
VladimirMangos
4561dec27e [7751] Use more safe code to prevent DB errors at pet spells save and avoid unneded data save. 2009-05-04 04:55:55 +04:00
AlexDereka
27fabf7ace [7745] Fixed gcc warnings. 2009-05-03 20:25:27 +04:00
zhenya
8144f30199 [7730] Some optimizantion and code style.
Signed-off-by: AlexDereka <dereka.alex@gmail.com>
2009-04-29 01:05:21 +04:00
AlexDereka
c9d51a6dc7 [7716] Fixed some typos and possible crashes. 2009-04-26 18:49:07 +04:00
VladimirMangos
c64bbffdd1 [7646] Revert one wrongly added line in prev commit. 2009-04-11 08:59:02 +04:00
VladimirMangos
eb198f8239 [7645] Fixed problems wit temporary unsummoned pets and cleanup code.
* Save temporary unsummoned pet to current slot (instead non_in_slot mode) and
  prevent save as current pet summoned while temporay unsummon (arena)
* Prevent overwrite temporary summoned pet data
* At player loading set temporary unsummoned pet data instead pet loading
  if pet expected to be temporary unsummoned in current player state (loading in taxi flight/etc)
* Restore proper pet at arena leave and unsummon in arena summoned.
2009-04-11 08:46:48 +04:00
VladimirMangos
263bf2ab22 [7644] Fixed pet slot values using in pet save.
Problem exist from client version switch when stable slot amount changed.
In result this has been source problems with stable use (3-4 slots) and possible pet lost in some cases
or "not save state" for summoned pets.
Use enums to avoid repeating problem, use more safe value for not-in-slot save (for summoned pets)
Fixed data preparing for MSG_LIST_STABLED_PETS.
2009-04-10 09:02:04 +04:00
VladimirMangos
2dd36d688f [7558] Implement command: .learn all_mypettalents
Also output more correct messages at use .reset talents to pet
2009-03-28 03:28:08 +03:00
VladimirMangos
695ceabe3e [7509] Use defines instead explcit value for talent rank cound (in general and for pets) 2009-03-21 20:14:30 +03:00
AlexDereka
8a5e4706bc [7506] Remove dual ERROR in logs 2009-03-21 11:47:57 +03:00