Commit Graph
100 Commits
Author SHA1 Message Date
Anubisss b66f312888 Break spells on damage in some aura types.
This commit fixes spell Repentance(20066).

Patch by QAston, thanks to him.

--HG--
branch : trunk
2010-03-30 15:49:59 +02:00
[email protected]> 66f5d749c0 Added script command 31 SCRIPT_COMMAND_EQUIP inables an npc to change weapons in TC scripts.
--HG--
branch : trunk
2010-03-29 17:45:08 -02:30
XTZGZoReX d3fdb24f1e * Remove an old dumb hack.
--HG--
branch : trunk
2010-03-29 21:47:07 +02:00
Trazom62 c1678a9ab8 Fix crash in Mal'Ganis script + cleanup.
Fixes issue #1347. Thanks Johnholiver.

--HG--
branch : trunk
2010-03-28 11:06:19 +02:00
Tartalo 756e3e3bec Merge
--HG--
branch : trunk
2010-03-27 23:51:33 +01:00
Tartalo 691a1f3974 Fix typo, thanks [email protected]
Fixes issue #1341.
Fixes issue #1344.

--HG--
branch : trunk
2010-03-27 23:50:44 +01:00
Tartalo 69579e38a5 Nexus, The Oculus: Cleanup
--HG--
branch : trunk
2010-03-27 22:32:17 +01:00
Tartalo 63bfba39a8 Nexus, Nexus: Cleanup
--HG--
branch : trunk
2010-03-27 22:10:18 +01:00
XTZGZoReX 2c3aaee502 * Remove unused config option Rate.XP.PastLevel70.
--HG--
branch : trunk
2010-03-27 20:26:35 +01:00
Trazom62 d02f303b8d Implement Script CoS. Thanks Johnholiver.
Fixes issue #336.

Requires DB update.
Still WiP but functional.

--HG--
branch : trunk
2010-03-27 18:39:22 +01:00
Trazom62 eba6ae5ffd Fix crash in Player::DuelComplete.
Fixes issue #1243.

--HG--
branch : trunk
2010-03-27 16:23:43 +01:00
Anubisss d9de0874ae Use ToTotem() in a case.
--HG--
branch : trunk
2010-03-27 16:21:37 +01:00
Anubisss ce8cc85dfa Make a function(ToTempSummon()) which can convert Creature to TempSummon with a C++ cast(reinterpret_cast) and with a type check(isSummon()).
This function is like ToPlayer(), ToTotem(), etc.

This commit is like ede831bdd6f0cff481acc33f269fa7f8c78befd4 / r7496:
http://code.google.com/p/trinitycore/source/detail?r=ede831bdd6f0cff481acc33f269fa7f8c78befd4
As a result, this commit has the advantages and the "disadvantages" too, like r7496.

Please try to be polite if this commit causes some crashes.

--HG--
branch : trunk
2010-03-27 16:08:14 +01:00
Machiavelli 769f54eedf Fix compiler warning in mob_crystal_handlerAI
--HG--
branch : trunk
2010-03-27 15:11:14 +01:00
Machiavelli b9927ca559 Implement usage of RewardArenaPoints field in quest_template
--HG--
branch : trunk
2010-03-27 15:10:26 +01:00
Machiavelli 9ce6094dce Partial implementation of instance system patch by scarymovie87, fix max players check in instance. Cause of error was a pointer of class Player was casted to class InstanceMap. Refs issue #1323
--HG--
branch : trunk
2010-03-27 15:09:26 +01:00
Anubisss be739e9900 Use GUIDs instead of "global" pointers in ~all boss/instance scripts.
GUIDs are most safer than pointers and in some cases can avoid segmentation faults.

== - ==

Let me show a simple example:

We have a pointer to a creature: Creature *pCreature;

and try to search a creature and store it in the pointer:
pCreature = SearchCreature(ID);

