MCPcopy Create free account
hub / github.com/DGVPSH/SlackOpen / ConnectedTextures

Class ConnectedTextures

src/main/java/net/optifine/ConnectedTextures.java:45–2476  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43import net.optifine.util.TileEntityUtils;
44
45public class ConnectedTextures
46{
47 private static Map[] spriteQuadMaps = null;
48 private static Map[] spriteQuadFullMaps = null;
49 private static Map[][] spriteQuadCompactMaps = (Map[][])null;
50 private static ConnectedProperties[][] blockProperties = (ConnectedProperties[][])null;
51 private static ConnectedProperties[][] tileProperties = (ConnectedProperties[][])null;
52 private static boolean multipass = false;
53 protected static final int UNKNOWN = -1;
54 protected static final int Y_NEG_DOWN = 0;
55 protected static final int Y_POS_UP = 1;
56 protected static final int Z_NEG_NORTH = 2;
57 protected static final int Z_POS_SOUTH = 3;
58 protected static final int X_NEG_WEST = 4;
59 protected static final int X_POS_EAST = 5;
60 private static final int Y_AXIS = 0;
61 private static final int Z_AXIS = 1;
62 private static final int X_AXIS = 2;
63 public static final IBlockState AIR_DEFAULT_STATE = Blocks.air.getDefaultState();
64 private static TextureAtlasSprite emptySprite = null;
65 private static final BlockDir[] SIDES_Y_NEG_DOWN = new BlockDir[] {BlockDir.WEST, BlockDir.EAST, BlockDir.NORTH, BlockDir.SOUTH};
66 private static final BlockDir[] SIDES_Y_POS_UP = new BlockDir[] {BlockDir.WEST, BlockDir.EAST, BlockDir.SOUTH, BlockDir.NORTH};
67 private static final BlockDir[] SIDES_Z_NEG_NORTH = new BlockDir[] {BlockDir.EAST, BlockDir.WEST, BlockDir.DOWN, BlockDir.UP};
68 private static final BlockDir[] SIDES_Z_POS_SOUTH = new BlockDir[] {BlockDir.WEST, BlockDir.EAST, BlockDir.DOWN, BlockDir.UP};
69 private static final BlockDir[] SIDES_X_NEG_WEST = new BlockDir[] {BlockDir.NORTH, BlockDir.SOUTH, BlockDir.DOWN, BlockDir.UP};
70 private static final BlockDir[] SIDES_X_POS_EAST = new BlockDir[] {BlockDir.SOUTH, BlockDir.NORTH, BlockDir.DOWN, BlockDir.UP};
71 private static final BlockDir[] SIDES_Z_NEG_NORTH_Z_AXIS = new BlockDir[] {BlockDir.WEST, BlockDir.EAST, BlockDir.UP, BlockDir.DOWN};
72 private static final BlockDir[] SIDES_X_POS_EAST_X_AXIS = new BlockDir[] {BlockDir.NORTH, BlockDir.SOUTH, BlockDir.UP, BlockDir.DOWN};
73 private static final BlockDir[] EDGES_Y_NEG_DOWN = new BlockDir[] {BlockDir.NORTH_EAST, BlockDir.NORTH_WEST, BlockDir.SOUTH_EAST, BlockDir.SOUTH_WEST};
74 private static final BlockDir[] EDGES_Y_POS_UP = new BlockDir[] {BlockDir.SOUTH_EAST, BlockDir.SOUTH_WEST, BlockDir.NORTH_EAST, BlockDir.NORTH_WEST};
75 private static final BlockDir[] EDGES_Z_NEG_NORTH = new BlockDir[] {BlockDir.DOWN_WEST, BlockDir.DOWN_EAST, BlockDir.UP_WEST, BlockDir.UP_EAST};
76 private static final BlockDir[] EDGES_Z_POS_SOUTH = new BlockDir[] {BlockDir.DOWN_EAST, BlockDir.DOWN_WEST, BlockDir.UP_EAST, BlockDir.UP_WEST};
77 private static final BlockDir[] EDGES_X_NEG_WEST = new BlockDir[] {BlockDir.DOWN_SOUTH, BlockDir.DOWN_NORTH, BlockDir.UP_SOUTH, BlockDir.UP_NORTH};
78 private static final BlockDir[] EDGES_X_POS_EAST = new BlockDir[] {BlockDir.DOWN_NORTH, BlockDir.DOWN_SOUTH, BlockDir.UP_NORTH, BlockDir.UP_SOUTH};
79 private static final BlockDir[] EDGES_Z_NEG_NORTH_Z_AXIS = new BlockDir[] {BlockDir.UP_EAST, BlockDir.UP_WEST, BlockDir.DOWN_EAST, BlockDir.DOWN_WEST};
80 private static final BlockDir[] EDGES_X_POS_EAST_X_AXIS = new BlockDir[] {BlockDir.UP_SOUTH, BlockDir.UP_NORTH, BlockDir.DOWN_SOUTH, BlockDir.DOWN_NORTH};
81 public static final TextureAtlasSprite SPRITE_DEFAULT = new TextureAtlasSprite("<default>");
82
83 public static BakedQuad[] getConnectedTexture(IBlockAccess blockAccess, IBlockState blockState, BlockPos blockPos, BakedQuad quad, RenderEnv renderEnv)
84 {
85 TextureAtlasSprite textureatlassprite = quad.getSprite();
86
87 if (textureatlassprite == null)
88 {
89 return renderEnv.getArrayQuadsCtm(quad);
90 }
91 else
92 {
93 Block block = blockState.getBlock();
94
95 if (skipConnectedTexture(blockAccess, blockState, blockPos, quad, renderEnv))
96 {
97 quad = getQuad(emptySprite, quad);
98 return renderEnv.getArrayQuadsCtm(quad);
99 }
100 else
101 {
102 EnumFacing enumfacing = quad.getFace();

Callers

nothing calls this directly

Calls 1

getDefaultStateMethod · 0.80

Tested by

no test coverage detected