Commit graph

127 commits

Author SHA1 Message Date
VladimirMangos
0649b508e4 [10383] Store guid instaed pointer for first user of GAMEOBJECT_TYPE_SUMMONING_RITUAL
This is more safe way in pointer store comparison with.
LAso Some related code cleanups.
2010-08-20 12:58:32 +04:00
NoFantasy
2c165670b1 [10326] Process GAMEOBJECT_TYPE_FISHINGHOLE in normal way as for other GO's
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-08-06 15:30:47 +02:00
NoFantasy
027261e295 [10325] Improve process for Use() of GAMEOBJECT_TYPE_SUMMONING_RITUAL
This allow GO's not summoned by any to be processed and use the spells as defined in GO template as expected.
In addition some new checks to determine if GO should despawn and if group membership should be checked or not to allow use.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-08-06 14:34:20 +02:00
NoFantasy
787fb83763 [10303] Clarify bool used for script call ProcessEventId
isStart is default true. For transport/taxi cases, it may be false for event id's at arrival (event id ending)

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-08-01 02:19:31 +02:00
NoFantasy
2ad9cd34b2 [10299] Add new script call ProcessEventId
Let script library know when some event is about to start. Event id's may be found in several sources, such as spells, GO's and transport/taxi paths.
Database scripts may be prevented by returning true from script side whenever needed. If false, DB script will run like normal.
New database table event_id_scripts will need a ScriptName for the event id, in same way as for example areatrigger_scripts.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-07-31 17:52:38 +02:00
NoFantasy
25d9fd265b [10293] Correct a not exitan...non-existin... a word that is often spelled wrong
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-07-30 18:26:08 +02:00
Lutik
c4c21d3fb6 [10226] Fixed GO_JUST_DEACTIVATED for despawned by default gameobject.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-07-19 11:43:55 +04:00
VladimirMangos
6192bdbe1b [10224] Small code style cleanup. 2010-07-19 08:21:17 +04:00
VladimirMangos
ebf27938fb [10145] Use better (but still hack) way for gameobject size calculation
* This is also hack because some float with unknown exactly value used as 'size'
* Another not resolved problem: go size used in creature target autoselection, so for large 'virtual' go
  creature can seelct strange points near in attempt select 'free' place near target.
