public virtual int getSavedLightValue(EnumSkyBlock enumskyblock, int i, int j, int k) { if (enumskyblock == EnumSkyBlock.Sky) { return(skylightMap.getNibble(i, j, k)); } if (enumskyblock == EnumSkyBlock.Block) { return(blocklightMap.getNibble(i, j, k)); } else { return(0); } }
public virtual bool setBlockIDWithMetadata(int i, int j, int k, int l, int i1) { var byte0 = (byte)l; int j1 = heightMap[k << 4 | i] & 0xff; int k1 = blocks[i << 11 | k << 7 | j] & 0xff; if (k1 == l && data.getNibble(i, j, k) == i1) { return(false); } int l1 = xPosition * 16 + i; int i2 = zPosition * 16 + k; blocks[i << 11 | k << 7 | j] = byte0; if (k1 != 0 && !worldObj.singleplayerWorld) { Block.blocksList[k1].onBlockRemoval(worldObj, l1, j, i2); } data.setNibble(i, j, k, i1); if (!worldObj.worldProvider.field_4306_c) { if (Block.lightOpacity[byte0] != 0) { if (j >= j1) { func_339_g(i, j + 1, k); } } else if (j == j1 - 1) { func_339_g(i, j, k); } worldObj.func_483_a(EnumSkyBlock.Sky, l1, j, i2, l1, j, i2); } worldObj.func_483_a(EnumSkyBlock.Block, l1, j, i2, l1, j, i2); func_333_c(i, k); data.setNibble(i, j, k, i1); if (l != 0) { Block.blocksList[l].onBlockAdded(worldObj, l1, j, i2); } isModified = true; return(true); }