Commit graph

82 commits

Author SHA1 Message Date
NoFantasy
5d2189b7b7 [8929] Implement gossip scripts to be used with gossip_menu_option.action_script_id
Note that script is implemented for GOSSIP_OPTION_GOSSIP only (as not expected needed for other gossip options).
Also add a few more startup checks for LoadGossipMenuItems with check for basic errors in fields
2009-12-06 19:46:39 +01:00
NoFantasy
ec0043ac64 [8928] Rename internal names for gossipLocale and also correct reload gossip tables
Signed-off-by: NoFantasy <nofantasy@nf.no>
2009-12-06 11:55:53 +01:00
NoFantasy
090c8b8854 [8923] Restructure gossip menus and make it possible to build selections by database
As result, gossip for GO is now possible. Moved related data structures and remove useless from code.
Please note that after some time, table npc_gossip will be fully removed (use menuId in _template in relation to gossip_menu as replacement).
Special thanks to GriffonHeart for help with research, discussions and ideas of code and thanks to Vladimir for helpful input.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2009-12-06 02:27:26 +01:00
XTZGZoReX
0734adb746 [8789] Rename several singleton macros to use more consistent names.
* objmgr -> sObjectMgr
 * spellmgr -> sSpellMgr
 * WaypointMgr -> sWaypointMgr
 * poolhandler -> sPoolMgr
 * objaccessor -> sObjectAccessor
 * mapmgr -> sMapMgr
 * sInstanceSaveManager -> sInstanceSaveMgr
 * ticketmgr -> sTicketMgr
 * CreatureEAI_Mgr -> sEventAIMgr
 * auctionmgr -> sAuctionMgr
 * achievementmgr -> sAchievementMgr
2009-11-08 12:11:34 +01:00
XTZGZoReX
1f23884757 Don't use singleton to access static functions.
* This affects especially ObjectMgr functions:
   - GetCreatureInfo
   - GetGameObjectInfo
   - GetInstanceTemplate
   These are in fact static functions.
2009-11-08 03:54:27 +01:00
VladimirMangos
e078d0dd03 [8769] Implement mails sending at player levelup. 2009-11-03 20:21:11 +03:00
VladimirMangos
d7ae5e3af0 [8718] Remove most GetObjectInWorld functions and move some map local to Map
Also mape pet guid counter per-map (in different expecte to be global pet number)
2009-10-24 01:16:40 +04:00
VladimirMangos
b942616ded [8710] Make vehicle guid counter per-map local.
Also update/drop/move to Map some dependent functions.
2009-10-22 17:43:41 +04:00
VladimirMangos
d482193cea [8705] Move DynamicObject guid counting from global levle to map.
This is first step in guid counting for map local object types at map level.
Map local countin let
1) have more wide guid space and then more seldom have problems with guid counter overflow
2) possible implement (later) restart map at guid overflow without server shutdown.
3) let use static guids (not for DynamicOPbject that not stored in DB anyway) in instances instead dynamic allocated.
2009-10-22 06:49:35 +04:00
ApoC
45a0d3c8c2 [8209] Comment fix.
Signed-off-by: ApoC <apoc@nymfe.net>
2009-07-19 17:41:11 +02:00
VladimirMangos
c96f8e3d9f [8176] Forbid using some monster movement flags (that can crash client) in creature*_addon tables.moveflag tables field.
Also refactoring creature addon tables loading.
2009-07-13 23:38:27 +04:00
VladimirMangos
104158d93d [8157] Fixes and some tables support finish for pleays pdumps.
* Restore mark character with duplicate for rename at login
* Restore save mail item_text data
* Finish implementaion for propertly load item_text data.
2009-07-10 06:39:38 +04:00
VladimirMangos
715470a898 [8126] Improvemets in player/pet/charter name checks.
* Implement new config options for minimal player/pet/charter name length (2 by default)
* Better error reporting at problems in names.
* Add check from max pet/charter name length (same as for player names at client side)
2009-07-05 20:30:33 +04:00
VladimirMangos
5254a498df [8016] Work at npc click table data use.
* New fields in `npc_spellclick_spells` for allow set npc spell click mode from quest to infinity
  or to another quest, or from reward quest.