We can check simply if the creature found or not:
if(pCreature)
- if this give true: creature found and we have a memory address which points to the creature
- if this give false: creature not found and this is a NULL pointer

Suppose that we have a valid pointer, so creature found.
We wanna use that pointer somewhere, for example in script phase 3.
But we delete the creature(from world) in phase 1.
In phase 3:
if(pCreature)
    pCreature->DoSomeShit();
The if condition gives true, but pCreature points to an _invalid_ address.
In that address maybe have "nothing" or another creature's object or a player or anything else, dont know that.

~~ - ~~

Let me show the correct way:
Creature's GUID: uint64 CreatureGUID;

search the creature and set the GUID:
Creature *pCreature = SearchCreature(ID);
CreatureGUID = pCreature ? pCreature->GetGUID() : 0; // if pCreature is NULL set the GUID to 0

So we have a GUID and not a pointer.
We can get the creature from that GUID:
Creature *pCreature = GetCreature(CreatureGUID);
and we can simply check it is valid or not(found or not):
if(pCreature)

So we deleted the creature in phase 1 and try to use it in phase 3:
Creature *pCreature = GetCreature(CreatureGUID);
And this gives NULL because GetCreature() can't find the creature which GUID is CreatureGUID.

if(pCreature) // pCreature is NULL
    pCreature->DoSomeShit(); // DoSomeShit() not called

== - ==

Remove some not used variables.
Some clean.

TODO: Should search/fix these in zones scripts.

--HG--
branch : trunk
2010-03-27 13:54:38 +01:00
Trazom62 099ef2a9b6 Fix InstanceData::DoCompleteAchievement (and crash in AchievementMgr::CompletedAchievement).
Remove support of no longer existing achievement "The Party is Over". Thanks JuliuSZS.
Fixes issue #1318.

--HG--
branch : trunk
2010-03-27 13:45:39 +01:00
Trazom62 eedd43efa5 Fix UT/Ingvar the plunderer script.
Fixes issue #1034.

- Remove setDisplayID hack and use UpdateEntry to fix Ingvar Kill Credit related achievements.
- code style cleaning.

Requires DB update to set loot from Ingvar Human (23954) to Undead (23980) (in normal and heroic).

--HG--
branch : trunk
2010-03-27 13:14:13 +01:00
Xanadu 180651d95e A visually better way to handle Avenger Wrath blocking of immunity shields.
--HG--
branch : trunk
2010-03-26 22:21:33 +01:00
Spp cd372966af * Add support to save and load worldstates.
will be mainly used by outdoorPvP system
* Update next arena auto distribute points time to custom worldstate

--HG--
branch : trunk
2010-03-26 16:48:33 +01:00
teacher afbb5f2e3c Moved sql update files to sql\updates\3.3.2_old.
--HG--
branch : trunk
2010-03-26 14:40:09 +01:00
Xanadu 68a19906c8 Renamed the SQLs to reflect correct revision after the merges.
--HG--
branch : trunk
rename : sql/updates/7692_world_creature_template.sql => sql/updates/7694_world_creature_template.sql
rename : sql/updates/7692_world_gameobject_template.sql => sql/updates/7694_world_gameobject_template.sql
rename : sql/updates/7692_world_item_template.sql => sql/updates/7694_world_item_template.sql
rename : sql/updates/7692_world_npc_text.sql => sql/updates/7694_world_npc_text.sql
rename : sql/updates/7692_world_page_text.sql => sql/updates/7694_world_page_text.sql
rename : sql/updates/7692_world_quest_template.sql => sql/updates/7694_world_quest_template.sql
rename : sql/updates/7694_world_npc_trainer.sql => sql/updates/7697_world_npc_trainer.sql
rename : sql/updates/7694_world_npc_vendor.sql => sql/updates/7697_world_npc_vendor.sql
2010-03-25 17:19:19 +01:00
Xanadu d0c10d44b8 Merge
--HG--
branch : trunk
2010-03-25 17:09:45 +01:00
Xanadu 20de79f6ba Fixed Forbearance. Also self-cast LoH will now correctly prevent Avenging Wrath for 30 s. Closes issue #1270. Thanks to _manuel_ for research.
--HG--
branch : trunk
2010-03-25 17:09:05 +01:00
Tartalo 7d6923d8c7 BlackRock Depths: Some improvements, by antihrists
Fix Tomb of Seven event
Fix Shadowforge braziers
GO handling for Magmus

