* New extractOptFirstArg function for easy get 2 args in case option playe name as first arg.
* New extractPlayerTarget function for get player pointer/guid/name for online/offline player base at provided name
or if not provided by current seelction with error cases processing.
* Property apply mute/unmute in case use different character name from loggined currently for account.
* .reset commands can be used from console now
* .repairitems comamnd can be used from console now but only to online player.
* 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....
* Fixed bug with health decrease (client side visual bug) at spell damage by target with AI::DamageTaken damage set to 0
* Fixed bug with ignore .die command and instant kill damage in some cases.
* Not set own gmlevel if not targets and use account name in command syntax
* Propertly output targeted player account name at use at selected target.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
* Now `command` table loading set data for any use subcommand levels
* Errors output for not existed in code commands at related data loading from table.
* Detail log level report outout about overwrited security level for loaded chat command data.
Using this functionality found and fixed/update data for `command` in mangos.sql
NOTE: some command security levels changed.
Thank you to benemorius for pointing to this security problem.
* It allow store requirenments: area, active or rewarded quest (until possible another quest not rewarded),
aura present at character, character race/gender.
* Listed spell can marked as auto-casted when fit requirents. In this case spell requirements checked at
zone/subzone update (and then resurraction also), quest start/reward, dummy aura apply.
* Old hardcoded lines for similar check removed from sources and required DB support for work now.
1) comparison singed and unsigned values
2) redundent includes
3) wrong constructor :-part field initilization
4) unused not-/*name*/-guarded args in template/virtual functions that not required like args.
5) explicitly list not implemented achievement types.
Also bugs fixed:
1) Drop wrong phase mask 0 check in WorldObject::InSamePhase.
2) ArenaTeamMember::ModifyPersonalRating incorrect work with move points in negative with infinity values in result.
3) ArenaTeam::SaveToDB code send uint64 value to string with arg format %u.
It can be in current state used for simplify scripting code that set POI and more advansed way later..
Call void PlayerMenu::SendPointOfInterest( float X, float Y, uint32 Icon, uint32 Flags, uint32 Data, char const * locName )
will removed after some time delay, and only void PlayerMenu::SendPointOfInterest( uint32 poi_id ) will exist.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
* Implement support 'Hplayer' link type. Mostly as player name highlights in command messages.
* Support shift-links parsing withoyt '|c' color prefix
* Many related code cleanups.
* Use WorldObject phase mask field instead explicit aura scan. This allow have phase for any world objects.
* Add phase checks to packet broadcasters/object searchers. This let correctly work say/yell/area
and multi/random target spells/aggro assistance in phased areas or target selection.
* In GM-mode character presense (see and visible) in all phases except normal visibility efects including GM-visibility.
TODO: summoned objects phase set base at owner phase, load phase mask for creatures/gameobjects from DB, in game commands.
Big thanks ApoC for help create table.
Fixed bonuses for stacked periodic
Warning need test all coefficients for correct bonus amount.
TODO:
use this table for absorb bonus calculation
use this table for melee spells AP bonuses
use chain multipler in final damage/heal amount
Signed-off-by: DiSlord <dislord@nomail.com>
* Allow use spell shift-link in .aura and .unaura commands
* Drop commented code and update .reset level command for support DK case.
Also command for other classes will reset leve not to 1 but to config starting level value
* Fixed profession unlearn using skill unlearn button in skill list
* Update action bar to spell low rank at unlearn spell only for .unlearn command.
This will avoid show unexpected "Learned spell" chat message for low rank at unlearing
high rank and at all ranks unlearning.
* Support Htrade shift link (it created by client at click by crafting profession spell icon in spellbook)
in spell comands.
* Support "all" second arg for .learn for learning not provided spell id but it's all ranks.
* Drop support range for .unlearn command but support instead "all" second arg for unlearn not specific spell id but it's all ranks.
* In .list auras output print spell names as shift links for better readable view.
* Add to beggining Chat.cpp lists all supported by commands shift-links (client generated and server-side)
* Mark spells learned in result character creating, another spell learning, skill grow,
quest reward as dependent and not store its in `character_spell`.
* Prevent re-learning known spell in expected state
* Prevent re-learning low rank spell as active if higher rank known.
* New type of non-stacked ranked spells check: skill dependent spell bonuses.
* Activate (show propetly and cast if need) lesser spell rank
for non-stackable in spellbooks spells at unlearn high rank