Example #1
0
        public override void SpecialDraw(int i, int j, SpriteBatch spriteBatch)
        {
            TileEntities.EntryPoint entryPoint = Utility.GetTileEntity <TileEntities.EntryPoint>(i, j);
            if (entryPoint == null || !Main.tile[i, j].IsTopLeft())
            {
                return;
            }

            Vector2 position = new Point16(i, j).ToScreenCoordinates();

            Tube tube = TerraFirma.Instance.TubeNetworkLayer[i, j];

            if (tube.GetNeighbor(Side.Top) != null)
            {
                spriteBatch.Draw(ConnectionTexture, position + new Vector2(6, 0));
            }

            if (tube.GetNeighbor(Side.Left) != null)
            {
                spriteBatch.Draw(ConnectionTexture, position + new Vector2(-2, 24), null, Color.White, -MathHelper.PiOver2, ConnectionTexture.Size() * 0.5f, Vector2.One, SpriteEffects.None, 0f);
            }

            if (tube.GetNeighbor(Side.Right) != null)
            {
                spriteBatch.Draw(ConnectionTexture, position + new Vector2(50, 24), null, Color.White, MathHelper.PiOver2, ConnectionTexture.Size() * 0.5f, Vector2.One, SpriteEffects.None, 0f);
            }
        }