2010-07-03 23:26:59 +04:00
NoFantasy
2375a1cb71 [10110] Add function Get/SetObjectScale and update code where scale is set.
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-06-27 12:39:29 +02:00
VladimirMangos
6ebbcd8dbb [10028] Reward group for shareable quests at cast event to creature/go. 2010-06-04 20:01:57 +04:00
VladimirMangos
d86dcd60d7 [9925] Add more log filters
* damage - different direct damage calculation tracing
* combat - combat state updates, roll attack result and etc
* spell_cast - spell cast progress and aura apply
2010-05-18 12:38:52 +04:00
VladimirMangos
722135b326 [9838] More log filters and macro uses.
* LogFilter_Weather
* LogFilter_PeriodicAffects
* LogFilter_PlayerMoves
* LogFilter_SQLText
* LogFilter_AIAndMovegens
* LogFilter_PlayerStats
2010-05-05 18:46:10 +04:00
VladimirMangos
15dd77873e [9779] Drop trailing whitespaces. 2010-04-23 05:28:51 +04:00
SilverIce
e3f3f3410a [9736] Added more usable interface for grid visits
(based on SilverIce's repo commit f20f01e)

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-04-12 15:15:55 +04:00
VladimirMangos
b658b25ff8 [9618] More use ObjectGuid in spell/etc code 2010-03-25 13:59:46 +03:00
NoFantasy
dbe089b66d [9572] Add script calls for GameObject GossipHello and GossipSelect
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-03-11 15:35:13 +01:00
Yehonal
31f4850486 [9524] Use cooldown data from gameobejct trap tamplate if provided.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-03-05 10:06:21 +03:00
VladimirMangos
7fb5d850bf [9510] Gameobject casting improvements.
* Add IsHostileTo/IsFriendlyTo and implement expected way checks for diff. world object types.
  For controlled object check redirected to specific owner, for wild gameobject base at gameobject faction.
  If faction not set expected to be hostile to anyone.
* Update grid searchers to be usable with world object instead only unit case.
  Some grid searches lost redundent second object arg, AnyAoETargetUnitInObjectRangeCheck lost hitHidden arg
  (for hitHidden==true case added new AnyAoEVisibleTargetUnitInObjectRangeCheck)
* Updated grid searchers used with gameobject area casts now.
  Note: Gameobject area spell cast animation will still wrong show around cast triggering target instead
  center around gameobject.
* In case gameobject aura apply to target for restored use target itself as caster because
  we not have currently another way apply aura form wild gameobject.
2010-03-04 07:38:26 +03:00
NoFantasy
6ec9dd5d93 [9499] Add replacement spells for GO type 10 that may have dummy spellId in _template
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-03-01 16:52:25 +01:00
Lynx3d
b2718378ef [9392] Update creature/gameobject pool at despawn instead spawn prepare.
This let solve problem with not despawned creature/gameobject at pool update in case when related grid not loaded.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-02-15 21:43:06 +03:00
AlexDereka
ebfb0f9835 [9389] Cleanup config data. Use proper names and expected types. 2010-02-15 15:29:06 +03:00
AlexDereka
ccfd42bf3e [9381] Fixed some compile warnings. 2010-02-14 18:16:07 +03:00
VladimirMangos
87a35b0489 [9317] Call linkedtrap summon in more cases.
* GAMEOBJECT_TYPE_BUTTON can have linked traps
* Spell::EffectSummonObject also can summon objects with linked traps

Thanks to patman128 for research second case.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2010-02-07 02:51:45 +03:00
XTZGZoReX
0ff9250de2 [9245] Remove CellLock class and all cell-level thread locking.
* It was wasting CPU power as cell-level locking is not needed.
* Future multithreading will be on map-level.
* CellLock was just a 'proxy' between Cell and CellPair and in some cases carried redundant data.
* Some minor cleanup in Cell::Visit/Map::Visit.
2010-01-23 21:36:15 +01:00
NoFantasy
544d396beb [9205] Move script call GOHello to GameObject::Use
This provide more accurate call in case of delay use from spell effects

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-17 23:44:33 +01:00
NoFantasy
16c0ff3ef7 [9204] Move remaining handling of GO from SendLoot to GameObject::Use
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-17 23:06:31 +01:00
NoFantasy
55b6b0eb26 [9201] Fix typo from [9200] and clean up code in function.
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-17 12:02:45 +01:00
NoFantasy
95f9ec5fb2 [9200] Move handling of most GO's from SendLoot() to GameObject::Use()
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-17 11:45:14 +01:00
NoFantasy
07a5c698ca [9199] Clarify debug log message in GameObject::Use
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-17 10:52:01 +01:00
NoFantasy
dbf0fafbfe [9182] Replace 0 with NULL in a few CastSpell calls (removed where not needed)
Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-15 01:43:02 +01:00
NoFantasy
0d6b7f144c [9181] Rewrite parts of GameObject use for GO type 10
This implement using autoclose time for type 10 and also sending a custom animation for some.
To avoid duplicate code, remove code from SendLoot() (handled in Use() instead)

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-15 01:23:45 +01:00
NoFantasy
a461652636 [9180] Add function to send custom animation for GameObject
Replace in code where packet used explicit.

Signed-off-by: NoFantasy <nofantasy@nf.no>
2010-01-15 01:01:41 +01:00
VladimirMangos
4d90a2e1f2 [9146] More poolmgr cleanps.
* Replace mixed values used type args by function template specializations
* More explcilty show fact that poolmgr work only with db guids.
2010-01-11 12:24:36 +03:00
VladimirMangos
fe6e2e1746 [9122] Updated copyright notice for new year.
Also fix some lost in past cases.
2010-01-08 00:02:21 +03:00
DasBlub
ebb063beb9 [9107] Fix most of the gcc warnings
* use UI64FMTD instead of "%u" for uint64 output
* on most *NIX systems, I64FMT is "%016lX" and not "%016llX"
* also fix typo: renamed GridMap::loadHeihgtData to GridMap::loadHeightData

Note: there are still many warnings from the 3rd party libraries g3dlite and ACE. Those warnings won't be fixed with that commit.
Also, a few warnings from MaNGOS are left, they'll be fixed later.

Signed-off-by: XTZGZoReX <xtzgzorex@gmail.com>
2010-01-03 15:30:22 +01:00
NoFantasy
cccb85dbe2 [9017] Fix typo in GO gossipID check for type 10
Signed-off-by: NoFantasy <nofantasy@nf.no>
2009-12-17 22:35:57 +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
balrok
56d694b5fb [8846] corrections for my last commit
thx to vladimir and apoc :)
2009-11-20 13:25:54 +01:00
balrok
1d362eace4 [8845] fixed some gcc warnings 2009-11-20 12:57:19 +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
33d475caf3 [8786] Rename some files.
* HostilRefManager.cpp/.h -> HostileRefManager.cpp/.h
 * PoolHandler.cpp/.h -> PoolManager.cpp/.h
2009-11-08 04:21:56 +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
d594a29af1 [8779] Not output error at empty item loot for mail template at mail creating. 2009-11-06 02:39:51 +03: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
bc1f6c7d3f [8654] Allow loading some type gameobjects without diplay id set.
But make its always inviisble for client.
2009-10-17 02:16:36 +04:00
ApoC
45c9c136ba [8653] Implemented per map guids store.
This patch implements storing guid->object pairs on per map level, this leads
to less locking in ObjectAccessor in case of further multithreaded map update.

For case of cross map guid looking (auras cases) all maps are linked into
ObjectAccessor and can be traversed for this lookup.

Signed-off-by: ApoC <apoc@nymfe.net>
2009-10-17 00:12:31 +02:00
balrok
45f6a474bf [8608] implement BattleGround Alterac Valley
sql won't be included - please look at your database
providers forum

also note, that creature_loot_template id 0
is used for the loot of dead players in this bg
(after a player died and you remove insignia from him..
he not only drops money - he drops some random items too)

further work must be done in better code for adjusting right
levels to creatures - maybe using something similar like it's
done in heroic instances

also quests and creatures needs some scripts in future

thanks to:
netsky - initial start of this patch
bogie - 2nd person writing on this patch
triply, kapatejib, vladimir - code review and suggestions
arrai - for his great tool and help
and all testers / code contributers - I won't write
down a list, else I would forget most probably one ^^
2009-10-09 18:18:22 +02:00
XTZGZoReX
63897d56d7 Move visibility update functions to more appropriate classes.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-10-01 19:01:42 +04:00
balrok
b2e32f4ff9 [8570] allow negative spawntimesecs also when NoDamageImmune is 0
thx to crackm for report and investigations :)
2009-09-30 15:09:07 +02:00