Commit graph

312 commits

Author SHA1 Message Date
faramir118
d83c7d8c8c [11913] Add commands for MMaps
Added commands are:
.mmap [on|off] to show state of mmaps, or to enable/disable mmaps globally
.mmap stats to show information about current state of mmaps
.mmap loadedtiles to show which tiles are currently loaded
.mmap path to calculate and show a path to current select unit
.mmap loc to print on which tile one is
.mmap testarea to calculate paths for all nearby npcs to player

Authorship goes to qsa in addition
2012-02-06 23:18:47 +01:00
Schmoozerd
8068dcf6dd [11875] Update Copyright notice to year 2012
Start timemachine and a Happy new year to all!
2012-01-16 17:43:59 +01:00
Schmoozerd
4c82458874 [11852] Add support for db scripts assigned to gossip menus 2011-11-30 20:30:52 +01:00
C:/Program Files (x86)/git/dev/rsa
70a8a350d7 [11831] Implement player gear score calculation
Signed-off-by: Laise <fenrisse@gmail.com>
2011-10-17 16:13:37 +02:00
SilverIce
a7610f79c7 [11754] Implement jump (parabolic movement) effect
Also correct destination calculation in Unit::KnockBackFrom - now spline knockback effect works similar to client's effect (same amplitude, speed etc)
2011-07-26 13:56:06 +03:00
VladimirMangos
3e0cacbdaf [11743] Fixed auction crash in case missing localization for only some items
Source crash in missing locale strings array size check before access
to it in locale structure.

Also move repeating code for access to wide used localization string arrays to ObjectMgr functions.
2011-07-19 02:34:16 +04:00
VladimirMangos
a0ff5f4536 [11736] Hide passwords from logs
* DB connection
* chat/console password changes commands.
2011-07-13 05:40:02 +04:00
VladimirMangos
0cbb8e311e [11731] AHBot chat/console commands.
Originaly provided in ahbot patch but havy rewrited.
2011-07-10 06:16:51 +04:00
SilverIce
9d566398ad [11720] Implement spline movement subsystem
Spline movement controls movements of server-side controlled units (monster movement, taxi movement, etc).
Proper implementation of effects such as charge, jump, cyclic movement will rely on it.
However, need improve our states system before.

Technical changes:

 1. Added linear, catmullrom and bezier3 splines which based on client's algorthims. They can be reused for proper transport position interpolation.
 2. Precission increased. There are no more position desync issues since client's position calculation formulas used.
 3. Now possible to move by paths with multiple points, send whole path to client.
2011-07-08 17:25:13 +03:00
VladimirMangos
67f9c26d51 [11701] Command .auction item and support auction without owner.
* New command allow place auction from chat/console and create auction without owner.
* Same code can be used in other place when server code want create generated auction
  without need have associated player. Auction code update for support this case.
* MailDraft::SendMailTo now allow "send" mails to non-players. It correcly drop items in like case.
2011-06-29 23:29:32 +04:00
VladimirMangos
2dbc5b219a [11565] Output guid string instead low guid only for .npc info
Command can be used not only with plain creatures and just low guid
not describe propertly target.
2011-05-30 02:44:22 +04:00
VladimirMangos
598c843548 [11560] Implement .mailbox command
Work semilar .bank for mailbox case.
2011-05-29 09:36:30 +04:00
VladimirMangos
2cbde12458 [11534] Guild disban memory losses and unsafe code.
* Make sure that guild object deleted in all cases after disband.
* Avoid recusive like way call Disband from DelMember
2011-05-25 03:20:28 +04:00
VladimirMangos
249fb836ca [11490] Alow implicit cast ObjectGuid->uint64 and only explicit uint64->ObjectGuid
Now safe allow this casts in like way after completed convertion to ObjectGuid use.
Also simplify code in result allowed auto cast to uint64.

