diff --git a/Minecraft.Client/Common/XUI/XUI_TutorialPopup.cpp b/Minecraft.Client/Common/XUI/XUI_TutorialPopup.cpp index 98951d81..b7ebc17e 100644 --- a/Minecraft.Client/Common/XUI/XUI_TutorialPopup.cpp +++ b/Minecraft.Client/Common/XUI/XUI_TutorialPopup.cpp @@ -402,7 +402,7 @@ wstring CScene_TutorialPopup::_SetIcon(int icon, int iAuxVal, bool isFoil, LPCWS } else if(temp.find(L"{*StoneIcon*}")!=wstring::npos) { - m_pCraftingPic->SetIcon(m_iPad, Tile::rock_Id,0,1,10,31,false); + m_pCraftingPic->SetIcon(m_iPad, Tile::stone_Id,0,1,10,31,false); } else { diff --git a/Minecraft.Client/Durango/Leaderboards/DurangoStatsDebugger.cpp b/Minecraft.Client/Durango/Leaderboards/DurangoStatsDebugger.cpp index 68d2bb50..1c896968 100644 --- a/Minecraft.Client/Durango/Leaderboards/DurangoStatsDebugger.cpp +++ b/Minecraft.Client/Durango/Leaderboards/DurangoStatsDebugger.cpp @@ -112,22 +112,22 @@ DurangoStatsDebugger *DurangoStatsDebugger::Initialize() sp->addArgs(1, Tile::dirt_Id, 0); // works sp->addArgs(2, Tile::dirt_Id, 0); // works - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 0); // fixed (+ach 'Rainbow Collection') - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 1); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 2); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 3); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 4); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 5); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 6); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 7); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 8); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 9); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 10); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 11); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 12); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 13); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 14); - sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::cloth_Id, 15); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 0); // fixed (+ach 'Rainbow Collection') + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 1); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 2); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 3); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 4); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 5); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 6); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 7); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 8); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 9); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 10); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 11); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 12); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 13); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 14); + sp->addArgs(DsItemEvent::eAcquisitionMethod_Pickedup, Tile::wool_Id, 15); out->m_stats.push_back(sp); @@ -166,20 +166,20 @@ DurangoStatsDebugger *DurangoStatsDebugger::Initialize() sp = new StatParam(L"BlockBroken.BlockId.*"); sp->addArgs( Tile::dirt_Id ); - sp->addArgs( Tile::rock_Id ); + sp->addArgs( Tile::stone_Id ); sp->addArgs( Tile::emeraldOre_Id ); out->m_stats.push_back(sp); sp = new StatParam(L"BlockBroken.BlockId.*.BlockAux.*"); sp->addArgs( Tile::dirt_Id, 0 ); - sp->addArgs( Tile::rock_Id, 0 ); + sp->addArgs( Tile::stone_Id, 0 ); out->m_stats.push_back(sp); sp = new StatParam(L"BlockBroken.DifficultyLevelId.*.BlockId.*"); sp->addArgs( 1, Tile::dirt_Id ); sp->addArgs( 2, Tile::dirt_Id ); - sp->addArgs( 1, Tile::rock_Id ); - sp->addArgs( 2, Tile::rock_Id ); + sp->addArgs( 1, Tile::stone_Id ); + sp->addArgs( 2, Tile::stone_Id ); out->m_stats.push_back(sp); sp = new StatParam(L"BlockBroken"); @@ -188,7 +188,7 @@ DurangoStatsDebugger *DurangoStatsDebugger::Initialize() sp = new StatParam(L"BlockPlaced.BlockId.*"); sp->addArgs( Tile::dirt_Id ); - sp->addArgs( Tile::stoneBrick_Id ); + sp->addArgs( Tile::cobblestone_Id ); sp->addArgs( Tile::sand_Id ); // works sp->addArgs( Tile::sign_Id ); // fixed sp->addArgs( Tile::wallSign_Id ); // fixed diff --git a/Minecraft.Client/Minecraft.Client.vcxproj b/Minecraft.Client/Minecraft.Client.vcxproj index 1d2f0337..00381930 100644 --- a/Minecraft.Client/Minecraft.Client.vcxproj +++ b/Minecraft.Client/Minecraft.Client.vcxproj @@ -630,6 +630,7 @@ $(OutDir)$(ProjectName)_D.xex $(ProjectDir)\..\Minecraft.Client\PS3\Assert;$(SCE_PS3_ROOT)\target\ppu\include;$(SCE_PS3_ROOT)\target\common\include;$(SCE_PS3_ROOT)\host-win32\sn\ppu\include;$(ProjectDir)\..\Minecraft.Client\PS3\PS3Extras;$(ProjectDir)\..\Minecraft.Client\PS3\PS3Extras\boost_1_53_0\boost\tr1\tr1;$(ProjectDir)\..\Minecraft.Client\PS3\PS3Extras\boost_1_53_0;$(ProjectDir)..\Minecraft.World\x64headers false + true true @@ -641,6 +642,7 @@ true $(OutDir)$(ProjectName)_D.xex $(ProjectDir)\..\Minecraft.Client\PS3\Assert;$(SCE_PS3_ROOT)\target\ppu\include;$(SCE_PS3_ROOT)\target\common\include;$(SCE_PS3_ROOT)\host-win32\sn\ppu\include;$(ProjectDir)\..\Minecraft.Client\PS3\PS3Extras;$(ProjectDir)\..\Minecraft.Client\PS3\PS3Extras\boost_1_53_0\boost\tr1\tr1;$(ProjectDir)\..\Minecraft.Client\PS3\PS3Extras\boost_1_53_0;$(ProjectDir)..\Minecraft.World\x64headers + true true @@ -12954,6 +12956,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true + true true @@ -13494,6 +13497,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true + true true @@ -13809,6 +13813,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true + true true @@ -14394,6 +14399,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true + true true @@ -15114,7 +15120,8 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true - + + true true true @@ -15159,6 +15166,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true + true true @@ -15204,51 +15212,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true - - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - true - + true true @@ -15429,6 +15393,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true + true true @@ -16509,6 +16474,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true + true true @@ -32377,7 +32343,7 @@ xcopy /q /y /i /s /e $(ProjectDir)Durango\CU $(LayoutDir)Image\Loose\CUtrue true - + true true true diff --git a/Minecraft.Client/Minecraft.Client.vcxproj.filters b/Minecraft.Client/Minecraft.Client.vcxproj.filters index ad3f55ca..a0aaab33 100644 --- a/Minecraft.Client/Minecraft.Client.vcxproj.filters +++ b/Minecraft.Client/Minecraft.Client.vcxproj.filters @@ -2665,15 +2665,9 @@ PS3\ChunkRebuild_SPU - - PS3\ChunkRebuild_SPU - PS3\ChunkRebuild_SPU - - PS3\ChunkRebuild_SPU - PS3\ChunkRebuild_SPU @@ -3775,6 +3769,36 @@ PSVita + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + + + PS3\ChunkRebuild_SPU + @@ -5001,9 +5025,6 @@ PS3\ChunkRebuild_SPU - - PS3\ChunkRebuild_SPU - PS3\ChunkRebuild_SPU @@ -5919,6 +5940,9 @@ PSVita + + PS3\ChunkRebuild_SPU + diff --git a/Minecraft.Client/PS3/PS3Extras/C4JSpursJob.cpp b/Minecraft.Client/PS3/PS3Extras/C4JSpursJob.cpp index 241ebf61..eba794ce 100644 --- a/Minecraft.Client/PS3/PS3Extras/C4JSpursJob.cpp +++ b/Minecraft.Client/PS3/PS3Extras/C4JSpursJob.cpp @@ -242,11 +242,10 @@ C4JSpursJob_ChunkUpdate::C4JSpursJob_ChunkUpdate(ChunkRebuildData* pDataIn, Chun extern const CellSpursJobHeader JOBHEADER_SYMBOL(ChunkUpdate); //E create job m_job256.header = JOBHEADER_SYMBOL(ChunkUpdate); - m_job256.header.sizeStack = (60*1024)>>4; + m_job256.header.sizeStack = (58*1024)>>4; m_job256.workArea.userData[0] = (uintptr_t)pDataIn; m_job256.workArea.userData[1] = (uintptr_t)pDataOut; assert(cellSpursJobQueueCheckJob(&m_job256, 256, 256) == CELL_OK); - } C4JSpursJob_LevelRenderer_cull::C4JSpursJob_LevelRenderer_cull(LevelRenderer_cull_DataIn* pDataIn) diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ActivatorRailTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ActivatorRailTile_SPU.h new file mode 100644 index 00000000..7021e716 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ActivatorRailTile_SPU.h @@ -0,0 +1,21 @@ +#pragma once + +#include "BaseRailTile_SPU.h" + +class ActivatorRailTile_SPU : public BaseRailTile_SPU +{ +public: + ActivatorRailTile_SPU(int id) : BaseRailTile_SPU(id) {} + + Icon_SPU *getTexture(int face, int data) + { + if ((data & RAIL_DATA_BIT) == 0) + { + return &ms_pTileData->activatorRailTile_icon; + } + else + { + return &ms_pTileData->activatorRailTile_iconPowered; + } + }; +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BasePressurePlateTile_SPU.cpp b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BasePressurePlateTile_SPU.cpp new file mode 100644 index 00000000..ee3b607f --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BasePressurePlateTile_SPU.cpp @@ -0,0 +1,41 @@ +#include "stdafx.h" +#include "BasePressurePlateTile_SPU.h" +#include "ChunkRebuildData.h" + + +bool BasePressurePlateTile_SPU::isSolidRender(bool isServerLevel) +{ + return false; +} + +bool BasePressurePlateTile_SPU::blocksLight() +{ + return false; +} + + +void BasePressurePlateTile_SPU::updateShape(ChunkRebuildData *level, int x, int y, int z, int forceData, TileEntity* forceEntity) // 4J added forceData, forceEntity param +{ + int data = level->getData(x, y, z); + bool pressed = getSignalForData(data) > 0; // 0 is Redstone::SIGNAL_NONE + float o = 1 / 16.0f; + + if (pressed) + { + setShape(o, 0, o, 1 - o, 0.5f / 16.0f, 1 - o); + } + else + { + setShape(o, 0, o, 1 - o, 1 / 16.0f, 1 - o); + } +} + + +void BasePressurePlateTile_SPU::updateDefaultShape() +{ + float x = 8 / 16.0f; + float y = 2 / 16.0f; + float z = 8 / 16.0f; + setShape(0.5f - x, 0.5f - y, 0.5f - z, 0.5f + x, 0.5f + y, 0.5f + z); +} + diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BasePressurePlateTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BasePressurePlateTile_SPU.h new file mode 100644 index 00000000..a631d474 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BasePressurePlateTile_SPU.h @@ -0,0 +1,16 @@ +#pragma once +#include "Tile_SPU.h" + + +class BasePressurePlateTile_SPU : public Tile_SPU +{ +public: + BasePressurePlateTile_SPU(int id) : Tile_SPU(id) {} + virtual bool isSolidRender(bool isServerLevel = false); + virtual bool blocksLight(); + + virtual void updateShape(ChunkRebuildData *level, int x, int y, int z, int forceData = -1, TileEntity* forceEntity = NULL); // 4J added forceData, forceEntity param + virtual void updateDefaultShape(); +protected: + virtual int getSignalForData(int data) = 0; +}; diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BaseRailTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BaseRailTile_SPU.h new file mode 100644 index 00000000..d7960600 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/BaseRailTile_SPU.h @@ -0,0 +1,31 @@ +#pragma once +#include "Tile_SPU.h" + +class BaseRailTile_SPU : public Tile_SPU +{ + +public: + static const int RAIL_DATA_BIT = 8; + static const int RAIL_DIRECTION_MASK = 7; + + BaseRailTile_SPU(int id) : Tile_SPU(id) {} + virtual bool isSolidRender(bool isServerLevel = false) { return false; } + virtual void updateShape(ChunkRebuildData *level, int x, int y, int z, int forceData = -1, TileEntity* forceEntity = NULL) // 4J added forceData, forceEntity param + { + int data = level->getData(x, y, z); + if (data >= 2 && data <= 5) + { + setShape(0, 0, 0, 1, 2 / 16.0f + 0.5f, 1); + } else + { + setShape(0, 0, 0, 1, 2 / 16.0f, 1); + } + } + virtual int getRenderShape() { return Tile_SPU::SHAPE_RAIL; } + bool isUsesDataBit() + { + if(id == goldenRail_Id || id == detectorRail_Id || id == activatorRail_Id) + return true; + return false; + } +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ButtonTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ButtonTile_SPU.h index 68d6da04..e80c6885 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ButtonTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ButtonTile_SPU.h @@ -13,7 +13,7 @@ public: if(id == Tile_SPU::button_wood_Id) return TileRef_SPU(wood_Id)->getTexture(Facing::UP); else - return TileRef_SPU(rock_Id)->getTexture(Facing::UP); + return TileRef_SPU(stone_Id)->getTexture(Facing::UP); } virtual bool blocksLight() { return false; } virtual bool isSolidRender(bool isServerLevel = false) { return false; } diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.cpp b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.cpp index 3e3565c3..ddabbd85 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.cpp +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.cpp @@ -39,7 +39,7 @@ static const int Level_MAX_BRIGHTNESS = 15; #include "TileRenderer_SPU.h" #include "Tile_SPU.h" #include "ChunkRebuildData.h" -TileData_SPU g_tileSPUData; +//TileData_SPU g_tileSPUData; static const int MAX_LEVEL_SIZE = 30000000; static const int MAX_BRIGHTNESS = 15; @@ -89,30 +89,30 @@ void ChunkRebuildData::disableUnseenTiles() // Establish whether this tile and its neighbours are all made of rock, dirt, unbreakable tiles, or have already // been determined to meet this criteria themselves and have a tile of 255 set. - if( !( ( tileID == Tile_SPU::rock_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; + if( !( ( tileID == Tile_SPU::stone_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; tileID = getTile(iX-1, iY, iZ); flags = getFlags(iX-1, iY, iZ); - if( !( ( tileID == Tile_SPU::rock_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; + if( !( ( tileID == Tile_SPU::stone_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; tileID = getTile(iX+1, iY, iZ); flags = getFlags(iX+1, iY, iZ); - if( !( ( tileID == Tile_SPU::rock_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; + if( !( ( tileID == Tile_SPU::stone_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; tileID = getTile(iX, iY, iZ-1); flags = getFlags(iX, iY, iZ-1); - if( !( ( tileID == Tile_SPU::rock_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; + if( !( ( tileID == Tile_SPU::stone_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; tileID = getTile(iX, iY, iZ+1); flags = getFlags(iX, iY, iZ+1); - if( !( ( tileID == Tile_SPU::rock_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; + if( !( ( tileID == Tile_SPU::stone_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; // Treat the bottom of the world differently - we shouldn't ever be able to look up at this, so consider tiles as invisible // if they are surrounded on sides other than the bottom if( iY > 0 ) { tileID = getTile(iX, iY-1, iZ); flags = getFlags(iX, iY-1, iZ); - if( !( ( tileID == Tile_SPU::rock_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; + if( !( ( tileID == Tile_SPU::stone_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; } tileID = getTile(iX, iY+1, iZ); flags = getFlags(iX, iY+1, iZ); - if( !( ( tileID == Tile_SPU::rock_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; + if( !( ( tileID == Tile_SPU::stone_Id ) || ( tileID == Tile_SPU::dirt_Id ) || ( tileID == Tile_SPU::unbreakable_Id ) || ( flags & e_flag_NoRender) ) ) continue; // This tile is surrounded. Flag it as not requiring to be rendered by setting its id to 255. setFlag(iX, iY, iZ, e_flag_NoRender); @@ -157,7 +157,7 @@ void ChunkRebuildData::buildMaterials() buildMaterial(Material_SPU::plant_Id, Material::plant); buildMaterial(Material_SPU::replaceable_plant_Id, Material::replaceable_plant); buildMaterial(Material_SPU::sponge_Id, Material::sponge); - buildMaterial(Material_SPU::cloth_Id, Material::cloth); + buildMaterial(Material_SPU::wool_Id, Material::cloth); buildMaterial(Material_SPU::fire_Id, Material::fire); buildMaterial(Material_SPU::sand_Id, Material::sand); buildMaterial(Material_SPU::decoration_Id, Material::decoration); @@ -195,7 +195,7 @@ int ChunkRebuildData::getMaterialID(Tile* pTile) if(m == Material::plant) return Material_SPU::plant_Id; if(m == Material::replaceable_plant)return Material_SPU::replaceable_plant_Id; if(m == Material::sponge) return Material_SPU::sponge_Id; - if(m == Material::cloth) return Material_SPU::cloth_Id; + if(m == Material::cloth) return Material_SPU::wool_Id; if(m == Material::fire) return Material_SPU::fire_Id; if(m == Material::sand) return Material_SPU::sand_Id; if(m == Material::decoration) return Material_SPU::decoration_Id; @@ -341,9 +341,17 @@ void ChunkRebuildData::createTileData() setIconSPUFromIcon(&m_tileData.dispenserTile_iconFront, ((DispenserTile*)Tile::dispenser)->iconFront); setIconSPUFromIcon(&m_tileData.dispenserTile_iconFrontVertical, ((DispenserTile*)Tile::dispenser)->iconFrontVertical); + setIconSPUFromIcon(&m_tileData.dropperTile_iconFront, ((DropperTile*)Tile::dropper)->iconFront); + setIconSPUFromIcon(&m_tileData.dropperTile_iconFrontVertical, ((DropperTile*)Tile::dropper)->iconFrontVertical); + // RailTile setIconSPUFromIcon(&m_tileData.railTile_iconTurn, ((RailTile*)Tile::rail)->iconTurn); - setIconSPUFromIcon(&m_tileData.railTile_iconTurnGolden, ((RailTile*)Tile::goldenRail)->iconTurn); + + setIconSPUFromIcon(&m_tileData.poweredRailTile_icon, ((PoweredRailTile*)Tile::goldenRail)->icon); + setIconSPUFromIcon(&m_tileData.poweredRailTile_iconPowered, ((PoweredRailTile*)Tile::goldenRail)->iconPowered); + + setIconSPUFromIcon(&m_tileData.activatorRailTile_icon, ((PoweredRailTile*)Tile::activatorRail)->icon); + setIconSPUFromIcon(&m_tileData.activatorRailTile_iconPowered, ((PoweredRailTile*)Tile::activatorRail)->iconPowered); for(int i=0;i<2;i++) setIconSPUFromIcon(&m_tileData.detectorRailTile_icons[i], ((DetectorRailTile*)Tile::detectorRail)->icons[i]); @@ -413,8 +421,12 @@ void ChunkRebuildData::createTileData() setIconSPUFromIcon(&m_tileData.stoneSlab_iconSide, ((StoneSlabTile*)(Tile::stoneSlab))->iconSide); + //ColoredTile for(int i=0;i<16;i++) - setIconSPUFromIcon(&m_tileData.clothTile_icons[i], ((ColoredTile*)Tile::wool)->icons[i]); + setIconSPUFromIcon(&m_tileData.woolTile_icons[i], ((ColoredTile*)Tile::wool)->icons[i]); + + for(int i=0;i<16;i++) + setIconSPUFromIcon(&m_tileData.clayHardened_colored_icons[i], ((ColoredTile*)Tile::clayHardened_colored)->icons[i]); // CarrotTile for(int i=0;i<4;i++) @@ -438,6 +450,13 @@ void ChunkRebuildData::createTileData() setIconSPUFromIcon(&m_tileData.quartzBlock_iconTop, ((QuartzBlockTile*)Tile::quartzBlock)->iconTop); setIconSPUFromIcon(&m_tileData.quartzBlock_iconBottom, ((QuartzBlockTile*)Tile::quartzBlock)->iconBottom); + // HayBlockTile + setIconSPUFromIcon(&m_tileData.hayBlockTile_iconTop, ((HayBlockTile*)Tile::hayBlock)->iconTop); + setIconSPUFromIcon(&m_tileData.hayBlockTile_icon, ((HayBlockTile*)Tile::hayBlock)->icon); + + // DaylightDetectorTile + for(int i=0;i<1;i++) + setIconSPUFromIcon(&m_tileData.daylightDetector_icons[i], ((DaylightDetectorTile*)Tile::daylightDetector)->icons[i]); } // extern int g_lastHitBlockX; diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.h index ca8fa101..f257d444 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkRebuildData.h @@ -59,7 +59,7 @@ public: int m_lastHitBlockX; int m_lastHitBlockY; int m_lastHitBlockZ; - unsigned int m_pad[5];// padding to 16 byte alignment + unsigned int m_pad[3];// padding to 16 byte alignment int getTileIdx(int x, int y, int z) { return (( x - m_x0 )*sc_size*sc_size) + (( y - m_y0 )*sc_size) + ( z - m_z0 ); } diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj index 2d024f54..e574f7dd 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj @@ -115,6 +115,7 @@ + @@ -126,7 +127,6 @@ - diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj.filters b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj.filters index 779f17ba..ddc88af9 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj.filters +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ChunkUpdate.spu.vcxproj.filters @@ -142,9 +142,6 @@ Source Files - - Source Files - Source Files @@ -166,5 +163,8 @@ Source Files + + Source Files + \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ClothTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ClothTile_SPU.h deleted file mode 100644 index fb23dae9..00000000 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ClothTile_SPU.h +++ /dev/null @@ -1,11 +0,0 @@ -#pragma once -#include "Tile_SPU.h" - -class ClothTile_SPU : public Tile_SPU -{ -public: - ClothTile_SPU(int id) : Tile_SPU(id) {} - virtual Icon_SPU *getTexture(int face, int data) { return &ms_pTileData->clothTile_icons[data]; } - - -}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ColoredClay_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ColoredClay_SPU.h new file mode 100644 index 00000000..b5a094d2 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/ColoredClay_SPU.h @@ -0,0 +1,11 @@ +#pragma once +#include "Tile_SPU.h" + +class ColoredClay_SPU : public Tile_SPU +{ +public: + ColoredClay_SPU(int id) : Tile_SPU(id) {} + virtual Icon_SPU *getTexture(int face, int data) { return &ms_pTileData->clayHardened_colored_icons[data]; } + + +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DaylightDetectorTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DaylightDetectorTile_SPU.h new file mode 100644 index 00000000..048872da --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DaylightDetectorTile_SPU.h @@ -0,0 +1,21 @@ +#pragma once +#include "EntityTile_SPU.h" + +class DaylightDetectorTile_SPU : public EntityTile_SPU +{ +public: + DaylightDetectorTile_SPU(int id) : EntityTile_SPU(id) {} + + Icon_SPU *getTexture(int face, int data) { + if (face == Facing::UP) + { + return &ms_pTileData->daylightDetector_icons[0]; + } + return &ms_pTileData->daylightDetector_icons[1]; + }; + + virtual bool isSolidRender(bool isServerLevel = false) { return false; } + + virtual void updateDefaultShape() { setShape(0, 0, 0, 1, 6.0f / 16.0f, 1); }; + virtual void updateShape() { setShape(0, 0, 0, 1, 6.0f / 16.0f, 1); }; +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DetectorRailTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DetectorRailTile_SPU.h index 8e33ed38..3ccaa5d9 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DetectorRailTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DetectorRailTile_SPU.h @@ -2,10 +2,10 @@ #include "RailTile_SPU.h" -class DetectorRailTile_SPU : public RailTile_SPU +class DetectorRailTile_SPU : public BaseRailTile_SPU { public: - DetectorRailTile_SPU(int id) : RailTile_SPU(id) {} + DetectorRailTile_SPU(int id) : BaseRailTile_SPU(id) {} Icon_SPU *getTexture(int face, int data) { if ((data & RAIL_DATA_BIT) != 0) diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DiodeTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DiodeTile_SPU.h index 6c0746db..eba04808 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DiodeTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DiodeTile_SPU.h @@ -21,9 +21,9 @@ public: { if (id==diode_on_Id) { - return TileRef_SPU(notGate_on_Id)->getTexture(face); + return TileRef_SPU(redstoneTorch_on_Id)->getTexture(face); } - return TileRef_SPU(notGate_off_Id)->getTexture(face); + return TileRef_SPU(redstoneTorch_off_Id)->getTexture(face); } if (face == Facing::UP) { diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DropperTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DropperTile_SPU.h new file mode 100644 index 00000000..9ec39e7d --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/DropperTile_SPU.h @@ -0,0 +1,37 @@ +#pragma once +#include "DispenserTile_SPU.h" +#include "Facing_SPU.h" + + +class DropperTile_SPU : public DispenserTile_SPU +{ +public: + DropperTile_SPU(int id) : DispenserTile_SPU(id) {} + +public: + virtual Icon_SPU *getTexture(int face, int data) + { + int dir = data & FACING_MASK; + if (face == dir) + { + if (dir == Facing::UP || dir == Facing::DOWN) + { + return &ms_pTileData->dropperTile_iconFrontVertical; + } + else + { + return &ms_pTileData->dropperTile_iconFront; + } + } + + if (dir == Facing::UP || dir == Facing::DOWN) + { + return &ms_pTileData->dispenserTile_iconTop; + } + else if (face == Facing::UP || face == Facing::DOWN) + { + return &ms_pTileData->dispenserTile_iconTop; + } + return icon(); + } +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/FireTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/FireTile_SPU.h index f3478796..c613a2f9 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/FireTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/FireTile_SPU.h @@ -33,7 +33,7 @@ public: case Tile_SPU::bookshelf_Id: case Tile_SPU::tnt_Id: case Tile_SPU::tallgrass_Id: - case Tile_SPU::cloth_Id: + case Tile_SPU::wool_Id: case Tile_SPU::vine_Id: return true; default: diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/HayBlockTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/HayBlockTile_SPU.h new file mode 100644 index 00000000..077f82d9 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/HayBlockTile_SPU.h @@ -0,0 +1,19 @@ +#pragma once + +#include "RotatedPillarTile_SPU.h" + +class HayBlockTile_SPU : public RotatedPillarTile_SPU +{ + friend class ChunkRebuildData; +public: + HayBlockTile_SPU(int id) : RotatedPillarTile_SPU(id) {} + +protected: + Icon_SPU *getTopTexture(int type) { + return &ms_pTileData->hayBlockTile_iconTop; + }; + + Icon_SPU *getTypeTexture(int type) { + return &ms_pTileData->hayBlockTile_icon; + }; +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/HugeMushroomTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/HugeMushroomTile_SPU.h index 805cb02c..c4afb486 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/HugeMushroomTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/HugeMushroomTile_SPU.h @@ -14,8 +14,8 @@ public: Icon_SPU *getTexture(int face, int data) { Icon_SPU* icons = ms_pTileData->hugeMushroom_icons; - int type = 0; // hugeMushroom1_Id - if(id == hugeMushroom2_Id) + int type = 0; // hugemushroom_brown_Id + if(id == hugeMushroom_red_Id) type = 1; // 123 // 456 10 diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Material_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Material_SPU.h index 5b0dedf9..bd0e156a 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Material_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Material_SPU.h @@ -19,7 +19,7 @@ public: static const int plant_Id = 9; static const int replaceable_plant_Id = 10; static const int sponge_Id = 11; - static const int cloth_Id = 12; + static const int wool_Id = 12; static const int fire_Id = 13; static const int sand_Id = 14; static const int decoration_Id = 15; diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PoweredRailTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PoweredRailTile_SPU.h new file mode 100644 index 00000000..44646193 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PoweredRailTile_SPU.h @@ -0,0 +1,21 @@ +#pragma once + +#include "BaseRailTile_SPU.h" + +class PoweredRailTile_SPU : public BaseRailTile_SPU +{ +public: + PoweredRailTile_SPU(int id) : BaseRailTile_SPU(id) {} + + Icon_SPU *getTexture(int face, int data) + { + if ((data & RAIL_DATA_BIT) == 0) + { + return &ms_pTileData->poweredRailTile_icon; + } + else + { + return &ms_pTileData->poweredRailTile_iconPowered; + } + }; +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PressurePlateTile_SPU.cpp b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PressurePlateTile_SPU.cpp deleted file mode 100644 index b6b04c10..00000000 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PressurePlateTile_SPU.cpp +++ /dev/null @@ -1,41 +0,0 @@ -#include "stdafx.h" -#include "PressurePlateTile_SPU.h" -#include "ChunkRebuildData.h" - - -bool PressurePlateTile_SPU::isSolidRender(bool isServerLevel) -{ - return false; -} - -bool PressurePlateTile_SPU::blocksLight() -{ - return false; -} - - -void PressurePlateTile_SPU::updateShape(ChunkRebuildData *level, int x, int y, int z, int forceData, TileEntity* forceEntity) // 4J added forceData, forceEntity param -{ - bool pressed = level->getData(x, y, z) == 1; - - float o = 1 / 16.0f; - if (pressed) - { - this->setShape(o, 0, o, 1 - o, 0.5f / 16.0f, 1 - o); - } - else - { - setShape(o, 0, o, 1 - o, 1 / 16.0f, 1 - o); - } -} - - -void PressurePlateTile_SPU::updateDefaultShape() -{ - float x = 8 / 16.0f; - float y = 2 / 16.0f; - float z = 8 / 16.0f; - setShape(0.5f - x, 0.5f - y, 0.5f - z, 0.5f + x, 0.5f + y, 0.5f + z); - -} - diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PressurePlateTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PressurePlateTile_SPU.h index 6673bb61..24ee42f3 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PressurePlateTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/PressurePlateTile_SPU.h @@ -1,21 +1,23 @@ #pragma once -#include "Tile_SPU.h" +#include "BasePressurePlateTile_SPU.h" - -class PressurePlateTile_SPU : public Tile_SPU +class PressurePlateTile_SPU : public BasePressurePlateTile_SPU { public: - enum Sensitivity + enum Sensitivity { - everything, - mobs, - players - }; + everything, mobs, players + }; - PressurePlateTile_SPU(int id) : Tile_SPU(id) {} - virtual bool isSolidRender(bool isServerLevel = false); - virtual bool blocksLight(); +private: + Sensitivity sensitivity; - virtual void updateShape(ChunkRebuildData *level, int x, int y, int z, int forceData = -1, TileEntity* forceEntity = NULL); // 4J added forceData, forceEntity param - virtual void updateDefaultShape(); -}; +public: + PressurePlateTile_SPU(int id) : BasePressurePlateTile_SPU(id) {} + +protected: + virtual int getSignalForData(int data) { + // 15 is Redstone::SIGNAL_MAX + return data == 1 ? 15 : 0; + }; +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/RailTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/RailTile_SPU.h index 5ac91299..73b4e294 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/RailTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/RailTile_SPU.h @@ -1,58 +1,21 @@ #pragma once -#include "Tile_SPU.h" -class RailTile_SPU : public Tile_SPU +#include "BaseRailTile_SPU.h" + +class RailTile_SPU : public BaseRailTile_SPU { - public: - static const int RAIL_DATA_BIT = 8; - static const int RAIL_DIRECTION_MASK = 7; + RailTile_SPU(int id) : BaseRailTile_SPU(id) {} - RailTile_SPU(int id) : Tile_SPU(id) {} - virtual bool isSolidRender(bool isServerLevel = false) { return false; } - virtual void updateShape(ChunkRebuildData *level, int x, int y, int z, int forceData = -1, TileEntity* forceEntity = NULL) // 4J added forceData, forceEntity param + Icon_SPU *getTexture(int face, int data) { - int data = level->getData(x, y, z); - if (data >= 2 && data <= 5) + if (data >= 6) { - setShape(0, 0, 0, 1, 2 / 16.0f + 0.5f, 1); - } else - { - setShape(0, 0, 0, 1, 2 / 16.0f, 1); + return &ms_pTileData->railTile_iconTurn; } - } - virtual Icon_SPU *getTexture(int face, int data) - { - bool usesDataBit = false; - Icon_SPU* iconTurn = &ms_pTileData->railTile_iconTurn; - if(id == goldenRail_Id) + else { - usesDataBit = true; - iconTurn = &ms_pTileData->railTile_iconTurnGolden; + return icon(); } - - if (usesDataBit) - { -// if (id == Tile::goldenRail_Id) -// { - if ((data & RAIL_DATA_BIT) == 0) - { - return icon(); - } - else - { - return iconTurn; // Actually the powered rail on version - } -// } - } else if (data >= 6) return iconTurn; - return icon(); - - } - virtual int getRenderShape() { return Tile_SPU::SHAPE_RAIL; } - bool isUsesDataBit() - { - if(id == goldenRail_Id || id == detectorRail_Id) - return true; - return false; - } + }; }; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/RotatedPillarTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/RotatedPillarTile_SPU.h new file mode 100644 index 00000000..4ae95305 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/RotatedPillarTile_SPU.h @@ -0,0 +1,45 @@ +#pragma once + +#include "Tile_SPU.h" +#include "Facing_SPU.h" + +class RotatedPillarTile_SPU : public Tile_SPU +{ +public: + static const int MASK_TYPE = 0x3; + static const int MASK_FACING = 0xC; + static const int FACING_Y = 0 << 2; + static const int FACING_X = 1 << 2; + static const int FACING_Z = 2 << 2; + +protected: + RotatedPillarTile_SPU(int id) : Tile_SPU(id) {} + +public: + virtual int getRenderShape() { return Tile_SPU::SHAPE_TREE; }; + + virtual Icon_SPU *getTexture(int face, int data) { + int dir = data & MASK_FACING; + int type = data & MASK_TYPE; + + if (dir == FACING_Y && (face == Facing::UP || face == Facing::DOWN)) + { + return getTopTexture(type); + } + else if (dir == FACING_X && (face == Facing::EAST || face == Facing::WEST)) + { + return getTopTexture(type); + } + else if (dir == FACING_Z && (face == Facing::NORTH || face == Facing::SOUTH)) + { + return getTopTexture(type); + } + + return getTypeTexture(type); + }; + +protected: + virtual Icon_SPU *getTypeTexture(int type) = 0; + + virtual Icon_SPU *getTopTexture(int type) = 0; +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h index d6bcf7ff..8d4d5a56 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h @@ -43,5 +43,5 @@ public: } } - Icon_SPU *getTexture(int face, int data) { return TileRef_SPU(hellSand_Id)->getTexture(face); } + Icon_SPU *getTexture(int face, int data) { return TileRef_SPU(netherRack_Id)->getTexture(face); } }; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StairTile_SPU.cpp b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StairTile_SPU.cpp index 70b08c25..bd25d86d 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StairTile_SPU.cpp +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StairTile_SPU.cpp @@ -39,7 +39,7 @@ bool StairTile_SPU::isStairs(int id) case Tile_SPU::stairs_wood_Id: case Tile_SPU::stairs_stone_Id: case Tile_SPU::stairs_bricks_Id: - case Tile_SPU::stairs_stoneBrickSmooth_Id: + case Tile_SPU::stairs_stoneBrick_Id: case Tile_SPU::stairs_netherBricks_Id: case Tile_SPU::stairs_sandstone_Id: case Tile_SPU::stairs_sprucewood_Id: diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneMonsterTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneMonsterTile_SPU.h index c50169f2..0796d2ca 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneMonsterTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneMonsterTile_SPU.h @@ -21,12 +21,12 @@ public: { if (data == HOST_COBBLE) { - return TileRef_SPU(stoneBrick_Id)->getTexture(face); + return TileRef_SPU(cobblestone_Id)->getTexture(face); } if (data == HOST_STONEBRICK) { - return TileRef_SPU(stoneBrickSmooth_Id)->getTexture(face); + return TileRef_SPU(stoneBrick_Id)->getTexture(face); } - return TileRef_SPU(rock_Id)->getTexture(face); + return TileRef_SPU(stone_Id)->getTexture(face); } }; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneSlabTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneSlabTile_SPU.h index 65a365f8..c3d01215 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneSlabTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/StoneSlabTile_SPU.h @@ -41,11 +41,11 @@ public: case WOOD_SLAB: return TileRef_SPU(wood_Id)->getTexture(face); //Tile::wood->getTexture(face); case COBBLESTONE_SLAB: - return TileRef_SPU(stoneBrick_Id)->getTexture(face); //Tile::stoneBrick->getTexture(face); + return TileRef_SPU(cobblestone_Id)->getTexture(face); //Tile::stoneBrick->getTexture(face); case BRICK_SLAB: return TileRef_SPU(redBrick_Id)->getTexture(face); //Tile::redBrick->getTexture(face); case SMOOTHBRICK_SLAB: - return TileRef_SPU(stoneBrickSmooth_Id)->getTexture(face); //Tile::stoneBrickSmooth->getTexture(face, SmoothStoneBrickTile::TYPE_DEFAULT); + return TileRef_SPU(stoneBrick_Id)->getTexture(face); //Tile::stoneBrickSmooth->getTexture(face, SmoothStoneBrickTile::TYPE_DEFAULT); case NETHERBRICK_SLAB: return TileRef_SPU(netherBrick_Id)->getTexture(Facing::UP); //Tile::netherBrick->getTexture(Facing::UP); case QUARTZ_SLAB: diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.cpp b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.cpp index 72a59674..d00f15e9 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.cpp +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.cpp @@ -12,6 +12,7 @@ #include "DirtTile_SPU.h" #include "DoorTile_SPU.h" #include "PressurePlateTile_SPU.h" +#include "WeightedPressurePlateTile_SPU.h" #include "FarmTile_SPU.h" #include "Bush_SPU.h" #include "TallGrass_SPU.h" @@ -32,7 +33,10 @@ #include "IceTile_SPU.h" #include "PortalTile_SPU.h" #include "DispenserTile_SPU.h" +#include "DropperTile_SPU.h" #include "RailTile_SPU.h" +#include "PoweredRailTile_SPU.h" +#include "ActivatorRailTile_SPU.h" #include "DetectorRailTile_SPU.h" #include "TntTile_SPU.h" #include "BookshelfTile_SPU.h" @@ -71,7 +75,7 @@ #include "EggTile_SPU.h" #include "CocoaTile_SPU.h" #include "RedlightTile_SPU.h" -#include "ClothTile_SPU.h" +#include "WoolTile_SPU.h" #include "SkullTile_SPU.h" #include "MobSpawnerTile_SPU.h" #include "EnderChestTile_SPU.h" @@ -83,6 +87,9 @@ #include "PotatoTile_SPU.h" #include "QuartzBlockTile_SPU.h" #include "WoolCarpetTile_SPU.h" +#include "ColoredClay_SPU.h" +#include "HayBlockTile_SPU.h" +#include "DaylightDetectorTile_SPU.h" #ifdef SN_TARGET_PS3_SPU #include "..\Common\spu_assert.h" @@ -514,7 +521,7 @@ void Tile_SPU::updateDefaultShape() // void Tile_SPU::playerDestroy(Level *level, shared_ptr player, int x, int y, int z, int data) // { // // 4J Stu - Special case - only record a crop destroy if is fully grown -// if(id==Tile_SPU::crops_Id) +// if(id==Tile_SPU::wheat_Id) // { // if( Tile_SPU::crops->getResource(data, NULL, 0) > 0 ) // player->awardStat(Stats::blocksMined[id], 1); @@ -681,6 +688,7 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(woodSlabHalf_Id, WoodSlabTile_SPU); CREATE_TILE_TYPE(chest_Id, ChestTile_SPU); + CREATE_TILE_TYPE(chest_trap_Id, ChestTile_SPU); CREATE_TILE_TYPE(ironFence_Id, ThinFenceTile_SPU); CREATE_TILE_TYPE(thinGlass_Id, ThinFenceTile_SPU); @@ -691,7 +699,7 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(stairs_wood_Id, StairTile_SPU); CREATE_TILE_TYPE(stairs_stone_Id, StairTile_SPU); CREATE_TILE_TYPE(stairs_bricks_Id, StairTile_SPU); - CREATE_TILE_TYPE(stairs_stoneBrickSmooth_Id, StairTile_SPU); + CREATE_TILE_TYPE(stairs_stoneBrick_Id, StairTile_SPU); CREATE_TILE_TYPE(stairs_netherBricks_Id, StairTile_SPU); CREATE_TILE_TYPE(stairs_sandstone_Id, StairTile_SPU); CREATE_TILE_TYPE(stairs_sprucewood_Id, StairTile_SPU); @@ -706,6 +714,9 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(pressurePlate_stone_Id, PressurePlateTile_SPU); CREATE_TILE_TYPE(pressurePlate_wood_Id, PressurePlateTile_SPU); + CREATE_TILE_TYPE(weightedPlate_light_Id, WeightedPressurePlateTile_SPU); + CREATE_TILE_TYPE(weightedPlate_heavy_Id, WeightedPressurePlateTile_SPU); + CREATE_TILE_TYPE(farmland_Id, FarmTile_SPU); CREATE_TILE_TYPE(flower_Id, Bush_SPU); @@ -722,19 +733,19 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(leaves_Id, LeafTile_SPU); - CREATE_TILE_TYPE(crops_Id, CropTile_SPU); + CREATE_TILE_TYPE(wheat_Id, CropTile_SPU); CREATE_TILE_TYPE(reeds_Id, ReedTile_SPU); CREATE_TILE_TYPE(torch_Id, TorchTile_SPU); - CREATE_TILE_TYPE(notGate_off_Id, TorchTile_SPU); // TorchTile->NotGateTile - CREATE_TILE_TYPE(notGate_on_Id, TorchTile_SPU); // TorchTile->NotGateTile + CREATE_TILE_TYPE(redstoneTorch_off_Id, TorchTile_SPU); // TorchTile->NotGateTile + CREATE_TILE_TYPE(redstoneTorch_on_Id, TorchTile_SPU); // TorchTile->NotGateTile - CREATE_TILE_TYPE(mushroom1_Id, Mushroom_SPU); - CREATE_TILE_TYPE(mushroom2_Id, Mushroom_SPU); + CREATE_TILE_TYPE(mushroom_brown_Id, Mushroom_SPU); + CREATE_TILE_TYPE(mushroom_red_Id, Mushroom_SPU); CREATE_TILE_TYPE(mobSpawner_Id, MobSpawnerTile_SPU); - CREATE_TILE_TYPE(musicBlock_Id, EntityTile_SPU); // MusicTile->EntityTile + CREATE_TILE_TYPE(noteblock_Id, EntityTile_SPU); // MusicTile->EntityTile CREATE_TILE_TYPE(furnace_Id, FurnaceTile_SPU); CREATE_TILE_TYPE(furnace_lit_Id, FurnaceTile_SPU); @@ -757,9 +768,12 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(portalTile_Id, PortalTile_SPU); CREATE_TILE_TYPE(dispenser_Id, DispenserTile_SPU); + CREATE_TILE_TYPE(dropper_Id, DropperTile_SPU); CREATE_TILE_TYPE(rail_Id, RailTile_SPU); - CREATE_TILE_TYPE(goldenRail_Id, RailTile_SPU); + + CREATE_TILE_TYPE(goldenRail_Id, PoweredRailTile_SPU); + CREATE_TILE_TYPE(activatorRail_Id, ActivatorRailTile_SPU); CREATE_TILE_TYPE(detectorRail_Id, DetectorRailTile_SPU); @@ -781,7 +795,7 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(cactus_Id, CactusTile_SPU); - CREATE_TILE_TYPE(recordPlayer_Id, RecordPlayerTile_SPU); + CREATE_TILE_TYPE(jukebox_Id, RecordPlayerTile_SPU); CREATE_TILE_TYPE(pumpkin_Id, PumpkinTile_SPU); CREATE_TILE_TYPE(litPumpkin_Id, PumpkinTile_SPU); @@ -792,10 +806,10 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(monsterStoneEgg_Id, StoneMonsterTile_SPU); - CREATE_TILE_TYPE(stoneBrickSmooth_Id, SmoothStoneBrickTile_SPU); + CREATE_TILE_TYPE(stoneBrick_Id, SmoothStoneBrickTile_SPU); - CREATE_TILE_TYPE(hugeMushroom1_Id, HugeMushroomTile_SPU); - CREATE_TILE_TYPE(hugeMushroom2_Id, HugeMushroomTile_SPU); + CREATE_TILE_TYPE(hugeMushroom_brown_Id, HugeMushroomTile_SPU); + CREATE_TILE_TYPE(hugeMushroom_red_Id, HugeMushroomTile_SPU); CREATE_TILE_TYPE(melon_Id, MelonTile_SPU); @@ -847,16 +861,18 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(skull_Id, SkullTile_SPU); - // these tile types don't have any additional code that we need. - CREATE_TILE_TYPE(stoneBrick_Id, Tile_SPU); // Tile + // these tile types don't have any additional code that we need. + CREATE_TILE_TYPE(cobblestone_Id, Tile_SPU); // Tile CREATE_TILE_TYPE(lapisBlock_Id, Tile_SPU); CREATE_TILE_TYPE(redBrick_Id, Tile_SPU); - CREATE_TILE_TYPE(mossStone_Id, Tile_SPU); + CREATE_TILE_TYPE(mossyCobblestone_Id, Tile_SPU); CREATE_TILE_TYPE(netherBrick_Id, Tile_SPU); - CREATE_TILE_TYPE(whiteStone_Id, Tile_SPU); + CREATE_TILE_TYPE(endStone_Id, Tile_SPU); CREATE_TILE_TYPE(unbreakable_Id, Tile_SPU); CREATE_TILE_TYPE(sponge_Id, Tile_SPU); - CREATE_TILE_TYPE(rock_Id, Tile_SPU); // StoneTile + CREATE_TILE_TYPE(coalBlock_Id, Tile_SPU); + CREATE_TILE_TYPE(redstoneBlock_Id, Tile_SPU); + CREATE_TILE_TYPE(stone_Id, Tile_SPU); // StoneTile CREATE_TILE_TYPE(obsidian_Id, Tile_SPU); // StoneTile->ObsidianTile CREATE_TILE_TYPE(sand_Id, Tile_SPU); // HeavyTile CREATE_TILE_TYPE(gravel_Id, Tile_SPU); // GravelTile @@ -872,12 +888,15 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(ironBlock_Id, Tile_SPU); // MetalTile CREATE_TILE_TYPE(diamondBlock_Id, Tile_SPU); // MetalTile CREATE_TILE_TYPE(snow_Id, Tile_SPU); // SnowTile - CREATE_TILE_TYPE(hellRock_Id, Tile_SPU); // HellStoneTile - CREATE_TILE_TYPE(hellSand_Id, Tile_SPU); // HellSandTile - CREATE_TILE_TYPE(lightGem_Id, Tile_SPU); // LightGemTile - CREATE_TILE_TYPE(aprilFoolsJoke_Id, Tile_SPU); // LockedChestTile + CREATE_TILE_TYPE(netherRack_Id, Tile_SPU); // NetherrackTile + CREATE_TILE_TYPE(soulsand_Id, Tile_SPU); // SoulSandTile + CREATE_TILE_TYPE(glowstone_Id, Tile_SPU); // Glowstonetile + // got replaced by stained_glass_Id, rest in peace locked chest + //CREATE_TILE_TYPE(aprilFoolsJoke_Id , Tile_SPU); // LockedChestTile + CREATE_TILE_TYPE(clayHardened_Id, Tile_SPU); // ColoredTile - CREATE_TILE_TYPE(cloth_Id, ClothTile_SPU); // wool + CREATE_TILE_TYPE(wool_Id, WoolTile_SPU); // wool + CREATE_TILE_TYPE(clayHardened_colored_Id, ColoredClay_SPU); // wool CREATE_TILE_TYPE(emeraldOre_Id, Tile_SPU); // OreTile @@ -895,5 +914,6 @@ void Tile_SPU::initTilePointers() CREATE_TILE_TYPE(quartzBlock_Id, QuartzBlockTile_SPU); CREATE_TILE_TYPE(stairs_quartz_Id, StairTile_SPU); CREATE_TILE_TYPE(woolCarpet_Id, WoolCarpetTile_SPU); - + CREATE_TILE_TYPE(hayBlock_Id, HayBlockTile_SPU); + CREATE_TILE_TYPE(daylightDetector_Id, DaylightDetectorTile_SPU); }; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.h index 5b80a0fa..cca7cd5d 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.h @@ -129,8 +129,14 @@ public: Icon_SPU dispenserTile_iconFront; Icon_SPU dispenserTile_iconFrontVertical; + Icon_SPU dropperTile_iconFront; + Icon_SPU dropperTile_iconFrontVertical; + Icon_SPU railTile_iconTurn; - Icon_SPU railTile_iconTurnGolden; + Icon_SPU poweredRailTile_icon; + Icon_SPU poweredRailTile_iconPowered; + Icon_SPU activatorRailTile_icon; + Icon_SPU activatorRailTile_iconPowered; Icon_SPU detectorRailTile_icons[2]; @@ -178,7 +184,7 @@ public: Icon_SPU redStoneDust_iconCrossOver; Icon_SPU redStoneDust_iconLineOver; - Icon_SPU clothTile_icons[16]; + Icon_SPU woolTile_icons[16]; Icon_SPU stoneSlab_iconSide; @@ -193,6 +199,12 @@ public: Icon_SPU quartzBlock_iconTop; Icon_SPU quartzBlock_iconBottom; + Icon_SPU clayHardened_colored_icons[16]; + Icon_SPU hayBlockTile_icon; + Icon_SPU hayBlockTile_iconTop; + + Icon_SPU daylightDetector_icons[2]; + int anvilPart; // normally part of the AnvilTile class @@ -296,19 +308,24 @@ public: static const int SHAPE_FLOWER_POT = 33; static const int SHAPE_BEACON = 34; static const int SHAPE_ANVIL = 35; + static const int SHAPE_HOPPER = 38; static const int SHAPE_QUARTZ = 39; + static const int SHAPE_THIN_PANE = 40; + + static const int SHAPE_COUNT = 41; // 4J - this array of simple constants made so the compiler can optimise references to Ids that were previous of the form Tile_SPU::->id, and are now simply Tile_SPU::whatever_Id - static const int rock_Id = 1; + static const int stone_Id = 1; static const int grass_Id = 2; static const int dirt_Id = 3; - static const int stoneBrick_Id = 4; + static const int cobblestone_Id = 4; static const int wood_Id = 5; static const int sapling_Id = 6; static const int unbreakable_Id = 7; static const int water_Id = 8; static const int calmWater_Id = 9; static const int lava_Id = 10; + static const int calmLava_Id = 11; static const int sand_Id = 12; static const int gravel_Id = 13; @@ -319,26 +336,29 @@ public: static const int leaves_Id = 18; static const int sponge_Id = 19; static const int glass_Id = 20; + static const int lapisOre_Id = 21; static const int lapisBlock_Id = 22; static const int dispenser_Id = 23; static const int sandStone_Id = 24; - static const int musicBlock_Id = 25; + static const int noteblock_Id = 25; static const int bed_Id = 26; static const int goldenRail_Id = 27; static const int detectorRail_Id = 28; static const int pistonStickyBase_Id = 29; static const int web_Id = 30; + static const int tallgrass_Id = 31; static const int deadBush_Id = 32; static const int pistonBase_Id = 33; static const int pistonExtensionPiece_Id = 34; - static const int cloth_Id = 35; + static const int wool_Id = 35; static const int pistonMovingPiece_Id = 36; static const int flower_Id = 37; static const int rose_Id = 38; - static const int mushroom1_Id = 39; - static const int mushroom2_Id = 40; + static const int mushroom_brown_Id = 39; + static const int mushroom_red_Id = 40; + static const int goldBlock_Id = 41; static const int ironBlock_Id = 42; static const int stoneSlab_Id = 43; @@ -346,9 +366,10 @@ public: static const int redBrick_Id = 45; static const int tnt_Id = 46; static const int bookshelf_Id = 47; - static const int mossStone_Id = 48; + static const int mossyCobblestone_Id = 48; static const int obsidian_Id = 49; static const int torch_Id = 50; + static const int fire_Id = 51; static const int mobSpawner_Id = 52; static const int stairs_wood_Id = 53; @@ -357,8 +378,9 @@ public: static const int diamondOre_Id = 56; static const int diamondBlock_Id = 57; static const int workBench_Id = 58; - static const int crops_Id = 59; + static const int wheat_Id = 59; static const int farmland_Id = 60; + static const int furnace_Id = 61; static const int furnace_lit_Id = 62; static const int sign_Id = 63; @@ -369,37 +391,40 @@ public: static const int wallSign_Id = 68; static const int lever_Id = 69; static const int pressurePlate_stone_Id = 70; + static const int door_iron_Id = 71; static const int pressurePlate_wood_Id = 72; static const int redStoneOre_Id = 73; static const int redStoneOre_lit_Id = 74; - static const int notGate_off_Id = 75; - static const int notGate_on_Id = 76; + static const int redstoneTorch_off_Id = 75; + static const int redstoneTorch_on_Id = 76; static const int button_stone_Id = 77; static const int topSnow_Id = 78; static const int ice_Id = 79; static const int snow_Id = 80; + static const int cactus_Id = 81; static const int clay_Id = 82; static const int reeds_Id = 83; - static const int recordPlayer_Id = 84; + static const int jukebox_Id = 84; static const int fence_Id = 85; static const int pumpkin_Id = 86; - static const int hellRock_Id = 87; - static const int hellSand_Id = 88; - static const int lightGem_Id = 89; + static const int netherRack_Id = 87; + static const int soulsand_Id = 88; + static const int glowstone_Id = 89; static const int portalTile_Id = 90; + static const int litPumpkin_Id = 91; static const int cake_Id = 92; static const int diode_off_Id = 93; static const int diode_on_Id = 94; - static const int aprilFoolsJoke_Id = 95; + static const int stained_glass_Id = 95; static const int trapdoor_Id = 96; - static const int monsterStoneEgg_Id = 97; - static const int stoneBrickSmooth_Id = 98; - static const int hugeMushroom1_Id = 99; - static const int hugeMushroom2_Id = 100; + static const int stoneBrick_Id = 98; + static const int hugeMushroom_brown_Id = 99; + static const int hugeMushroom_red_Id = 100; + static const int ironFence_Id = 101; static const int thinGlass_Id = 102; static const int melon_Id = 103; @@ -408,9 +433,9 @@ public: static const int vine_Id = 106; static const int fenceGate_Id = 107; static const int stairs_bricks_Id = 108; - static const int stairs_stoneBrickSmooth_Id = 109; - + static const int stairs_stoneBrick_Id = 109; static const int mycel_Id = 110; + static const int waterLily_Id = 111; static const int netherBrick_Id = 112; static const int netherFence_Id = 113; @@ -421,36 +446,55 @@ public: static const int cauldron_Id = 118; static const int endPortalTile_Id = 119; static const int endPortalFrameTile_Id = 120; - static const int whiteStone_Id = 121; + + static const int endStone_Id = 121; static const int dragonEgg_Id = 122; static const int redstoneLight_Id = 123; static const int redstoneLight_lit_Id = 124; - - static const int woodSlab_Id = 125; static const int woodSlabHalf_Id = 126; static const int cocoa_Id = 127; static const int stairs_sandstone_Id = 128; - static const int stairs_sprucewood_Id = 134; - static const int stairs_birchwood_Id = 135; - static const int stairs_junglewood_Id = 136; static const int emeraldOre_Id = 129; static const int enderChest_Id = 130; + static const int tripWireSource_Id = 131; static const int tripWire_Id = 132; static const int emeraldBlock_Id = 133; - + static const int stairs_sprucewood_Id = 134; + static const int stairs_birchwood_Id = 135; + static const int stairs_junglewood_Id = 136; + static const int commandBlock_Id = 137; + static const int beacon_Id = 138; static const int cobbleWall_Id = 139; static const int flowerPot_Id = 140; + static const int carrots_Id = 141; static const int potatoes_Id = 142; - static const int anvil_Id = 145; static const int button_wood_Id = 143; static const int skull_Id = 144; + static const int anvil_Id = 145; + static const int chest_trap_Id = 146; + static const int weightedPlate_light_Id = 147; + static const int weightedPlate_heavy_Id = 148; + static const int comparator_off_Id = 149; + static const int comparator_on_Id = 150; + + static const int daylightDetector_Id = 151; + static const int redstoneBlock_Id = 152; static const int netherQuartz_Id = 153; + static const int hopper_Id = 154; static const int quartzBlock_Id = 155; static const int stairs_quartz_Id = 156; + static const int activatorRail_Id = 157; + static const int dropper_Id = 158; + static const int clayHardened_colored_Id = 159; + static const int stained_glass_pane_Id = 160; + + static const int hayBlock_Id = 170; static const int woolCarpet_Id = 171; + static const int clayHardened_Id = 172; + static const int coalBlock_Id = 173; static Tile_SPU m_tiles[256]; diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/TreeTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/TreeTile_SPU.h index f4e10429..7674177c 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/TreeTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/TreeTile_SPU.h @@ -1,10 +1,10 @@ #pragma once -#include "Tile_SPU.h" +#include "RotatedPillarTile_SPU.h" class Player; -class TreeTile_SPU : public Tile_SPU +class TreeTile_SPU : public RotatedPillarTile_SPU { public: static const int DARK_TRUNK = 1; @@ -19,29 +19,14 @@ public: static const int TREE_NAMES_LENGTH = 4; - TreeTile_SPU(int id) : Tile_SPU(id) {} - int getRenderShape() { return Tile_SPU::SHAPE_TREE; } - + TreeTile_SPU(int id) : RotatedPillarTile_SPU(id) {} public: - Icon_SPU *getTexture(int face, int data) - { - int dir = data & MASK_FACING; - int type = data & MASK_TYPE; - - if (dir == FACING_Y && (face == Facing::UP || face == Facing::DOWN)) - { - return &ms_pTileData->treeTile_icons_top[type]; - } - else if (dir == FACING_X && (face == Facing::EAST || face == Facing::WEST)) - { - return &ms_pTileData->treeTile_icons_top[type]; - } - else if (dir == FACING_Z && (face == Facing::NORTH || face == Facing::SOUTH)) - { - return &ms_pTileData->treeTile_icons_top[type]; - } - + Icon_SPU *getTypeTexture(int type) { return &ms_pTileData->treeTile_icons_side[type]; - } + }; + + Icon_SPU *getTopTexture(int type) { + return &ms_pTileData->treeTile_icons_top[type]; + }; }; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WallTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WallTile_SPU.h index a9489608..344407b3 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WallTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WallTile_SPU.h @@ -22,7 +22,7 @@ public: { if (data == TYPE_MOSSY) { - return TileRef_SPU(mossStone_Id)->getTexture(face); + return TileRef_SPU(mossyCobblestone_Id)->getTexture(face); } return TileRef_SPU(stoneBrick_Id)->getTexture(face); diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WeightedPressurePlateTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WeightedPressurePlateTile_SPU.h new file mode 100644 index 00000000..bf308f38 --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WeightedPressurePlateTile_SPU.h @@ -0,0 +1,22 @@ +#pragma once +#include "BasePressurePlateTile_SPU.h" + +class WeightedPressurePlateTile_SPU : public BasePressurePlateTile_SPU +{ +public: + enum Sensitivity + { + everything, mobs, players + }; + +private: + Sensitivity sensitivity; + +public: + WeightedPressurePlateTile_SPU(int id) : BasePressurePlateTile_SPU(id) {} + +protected: + virtual int getSignalForData(int data) { + return data; + }; +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WoolCarpetTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WoolCarpetTile_SPU.h index c86ea802..4e7123ac 100644 --- a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WoolCarpetTile_SPU.h +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WoolCarpetTile_SPU.h @@ -7,7 +7,7 @@ class WoolCarpetTile_SPU : public Tile_SPU public: WoolCarpetTile_SPU(int id) : Tile_SPU(id) {} - Icon_SPU *getTexture(int face, int data) { return TileRef_SPU(cloth_Id)->getTexture(face, data); } + Icon_SPU *getTexture(int face, int data) { return TileRef_SPU(wool_Id)->getTexture(face, data); } bool isSolidRender(bool isServerLevel = false) { return false; } void updateDefaultShape() { updateShape(0); } void updateShape(ChunkRebuildData *level, int x, int y, int z) { updateShape(level->getData(x, y, z)); } diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WoolTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WoolTile_SPU.h new file mode 100644 index 00000000..e21b3b0c --- /dev/null +++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/WoolTile_SPU.h @@ -0,0 +1,11 @@ +#pragma once +#include "Tile_SPU.h" + +class WoolTile_SPU : public Tile_SPU +{ +public: + WoolTile_SPU(int id) : Tile_SPU(id) {} + virtual Icon_SPU *getTexture(int face, int data) { return &ms_pTileData->woolTile_icons[data]; } + + +}; \ No newline at end of file diff --git a/Minecraft.Client/PS3/SPU_Tasks/ObjFiles/Release/ChunkUpdate.ppu.o b/Minecraft.Client/PS3/SPU_Tasks/ObjFiles/Release/ChunkUpdate.ppu.o index 3f0472d6..55b4af16 100644 Binary files a/Minecraft.Client/PS3/SPU_Tasks/ObjFiles/Release/ChunkUpdate.ppu.o and b/Minecraft.Client/PS3/SPU_Tasks/ObjFiles/Release/ChunkUpdate.ppu.o differ