Commit Graph
100 Commits
Author SHA1 Message Date
silverice 5dfcccdd85 correct movement packet broadcasting
mover should be source of movement packets, not player
   resolves problem that movements of controlled unit not visible for nearby players
   (you can detect it only when controlled unit too far from player-controller)

--HG--
branch : trunk
2010-04-04 03:46:38 +03:00
Trazom62 917193eda5 Fix Fishing skill in low level zones, where the zone_skill is < 0. The formula was not correct for those cases.
Fixes isssue #1387.

Note: junk loot is still not yet implemented.

--HG--
branch : trunk
2010-04-04 00:30:11 +02:00
[email protected]> 85d3dc8b71 Valiance keep Cannoneer script to activate cannon.
--HG--
branch : trunk
2010-04-03 14:01:00 -02:30
Trazom62 bcfd44f978 Fix Script HoL/Ionar.
Fixes issue #1132.

--HG--
branch : trunk
2010-04-03 16:51:56 +02:00
silverice 1f477b49c3 handle CMSG_REQUEST_VEHICLE_SWITCH_SEAT opcode
thanks to havenard for packet structure, closes issue #1439
also added vehicle guid check

--HG--
branch : trunk
2010-04-03 16:59:52 +03:00
Trazom62 6917c057de Fix compile.
Fixes issue #1443.

--HG--
branch : trunk
2010-04-03 14:17:33 +02:00
Machiavelli 2708b757e8 Fix SMSG_GMTICKET_GETTICKET structure, by havenard. Closes issue #1419
--HG--
branch : trunk
2010-04-03 13:41:28 +02:00
thenecromancer 18b30b5f18 Fix periodic heal log (correctly display critical heal tick)
--HG--
branch : trunk
2010-04-03 12:43:36 +02:00
thenecromancer 71082bd48b Change pull effects speed calculations to work more or less correctly ( no more flying really high )
--HG--
branch : trunk
2010-04-03 12:41:12 +02:00
thenecromancer aa31f350b3 Fix waypoint movement removing flying animation for creatures
Fix flying creatures always moving forward ( maybe use flag only when really moving? )

--HG--
branch : trunk
2010-04-03 12:39:02 +02:00
thenecromancer e50b04f657 Fix issue #1437, don't remove passive auras if they're triggering spell that fails for whatever reason
--HG--
branch : trunk
2010-04-03 12:32:11 +02:00
Trazom62 6b6ee726dd Script Instance Pit of Saron.
First basic script based on proposal of Synric on trinitycore forum (submitted by Skarabex on GC).
Still WiP with lots of work. In particular, the faction based npc/mob will have to be fixed when they will be spawned in TDB.
Fixes issue #1308.

--HG--
branch : trunk
2010-04-03 09:04:02 +02:00
Trazom62 c6b8602619 Fix Hymn of Hope. Thanks Proof.
Fixes issue #1322.
Fixes issue #1428.

--HG--
branch : trunk
2010-04-03 08:22:04 +02:00
Machiavelli 6dedf65e3e Fix calculation of partial resistance cases, by Tlexii.
--HG--
branch : trunk
2010-04-03 03:59:41 +02:00
Anubisss 08b4748e62 Use GUIDs instead of "global" pointers in zone scripts.
This commit is like that: 7714 / rce505237e4aa

And use const_iterators where it is possible.

--HG--
branch : trunk
2010-04-02 15:41:37 +02:00
[email protected]> 7c4f2f520f Fix Go type 10 spell handling by QAston
--HG--
branch : trunk
2010-04-01 20:08:22 -02:30
[email protected]> 3b389b8aa2 Spells 42442 & 45863 should be limited to 1 target.
--HG--
branch : trunk
2010-04-01 18:14:04 -02:30
Anubisss f78b766705 Use ToTempSummon() in a case instead of a C style cast.
Use correct Unit::GetCreature() instead of Unit::GetUnit() with casting the object to Creature pointer.
Remove some usless casts.
Fix a possible crash in pyrewood_ambushAI.

TODO: Remove ugly cast macros(like CAST_PLR(), CAST_CRE()) from scripts and use the correct ToX() functions(like ToPlayer(), ToCreature()).

--HG--
branch : trunk
2010-04-01 19:09:56 +02:00
Anubisss ab4c7cbd98 Fix a typo in friends list and ignore list loading.
This fixes the bugs which appear when you have more than 50 entries on friends or ignore list.
For example: You have 40 friends and 20 ignores, it's 60. But the core loads just 50 entries so some of them not loaded.
Fixes issue #134.

Patch by johnholiver.

--HG--
branch : trunk
2010-04-01 17:28:59 +02:00
Trazom62 e280d4e45b Fix Script Grand Magus Telestra to reappear when the 3 adds are killed.
Fixes issue #1382.

--HG--
branch : trunk
2010-03-31 00:12:49 +02:00
Trazom62 7cc192e973 Fix Skinning where there is no loot on creature.
Fixes issue #1174.

--HG--
branch : trunk
2010-03-30 23:39:18 +02:00
[email protected]> 83500cb1e4 Added SCRIPT_COMMAND_MODEL 32 Allows changing of npc model in db scripts.
--HG--
branch : trunk
2010-03-30 19:01:25 -02:30
Anubisss 82686437fb Fix a typo in Keristrasza's script. Patch by havenard, #1373.
--HG--
branch : trunk
2010-03-30 21:38:03 +02:00
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