--HG--
branch : trunk
2010-03-25 13:33:49 +01:00
Tartalo 5bd9bfcdda Merge
--HG--
branch : trunk
2010-03-25 10:34:41 +01:00
Tartalo 080229fec3 Gundrak, Gal'Darah: Script improvements by pivonroll
Fix some Spell IDs & timers
Implement transformation

--HG--
branch : trunk
2010-03-25 10:32:07 +01:00
silverice 5f60483033 cleanups in vehicle accessories storage
transfer accesory list by pointer, make it constant

--HG--
branch : trunk
2010-03-25 04:09:26 +02:00
Tartalo 5a2e20b765 Gundrak: Cleanup
--HG--
branch : trunk
2010-03-25 02:49:41 +01:00
teacher baf946bdc7 Changed default value for WDBVerified field for better future handling.
--HG--
branch : trunk
2010-03-25 00:01:02 +01:00
Xanadu 2f17cff295 Cleaned and tidied-up the mechanic immunity handler
--HG--
branch : trunk
2010-03-24 20:35:04 +01:00
teacher 99e186c830 Added spells to Wintergarde Gryphon (by Malcrom).
Added place holders for server-side spells.
Import errors fixes in world.sql.

--HG--
branch : trunk
2010-03-24 15:05:25 +01:00
Tartalo 41ad4fffeb Drak'Tharon Keep, Novos the Summoner: some improvements by pivonroll
Fix resseting issues
Better IA for adds

--HG--
branch : trunk
2010-03-24 13:34:49 +01:00
Tartalo 80cb722bba Drak'Tharon Keep: Cleanup
--HG--
branch : trunk
2010-03-24 12:31:00 +01:00
Tartalo 90b19607a1 Merge
--HG--
branch : trunk
2010-03-24 00:21:59 +01:00
Tartalo 50c5d81a79 Merge
--HG--
branch : trunk
2010-03-24 00:21:31 +01:00
Tartalo c7f5d95a1d Azjol Nerub, Azjol Nerub: Cleanup
--HG--
branch : trunk
2010-03-24 00:13:00 +01:00
Tartalo 29201cf687 Azjol Nerub, Ahn'Kahet: cleanup
--HG--
branch : trunk
2010-03-23 22:34:31 +01:00
Trazom62 76a8d8a62c Implement Tharon'ja achievements (Requires DB Data).
--HG--
branch : trunk
2010-03-23 21:31:30 +01:00
Trazom62 72c3c4696b Implement Tribunal of Ages Achievements (Requires DB Data)
--HG--
branch : trunk
2010-03-23 20:31:55 +01:00
n0n4m3 5fe2454b24 Fix one WPE exploit.
When apply more 6 gems, and after  player logout, server crash, also apply code style and cleanup.

--HG--
branch : trunk
2010-03-23 14:38:31 -05:00
Trazom62 1e9de7dbd7 Implement Four-Horsemen achievements (requires DB Data).
Fixes issue #1107.

--HG--
branch : trunk
2010-03-23 19:15:17 +01:00
Xanadu cfc094040f Added support for maximum allowed player level for quests. By Gyullo.
--HG--
branch : trunk
2010-03-23 16:10:18 +01:00
Tartalo a348b591a7 Violet Hold: Exploit fix
Now bosses reset if they're hitted when their door is closed

