void SetCurrentTile(int tileID)
{
if (tileID == -1)
{
Health = 0;
OnDied();
return;
//FIX THIS...........................
}
previousTileID = CurrentTileID;
CurrentTileID = tileID;
Unit unit = this;
if (CurrentTileID != previousTileID)
{
TileMap.Tiles[previousTileID].RemoveUnit(ref unit);
if (CurrentTileID == goalTileID)
{
//Register Hit
if (PlayerCollection.AttackPlayer(PlayerToAttack))
{
gameOver = true;
return;
}
Vector3 nv = new Vector3();
nv.X = unit.Position.X;
nv.Y = unit.Position.Y + 1;
nv.Z = unit.Position.Z;
ProjectileManager.AddParticle(unit.Position, nv);
OnDied();
}
else
{
PathLength = TileMap.Tiles[CurrentTileID].PathsInts[goalTileID].Count;
TileMap.Tiles[CurrentTileID].AddUnit(ref unit);
}
//CurrentTileID = currentTile.ID;
}
}