示例#1
0
文件: UIButton.cs 项目: Syoxx/UTD_P2
        /// <summary>
        /// If clicked, creates an object of the ordered Tower
        /// </summary>
        protected override void OnButtonClick()
        {
            if (affordable)
            {
                buildButton.Texture       = towerBuild;
                buildButton.allowBuilding = false;
                switch (towerType)
                {
                case TowerTypes.Single:
                    SingleShotTower newSingleShotTower = new SingleShotTower(singleShotTexture, buildButton.ButtonX, buildButton.ButtonY, player, graphicsDevice);
                    level.AddTower(newSingleShotTower, this);
                    break;

                case TowerTypes.Double:
                    DoubleShotTower newDoubleShotTower = new DoubleShotTower(doubleShotTexture, buildButton.ButtonX, buildButton.ButtonY, player, graphicsDevice);
                    level.AddTower(newDoubleShotTower, this);
                    break;

                case TowerTypes.Slow:
                    SlowTower newSlowTower = new SlowTower(slowTexture, buildButton.ButtonX, buildButton.ButtonY, player, graphicsDevice);
                    level.AddTower(newSlowTower, this);
                    break;

                case TowerTypes.Rocket:
                    RocketLauncherTower newRocketLauncherTower = new RocketLauncherTower(rocketLauncherTexture, buildButton.ButtonX, buildButton.ButtonY, player, graphicsDevice);
                    level.AddTower(newRocketLauncherTower, this);
                    break;
                }
            }
            //change buildButton behaviour to disable building new towers
        }