aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/ThornsEnchantment.h
blob: 9383288ab8f96cafd19f86b8832cd1f7a93cc435 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once

#include "Enchantment.h"

class ThornsEnchantment : public Enchantment
{
private:
	static const float CHANCE_PER_LEVEl;

public:
	ThornsEnchantment(int id, int freq);

	virtual int getMinCost(int level);
	virtual int getMaxCost(int level);
	virtual int getMaxLevel();
	virtual bool canEnchant(shared_ptr<ItemInstance> item);
	static bool shouldHit(int level, Random *random);
	static int getDamage(int level, Random *random);
	static void doThornsAfterAttack(shared_ptr<Entity> source, shared_ptr<LivingEntity> target, Random *random);
};