Please _not_ add new uint64 storages (local and in structures) for guid values.
2011-05-15 22:04:57 +04:00
NoFantasy
94080a2d77 [11474] Adjust text of some log messages related to spell target
Signed-off-by: NoFantasy <nofantasy@nf.no>
2011-05-12 08:21:47 +02:00
VladimirMangos
719e298795 [11470] Final cleanup uint64 guid cases
Also drop logout player update fields cleanup that in any cases not saved.
2011-05-11 21:36:27 +04:00
VladimirMangos
51031c2d24 [11455] Use ObjectGuid in HashMapHolder 2011-05-09 20:04:32 +04:00
zergtmn
6498941ead [11430] Introduce GuildMgr
Move all guild-related functions from our overpowered ObjectMgr to GuildMgr.
Thx leak for idea.
2011-05-06 19:27:36 +06:00
TOM_RUS
730a907252 Use enum InventoryResult as return type for few functions. 2011-04-24 02:48:35 +04:00
Schmoozerd
ea516bef45 [11335] Let npc info command display more information.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-04-12 13:59:26 +04:00
zergtmn
a6d155fc54 [11259] Move scheduled scripts counter to ScriptMgr
Also cleanup forward declarations.
2011-03-16 20:01:10 +05:00
zergtmn
972c08a878 [11187] Minimize direct access to honor and arena points fields 2011-02-18 17:14:45 +05:00
VladimirMangos
04c21c95d3 [11159] Remove now redundent GetDBTableGUIDLow support.
Now any creatures/gameobjects loaded base at DB data
in non-instanceable/instanceable maps always have same guid
as in DB data.

* Also remove useless by same reasons MaNGOS::GameObjectWithDbGUIDCheck
2011-02-14 07:20:09 +03:00
VladimirMangos
108feb993d [11127] Rename src/game/InstanceSaveMgr.* -> src/game/MapPersistentStateMgr.* 2011-02-10 05:35:07 +03:00
VladimirMangos
dde16bc48c [11126] Rewrite InstanceSaveMgr related code.
* For better fit name to related map type class InstanceMap renamed -> DungeonMap.
  This clarify usage Instanceable()/IsDungeon() because BG/Arenas maps also instanceable maps.

* InstanceSave have many code related to only DungeonMap case, so it replaced by 3 new classes:
   - MapPersistentState as base class, used for non-instanceable maps (continents and some other) (!Instenceable())
   - DungeonPersistentState subclass of MapPersistentState, used for DungeonMap states (IsDungoen())
   - BattlegroundPersistentState subclass of MapPersistentState, used for BattlegroundMap states (IsBattleGroundOrArena())

   Now all dungeon resets code moved to subclass and all player/gpoup bound functions/structures also use it.

* Map::GetInstanceSave renamed to Map::GetPersistentState and DungeonMap have specialized version
  return DungeonPersistentState (same pointer in fact with proper subcalss type)

* InstanceResetScheduler renamed to DungeonResetScheduler
2011-02-10 05:20:56 +03:00
VladimirMangos
f73868a703 [11117] Allow for non-instancable maps have InstanceData and instance scripts.
* New table added for non-instanced maps (except BG/arena):
    - `mangos`.`world_template` (script mapping to non instanced data)
    - `characters`.`world` (saved script data string storage)

* InstancedData created for any map types including BGs/arenas, that allow have scripts
  state for any maps, but BG/arena instance data not saved.

Note: Possible structures will renamed later for clarify apply to any type maps,
but avoid for now for simplify changes and hard affect to script library sources.
2011-02-08 04:15:13 +03:00
Skirnir
75b4f75f4d [11066] Remove tail whitespaces.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2011-01-25 00:22:29 +03:00
VladimirMangos
da228b707d [10972] Implement mass mail gm commands.
* New comamnds mirror related normal sedn commands:
   - send mass items
   - send mass mail
   - send mass money

* Instead player name it expect or numeric racemask or textual race/team name or 'all'.
2011-01-06 06:55:51 +03:00
VladimirMangos
231c6d77ce [10969] Some cleanups in MailDraft API
* Use Set* names for cases when function replace old value by new (instead Add*)
* Prevent hidden MailDraft copy create becase if draft have items its can't be just shared
  and need preoprtly cloned, but item close is high price operation (guid use, DB tiuched and etc)
  So this must be explictly operation. In next commits will be added clone function for this.
* Some MailDraft overwrite by assign cases rewrited to more clean way.
2011-01-06 02:11:21 +03:00
VladimirMangos
9ae7104251 [10950] Check for scripting lib that it build with exactly same mangos rev.
This prevent use outdated script DLL with hidden possible incompatibilities
in used from core inline functions  or defines.
2011-01-02 20:19:21 +03:00
VladimirMangos
20e7cdb55e [10948] Fixed typo in enum names 2011-01-02 00:23:56 +03:00
VladimirMangos
bf0ecf6e71 [10947] Update copyright notice for 2011 year. 2011-01-01 20:33:43 +03:00
VladimirMangos
84b5ee3b43 [10945] Restore check scripting lib API at load.
Also report result of script library load/reload to chat/console.
2011-01-01 18:39:09 +03:00
VladimirMangos
7a2478ff4f [10942] Implement .reload npc_text. 2010-12-30 23:41:54 +03:00
zergtmn
ec6089bbd8 [10935] Move script calls to ScriptMgr
- Script library presence is now optional.
- Some script hooks have new names. Scripting libraries need to be adjusted accordingly.

