diff options
author | Samuel Barney <samjbarney@gmail.com> | 2014-08-21 16:12:05 +0200 |
---|---|---|
committer | Samuel Barney <samjbarney@gmail.com> | 2014-08-21 16:12:05 +0200 |
commit | 77a36b58d8731821c88493742781cee0602d12ef (patch) | |
tree | 367ec7d2e9fe037b81721d62a94b01fa092d9227 /src/Mobs/Old Mobs/Cow.cpp | |
parent | Fixed to make metadata work correctly. (diff) | |
download | cuberite-77a36b58d8731821c88493742781cee0602d12ef.tar cuberite-77a36b58d8731821c88493742781cee0602d12ef.tar.gz cuberite-77a36b58d8731821c88493742781cee0602d12ef.tar.bz2 cuberite-77a36b58d8731821c88493742781cee0602d12ef.tar.lz cuberite-77a36b58d8731821c88493742781cee0602d12ef.tar.xz cuberite-77a36b58d8731821c88493742781cee0602d12ef.tar.zst cuberite-77a36b58d8731821c88493742781cee0602d12ef.zip |
Diffstat (limited to 'src/Mobs/Old Mobs/Cow.cpp')
-rw-r--r-- | src/Mobs/Old Mobs/Cow.cpp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/Mobs/Old Mobs/Cow.cpp b/src/Mobs/Old Mobs/Cow.cpp new file mode 100644 index 000000000..9914df6b5 --- /dev/null +++ b/src/Mobs/Old Mobs/Cow.cpp @@ -0,0 +1,48 @@ + +#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules + +#include "Cow.h" +#include "../Entities/Player.h" + + + + + + + +cCow::cCow(void) : + super("Cow", mtCow, "mob.cow.hurt", "mob.cow.hurt", 0.9, 1.3) +{ +} + + + + + +void cCow::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, 0, 2 + LootingLevel, E_ITEM_LEATHER); + AddRandomDropItem(a_Drops, 1, 3 + LootingLevel, IsOnFire() ? E_ITEM_STEAK : E_ITEM_RAW_BEEF); +} + + + + + +void cCow::OnRightClicked(cPlayer & a_Player) +{ + if ((a_Player.GetEquippedItem().m_ItemType == E_ITEM_BUCKET)) + { + if (!a_Player.IsGameModeCreative()) + { + a_Player.GetInventory().RemoveOneEquippedItem(); + a_Player.GetInventory().AddItem(E_ITEM_MILK); + } + } +} + |