Commit graph

74 commits

Author SHA1 Message Date
Opterman
26a104a05a [8461] Correcting buildUpdateValues for GAMEOBJECT_DYNAMIC flag.
Signed-off-by: NoFantasy <nofantasy@nf.no>
2009-09-04 01:18:17 +02:00
VladimirMangos
45dd7140b5 [8422] Implement far sight like spells work for long distance.
* Added basic infrastructure for visibility update in case difference player and current view point.
  Just for note: seletect additional arg way beacuse repeatable search object will slow but store pointer will not safe,
  so use middle case: get view point pointer early as possible at visibility updates.
* Implement dynamic object and creature activisation while it's target of far sight spell effect
* Use this for SPELL_AURA_BIND_SIGHT, SPELL_AURA_FAR_SIGHT and SPELL_EFFECT_ADD_FARSIGHT.
* Note2: some spyglass like spells let look _around_ at long distance, this hard implement in current grid loading system
  Without additional changes and not implemented (you will see empty area without creatures in likes case)

* Also fixed warning spam at CMSG_MOVE_SET_CAN_FLY_ACK receive by use proper packet sructure reading.
2009-08-26 08:30:40 +04:00
VladimirMangos
74d27294aa [8381] Some refactoring work in Unit::m_currentSpells code.
* Restrict access, use enum args, move some repeated code parts to function.
* Make m_selfContainer set only part of Unit::SetCurrentCastedSpell
2009-08-18 02:12:56 +04:00
Ambal
64f11bedf7 [8252] Move DB scripting code from global World to Map.
This one more step to pre-map events proccesing and parallel in future.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-07-26 12:20:59 +04:00
VladimirMangos
39833b0069 [8205] Really use trap GO charges and avoid casting in despawned state.
* Drop horribale hack with stored charges amount, use instead GO info charges data as expected.
* Count trap activations as charge uses if it have limited charges.
* Check trap reactions only in ready spawned state.
2009-07-19 07:41:08 +04:00
VladimirMangos
9a0abf0e01 [8183] Some gameobject despanw related fixes
* Implement use `consumable` field in gameobject template for gameobject required explcit despawn at use.
* Move gameobject template fields cech function from Gameobject to gameobject template class, and update callers.
* Cast spells at gameobject use with gameobject guid as original caster guid, as already used in some other cases.
2009-07-15 06:32:08 +04:00
Ambal
58209ee79a [8182] Store and use Map* pointer in WorldObject instead map ids for speedup
Also some code logic cleanups.
Changes let make more cleanups in base map access and other places,
but this chnages not inlcuded in patch.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-07-15 02:13:52 +04:00
Win32
03926619d9 [8151] Fixed some format warnings and typos.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>

SOme changes rewrited with using [8150]
2009-07-09 01:09:12 +04:00
Ambal
9f938a9ed4 [8103] More wide use IsInWorld checks and delayed at teleport operations.
* IsInWorld used to prevent return unexpected not in world objects.
* Delayed operations need to process its in world state.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-07-01 14:00:29 +04:00
VladimirMangos
9f41772828 [8102] Simplify code base at new root method WorldObject::CleanupsBeforeDelete
* Call it from Map::AddObjectToRemoveList and remove now not needed explcit calls
* Create Gameobject version to make GO with owner more safe for remove
2009-07-01 11:09:34 +04:00
Ambal
b76c4c2f3c [8026] Obtain object's map directly by calling appropriate WorldObject::GetMap()/GetBaseMap() functions instead of accessing MapManager. Code cleanups. Big thanks Infinity for tests.
Signed-off-by: AlexDereka <dereka.alex@gmail.com>
2009-06-16 12:47:02 +04:00
tomrus88
1f87157edf Merge commit 'origin/master' into 310
Conflicts:
	src/game/UpdateData.cpp
2009-06-07 21:42:02 +04:00
Ambal
4118a70f65 [7969] Remove gameobject from owner gameobjecs list at expire.
This will prevent delayd owner access from gameobject destructor
in time remove list proccessing and fix possible related problems
with crosslinked pointers.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-06-06 11:40:59 +04:00
tomrus88
cffbb8661b Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
	src/game/SpellAuras.cpp
2009-06-02 15:01:26 +04:00
NoFantasy
bfafee5263 [7933] Call goober GO event script not only at open spell cast, also really call camera GO event scripts.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-06-01 05:29:55 +04:00
tomrus88
908f41b031 Attempt to fix quests. Some other fixes. 2009-05-07 02:04:43 +04:00
tomrus88
7e938af972 Updated to latest PTR client build 9868. 2009-05-05 10:41:22 +04:00
tomrus88
d4323e0071 Merge commit 'origin/master' into 310
Conflicts:
	src/game/CharacterHandler.cpp
	src/game/Player.cpp
2009-04-29 11:51:15 +04:00
zhenya
8144f30199 [7730] Some optimizantion and code style.
Signed-off-by: AlexDereka <dereka.alex@gmail.com>
2009-04-29 01:05:21 +04:00
tomrus88
950a4bf13f Merge commit 'origin/master' into 310
Conflicts:
	src/game/Player.cpp
