Commit graph

98 commits

Author SHA1 Message Date
VladimirMangos
0c2f74bb02 [7607] Improvements in support some generic achievement classes
* Implement support achievements with refAchievement field != 0, that have criterias stored in achievement refAchievement.
* Implement support achievement complete req. with specific count of completed critirias.
* Avoid full achievement list scan at search achievement associated with criteria.
2009-04-03 04:56:45 +04:00
VladimirMangos
719f7661d8 [7604] Revert "[7603] Drop from mangosd.conf oudated not working option."
This reverts commit cbc6ca5b6eca140a781ced7f9e296577aa9f2af3.
2009-04-02 15:45:22 +04:00
VladimirMangos
b0a893a62f [7603] Drop from mangosd.conf oudated not working option. 2009-04-02 15:42:05 +04:00
VladimirMangos
03940b1865 [7572] Use enum type instead int for World::SendServerMessage arg 2009-03-28 21:51:33 +03:00
VladimirMangos
c4d4bb5620 [7552] Move client version dependend DBC code to src/game. 2009-03-27 01:59:26 +03:00
Triply
b09df0aade [7546] Revert [7544] correcty move uptime table to Realm database, use realmid column.
Signed-off-by: Triply <triply@getmangos.com>
2009-03-26 17:58:44 +01:00
invliD
68ec6ae8ab Moved table uptime from world database to character database.
Signed-off-by: Triply <triply@getmangos.com>
2009-03-26 16:23:57 +01:00
VladimirMangos
f4030f9dff [7521] Update Rate.Reputation.LowLevel.Kill default value to expected for 3.0.9 2009-03-23 02:15:08 +03:00
VladimirMangos
50c0bc6aac [7520] Let set in mangosd.conf custom rates for low level kill/quest reputation gain. 2009-03-23 02:12:08 +03:00
VladimirMangos
ab2bdc3e69 [7518] Implement new script command SCRIPT_COMMAND_PLAY_SOUND (look in World.h for args)
* Also rewrite use SMSG_PLAY_OBJECT_SOUND/SMSG_PLAY_SOUND
  Now WorldObject have 2 function for sound level dependent from distance (PlayDistanceSound)
  and for not depednet (PlayDirectSound)
* Old Player::PlaySound function removed and uses need to be updated to WorldObject functions
  Note: function called for _source_ of sound in different from old function.
* chat command .debug ps removed and .debug playsound can used for bother packects test:
  if no selection used SMSG_PLAY_SOUND, if selection exist including self then SMSG_PLAY_OBJECT_SOUND.
2009-03-23 00:27:01 +03:00
tomrus88
e774fd3730 Small fix for my previous commit 2009-03-21 16:54:41 +03:00
VladimirMangos
722395be75 [7413] Fixed finally problems with node names localization in BattleGroundAB messages.
Also fix build at some platforms.
2009-03-08 14:39:53 +03:00
VladimirMangos
f42815f04b [7411] Use similar localization classes for World::SendWorldText muti-line message. 2009-03-08 12:32:09 +03:00
multiplexer
2159dee379 [7395] Default MaxPlayerLevel should be 80 2009-03-07 05:04:55 +03:00
VladimirMangos
be74937146 [7393] Implement access to client side holiday ids.
* src/game/GameEvent.* renamed to src/game/GameEventMgr.* for consistence
* `game_event` now have new `holiday` field for store client side holiday id associated with game event
* Added new enum HolidayIds with existed at this moment holiday ids.
* New function "bool IsHolidayActive(HolidayIds id)" added accessabel from scripts for active holidays check.
2009-03-07 03:00:17 +03:00
Triply
5179230901 [7383] Changed some comments in config file, changed default MaxRatingDifference from 100 to 150 in default config.
Signed-off-by: Triply <triply@getmangos.com>
2009-03-05 16:48:00 +01:00
Lightguard
2f02dc7642 [7368] Implement unequip unexpected offhand weapons at talent reset (mostly for warror talent case).
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

