aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/MultiEntityMobPart.h
blob: b5322317b80d411fc5947088505bd16a0d1daabb (plain)
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
#pragma once
using namespace std;
#include "Entity.h"

class Level;
class MultiEntityMob;

class MultiEntityMobPart : public Entity
{
public:
	eINSTANCEOF GetType() { return eTYPE_MULTIENTITY_MOB_PART; };
public:
	weak_ptr<MultiEntityMob> parentMob;
	const wstring id;

	MultiEntityMobPart(shared_ptr<MultiEntityMob> parentMob, const wstring &id, float w, float h);

protected:
	virtual void defineSynchedData();
	virtual void readAdditionalSaveData(CompoundTag *tag);
	virtual void addAdditonalSaveData(CompoundTag *tag);

public:
	virtual bool isPickable();
	virtual bool hurt(DamageSource *source, float damage);
	virtual bool is(shared_ptr<Entity> other);
};