Commit Graph

8637 Commits

Author SHA1 Message Date
Dehravor
7401ab7eab Core/Loot: Fix an exploit that allowed players to loot infinite amount of items that have condition(s) 2014-03-17 18:46:17 +01:00
Aokromes
f8938c2092 Merge pull request #11718 from untaught/master
Instance Script/Stratholme: Correct logic in Baron Run event and add SAI...
2014-03-16 21:40:35 +01:00
Shauren
69fb9642a3 Fixed build with TRINITY_DEBUG 2014-03-16 21:22:31 +01:00
Shauren
263c5cacf4 Core/Maps: Fixed height calculations used in WorldObject::UpdateGroundPositionZ/WorldObject::UpdateAllowedPositionZ, they will now take vmaps into account. 2014-03-16 20:13:25 +01:00
Shauren
f0f4a620fb Core/Transports: Added support for DynamicObjects on transports 2014-03-16 20:00:09 +01:00
jackpoz
f26a028d97 Core/Misc: Fix some static analysis issues
Fix some static analysis issues about uninitialized values. Most of them are false positives, always initialized before being accessed.
2014-03-16 14:18:33 +01:00
untaught
5f7e0f6929 Instance Script/Stratholme: Correct logic in Baron Run event and add SAI for Ysida Harmon 2014-03-16 08:47:27 +02:00
jackpoz
a1aa4547b3 Scripts/Krikthir the Gatewatcher: Fix EVENT_ANUBAR_CHARGE event not being triggered
Fix EVENT_ANUBAR_CHARGE not being triggered due to value 0 being set to the EVENT_ANUBAR_CHARGE enum, even if 0 is a special value for EventMap to specify no event was triggered.
Issue added in a127c0e1a7
2014-03-15 20:08:55 +01:00
jackpoz
e30b471f8e Scripts/AhnKahet: Fix some uninitialized values
Initialize all class fields in the constructor, even if they are set in Reset() and they shouldn't be accessed before Reset() is called.
This fixes 2 Coverity reports.
2014-03-15 20:04:59 +01:00
jackpoz
3b247f6bca Scripts/ZulGurub/Jeklik: Add missing "break" 2014-03-15 19:45:44 +01:00
jackpoz
61c9891d6a Core/Gossip: Fix crash added in 6c64fa8de3
Fix NULL dereference crash caused by a typo in 6c64fa8de3
2014-03-15 19:30:55 +01:00
Rochet2
6c64fa8de3 Core/Gossip: Add security to C++ scripted gossip options by checking guid of the object that the player is interecting with. Idea by @LilleCarl
Closes #11567
2014-03-13 20:27:11 +01:00
Rochet2
cfdd9421d2 Core/Gossip: Change max menu items to 32
Tested and a gossip menu can show max 32 items on a menu.
When sending 40 options: http://puu.sh/7rqb6.jpg
2014-03-12 10:20:26 +02:00
Shauren
5221bd8c10 Core/Items: Fixed an exploit allowing people to put more gems than number of sockets on items.
Closes #11652
2014-03-10 12:58:03 +01:00
Discover-
6f1005ad94 Core/Misc: Get rid of whitespaces added in 96e0a7d71f 2014-03-10 06:54:24 +01:00
Warpten
d4416c0439 Merge pull request #11627 from Rochet2/OnPlayerSave
Core/Players: Call sScriptMgr::OnPlayerSave inside Player::SaveToDB rather than before calling it.
2014-03-09 21:51:57 +01:00
Rochet2
1f98435fda Update Player.cpp
Dont trigger save hook on player create
2014-03-09 22:23:48 +02:00
Warpten
96e0a7d71f Merge pull request #11666 from kontownik/scripting_project
Core/Scripts: Introduce ItemScript::OnItemRemove, called when an Item is actually destroyed.
2014-03-09 20:19:23 +01:00
jackpoz
ba28b16d2e Scripts/TheStormPeaks: Possible crash fix
Apply safe NULL checks added in 7d881a0739 to similar code in same script
2014-03-09 17:17:12 +01:00
jackpoz
d357597270 Scripts/Commands: Fix crash in ".kick" command
Fix a NULL dereference exception happening when using .kick command caused by a strtok(NULL) call without a previous call to the string to be tokenized.
Issue added in 101cad1f28
2014-03-09 17:09:15 +01:00
kontownik
91850fa9e4 Core/Scripts: New ItemScript trigger, OnItemRemove 2014-03-03 22:18:47 +01:00
joschiwald
3a40d8a887 Core/Player: delete queststatus (weekly/monthly/seasonal) on deleting character thx @Expecto
- also rename some prepared statements

