// Get the upgrade cost for the current tower protected string CreateTowerUpgradeCost() { string str = ""; if (GameState.Get().SelectedTile != null) { Objects.Tower t = GameState.Get().SelectedTile.Tower; if (t != null) { // At the maximum level if (t.Level == t.MaxLevel) { str = Localization.Get().Text("n_a"); } else { int cost = t.GetUpgradeCost(); GameState g = GameState.Get(); if (cost > g.Money) { str = String.Format("<font color='#ff0000'>${0:N0}</font>", cost); } else { str = String.Format("${0:N0}", cost); } } } } return(str); }
void DrawLeftPanel(SpriteBatch DrawBatch) { const float fSmallSpacing = 22.0f; Color StatColor = Color.White; GameState g = GameState.Get(); Vector2 vLeftPos = Vector2.Zero; vLeftPos.Y = GraphicsManager.Get().Height - m_LeftPanel.Height; DrawBatch.Draw(m_LeftPanel, vLeftPos, Color.White); // Text for selected tile Vector2 vSelectOffset = new Vector2(300, 150); if (g.SelectedTile != null) { Objects.Tower b = g.SelectedTile.Tower; // If there's a building on this tile, show its info if (b != null) { string BuildingDisplay = b.Name; DrawBatch.DrawString(m_FixedSmall, BuildingDisplay, vLeftPos + vSelectOffset, Color.White); vSelectOffset.Y += fSmallSpacing; string StatusDisplay = ""; if (b.IsBeingBuilt) { StatusDisplay = String.Format(m_BeingBuiltStr, b.BuildPercent); DrawBatch.DrawString(m_FixedSmall, StatusDisplay, vLeftPos + vSelectOffset, Color.White); } else { StatusDisplay = m_ActiveStr; StatColor = Color.Green; DrawBatch.DrawString(m_FixedSmall, StatusDisplay, vLeftPos + vSelectOffset, StatColor); } vSelectOffset.Y += fSmallSpacing * 2; } else if (!g.SelectedTile.Buildable) { DrawBatch.DrawString(m_FixedSmall, m_EnemyStr, vLeftPos + vSelectOffset, Color.Red); vSelectOffset.Y += fSmallSpacing; } } }
// Get the name of the current selected tower protected string CreateTowerName() { string str = ""; if (GameState.Get().SelectedTile != null) { Objects.Tower t = GameState.Get().SelectedTile.Tower; if (t != null) { str = t.Name; } } return(str); }
// Get the amount of refund for the current selected tower protected string CreateTowerRefund() { string str = ""; if (GameState.Get().SelectedTile != null) { Objects.Tower t = GameState.Get().SelectedTile.Tower; if (t != null) { str = String.Format("{0:N0}", t.GetRefundAmount()); } } return(str); }
// Get the text describing the upgrade potential protected string CreateTowerUpgradeText() { string str = ""; if (GameState.Get().SelectedTile != null) { Objects.Tower t = GameState.Get().SelectedTile.Tower; if (t != null) { if (t.TowerType == eTowerType.Projectile) { str = Localization.Get().Text("upgrade_projectile"); } else if (t.TowerType == eTowerType.Slow) { str = Localization.Get().Text("upgrade_slow"); } } } return(str); }
// Get the upgrade time for the current tower protected string CreateTowerUpgradeTime() { string str = ""; if (GameState.Get().SelectedTile != null) { Objects.Tower t = GameState.Get().SelectedTile.Tower; if (t != null) { // At the maximum level if (t.Level == t.MaxLevel) { str = Localization.Get().Text("n_a"); } else { str = String.Format("{0:F1}", t.GetUpgradeTime()); } } } return(str); }
// Get the level information of current tower protected string CreateTowerLevel() { string str = ""; if (GameState.Get().SelectedTile != null) { Objects.Tower t = GameState.Get().SelectedTile.Tower; if (t != null) { // At the maximum level if (t.Level == t.MaxLevel) { str = String.Format("<font color='#00ff00'>{0}</font>", Localization.Get().Text("max_level")); } else { str = String.Format("{0}{1}{2}", t.Level, Localization.Get().Text("level_separator"), t.MaxLevel); } } } return(str); }