private int AddUpgradeButton(int y) { Button b = null; if (clickedTower.UpgradeCost <= PoderesTotales) { string bt = String.Format("Poderes: {0}", clickedTower.UpgradeCost); Vector2 btdim = spriteFont.MeasureString(bt); Vector2 bpos = new Vector2((int)(SelectedTower.Dimensions.Left + (Session.Map.SmallNormalButtonTexture.Width / 2.0f) + (SelectedTower.Dimensions.Width - Session.Map.SmallNormalButtonTexture.Width) / 2.0f), (int)(y + (Session.Map.SmallNormalButtonTexture.Height / 2.0f))); Vector2 tpos = new Vector2((int)(bpos.X - Session.Map.SmallNormalButtonTexture.Width / 2.0f + padding), (int)(y + (Session.Map.SmallNormalButtonTexture.Height - btdim.Y) / 2.0f)); b = new Button(Session.Map.SmallNormalButtonTexture, bpos, new Text(bt, spriteFont, tpos), Session.Map.ForeColor, clickedTower); b.LeftClickEvent += new EventHandler(powerTower_LeftClick); SelectedTower.Add("UpgradeTower", b); } else { string bt = String.Format("Poderes: {0}", clickedTower.UpgradeCost); Vector2 btdim = spriteFont.MeasureString(bt); Vector2 bpos = new Vector2((int)(SelectedTower.Dimensions.Left + (Session.Map.SmallErrorButtonTexture.Width / 2.0f) + (SelectedTower.Dimensions.Width - Session.Map.SmallErrorButtonTexture.Width) / 2.0f), (int)(y + (Session.Map.SmallErrorButtonTexture.Height / 2.0f))); Vector2 tpos = new Vector2((int)(bpos.X - Session.Map.SmallErrorButtonTexture.Width / 2.0f + padding), (int)(y + (Session.Map.SmallErrorButtonTexture.Height - btdim.Y) / 2.0f)); b = new Button(Session.Map.SmallErrorButtonTexture, bpos, new Text(bt, spriteFont, tpos), Session.Map.ErrorColor, clickedTower); b.Deactivate(); SelectedTower.Add("UpgradeTower", b); } return (int)(b.Position.Y - b.Origin.Y) + b.Texture.Height; }
private void AddPurchaseButton(int y) { if (clickedTower.Cost <= Session.ActivePlayer.Money && clickedTower.Level < clickedTower.MaxLevel) { string bt = String.Format("Comprar (Cuesta {0})", clickedTower.Cost); Vector2 btdim = spriteFont.MeasureString(bt); Vector2 bpos = new Vector2((int)(SelectedTower.Dimensions.Left + (Session.Map.SmallNormalButtonTexture.Width / 2.0f) + (SelectedTower.Dimensions.Width - Session.Map.SmallNormalButtonTexture.Width) / 2.0f), (int)(y + (Session.Map.SmallNormalButtonTexture.Height / 2.0f))); Vector2 tpos = new Vector2((int)(bpos.X - Session.Map.SmallNormalButtonTexture.Width / 2.0f + padding), (int)(y + (Session.Map.SmallNormalButtonTexture.Height - btdim.Y) / 2.0f)); Button b = new Button(Session.Map.SmallNormalButtonTexture, bpos, new Text(bt, spriteFont, tpos), Session.Map.ForeColor, clickedTower); b.LeftClickEvent += new EventHandler(buyTower_LeftClick); Tower t = b.StoredObject as Tower; if (t != null) { Session.SelectTower(t); } } else { string bt = String.Format("Comprar (Cuesta {0})", clickedTower.Cost); Vector2 btdim = spriteFont.MeasureString(bt); Vector2 bpos = new Vector2((int)(SelectedTower.Dimensions.Left + (Session.Map.SmallErrorButtonTexture.Width / 2.0f) + (SelectedTower.Dimensions.Width - Session.Map.SmallErrorButtonTexture.Width) / 2.0f), (int)(y + (Session.Map.SmallErrorButtonTexture.Height / 2.0f))); Vector2 tpos = new Vector2((int)(bpos.X - Session.Map.SmallErrorButtonTexture.Width / 2.0f + padding), (int)(y + (Session.Map.SmallErrorButtonTexture.Height - btdim.Y) / 2.0f)); Button b = new Button(Session.Map.SmallErrorButtonTexture, bpos, new Text(bt, spriteFont, tpos), Session.Map.ErrorColor, clickedTower); b.Deactivate(); SelectedTower.Add("BuyTower", b); } }