Closes #11658
2014-03-02 00:00:39 +01:00
jackpoz
d5d2805771 Core/MMAPs: Replace an assert with error log
Replace an assert in PathGenerator::BuildPolyPath() about invalid poly reference with an error log.
Fixes #11493 .
2014-02-27 21:03:57 +01:00
jackpoz
61890bce7c Scripts/Onyxia Lair: Fix debug assertions about iterators 2014-02-26 21:44:51 +01:00
jackpoz
272009ebee Core/MMAPs: Add support for raycast
Add an optional parameter "straightLine" to PathGenerator::CalculatePath() which will use raycast instead of path finding and will return only complete path from start to end position.
Implement this new type of path in SPELL_EFFECT_CHARGE , fixing strange behaviors when using Charge with mmaps enabled.
2014-02-24 21:01:50 +01:00
jackpoz
50e0c39f84 Core/Battlegrounds: Fix invalidated iterator crash
Partially revert e1bee86ee6 and restore 9ba3d07fc2 to store battleground queues as std::list instead of std::deque because deque::erase() invalidates all iterators.
2014-02-23 20:43:37 +01:00
Shauren
81618fb9e9 Merge pull request #11642 from Dehravor/group-state
Core/Group: Fix online state when member logs out
2014-02-23 13:44:53 +01:00
jackpoz
f7bc86a17c Core/MMAPs: Update recast
Update recast from 1be9de72d8 to 740a7ba516 .
This differs from aa645683b8 because it includes a fix 77ebf64353 which correctly extract tile connections when using rcMergePolyMeshes(), used by mmaps_generator.
MMAPs version is now set to 5.

Re-extract MMAPs using mmaps_generator , any old extracted MMAPs will not work.
2014-02-23 12:39:16 +01:00
Dehravor
fb90e13fe6 Core/Group: Fix online state when member logs out 2014-02-23 11:54:46 +01:00
Rochet2
b90f07dcb0 Core: Trigger OnSave hook for PlayerScript on all save events 2014-02-19 20:44:58 +02:00
Duarte Duarte
27d69cfcc8 Core/Chat: Fix BuildChatPacket calls so scripts that use OnPlayerChat can actually change the text
Closes #11625
2014-02-18 17:34:41 +00:00
Ascathor
c223b88da2 Core/LFR: Fix a theoretical error with item_level
Despite the check never happening (player->GetAverageItemLevel() < 0 is impossible), it is more efficient.
Also improves codestyle consistency. Original fix by @emsy.
2014-02-17 01:22:45 +01:00
w1sht0l1v3
50d99005a5 Scripts/Ulduar: Fix Algalon the Observer outro phase(fixes kill credit and some achieves). 2014-02-16 02:27:44 +02:00
joschiwald
cb237a4bc2 Core/PlayerDump: fix mail items and gifts export 2014-02-13 23:16:49 +01:00
jackpoz
006d72a828 Core/MMAPS: Fix invisible wall issue in MMAPS.
Fix invisible wall issues in MMAPS caused by tile connections not being extracted correctly.
This reverts aa645683b8 and restores an old version of recastnavigation, most likely 1be9de72d8 .