--HG--
branch : trunk
2010-03-23 12:48:28 +01:00
Tartalo 3cd729294e Gundrak: Fix for Eck the Ferocious spawning
--HG--
branch : trunk
2010-03-23 12:25:01 +01:00
teacher 05e7a155a5 Fixed long forgotten gamebuild default value (thx Aokromes).
Also fixed typo in script full file (thx ogeraisi).

--HG--
branch : trunk
2010-03-23 02:13:38 +01:00
Tartalo 2c2b75fb55 Ahn'Kahet: Code cleansing
--HG--
branch : trunk
2010-03-22 23:24:59 +01:00
Tartalo 2e5c5d3e1b Hall of Lightning: Fix Encounter state saving to db
Thanks Aokromes, Baraka & Spawn

--HG--
branch : trunk
2010-03-22 22:48:05 +01:00
Tartalo c80b67cebd Nexus, Anomalus: Summons rifts only once. Blizzlike 3.3.2 update
--HG--
branch : trunk
2010-03-22 22:44:54 +01:00
Tartalo 0d1bd05ce7 Gundrak: Code cleansing
--HG--
branch : trunk
2010-03-22 22:36:26 +01:00
Tartalo df45e38ba6 Gundrak: Implement Eck the Ferocious spawning
Based on pivonroll's code but rewrited from scratch

--HG--
branch : trunk
2010-03-22 22:27:37 +01:00
Trazom62 e018c4cc7b Implemented new achievement criteria data:
* ACHIEVEMENT_CRITERIA_DATA_TYPE_S_EQUIPED_ITEM_LVL (item level and item quality).

Implemented achievement criteria:
* ACHIEVEMENT_CRITERIA_TYPE_LOOT_EPIC_ITEM
* ACHIEVEMENT_CRITERIA_TYPE_RECEIVE_EPIC_ITEM

Update ACHIEVEMENT_CRITERIA_TYPE_EQUIP_EPIC_ITEM implementation. Requires DB update to use new criteria data.

Thanks VladimirMangos.

--HG--
branch : trunk
2010-03-22 18:32:38 +01:00
XTZGZoReX f6e516d819 * Fix CRLF.
--HG--
branch : trunk
2010-03-22 17:47:38 +01:00
silverice d4c3620557 restore work of IsInMap check
--HG--
branch : trunk
2010-03-22 18:46:48 +02:00
Trazom62 4478ccf6c4 Add script VoA/Koralon and Toravon. Thanks WarHead.
Fixes issue #1231.

--HG--
branch : trunk
2010-03-22 15:33:44 +01:00
teacher 3b7677d364 Restored UPDATE query in 7660_world_creature_template.sql.
Thank you Zor for bringing reason to my mind!

--HG--
branch : trunk
2010-03-22 15:08:11 +01:00
Trazom62 248286c08d Fix Crash in XT-002 (Gravity Bomb proc). Fixes issue #734.
Fix compilation warning.
Fix typo in Freya soundid.

--HG--
branch : trunk
2010-03-22 14:07:08 +01:00
Tartalo daf5ce32aa Add missing sql assign from oculus patch. ty kiper
--HG--
branch : trunk
2010-03-21 21:56:49 +01:00
teacher fd3b4ec908 Added missing sql file for rev 7656 (by Machiavelli).
Removed DB content data from previous commit.

--HG--
branch : trunk
2010-03-21 19:57:00 +01:00
Machiavelli a4e98f50d0 Fix mounts in Arena's/BGs
--HG--
branch : trunk
2010-03-21 19:12:04 +01:00
Tartalo 4a7b208eab Naxxramas, Noth the Plaguebringer: Adjust timers, by scarymovie87
Closes issue #172.

--HG--
branch : trunk
2010-03-21 18:44:28 +01:00
Tartalo 2c34b6d376 The Obsidiam Sanctum: Several updates, by Ouden
Portal event, Flame Tsunami, Twilight Eggs, Twilights Fissure, Achievements in Hard Mode
Closes issue #1015.

