the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2#include "TransparentTile.h"
3
4class Random;
5class ChunkRebuildData;
6
7class LeafTile : public TransparentTile
8{
9 friend class Tile;
10 friend class ChunkRebuildData;
11public:
12 static const wstring TEXTURES[2][4];
13 static const int REQUIRED_WOOD_RANGE = 4;
14
15 static const int UPDATE_LEAF_BIT = 8;
16 static const int PERSISTENT_LEAF_BIT = 4; // player-placed
17 static const int NORMAL_LEAF = 0;
18 static const int EVERGREEN_LEAF = 1;
19 static const int BIRCH_LEAF = 2;
20 static const int JUNGLE_LEAF = 3;
21
22 static const int LEAF_NAMES_LENGTH = 4;
23
24 static const unsigned int LEAF_NAMES[LEAF_NAMES_LENGTH];
25private:
26 static const int LEAF_TYPE_MASK = 3;
27
28 // pppppppppp ppppppppppp pppppppppp ppppppp
29 // ssssssssss sssssssssss s
30
31 int fancyTextureSet;
32 Icon *icons[2][4];
33
34protected:
35 LeafTile(int id);
36 virtual ~LeafTile();
37public:
38 virtual int getColor() const;
39 virtual int getColor(int data);
40
41 virtual int getColor(LevelSource *level, int x, int y, int z);
42 virtual int getColor(LevelSource *level, int x, int y, int z, int data); // 4J added
43 virtual void onRemove(Level *level, int x, int y, int z, int id, int data);
44 int *checkBuffer;
45
46 virtual void tick(Level *level, int x, int y, int z, Random *random);
47 virtual void animateTick(Level *level, int x, int y, int z, Random *random);
48private:
49 void die(Level *level, int x, int y, int z);
50public:
51 virtual int getResourceCount(Random *random);
52 virtual int getResource(int data, Random *random, int playerBonusLevel);
53
54 // 4J DCR: Brought forward from 1.2
55 virtual void spawnResources(Level *level, int x, int y, int z, int data, float odds, int playerBonusLevel);
56
57 virtual void playerDestroy(Level *level, shared_ptr<Player> player, int x, int y, int z, int data);
58protected:
59 virtual int getSpawnResourcesAuxValue(int data);
60public:
61 virtual bool isSolidRender(bool isServerLevel = false);
62 virtual Icon *getTexture(int face, int data);
63 void setFancy(bool fancyGraphics);
64
65protected:
66 virtual shared_ptr<ItemInstance> getSilkTouchItemInstance(int data);
67
68public:
69 virtual void stepOn(Level *level, int x, int y, int z, shared_ptr<Entity> entity);
70
71 // 4J Added so we can check before we try to add a tile to the tick list if it's actually going to do seomthing
72 virtual bool shouldTileTick(Level *level, int x,int y,int z);
73
74 virtual unsigned int getDescriptionId(int iData = -1);
75 void registerIcons(IconRegister *iconRegister);
76};