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
_manuel_
ecba58c8f6
Fix hardmode achievement from Obsidiam Sanctum
...
Fix Flame Tsunami aura and visual effects
Author: Gyullo
--HG--
branch : trunk
2010-03-26 23:16:22 -03:00
_manuel_
2cb7a31512
Corrected script for Glyph of Feral Spirit, aura must be checked on Owner not Pet. By Gyullo.
...
--HG--
branch : trunk
2010-03-26 22:19:03 -03:00
_manuel_
49c5be6d80
Improvement in npc_mageguard_dalaranAI.
...
--HG--
branch : trunk
2010-03-26 22:13:04 -03:00
_manuel_
2796f08297
Support for spell Disarm Trap.
...
--HG--
branch : trunk
2010-03-26 22:04:38 -03: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
Brian
ec72846da4
* Check for incorrect settings for AHbot
...
* Patch by click
--HG--
branch : trunk
2010-03-26 13:07:24 -06: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
Brian
808254af50
* Missed SQL from previous commit
...
--HG--
branch : trunk
2010-03-24 18:36:46 -06:00
Brian
66a890ca0f
* Allow the use of referenced trainer / vendor data.
...
* This will reduce the size of the trainer / vendor tables a LOT.
* Current tables will continue to work as/is until the refs can be made.
* Huge thanks to XTElite1
* Credits for patch to Cycrow
--HG--
branch : trunk
2010-03-24 18:27:09 -06: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