aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts
diff options
context:
space:
mode:
authorVincent-Michael <Vincent_Michael@gmx.de>2013-06-11 22:07:11 +0200
committerVincent-Michael <Vincent_Michael@gmx.de>2013-06-11 22:07:11 +0200
commit0bebf40fe7fc6ffdf3e86452f14e3bf647380b15 (patch)
tree42afd9e6643b3bd3400c9f4f80fd3991748fbcd7 /src/server/scripts
parent93c86b0c52a99d69fd14f4904a000b6c86759c69 (diff)
parent9ec22fffa00135cd776afebe2899bf54fb52f15f (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts: src/server/game/AuctionHouse/AuctionHouseMgr.h src/server/game/Entities/Creature/Creature.cpp src/server/game/Entities/Player/Player.cpp src/server/game/Entities/Unit/StatSystem.cpp src/server/game/Entities/Unit/Unit.cpp src/server/game/Entities/Vehicle/Vehicle.cpp src/server/game/Handlers/NPCHandler.cpp
Diffstat (limited to 'src/server/scripts')
-rw-r--r--src/server/scripts/Commands/cs_reset.cpp5
-rw-r--r--src/server/scripts/Northrend/Gundrak/gundrak.h4
-rw-r--r--src/server/scripts/Northrend/zone_borean_tundra.cpp7
-rw-r--r--src/server/scripts/Northrend/zone_howling_fjord.cpp51
-rw-r--r--src/server/scripts/Spells/spell_generic.cpp40
-rw-r--r--src/server/scripts/World/npcs_special.cpp4
6 files changed, 50 insertions, 61 deletions
diff --git a/src/server/scripts/Commands/cs_reset.cpp b/src/server/scripts/Commands/cs_reset.cpp
index 461220faa8e..8e45aa6a855 100644
--- a/src/server/scripts/Commands/cs_reset.cpp
+++ b/src/server/scripts/Commands/cs_reset.cpp
@@ -99,9 +99,6 @@ public:
if (!player->HasAuraType(SPELL_AURA_MOD_SHAPESHIFT))
player->SetShapeshiftForm(FORM_NONE);
- player->SetFloatValue(UNIT_FIELD_BOUNDINGRADIUS, DEFAULT_WORLD_OBJECT_SIZE);
- player->SetFloatValue(UNIT_FIELD_COMBATREACH, DEFAULT_COMBAT_REACH);
-
player->setFactionForRace(player->getRace());
player->SetUInt32Value(UNIT_FIELD_BYTES_0, ((player->getRace()) | (player->getClass() << 8) | (player->getGender() << 16) | (powerType << 24)));
@@ -116,8 +113,6 @@ public:
//-1 is default value
player->SetUInt32Value(PLAYER_FIELD_WATCHED_FACTION_INDEX, uint32(-1));
-
- //player->SetUInt32Value(PLAYER_FIELD_BYTES, 0xEEE00000);
return true;
}
diff --git a/src/server/scripts/Northrend/Gundrak/gundrak.h b/src/server/scripts/Northrend/Gundrak/gundrak.h
index a43edb4fcd7..f47b71cd48e 100644
--- a/src/server/scripts/Northrend/Gundrak/gundrak.h
+++ b/src/server/scripts/Northrend/Gundrak/gundrak.h
@@ -51,7 +51,8 @@ enum mainCreatures
CREATURE_ECK = 29932
};
-enum Gameobjects {
+enum Gameobjects
+{
GO_SLADRAN_ALTAR = 192518,
GO_MOORABI_ALTAR = 192519,
@@ -67,7 +68,6 @@ enum Gameobjects {
GO_GALDARAH_DOOR3 = 192568,
GO_BRIDGE = 193188,
GO_COLLISION = 192633
-
};
#endif
diff --git a/src/server/scripts/Northrend/zone_borean_tundra.cpp b/src/server/scripts/Northrend/zone_borean_tundra.cpp
index 147d5eb1370..b1091013270 100644
--- a/src/server/scripts/Northrend/zone_borean_tundra.cpp
+++ b/src/server/scripts/Northrend/zone_borean_tundra.cpp
@@ -820,7 +820,6 @@ public:
void Reset()
{
WithRedDragonBlood = false;
- HarpoonerGUID = 0;
}
void EnterCombat(Unit* who)
@@ -879,6 +878,12 @@ public:
}
}
+ if ((me->getFaction() == 35) && (!me->HasAura(SPELL_SUBDUED)))
+ {
+ HarpoonerGUID = 0;
+ me->DisappearAndDie();
+ }
+
if (!UpdateVictim())
return;
diff --git a/src/server/scripts/Northrend/zone_howling_fjord.cpp b/src/server/scripts/Northrend/zone_howling_fjord.cpp
index 65d69e368b8..268e904e292 100644
--- a/src/server/scripts/Northrend/zone_howling_fjord.cpp
+++ b/src/server/scripts/Northrend/zone_howling_fjord.cpp
@@ -276,56 +276,6 @@ public:
};
/*######
-## npc_mcgoyver
-######*/
-
-#define GOSSIP_ITEM_MG_I "Walt sent me to pick up some dark iron ingots."
-#define GOSSIP_ITEM_MG_II "Yarp."
-
-enum eMcGoyver
-{
- QUEST_WE_CAN_REBUILD_IT = 11483,
-
- SPELL_CREATURE_DARK_IRON_INGOTS = 44512,
- SPELL_TAXI_EXPLORERS_LEAGUE = 44280,
-
- GOSSIP_TEXTID_MCGOYVER = 12193
-};
-
-class npc_mcgoyver : public CreatureScript
-{
-public:
- npc_mcgoyver() : CreatureScript("npc_mcgoyver") { }
-
- bool OnGossipHello(Player* player, Creature* creature)
- {
- if (player->GetQuestStatus(QUEST_WE_CAN_REBUILD_IT) == QUEST_STATUS_INCOMPLETE)
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_MG_I, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
-
- player->SEND_GOSSIP_MENU(player->GetGossipTextId(creature), creature->GetGUID());
- return true;
- }
-
- bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action)
- {
- player->PlayerTalkClass->ClearMenus();
- switch (action)
- {
- case GOSSIP_ACTION_INFO_DEF+1:
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_MG_II, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2);
- player->SEND_GOSSIP_MENU(GOSSIP_TEXTID_MCGOYVER, creature->GetGUID());
- player->CastSpell(player, SPELL_CREATURE_DARK_IRON_INGOTS, true);
- break;
- case GOSSIP_ACTION_INFO_DEF+2:
- player->CastSpell(player, SPELL_TAXI_EXPLORERS_LEAGUE, true);
- player->CLOSE_GOSSIP_MENU();
- break;
- }
- return true;
- }
-};
-
-/*######
## npc_daegarn
######*/
@@ -435,6 +385,5 @@ void AddSC_howling_fjord()
new npc_apothecary_hanes;
new npc_plaguehound_tracker;
new npc_razael_and_lyana;
- new npc_mcgoyver;
new npc_daegarn;
}
diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp
index a84f299167e..cb010f44f9a 100644
--- a/src/server/scripts/Spells/spell_generic.cpp
+++ b/src/server/scripts/Spells/spell_generic.cpp
@@ -3634,6 +3634,45 @@ class spell_gen_orc_disguise : public SpellScriptLoader
}
};
+enum WhisperGulchYoggSaronWhisper
+{
+ SPELL_YOGG_SARON_WHISPER_DUMMY = 29072
+};
+
+class spell_gen_whisper_gulch_yogg_saron_whisper : public SpellScriptLoader
+{
+ public:
+ spell_gen_whisper_gulch_yogg_saron_whisper() : SpellScriptLoader("spell_gen_whisper_gulch_yogg_saron_whisper") { }
+
+ class spell_gen_whisper_gulch_yogg_saron_whisper_AuraScript : public AuraScript
+ {
+ PrepareAuraScript(spell_gen_whisper_gulch_yogg_saron_whisper_AuraScript);
+
+ bool Validate(SpellInfo const* /*spellInfo*/)
+ {
+ if (!sSpellMgr->GetSpellInfo(SPELL_YOGG_SARON_WHISPER_DUMMY))
+ return false;
+ return true;
+ }
+
+ void HandleEffectPeriodic(AuraEffect const* /*aurEff*/)
+ {
+ PreventDefaultAction();
+ GetTarget()->CastSpell((Unit*)NULL, SPELL_YOGG_SARON_WHISPER_DUMMY, true);
+ }
+
+ void Register()
+ {
+ OnEffectPeriodic += AuraEffectPeriodicFn(spell_gen_whisper_gulch_yogg_saron_whisper_AuraScript::HandleEffectPeriodic, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
+ }
+ };
+
+ AuraScript* GetAuraScript() const
+ {
+ return new spell_gen_whisper_gulch_yogg_saron_whisper_AuraScript();
+ }
+};
+
void AddSC_generic_spell_scripts()
{
new spell_gen_absorb0_hitlimit1();
@@ -3722,4 +3761,5 @@ void AddSC_generic_spell_scripts()
new spell_gen_two_forms();
new spell_gen_darkflight();
new spell_gen_orc_disguise();
+ new spell_gen_whisper_gulch_yogg_saron_whisper();
}
diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp
index a5058cbf1d7..960a3fce7cd 100644
--- a/src/server/scripts/World/npcs_special.cpp
+++ b/src/server/scripts/World/npcs_special.cpp
@@ -1257,10 +1257,10 @@ public:
if (creature->isTrainer())
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, GOSSIP_TEXT_TRAIN, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRAIN);
- if (creature->isCanTrainingAndResetTalentsOf(player))
+ if (player->getClass() == CLASS_ROGUE)
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, GOSSIP_HELLO_ROGUE1, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_UNLEARNTALENTS);
- if (player->GetSpecsCount() == 1 && creature->isCanTrainingAndResetTalentsOf(player) && player->getLevel() >= sWorld->getIntConfig(CONFIG_MIN_DUALSPEC_LEVEL))
+ if (player->GetSpecsCount() == 1 && player->getLevel() >= sWorld->getIntConfig(CONFIG_MIN_DUALSPEC_LEVEL))
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_TRAINER, GOSSIP_HELLO_ROGUE3, GOSSIP_SENDER_MAIN, GOSSIP_OPTION_LEARNDUALSPEC);
if (player->getClass() == CLASS_ROGUE && player->getLevel() >= 24 && !player->HasItemCount(17126) && !player->GetQuestRewardStatus(6681))