aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNay <dnpd.dd@gmail.com>2013-07-04 17:12:29 +0100
committerNay <dnpd.dd@gmail.com>2013-07-04 17:12:29 +0100
commit85db1fc9434e7eca4ee53ca8c645e14c187911cb (patch)
tree42fe85eb8babc2b042d80aa4fc1f5c0e16be8146 /src
parent9c1cca395ba5bb2fd94321aedfddf3c4eaef04af (diff)
Scripts/Razorfen Kraul: Fix build and a possible crash
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp b/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp
index cdf2aec7e52..23688ae218d 100644
--- a/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp
+++ b/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp
@@ -22,6 +22,7 @@
#include "razorfen_kraul.h"
#include "Player.h"
#include "PetAI.h"
+#include "SpellScript.h"
enum Willix
{
@@ -142,8 +143,8 @@ enum SnufflenoseGopher
{
NPC_SNUFFLENOSE_GOPHER = 4781,
GO_BLUELEAF_TUBBER = 20920,
- ACTION_FIND_NEW_TUBBER = 0x4B726F66,
- POINT_TUBBER = 0x6E615748
+ ACTION_FIND_NEW_TUBBER = 0,
+ POINT_TUBBER = 0
};
struct DistanceOrder : public std::binary_function<GameObject, GameObject, bool>
@@ -252,12 +253,16 @@ class spell_snufflenose_command : public SpellScriptLoader
{
PrepareSpellScript(spell_snufflenose_commandSpellScript);
+ bool Load()
+ {
+ return GetCaster() && GetCaster()->GetTypeId() == TYPEID_PLAYER;
+ }
+
void HandleAfterCast()
{
- if (Unit* target = ((Player*)GetCaster())->GetSelectedUnit())
+ if (Unit* target = GetCaster()->ToPlayer()->GetSelectedUnit())
if (target->GetEntry() == NPC_SNUFFLENOSE_GOPHER)
- if (Creature* ctarget = dynamic_cast<Creature*>(target))
- ctarget->AI()->DoAction(ACTION_FIND_NEW_TUBBER);
+ target->ToCreature()->AI()->DoAction(ACTION_FIND_NEW_TUBBER);
}
void Register()