* Not expect (and forbid set UNIT_NPC_FLAG_SPELLCLICK in DB and set it at `npc_spellclick_spells` loading.
* Apply some speedups for creature checks affected by spel click state
2009-06-15 01:01:38 +04:00
VladimirMangos
08fe4933c5 [8015] More dislpay id selection fixes...
* Allow have only A2 or H2 display ids for less strincted DB field data.
* Check model data existance for all provided display ids atserver startup.
* Avoid explicit access to creature info display fields but use display selection functions.
* Rename GetTaxiMount to more clear for returned value GetTaxiMountDisplayId.
* Check display ids in `creature_model_info` at server load.
2009-06-14 21:57:56 +04:00
VladimirMangos
05b1bda879 Merge commit 'origin/master' into 310 2009-06-09 09:51:34 +04:00
NoFantasy
6a1b4e5729 [7980] Implement item use target requirements store and check (new table item_required_target).
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

* Also implement this table reload
* Static Spell::SendCastResult function for call not from spell code.
  Can be also used in scripts where need send explicitly spell cast error to client.
2009-06-09 00:26:36 +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
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
VladimirMangos
75d7a4c0cb [7844] Fixed mangos string storage index type. 2009-05-18 12:28:23 +04:00
tomrus88
6734694a90 Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
2009-05-16 00:47:37 +04:00
VladimirMangos
6aacc45ace [7834] Mangos string loading code cleanups.
* Better integration creature event ai strings.
* Not inclide in checks as expected max mangos strings range value to range
2009-05-15 17:01:11 +04:00
tomrus88
c9f5062955 Merge commit 'origin/master' into 310 2009-05-08 15:31:27 +04:00
VladimirMangos
3989212ad1 [7797] Use DBC data for mount model selection in more cases.
* Use alt.team mount data for take player team model id if DB not provide own team creature id in spell taxi call case.
* Remove unddeded hacks for model ids from Spell::EffectSendTaxi
* Provide spell target for SPELL_EFFECT_SEND_TAXI for spell with target mode 0 for this effect.
2009-05-07 22:40:37 +04:00
tomrus88
6821c24268 Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
2009-05-06 09:40:35 +04:00
arrai
fefe56e3c5 [7776] Completed implementation of CMSG_SPELLCLICK
For vehicles, you have to add the correct SPELL_AURA_CONTROL_VEHICLE spells to
npc_spellclick_spells, otherwise you won't be able to use them
2009-05-05 18:58:58 +02:00
tomrus88
e75e66063e Merge commit 'origin/master' into 310
Conflicts:
	src/game/UpdateData.cpp
2009-05-05 10:44:12 +04:00
zhenya
20ffd7f421 [7761] GuildBankTabPrice vector is replaced by an array.
Arrays are significantly faster.
Signed-off-by: AlexDereka <dereka.alex@gmail.com>
2009-05-04 19:47:14 +04:00
tomrus88
a9e148edac Merge commit 'origin/master' into 310
Conflicts:
	src/game/AchievementMgr.cpp
	src/game/BattleGroundHandler.cpp
	src/game/CreatureEventAIMgr.cpp
	src/game/DBCStructure.h
	src/game/Player.cpp
	src/game/Spell.cpp
	src/shared/revision_nr.h
2009-04-21 15:20:45 +04:00
VladimirMangos
f4adf83cd7 [7688] Move Get*IfCanInteractWith to Player including renamed IsGameObjectOfTypeInRange. 2009-04-19 22:54:40 +04:00
tomrus88
d6f6272f8c Merge branch 'master' into 310 2009-04-14 15:54:43 +04:00
arrai
a0ef77af5b [7659] Added several security checks to prevent cheating using facked packets 2009-04-13 02:16:01 +02:00
tomrus88
31b3ee95ad Merge branch 'master' into 310
Conflicts:
	src/game/Level2.cpp
	src/game/PetHandler.cpp
	src/game/Player.cpp
	src/game/Player.h
	src/game/SkillHandler.cpp
2009-03-11 12:22:58 +03:00
NoFantasy
83affb51fd [7390] Implement heroic instance quest requirement in areatrigger_teleport.
Also more fixes for prev. sql update.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-03-06 18:23:38 +03:00
VladimirMangos
49322fa20a Restore save tutorials only at character save and implement this for EquipmentSets 2009-03-04 19:17:59 +03:00
zhenya
8dbf8cda71 [7313] Optimized checks of presence in std::set
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-02-21 08:52:33 +03:00
NoFantasy
0be9e35b7b [7295] Make more static world data accessable for scripts use.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-02-18 15:38:44 +03: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
zhenya
8dc3586889 [7285] More code cleanups in static data structures use.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-02-16 17:10:24 +03:00
zhenya
cdfee0fdfc [7282] Store guilds in map for fast search by id, some other guild/arenateam related cleanups.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-02-15 14:03:29 +03:00
VladimirMangos
7c3ab4b453 Move auction related code from ObjectMgr to AuctionHouseMgr. 2009-02-12 04:50:29 +03:00
VladimirMangos
ef1c243187 Rename AuctionHouse.cpp -> AuctionHouseHandler.cpp AuctionHouseObject.h ->AuctionHouseMgr.h 2009-02-12 04:50:28 +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
737600a665 [7166] Make reserved name check case-insensitive.
Original patch provided by jpmythic.
2009-01-25 02:38:08 +03:00
GriffonHeart
d9d30fd40e [7135] Implement support for single taxi master with different path for teams.
Side effect: quest taxi flights (without mount id provided) will impossible start from normal taxi master.
But for its expected starting from scripts.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-01-21 17:50:21 +03: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
arrai
c6f48843ad [7017] Updated copyright notice for new year 2009-01-03 18:09:51 +01:00
arrai
88208bc9a7 [7010] Teleport players to the entrance of instances if they are in reset ones at login 2009-01-03 01:10:31 +01:00