the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2
3#include "Item.h"
4
5class Player;
6class Level;
7
8class FoodItem : public Item
9{
10public:
11 static const int EAT_DURATION = (int) (20 * 1.6);
12
13private:
14 const int nutrition;
15 const float saturationModifier;
16 const bool m_isMeat;
17 bool canAlwaysEat;
18
19 int effectId;
20 int effectDurationSeconds;
21 int effectAmplifier;
22 float effectProbability;
23
24 void _init();
25public:
26 FoodItem(int id, int nutrition, float saturationMod, bool isMeat);
27 FoodItem(int id, int nutrition, bool isMeat);
28
29 virtual shared_ptr<ItemInstance> useTimeDepleted(shared_ptr<ItemInstance> instance, Level *level, shared_ptr<Player> player);
30
31protected:
32 virtual void addEatEffect(shared_ptr<ItemInstance> instance, Level *level, shared_ptr<Player> player);
33
34public:
35 virtual int getUseDuration(shared_ptr<ItemInstance> itemInstance);
36 virtual UseAnim getUseAnimation(shared_ptr<ItemInstance> itemInstance);
37
38 virtual shared_ptr<ItemInstance> use(shared_ptr<ItemInstance> instance, Level *level, shared_ptr<Player> player);
39
40 int getNutrition();
41 float getSaturationModifier();
42 bool isMeat();
43
44 FoodItem *setEatEffect(int id, int durationInSecods, int amplifier, float effectProbability);
45 FoodItem *setCanAlwaysEat();
46
47 // 4J Added
48 bool canEat(shared_ptr<Player> player);
49};