Commit Description:
Switch to drawing from top middle rather than upper-right corner.
Commit Description:
Switch to drawing from top middle rather than upper-right corner.
File last commit:
Show/Diff file:
Action:
isometric-park-fna/Tile.cs
44 lines | 1.3 KiB | text/x-csharp | CSharpLexer
using System;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
namespace isometricparkfna
{
public class Tile
{
//blatantly stolen from XNA resources.com
static public int TileWidth = 64;
static public int TileHeight = 64;
static public int TileStepX = 64;
static public int TileStepY = 16;
static public int OddRowXOffset = 32;
static public int HeightTileOffset = 32;
static public int TileSpriteWidth = 64;
static public int TileSpriteHeight = 32;
static public Texture2D TileSetTexture;
public Tile()
{
}
static public Rectangle GetSourceRectangle(int tileIndex)
{
int tileY = tileIndex / (TileSetTexture.Width / TileWidth);
int tileX = tileIndex % (TileSetTexture.Width / TileWidth);
return new Rectangle(tileX * TileWidth, tileY * TileHeight, TileWidth, TileHeight);
}
static public Rectangle GetExtendedSourceRectangle(int tileIndex, int height)
{
int tileY = tileIndex / (TileSetTexture.Width / TileWidth);
int tileX = tileIndex % (TileSetTexture.Width / TileWidth);
return new Rectangle(tileX * TileWidth, tileY * TileHeight, TileWidth, TileHeight*height);
}
}
}