public override ConnectionType ConnectsToBlock(WorldBase world, Vector3i blockPos, Vector3i otherBlockPos, Block otherBlock) { var data = world.GetBlockData(blockPos) as BlockDataMetadata; var myMeta = data?.Metadata ?? 0; data = world.GetBlockData(otherBlockPos) as BlockDataMetadata; var otherMeta = data?.Metadata ?? 0; return(otherBlock == this && myMeta == otherMeta ? ConnectionType.Connected : ConnectionType.Undefined); }
public override int OnLightPassThrough(WorldBase world, Vector3i blockPos, int lightLevel, int color) { var data = world.GetBlockData(blockPos) as BlockDataMetadata; var i = data?.Metadata ?? 0; return(lightLevel - LightFilters[i, color]); }