summaryrefslogtreecommitdiffstats
path: root/src/Mobs/NewPig.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Mobs/NewPig.cpp')
-rw-r--r--src/Mobs/NewPig.cpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/Mobs/NewPig.cpp b/src/Mobs/NewPig.cpp
new file mode 100644
index 000000000..c5fbddfd0
--- /dev/null
+++ b/src/Mobs/NewPig.cpp
@@ -0,0 +1,38 @@
+
+#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
+
+#include "NewPig.h"
+#include "../Entities/Player.h"
+#include "../World.h"
+
+
+
+
+
+cNewPig::cNewPig(void) :
+ super("Pig", mtPig, "mob.pig.say", "mob.pig.death", 0.9, 0.9),
+ m_bIsSaddled(false)
+{
+}
+
+
+
+
+
+void cNewPig::GetDrops(cItems & a_Drops, cEntity * a_Killer)
+{
+ int LootingLevel = 0;
+ if (a_Killer != NULL)
+ {
+ LootingLevel = a_Killer->GetEquippedWeapon().m_Enchantments.GetLevel(cEnchantments::enchLooting);
+ }
+ AddRandomDropItem(a_Drops, 1, 3 + LootingLevel, IsOnFire() ? E_ITEM_COOKED_PORKCHOP : E_ITEM_RAW_PORKCHOP);
+ if (m_bIsSaddled)
+ {
+ a_Drops.push_back(cItem(E_ITEM_SADDLE, 1));
+ }
+}
+
+
+
+