aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/WitherSkull.h
blob: ac393c69452d163fe85e6a6827ad946e76e79fc3 (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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#pragma once

#include "Fireball.h"

class WitherSkull : public Fireball
{
public:
	eINSTANCEOF GetType() { return 	eTYPE_WITHER_SKULL; }
	static Entity *create(Level *level) { return new WitherSkull(level); }

private:
	static const int DATA_DANGEROUS = 10;

public:
	WitherSkull(Level *level);
	WitherSkull(Level *level, shared_ptr<LivingEntity> mob, double xa, double ya, double za);

protected:
	virtual float getInertia();

public:
	WitherSkull(Level *level, double x, double y, double z, double xa, double ya, double za);

	virtual bool isOnFire();
	virtual float getTileExplosionResistance(Explosion *explosion, Level *level, int x, int y, int z, Tile *tile);

protected:
	virtual void onHit(HitResult *res);

public:
	virtual bool isPickable();
	virtual bool hurt(DamageSource *source, float damage);

protected:
	virtual void defineSynchedData();

public:
	virtual bool isDangerous();
	virtual void setDangerous(bool value);

protected:
	virtual bool shouldBurn(); // 4J Added.
};