Signed-off-by: zergtmn <zerg@myisp.com>
2010-12-29 21:48:06 +05:00
VladimirMangos
d38df50a7e [10932] Imporvments gameevent creature morphing.
* Table `game_event_model_equip` renamed to `game_event_creature_data`
* Table allow now store same creatures for different events, BUT
  expected that related events no active in same time.
* Added possibility switch entry at gameevent time.
  This let have diff factions/loot and etc for creatures.
* Added possibility cast spells at gameevent start/end.
  Exist some spells that expected casted to creature at gameevent start
  for model replace, and for animation in other cases.

Note: `game_event_creature_data`.`modelid` field posisble will removed soon in fowor related spell use.
      Ofc, when spells will implemented in core.
2010-12-29 01:38:49 +03:00
zergtmn
0d6f990e4e [10912] Move scripting related functions from ObjectMgr to ScriptMgr 2010-12-24 00:23:37 +05:00
VladimirMangos
1d8f222621 [10867] Implement templates for trainer spell data in npc_trainer_template.
New table let avoid duplication similar trainer spells for different trainers.
2010-12-13 16:39:53 +03:00
VladimirMangos
76a6e54e10 [10851] Small function order in sources update. 2010-12-11 02:46:53 +03:00
VladimirMangos
4c02094737 [10834] Cleanup shapeshift form code. 2010-12-07 14:41:59 +03:00
VladimirMangos
4ad58ecb49 [10831] Fixed crash at send mail from console
Inspired by patch from rsa.
2010-12-07 03:48:26 +03:00
VladimirMangos
b967848e42 [10823] Clear way access/set UNIT_FIELD_BYTES_*/PLAYER_BYTES* byte fields.
Fix some bugs when all uint32 field modified instead byte parts.
In some cases added byte way set/get but code line itself need additinal reserch/fix
for use correctness in line pos.
2010-12-04 11:15:19 +03:00
Vinolentus
9e071e4483 [10822] Fixed "unsigned is never < 0" warning.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-12-04 03:19:11 +03:00
VladimirMangos
b305f203b9 [10811] Use ObjectGuids in chat commands.
Still exist 15 GUID_LOPART uses in code.
2010-12-02 07:09:11 +03:00
VladimirMangos
938622bedc [10802] Use ObjectGuid in Mail code.
Some catched bugs fixed in mixed uint32/guid values using cases.
2010-12-01 15:11:08 +03:00
VladimirMangos
cc0655a402 [10782] Use Team enum types in all appropriate cases and catches bug in result fix.
* Fixed wrong arenaid use at leave arena queue.
* Fixed memory lost and etc at not virtual EndBattleground call
* Fixed crash at arena join with fake data from client.
* Code cleanups.
2010-11-25 01:11:17 +03:00
VladimirMangos
f034a9bd0a [10746] Use objetguid for other .list auras command part 2010-11-19 17:06:33 +03:00
blueboy
ee8cc71e38 [10692] Fixed wrongly use %d for guids in DB queries.
This can affect correct result in cases big guid values
(out of range for possitive part of int32 range) at x86 platforms.

Some other cases addded in addition to original patch fixes
where %d wrongly/unsafe used for unsigned values.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-11-07 22:10:37 +03:00
VladimirMangos
2f144d9d29 [10682] New table 'item_convert' for convertion items.
* Implment vendor at show replace BoA item with reputation requirement
  by identical item without rep. reqs for player that fit this requirements
  of original item.

* Table also can be used for store item convertion data form one team items
  to similar other team items. This case not impement but added function easy
  used for it.

* Note: strict single convert for item not created problem for both way use:
  item converted for same team or all, can't be original item for conversion to
  another team.
2010-11-05 00:41:16 +03:00
VladimirMangos
0bf8b0aa79 [10679] New table npc_vendor_template for comon item data for diff vendors.
In vendor list show own vedor items + template ites if any.
Vendor template item lists selected by id stored in creature_template.vendor_id
2010-11-04 20:22:47 +03:00