aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h
diff options
context:
space:
mode:
authordaoge_cmd <3523206925@qq.com>2026-03-01 12:16:08 +0800
committerdaoge_cmd <3523206925@qq.com>2026-03-01 12:16:08 +0800
commitb691c43c44ff180d10e7d4a9afc83b98551ff586 (patch)
tree3e9849222cbc6ba49f2f1fc6e5fe7179632c7390 /Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h
parentdef8cb415354ac390b7e89052a50605285f1aca9 (diff)
Initial commit
Diffstat (limited to 'Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h')
-rw-r--r--Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h
new file mode 100644
index 00000000..da207639
--- /dev/null
+++ b/Minecraft.Client/PS3/SPU_Tasks/ChunkUpdate/SkullTile_SPU.h
@@ -0,0 +1,47 @@
+#pragma once
+
+#include "Tile_SPU.h"
+#include "EntityTile_SPU.h"
+
+
+class SkullTile_SPU : public EntityTile_SPU
+{
+public:
+ static const int MAX_SKULL_TILES = 40;
+public:
+ static const int PLACEMENT_MASK = 0x7;
+ static const int NO_DROP_BIT = 0x8;
+
+ SkullTile_SPU(int id) : EntityTile_SPU(id) {}
+
+public:
+ int getRenderShape() { return SHAPE_INVISIBLE; }
+ bool isSolidRender(bool isServerLevel = false) { return false; }
+ bool isCubeShaped() { return false; }
+ void updateShape(ChunkRebuildData *level, int x, int y, int z)
+ {
+ int data = level->getData(x, y, z) & PLACEMENT_MASK;
+
+ switch (data)
+ {
+ default:
+ case Facing::UP:
+ setShape(4.0f / 16.0f, 0, 4.0f / 16.0f, 12.0f / 16.0f, .5f, 12.0f / 16.0f);
+ break;
+ case Facing::NORTH:
+ setShape(4.0f / 16.0f, 4.0f / 16.0f, .5f, 12.0f / 16.0f, 12.0f / 16.0f, 1);
+ break;
+ case Facing::SOUTH:
+ setShape(4.0f / 16.0f, 4.0f / 16.0f, 0, 12.0f / 16.0f, 12.0f / 16.0f, .5f);
+ break;
+ case Facing::WEST:
+ setShape(.5f, 4.0f / 16.0f, 4.0f / 16.0f, 1, 12.0f / 16.0f, 12.0f / 16.0f);
+ break;
+ case Facing::EAST:
+ setShape(0, 4.0f / 16.0f, 4.0f / 16.0f, .5f, 12.0f / 16.0f, 12.0f / 16.0f);
+ break;
+ }
+ }
+
+ Icon_SPU *getTexture(int face, int data) { return TileRef_SPU(hellSand_Id)->getTexture(face); }
+}; \ No newline at end of file