Exemple #1
0
        private void cmdTownHall_Click(object sender, EventArgs e)
        {
            if (_town._isBuilt == true)
            {
                return;
            }

            if (_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.Capitol))
            {
                return;
            }

            if (_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.CityHall))
            {
                // get basic building
                Heroes.Core.Building b1 = (Heroes.Core.Building)_town._buildingKIds[(int)Heroes.Core.BuildingIdEnum.CityHall];

                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Capitol]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                b2._gold = b1._gold;
                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.CityHall);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.TownHall))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.TownHall]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.VillageHall);
                _town._isBuilt = true;

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.CityHall))
            {
                // get basic building
                Heroes.Core.Building b1 = (Heroes.Core.Building)_town._buildingKIds[(int)Heroes.Core.BuildingIdEnum.TownHall];

                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.CityHall]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                b2._gold = b1._gold;
                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.TownHall);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.Capitol))
            {
                // get basic building
                Heroes.Core.Building b1 = (Heroes.Core.Building)_town._buildingKIds[(int)Heroes.Core.BuildingIdEnum.CityHall];

                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Capitol]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                b2._gold = b1._gold;
                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.CityHall);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }
            this.Close();
        }
Exemple #2
0
        private void cmdTavern_Click(object sender, EventArgs e)
        {
            if (_town._isBuilt == true)
            {
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.BrotherhoodOfTheSword))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.BrotherhoodOfTheSword]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.Tavern);
                _town._isBuilt = true;

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }
            this.Close();
        }
Exemple #3
0
        private void cmdSwordsmen_Click(object sender, EventArgs e)
        {
            if (_town._isBuilt == true)
            {
                return;
            }

            if (_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.UpgBarracks))
            {
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.Barracks))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Barracks]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                b2._armyQty = b2.FirstGrowth();
                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.UpgBarracks))
            {
                // get basic building
                Heroes.Core.Building b1 = (Heroes.Core.Building)_town._buildingKIds[(int)Heroes.Core.BuildingIdEnum.Barracks];

                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.UpgBarracks]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                b2._armyQty = b1._armyQty;
                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.Barracks);

                frmCastle.build.Add(b2._id, b2);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }
            this.Close();
        }
Exemple #4
0
        private void cmdStable_Click(object sender, EventArgs e)
        {
            if (_town._isBuilt == true)
            {
                return;
            }
            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.Stables))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Stables]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }
            this.Close();
        }
Exemple #5
0
        private void cmdShipyard_Click(object sender, EventArgs e)
        {
            if (_town._isBuilt == true)
            {
                return;
            }
            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.Shipyard))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Shipyard]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.Lighthouse))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.Lighthouse]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                // remove basic building
                //_town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.Shipyard);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }
            this.Close();
        }
Exemple #6
0
        private void cmdMageGuildLevel1_Click(object sender, EventArgs e)
        {
            if (_town._isBuilt == true)
            {
                return;
            }

            if (_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.MageGuildLevel3))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.MageGuildLevel4]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.MageGuildLevel3);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.MageGuildLevel2))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.MageGuildLevel3]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.MageGuildLevel2);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.MageGuildLevel1))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.MageGuildLevel1]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.MageGuildLevel2))
            {
                Heroes.Core.Building b2 = new Building();
                b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.MageGuildLevel2]);

                if (!b2.CanBuild(_town._player))
                {
                    MessageBox.Show("Cannot build this building.");
                    return;
                }

                b2.DeductResources(_town._player);

                _town._buildingKIds.Add(b2._id, b2);
                _town._isBuilt = true;
                frmCastle.build.Add(b2._id, b2);

                // remove basic building
                _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.MageGuildLevel1);

                this.DialogResult = DialogResult.OK;
                this.Close();
                return;
            }

            //if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.MageGuildLevel3))
            //{
            //    Heroes.Core.Building b2 = new Building();
            //    b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.MageGuildLevel3]);

            //    if (!b2.CanBuild(_town._player))
            //    {
            //        MessageBox.Show("Cannot build this building.");
            //        return;
            //    }

            //    b2.DeductResources(_town._player);

            //    _town._buildingKIds.Add(b2._id, b2);
            //    _town._isBuilt = true;
            //    frmCastle.build.Add(b2._id, b2);

            //    // remove basic building
            //    _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.MageGuildLevel2);

            //    this.DialogResult = DialogResult.OK;
            //    this.Close();
            //    return;
            //}

            //if (!_town._buildingKIds.ContainsKey((int)Heroes.Core.BuildingIdEnum.MageGuildLevel4))
            //{
            //    Heroes.Core.Building b2 = new Building();
            //    b2.CopyFrom((Heroes.Core.Building)Heroes.Core.Setting._buildings[(int)Heroes.Core.BuildingIdEnum.MageGuildLevel4]);

            //    if (!b2.CanBuild(_town._player))
            //    {
            //        MessageBox.Show("Cannot build this building.");
            //        return;
            //    }

            //    b2.DeductResources(_town._player);

            //    _town._buildingKIds.Add(b2._id, b2);
            //    _town._isBuilt = true;
            //    frmCastle.build.Add(b2._id, b2);

            //    // remove basic building
            //    _town._buildingKIds.Remove((int)Heroes.Core.BuildingIdEnum.MageGuildLevel3);

            //    this.DialogResult = DialogResult.OK;
            //    this.Close();
            //    return;
            //}
            this.Close();
        }