Implemented OffhandCheckAtTalentsReset option for unequip at zone change (default)
and at talent reset itself (can be enabled).
2009-03-02 02:46:59 +03:00
VladimirMangos
2b9eeb782e [7362] Use IN_MILISECONDS where appropriate, other cleanups. 2009-03-01 05:22:56 +03:00
VladimirMangos
1fca6de6f3 [7349] Implement spell cast depenences from area/quest.aura state store in new table spell_area.
* 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.
2009-02-27 11:15:36 +03:00
Triply
8f995ce904 [7336] Implemented new BattleGroundQueue invitation system. Now it supports premade group versus premade group matches.
Added 2 new config options - InvitationType and PremadeGroupWaitForMatch - you can find more info in default config file.
This patch can cause crashes.

Signed-off-by: Triply <triply@getmangos.com>
2009-02-25 19:21:31 +01:00
VladimirMangos
1349d36270 [7333] Refactoring DestinationHolder/Traveler/Unit::SendMonsterMoveWithSpeed code.
* Move common code in appropriate functions.
* Correct select speed and 2D/3D distance for creature/player walk/fly
2009-02-25 07:03:45 +03:00
VladimirMangos
9b3daf3933 [7330] Code warnings and style cleanups. Some bugs fixes.
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.
2009-02-24 01:54:53 +03:00
VladimirMangos
49255a062b [7305] Allow use datalong2 not only for set target for DB script cast but also caster (1 bit set target (target/source), 2 bit set caster (source/target)) 2009-02-19 19:58:44 +03:00
Neo2003
7d8dc0eeef Implemented gameobjects and creatures grouping (pools of them)
Groups (called pools) can be also member of any game event

Signed-off-by: Neo2003 <neo.2003@hotmail.fr>
Signed-off-by: freghar <compmancz@gmail.com>
2009-02-18 20:19:57 +01:00
GriffonHeart
9b2a772413 [7292] Implement storage for points of interest data in DB.
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>
2009-02-18 00:29:05 +03:00
VladimirMangos
2d242c86a8 [7266] Use DBC data for auction cut/deposit percents and location (auiction house id in fact).
Note: `auctionhouse`.`location` field not used after this. But not removed to simplify backporting to mangos-0.12.
2009-02-12 04:52:02 +03:00
VladimirMangos
4fd34bf101 More auction related code refactoring, 2009-02-12 04:50:30 +03:00
VladimirMangos
7c3ab4b453 Move auction related code from ObjectMgr to AuctionHouseMgr. 2009-02-12 04:50:29 +03:00
VladimirMangos
100429f29c [7252] Move all world global broadcast string (all arena/bg related) to mangos_string.
PLEASE, NOT USE string world broadcasts in real code. This function _only_ for debug purposes.

Really allow with .debug bg start bg with 1 player.
Added helps for some existed .debug commands.
2009-02-08 13:06:25 +03:00
VladimirMangos
5a4358dda9 [7250] Use bg type ids enum insted raw values and catch some bugs in result for fixing.
* Replace max bg type checks by DBC valid index check
* Use in functions and fields BattlegroundTypeId type instead uint32
* Fixed wrong use bg queue ids instead bg type ids in queue update/remove function calls.
  Many bg have same raw values for type id and queue id but some can be affected by this bug:
  BATTLEGROUND_EY, BATTLEGROUND_SA, and all areans (with small arena/team size exceptions)
* Move Battlemaster to bg type ids map fron ObjectMgr to BatteleGroundMgr.
* Remobe redundent for header itself includes for BG headers.
* Use Auction location enum instead raw valus.
2009-02-08 11:05:11 +03:00
VladimirMangos
b5da610388 Phase system development continue.
* 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.
2009-01-31 06:06:01 +03:00
DiSlord
4ecfbcc2f5 Use spell_bonus_data table for store custom damage/healing bonus coefficients
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>
2009-01-28 02:23:16 +03:00
Gorlum13
4e72f3bb33 [7174] Implement new option GM.Visible for set original GM visibility state at login.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-25 16:26:32 +03:00
ApoC
475e8cbcf6 [7161] Implemented configurable option to allow/disallow achievements gain for GMs.
Signed-off-by: ApoC <apoc@nymfe.net>
2009-01-24 17:42:21 +01:00
begemot
9bede601a2 [7151] Startup log cleanup and beautification.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-23 04:29:35 +03:00
ApoC
1718653e63 [7130] Changet all *::Update(time_t) to *::Update(uint32), there is no need to use time_t (mostly 64b) because time diffs are very small numbers and the base calculation of diff is done as uint32.
Signed-off-by: ApoC <apoc@nymfe.net>
2009-01-21 02:48:32 +01:00
DiSlord
014ab283dd [7092] Work vs XP per level data
Add new table "player_xp_for_level" for this
Fill table data 1-79 level
Remove old code