--HG--
branch : trunk
2010-03-21 18:32:50 +01:00
Machiavelli fe30fc8bf2 Securer check for instance template for previous commit
--HG--
branch : trunk
2010-03-21 18:17:20 +01:00
Machiavelli 48051d1cd6 Add support field 'allowMount' to instance_template table (see http://trinitydatabase.org/index.php?/topic/14994-7656-instance-template/), this will define whether or not mounting is allowed in an instance, instead of defining it hard coded in the core.
--HG--
branch : trunk
2010-03-21 17:34:25 +01:00
Trazom62 450b2fba9d Update Script Ulduar/XT-002. Thanks Dakeyras. Fixes issue 1074.
Add script texts for all ulduar bosses and adds. Mainly from wowwiki, Thanks.
Some code style cleanup.
Still WiP.

--HG--
branch : trunk
2010-03-21 17:17:34 +01:00
[email protected]> c5f8341634 fixed oculus drake cpp and sql
--HG--
branch : trunk
2010-03-21 13:39:59 -02:30
Machiavelli c45da17ef9 Fix SQL's
--HG--
branch : trunk
2010-03-21 16:56:07 +01:00
Machiavelli e26b96663a Small update to Onyxia script:
- Support for spawning Onyx Lair guardians
- Maximum Whelp count per wave set to 20 as per Blizzlike
- small update to her movement in phase 2 (might need to be overhauled, Breath isn't casted often enough)

--HG--
branch : trunk
2010-03-21 16:52:17 +01:00
Machiavelli 19b84fd889 Missing part of previous commit. Thanks HG for being so coöperative.
--HG--
branch : trunk
2010-03-21 16:51:03 +01:00
Machiavelli 13024dee64 - More changes to the item handling system to prevent an item still being listed in a player's refundable storage
- Remove an assert in _SaveInventory(). Instead, I added an error log and manual removal. Please post these error logs should they occur
- In _LoadInventory, also check for player_guid when loading refund data

--HG--
branch : trunk
2010-03-21 16:50:04 +01:00
Xanadu 74a2957af5 Don't proc KILLED for the victim twice when attacker's pet lands the killing blow.
--HG--
branch : trunk
2010-03-21 16:23:50 +01:00
Xanadu d01d4498ed Don't set 'Created by...' for soul shards, it looks silly.
--HG--
branch : trunk
2010-03-21 16:15:58 +01:00
Xanadu 91260d8409 Implemented Glyph of Drain Soul. Partly based on thenecromancer's code.
--HG--
branch : trunk
2010-03-21 16:03:38 +01:00
Tartalo 36b2b5a1bc The Nexus, The Oculus: Boss drakos support, register needed scripts
This scripts are pushed for testing purposes, so is not recommended
opening it for production enviroments. any feedback is welcome :)
Fixes issue #449.

--HG--
branch : trunk
2010-03-21 15:28:37 +01:00
Trazom62 5bada89128 Fix compilation error in previous commit.
--HG--
branch : trunk
2010-03-21 10:52:50 +01:00
Machiavelli 4a406751af Add some more function calls to remove refund referenced from player's m_refundableItems, preventing the triggering of an assert in _saveInventory.
--HG--
branch : trunk
2010-03-21 02:53:51 +01:00
silverice dac3af89ec revert Fix Object::IsInMap to check instanceId
if pointers differens, maps can't be same

--HG--
branch : trunk
2010-03-21 01:24:25 +02:00
Machiavelli a0fd280a34 Memory optimization by making m_refundableItems a std::set<uint64>. Also fix a crash caused by invalid iterator in Player::_SaveInventory(). This should fix the last of the item save related crashes.
--HG--
branch : trunk
2010-03-20 21:49:01 +01:00
Machiavelli f7ffd77123 Do not use hard coded index in SMSG_QUEST_POI_QUERY_RESPONSE. May be the resolution for some client crashes.
--HG--
branch : trunk
2010-03-20 21:26:29 +01:00
Xanadu 830062779e Improved the kill proc slightly.
--HG--
branch : trunk
2010-03-20 18:49:50 +01:00
Machiavelli b651b592ef Fix arena point calculation. If the configured arena season is >= 5, teams below 1500 rating should get a fixed amount of points, equal to the amount of points a person with 1500 rating would get.
--HG--
branch : trunk
2010-03-20 17:51:23 +01:00
Machiavelli d21f0c3ce8 Make sure a to be traded item ends up in the item update queue for the correct player.
--HG--
branch : trunk
2010-03-20 16:42:22 +01:00
Machiavelli a0d8b0be48 Item system update
- Set ITEM_FIELD_CREATE_PLAYED_TIME to 0 in Item::Create, should fix crash described in issue 1199
- Change some function calls so on Player::_saveInventory the core doesn't have to check for existance of item anymore when iterating over m_refundableItems. The loop will now only update played time, removal of items from this set is done in other functions.
- Cleanup in affected functions.

--HG--
branch : trunk
2010-03-20 16:26:16 +01:00
Tartalo 10417f1e6d Fix few typos on last commits
--HG--
branch : trunk
2010-03-20 13:22:02 +01:00
Tartalo 3ddaedf88c Gundrak, Slad'Ran: Despawn adds on wipe
--HG--
branch : trunk
2010-03-20 13:20:35 +01:00
Tartalo 830e55cfcb Azjol Nerub, Anub'Arak: Despawn adds on wipes
--HG--
branch : trunk
2010-03-20 13:18:48 +01:00
Tartalo 617c94c9da Halls of Stone: Implement achievement Brann's Spankin' New
--HG--
branch : trunk
2010-03-20 13:15:44 +01:00
Tartalo 3c2d7a4bba Merge
--HG--
branch : trunk
2010-03-20 13:07:24 +01:00
Tartalo 5bd575b974 Halls of Stone: Allow to loot Brann's chest when encounter ends (without waiting all the event). Blizzlike change
--HG--
branch : trunk
2010-03-20 13:06:21 +01:00
Trazom62 feeb3f564c Restore RewardPlayerAndGroupAtKill call from previous commit. This is the xp or honor reward for the tapping player/group.
--HG--
branch : trunk
2010-03-20 13:02:34 +01:00
Xanadu 34fb5df569 Fixed KILL proc to occur for the unit that lands the killing blow, not for the loot recipient.
--HG--
branch : trunk
2010-03-20 04:18:08 +01:00
Trazom62 7a8dff70ed Fix Object::IsInMap to check instanceId.
Fig group loot distance checks to also check map instanceId.
Fixes issue #1172.

--HG--
branch : trunk
2010-03-19 22:28:00 +01:00
Machiavelli b6258cf1cf Fix SQL yet again, thanks Trazom. (My apologies)
--HG--
branch : trunk
2010-03-19 22:06:38 +01:00
Machiavelli 86a33aa538 Fix SQL's, thanks Aokromes.
--HG--
branch : trunk
2010-03-19 22:00:52 +01:00
Machiavelli 3ae5a4094e Implement instance script for Zul'Farrak and prevent Gahz'Rilla from being summoned multiple times.
--HG--
branch : trunk
2010-03-19 21:38:07 +01:00
Machiavelli 0c6368bd39 Fix hunter pet talent reset feature.
Thanks to Xanadu and nalimleinad for aiding research.

--HG--
branch : trunk
2010-03-19 20:20:42 +01:00
XTZGZoReX 2b55eb2efe * Fix a typo that broke guild creation times...
--HG--
branch : trunk
2010-03-19 18:27:53 +01:00
XTZGZoReX bb99135e40 * Minor cleanups/comments in regards to SMSG_GUILD_INFO.
--HG--
branch : trunk
2010-03-19 17:24:23 +01:00
Xanadu 31608cfb72 Merge
--HG--
branch : trunk
2010-03-19 16:32:50 +01:00