Initial commit
This commit is contained in:
62
Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StemTile_SPU.h
Normal file
62
Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StemTile_SPU.h
Normal file
@@ -0,0 +1,62 @@
|
||||
#pragma once
|
||||
#include "Bush_SPU.h"
|
||||
|
||||
class StemTile_SPU : public Bush_SPU
|
||||
{
|
||||
private:
|
||||
public:
|
||||
StemTile_SPU(int id) : Bush_SPU(id) {}
|
||||
|
||||
public:
|
||||
int getColor(int data) const
|
||||
{
|
||||
//int r = data * 32;
|
||||
//int g = 255 - data * 8;
|
||||
//int b = data * 4;
|
||||
//return r << 16 | g << 8 | b;
|
||||
|
||||
int colour = 0;
|
||||
|
||||
unsigned int minColour = ms_pTileData->stemTile_minColour;
|
||||
unsigned int maxColour = ms_pTileData->stemTile_maxColour;
|
||||
|
||||
byte redComponent = ((minColour>>16)&0xFF) + (( (maxColour>>16)&0xFF - (minColour>>16)&0xFF)*( data/7.0f));
|
||||
byte greenComponent = ((minColour>>8)&0xFF) + (( (maxColour>>8)&0xFF - (minColour>>8)&0xFF)*( data/7.0f));
|
||||
byte blueComponent = ((minColour)&0xFF) + (( (maxColour)&0xFF - (minColour)&0xFF)*( data/7.0f));
|
||||
|
||||
colour = redComponent<<16 | greenComponent<<8 | blueComponent;
|
||||
return colour;
|
||||
}
|
||||
|
||||
virtual int getColor(ChunkRebuildData *level, int x, int y, int z) { return getColor(level->getData(x, y, z)); }
|
||||
virtual void updateDefaultShape()
|
||||
{
|
||||
float ss = 0.125f;
|
||||
this->setShape(0.5f - ss, 0, 0.5f - ss, 0.5f + ss, 0.25f, 0.5f + ss);
|
||||
}
|
||||
|
||||
virtual void updateShape(ChunkRebuildData *level, int x, int y, int z, int forceData = -1, TileEntity* forceEntity = NULL) // 4J added forceData, forceEntity param
|
||||
{
|
||||
ms_pTileData->yy1[id] = (level->getData(x, y, z) * 2 + 2) / 16.0f;
|
||||
float ss = 0.125f;
|
||||
this->setShape(0.5f - ss, 0, 0.5f - ss, 0.5f + ss, (float) ms_pTileData->yy1[id], 0.5f + ss);
|
||||
}
|
||||
|
||||
int getConnectDir(ChunkRebuildData *level, int x, int y, int z)
|
||||
{
|
||||
int fruitID = pumpkin_Id;
|
||||
if(id == melonStem_Id)
|
||||
fruitID = melon_Id;
|
||||
|
||||
int d = level->getData(x, y, z);
|
||||
if (d < 7) return -1;
|
||||
if (level->getTile(x - 1, y, z) == fruitID) return 0;
|
||||
if (level->getTile(x + 1, y, z) == fruitID) return 1;
|
||||
if (level->getTile(x, y, z - 1) == fruitID) return 2;
|
||||
if (level->getTile(x, y, z + 1) == fruitID) return 3;
|
||||
return -1;
|
||||
}
|
||||
|
||||
virtual int getRenderShape() { return Tile_SPU::SHAPE_STEM; }
|
||||
Icon_SPU *getAngledTexture() { return &ms_pTileData->stemTile_iconAngled; }
|
||||
};
|
||||
Reference in New Issue
Block a user