Re-extracting MMAPS is required.
2014-02-13 22:19:56 +01:00
jackpoz
1aada1f5ef Merge pull request #11584 from Dehravor/group
Group related fixes
2014-02-10 19:49:38 +01:00
joschiwald
b72273014f Core/DB/Achievements:
- fixed arena season title achievements and rewards
- added mailtemplate support for `achievement_reward` table
- fixed typo in GetBattleMasterBG which causes achievement reward mail expire in 1 day

Ref #8777
2014-02-10 00:14:29 +01:00
Vincent_Michael
a5a6799b4e Scripts: Added missing stuff in 1d1aeda86c 2014-02-09 19:15:17 +01:00
Vincent_Michael
1d1aeda86c Core: Fix build 2014-02-09 19:01:56 +01:00
joschiwald
6688370513 Merge pull request #11457 from MitchesD/krikthir
Scripts/Krikthir the Gatewatcher: converted to EventMap and small optimalization
2014-02-09 18:46:26 +01:00
MitchesD
a127c0e1a7 Scripts/Krikthir the Gatewatcher: converted to EventMap and small optimization 2014-02-09 18:41:37 +01:00
jackpoz
7a188c8685 Core/SAI: Fix assertion in SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST
Fix assertion triggered in SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST if max entry is less than min entry
2014-02-09 16:09:09 +01:00
Dehravor
08cd624d0c Core/Group: Any party member may mark targets (this does not apply to raid groups)
Also ensure that the targeted player is not hostile.
2014-02-09 11:12:09 +01:00
Dehravor
2e897d0453 Core/Group: Fix exploit
The master looter should be in the group.
2014-02-09 10:58:51 +01:00
Dehravor
916d84bdca Core/Group: Add sanity checks to CMSG_LOOT_METHOD's handler
If lootMethod or lootThreshold is invalid, portrait menus become unusable to the entire raid.
2014-02-09 10:51:11 +01:00
jackpoz
28946ac5db Core/SAI: Improve error log
Log both target and current Object when checking if a Creature/GameObject have SmartAI enabled.
2014-02-08 22:38:29 +01:00
jackpoz
dbed818f6f Core/SAI: Fix crash
Disable script type SMART_SCRIPT_TYPE_TIMED_ACTIONLIST actions if they are trying to overwrite the timed action list while iterating it.
This was invalidating the iterator and deleting any smart action stored in it, including the current executed one.

Valgrind log:
 Invalid read of size 1
  at SmartScript::OnUpdate(unsigned int) (SmartScript.cpp:3258)
  by SmartAI::UpdateAI(unsigned int) (SmartAI.cpp:331)
  by Creature::Update(unsigned int) (Creature.cpp:544)
 Address 0x1807d9b2 is 10 bytes after a block of size 40 alloc'd
  at operator new(unsigned long) (vg_replace_malloc.c:319)
  ...
  by SmartAIMgr::LoadSmartAIFromDB() (SmartScriptMgr.cpp:231)
  by World::SetInitialWorldSettings() (World.cpp:1724)
  by Master::Run() (Master.cpp:169)
  by main (Main.cpp:142)
2014-02-08 21:59:35 +01:00
jackpoz
aaa4b3a124 Scripts/Eastern Plaguelands: Fix flypath exploit
Fix npc id 17209 in Eastern Plaguelands enabling taxi cheat to players just by talking to it.
2014-02-08 17:22:29 +01:00
jackpoz
fdc71114ef Merge pull request #11580 from Dehravor/warden
Core/Warden: Fix crash

Fix NULL dereference crash in case Warden is disabled (in configs or on Mac OS X platform) and client sends a CMSG_WARDEN_DATA opcode
2014-02-08 11:55:50 +01:00
jackpoz
592b57a251 Shared/Logs: Code cleanup
Remove unneeded check added in 89af6097f3
2014-02-08 11:35:25 +01:00