2009-04-28 19:08:53 +04:00
VladimirMangos
c2e6dd20dd [7715] Provided way for scripts set alternative gameobject state for client show.
Also use enum for gsmeobject states.
2009-04-26 07:21:11 +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
fc0e1ecdf1 [7690] Move GetCreature/GetGameobject to class Map.
* This let get objects at map without reference to player or another object.
* Simplify future implementation for per-map storage for like objects
2009-04-20 19:08:13 +04:00
tomrus88
66f554f74d Merge 'master' into 310
Please enter the commit message for your changes. Lines starting
2009-04-18 17:21:29 +04:00
Trazom
718185cf8e [7682] Implement support ACHIEVEMENT_CRITERIA_TYPE_FISH_IN_GAMEOBJECT
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-04-17 23:41:48 +04:00
tomrus88
769a24252b Merge branch 'master' into 310
Conflicts:
	src/game/BattleGroundHandler.cpp
	src/game/Unit.cpp
2009-04-08 15:01:06 +04:00
VladimirMangos
3226a22e29 [7634] Fixed: select non-despawnable gameobjects base at appropriate for gameobject type dataN fields.
Many in world gameobject that unexpected daspawned before must now work in more expected way.

In tests i not found any damage to bg gameobject work, and at least this restore expected work for non-bg dorrs//buttons broken
after half-year ago patch (that has been reverted partly in this commit)

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-04-08 05:46:43 +04:00
tomrus88
2a8776e567 Merge branch 'master' into 310
Conflicts:
	src/game/Unit.cpp
2009-04-04 23:25:57 +04:00
NoFantasy
02247d411b [7612] Move SMSG_TRIGGER_CINEMATIC and SMSG_TRIGGER_MOVIE to functions and use its instead explicit packet creating.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-04-04 03:06:02 +04:00
tomrus88
e5bde711ea Merge branch 'master' into 310
Conflicts:
	src/game/Chat.cpp
	src/game/Chat.h
	src/game/GameObject.cpp
	src/game/Level2.cpp
2009-03-21 15:48:51 +03:00
AlexDereka
8a5e4706bc [7506] Remove dual ERROR in logs 2009-03-21 11:47:57 +03:00
VladimirMangos
ae104fea27 [7496] Fxied problems with visual GO orientation for some angles. Optimize related code. 2009-03-19 20:15:01 +03:00
tomrus88
a2d3941588 Merged and updated to latest PTR build 9704 2009-03-19 14:18:17 +03:00
VladimirMangos
7589bf7263 [7489] Update gameobject rotation fields if need.
* Fixed update absent in ".gobject turn" command
* Propetly set rotation fields for summoned objects
* Check rotation/coordinates fields values at server loading
2009-03-18 21:04:57 +03:00
VladimirMangos
1ed2f1e65d [7444] Fixed some recently added and old type conversion warnings. 2009-03-12 11:46:38 +03: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
VladimirMangos
329fb3f9d1 [7440] Use server-side only zone info. Optimize related calles in case zone and subzone use.
This in some cases make some zones not explorable if it not have server side data in current maps
but not allow cheating with zone set from client.
2009-03-11 10:08:12 +03:00
Triply
52696ce029 [7426] Mounted players now can capture tower point in Eye of Storm.
Renamed function isAllowUseBattleGroundObject to CanUseBattleGroundObject

Signed-off-by: Triply <triply@getmangos.com>
2009-03-09 16:40:13 +01:00
balrok
54f2dbefa0 [7403] much more unneeded includes removed
now i extended my script:
NAME="Chat"; ack -c $NAME | ack ":1$" | sed 's/:1//' | xargs /usr/bin/ack-grep -l "include \""$NAME".h\"" | xargs /bin/sed -i '/include "'$NAME'.h"/d'

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-03-08 02:22:17 +03:00
tomrus88
8f9849969b Updated to 9658 client build, SMSG_ADDON_INFO temporary disabled 2009-03-08 01:51:23 +03:00
VladimirMangos
ce8bd43bef Merge commit 'origin/master' into 310 (at [7360]) 2009-03-01 01:18:20 +03:00
VladimirMangos
19c513fc61 [7347] Prevent sql errors at GM-mode corpse save. Apply same chnages and for other pahsemask save part for consistense and safe. 2009-02-27 06:49:16 +03:00
tomrus88
42a8ae3752 More work on update packets 2009-02-26 19:55:45 +03:00
tomrus88
d3872fa572 In world with 3.1 2009-02-25 20:52:47 +03:00
VladimirMangos
3441c28998 [7328] Implement new way of work for warlock player summoning spell 698. Required correct DB data. 2009-02-23 01:27:52 +03:00
charlie2025
1185188a7e [7327] Restore work of meeting stones, and make it work in more correct way. Required correct DB data.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
2009-02-23 01:22:30 +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
VladimirMangos
7d63f4ce02 Fixes and cleanups in loot code.
* Move not-normal loot tables generation in single place (Loot::FillLoot function) for group and non group case.
* Simplify LootView code.
2009-02-07 10:34:02 +03:00
VladimirMangos
4623402492 [7217] Remove outdated for 3.0.x gameobject 187039 invisibility (type 10) set in code.
Now gameobject expected have phasemask 2 in DB for expected work.
2009-02-01 22:03:56 +03:00
VladimirMangos
4602ff9c21 [7214] Phase system continue development - Commands and fixes.
* Fixed creature/gameobject save from game (used in commands code only)
* Implement .modify phase (for player), .npc setphase (for creature/pet), .gobject phase (for gameobjects) commands
  for set phasemask of selected object. In player/pet case temporary until in game phase switch/re-login/GM-mode change.
  In creature/gameobject case change saved in DB.
* Add to .gps output phasemask value print. Allow use .gps command with creature/gameobject shift-link
  (work for objects loaded in game in command time).
2009-02-01 08:13:16 +03:00