blob: aae16ccec09bba0b69f3ac3268ce92172f83595b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#pragma once
#include "Mixins.h"
class cBlockEnderchestHandler final :
public cYawRotator<cBlockEntityHandler, 0x07, 0x03, 0x04, 0x02, 0x05>
{
using Super = cYawRotator<cBlockEntityHandler, 0x07, 0x03, 0x04, 0x02, 0x05>;
public:
using Super::Super;
private:
virtual cItems ConvertToPickups(const NIBBLETYPE a_BlockMeta, const cItem * const a_Tool) const override
{
// Only drop something when mined with a pickaxe:
if (
(a_Tool != nullptr) &&
ItemCategory::IsPickaxe(a_Tool->m_ItemType)
)
{
// Only drop self when mined with a silk-touch pickaxe:
if (a_Tool->m_Enchantments.GetLevel(cEnchantments::enchSilkTouch) > 0)
{
return cItem(E_BLOCK_ENDER_CHEST);
}
return cItem(E_BLOCK_OBSIDIAN, 8);
}
return {};
}
};
|