Signed-off-by: DiSlord <dislord@nomail.com>
2009-01-16 01:00:41 +03:00
VladimirMangos
dc19fc4ca3 [7040] Move achievment rewards dat to new DB table. Implement sending item rewards by mail.
Support localization string fields for new table.
Move achievments related code and data from ObjectMgr to new AcievmentGlobalMgr.
2009-01-06 16:21:22 +03:00
VladimirMangos
7bae367084 [7039] Implement mangosd.conf options Death.Bones.* for disable bones creating from corpse in world zones or in arena/bg.
Note: in case apply insignia bones still created as required for looting.
2009-01-06 14:49:36 +03:00
GriffonHeart
5332b4496d [7026] Current arena season id and state send and setting in mangosd.conf.
Also classes and DB data for new batlegrounds/arena.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-05 02:20:58 +03:00
arrai
c6f48843ad [7017] Updated copyright notice for new year 2009-01-03 18:09:51 +01:00
freghar
73ca2b7a54 [6982] Implemented gmlevel-based command security
This is just a simple check if target's gmlevel is lesser
than the caller's one. If it is, an error is returned.
Offline checks for some commands are included.

That in simple words means no further .goname to a gmlevel 3 player
from a gmlevel 2 or 1 account, so gmlevel 3 can work in peace.

Signed-off-by: freghar <compmancz@gmail.com>
2008-12-29 23:54:05 +01:00
killdozer
39d1ca5ef0 [6944] Restore work after arena patch and reimplement battleground/arena announcer
Signed-off-by: killdozer <killdozer@mangos.ru>

Renumbering arena related mangos string to proper ranges and cleanup related code and DB data.
Set battleground/arena announcer disabled by default as extansion in server functionality.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2008-12-25 07:53:06 +03:00
VladimirMangos
eeabb03e2d [6937] Implement another character level requirement for heroic character creating.
Add option to mangosd.conf for set required level for this limitation or let disable limitation.
2008-12-24 05:54:49 +03:00
VladimirMangos
c1ae939fb1 Implement new mangos.conf setting HeroicCharactersPerRealm for set cstiom (default 1) amount heroic class chanarcters for account per realm.
Note: set option to 0 disable heroic characters creating.
Also non-player account not have now any limits (except 10 clinet limit) for heroic characters creating.
2008-12-21 04:40:40 +03:00
tomrus88
71b1065c8b Merge branch 'master' into 303
Conflicts:
	src/game/CharacterHandler.cpp
	src/game/Chat.h
	src/game/Player.h
	src/game/World.h
	src/game/debugcmds.cpp
2008-12-16 07:30:23 +03:00
ApoC
a5331ab517 [6910] Implemented rewritten arenas. Original author w12x@getmangos.com
Many thanks also to:
  Balrok@github.com for long time updating.
  Triply@github.com for great work in rewriting process.
  All who I forget to name.
Signed-off-by: ApoC <apoc@nymfe.net>
2008-12-16 00:17:24 +01:00
VladimirMangos
35f54d365d Replace hardcoded client(100) and server side (255) level limtation values by defines.
(cherry picked from commit 389a1784e288f11587067d3a6d4b70cce9214cb9)

Conflicts:

	src/game/Player.cpp
	src/game/World.cpp
	src/shared/Database/DBCStructure.h
2008-12-14 23:52:32 +03:00
bloutix
f5c4fe86e8 Correctly select GM level in case heroic class.
Signed-off-by: bloutix <bloutix@getmangos.com>

Move heroic class starting level to mangos.conf

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2008-12-14 23:14:17 +03:00
VladimirMangos
c798318b7b Replace hardcoded client(100) and server side (255) level limtation values by defines. 2008-12-14 22:18:52 +03:00