Ejemplo n.º 1
0
 public office(Stock[] stocks, Player[] players, LogForm logForm)
 {
     InitializeComponent();
     stock  = stocks;
     player = players;
     log    = logForm;
     ExecuteOffice();
 }
Ejemplo n.º 2
0
 public Chance(Stock[] stocks, Player[] players, LogForm logForm)
 {
     InitializeComponent();
     player = players;
     stock  = stocks;
     log    = logForm;
     ExecChance();
 }
Ejemplo n.º 3
0
        public DealForm(Stock[] stocks, Company[] companies, TVRadioComp[] tVRadioComps, Player[] players, LogForm logForm)
        {
            InitializeComponent();

            stock       = stocks;
            companie    = companies;
            tVRadioComp = tVRadioComps;
            player      = players;
            log         = logForm;
            ActivePlayerNameLab.Text = players[data.ActivePlayer].Name;
            switch (data.ActivePlayer)
            {
            case 0:
                PlayerListBox.Items.Add(players[1].Name);
                PlayerListBox.Items.Add(players[2].Name);
                indexone = 1;
                indextwo = 2;
                PlayerListBox.Update();
                break;

            case 1:
                PlayerListBox.Items.Add(players[0].Name);
                PlayerListBox.Items.Add(players[2].Name);
                indexone = 0;
                indextwo = 2;
                PlayerListBox.Update();
                break;

            case 2:
                PlayerListBox.Items.Add(players[0].Name);
                PlayerListBox.Items.Add(players[1].Name);
                indexone = 0;
                indextwo = 1;
                PlayerListBox.Update();
                break;
            }
            PlayerListBox.SelectedIndex = 0;

            //список акций для второго игрока

            StockListUpdate(indexone);
            //-----------------------------------------------------------

            //список акций активного игрока


            for (int i = 0; i < player[data.ActivePlayer].Stocks.Length; i++)
            {
                for (int j = 0; j < stock.Length; j++)
                {
                    if (stock[j].StockNumber == player[data.ActivePlayer].Stocks[i].StockNumber)
                    {
                        StocksListBoxAct.Items.Add(stock[j].Name + " " + stock[j].StockNumber.ToString());
                    }
                    ;
                }
            }
            for (int i = 0; i < player[data.ActivePlayer].companies.Length; i++)
            {
                for (int k = 0; k < companie.Length; k++)
                {
                    if (companie[k].StockNumber == player[data.ActivePlayer].companies[i].StockNumber)
                    {
                        StocksListBoxAct.Items.Add(companie[k].Name + " " + companie[k].StockNumber.ToString());
                    }
                }
            }
            for (int i = 0; i < player[data.ActivePlayer].tVRadioComps.Length; i++)
            {
                for (int z = 0; z < tVRadioComp.Length; z++)
                {
                    if (tVRadioComp[z].StockNumber == player[data.ActivePlayer].tVRadioComps[i].StockNumber)
                    {
                        StocksListBoxAct.Items.Add(tVRadioComp[z].Name + " " + tVRadioComp[z].StockNumber.ToString());
                    }
                }
            }
            //-----------------------------------------------------------------------------------------------------------
        }
Ejemplo n.º 4
0
        public CompaniesForm(Company company, Player[] players, Company[] companies, LogForm logForm)
        {
            InitializeComponent();
            log        = logForm;
            compan     = company;
            player     = players;
            companiesz = companies;

            if (!players[data.ActivePlayer].CompORUser)
            {
                ComputerIntellCompany();
            }
            else
            {
                SetStyle(ControlStyles.SupportsTransparentBackColor, true);

                if (company.Owner == 4)
                {
                    CompBox.Image = GetImage(company.ImageIndex + 30);
                }
                else
                {
                    CompBox.Image = GetImage(company.ImageIndex);
                }


                if (compan.Owner == 0)
                {
                    UserNameLabel.Text       = "Владельца нет";
                    BuyLayButton.Enabled     = true;
                    CanselSaleButton.Enabled = true;
                    CloseButton.Enabled      = false;
                }
                else if (company.Owner == 4)
                {
                    UserNameLabel.Text       = "Им. заложенно";
                    BuyLayButton.Enabled     = false;
                    CanselSaleButton.Enabled = false;
                    CloseButton.Enabled      = true;
                }
                else
                {
                    UserNameLabel.Text       = player[compan.Owner - 1].Name;
                    BuyLayButton.Enabled     = false;
                    CanselSaleButton.Enabled = false;

                    switch (compan.Owner)
                    {
                    case 1:
                        if (data.ActivePlayer != compan.Owner - 1)
                        {
                            for (int i = 0; i < 4; i++)
                            {
                                if (companiesz[i].Owner == 1)
                                {
                                    CountofCompany++;
                                }
                            }
                            MessageBox.Show("Вы находитесь на чужой територии!!! Владелец владеет " + CountofCompany.ToString() + " компаниями." +
                                            "Вы должны заплатить ренту в размере " + compan.GetRenta(CountofCompany).ToString() + " АС", "Info" +
                                            "rmation", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            player[data.ActivePlayer].Money -= compan.GetRenta(CountofCompany);
                            player[0].Money += compan.GetRenta(CountofCompany);
                            log.AddLog(player[data.ActivePlayer], "Платит аренду " + player[0].Name + " в размере " +
                                       "" + compan.GetRenta(CountofCompany) + " АС за посещение " + compan.Name);
                        }


                        CloseButton.Enabled = true;

                        break;

                    case 2:
                        if (data.ActivePlayer != compan.Owner - 1)
                        {
                            for (int i = 0; i < 4; i++)
                            {
                                if (companiesz[i].Owner == 2)
                                {
                                    CountofCompany++;
                                }
                            }
                            MessageBox.Show("Вы находитесь на чужой територии!!! Владелец владеет " + CountofCompany.ToString() + " компаниями." +
                                            "Вы должны заплатить ренту в размере " + compan.GetRenta(CountofCompany).ToString() + " АС", "Info" +
                                            "rmation", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            player[data.ActivePlayer].Money -= compan.GetRenta(CountofCompany);
                            player[1].Money += compan.GetRenta(CountofCompany);
                            log.AddLog(player[data.ActivePlayer], "Платит аренду " + player[1].Name + " в размере " +
                                       "" + compan.GetRenta(CountofCompany) + " АС за посещение " + compan.Name);
                        }


                        CloseButton.Enabled = true;
                        break;

                    case 3:

                        if (data.ActivePlayer != compan.Owner - 1)
                        {
                            for (int i = 0; i < 4; i++)
                            {
                                if (companiesz[i].Owner == 3)
                                {
                                    CountofCompany++;
                                }
                            }
                            MessageBox.Show("Вы находитесь на чужой територии!!! Владелец владеет " + CountofCompany.ToString() + " компаниями." +
                                            "Вы должны заплатить ренту в размере " + compan.GetRenta(CountofCompany).ToString() + " АС", "Info" +
                                            "rmation", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            player[data.ActivePlayer].Money -= compan.GetRenta(CountofCompany);
                            player[2].Money += compan.GetRenta(CountofCompany);
                            log.AddLog(player[data.ActivePlayer], "Платит аренду " + player[2].Name + " в размере " +
                                       "" + compan.GetRenta(CountofCompany) + " АС за посещение " + compan.Name);
                        }


                        CloseButton.Enabled = true;
                        break;
                    }
                }
                ShowDialog();
            }
        }
Ejemplo n.º 5
0
        public TvCompForm(TVRadioComp tVRadioComp, Player[] player, TVRadioComp[] tVRadioComps, int index, LogForm logForm)
        {
            InitializeComponent();

            TVRadio   = tVRadioComp;
            TVRadios  = tVRadioComps;
            players   = player;
            log       = logForm;
            indexComp = index;
            if (!players[data.ActivePlayer].CompORUser)
            {
                ComputerIntellTVRadioLocation();
            }
            else
            {
                CloseButton.Enabled = false;
                if (tVRadioComp.Owner == 4)
                {
                    TvCompBox.Image = GetImage(TVRadio.ImageIndex + 30);
                }
                else
                {
                    TvCompBox.Image = GetImage(TVRadio.ImageIndex);
                }
                if (TVRadio.Owner == 0)
                {
                    tmpstring = "Владельца нет";
                }
                else if (TVRadio.Owner == 4)
                {
                    tmpstring = "Заложенно";
                }
                else
                {
                    tmpstring = players[TVRadio.Owner - 1].Name;
                }
                UserNameLabel.Text = tmpstring;

                if (TVRadio.Owner == 0)
                {
                    tmpstring                = "Владельца нет";
                    BuyLayButton.Enabled     = true;
                    CanselSaleButton.Enabled = true;
                }
                else if (TVRadio.Owner == 4)
                {
                    BuyLayButton.Enabled     = false;
                    CanselSaleButton.Enabled = true;
                }
                else
                {
                    BuyLayButton.Enabled     = false;
                    CanselSaleButton.Enabled = false;

                    switch (TVRadio.Owner)
                    {
                    case 1:
                        if (data.ActivePlayer != TVRadio.Owner - 1)
                        {
                            if (index == 0)
                            {
                                if (tVRadioComps[1].Owner == 1)
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, true, 0);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                                else
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, false, 0);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                            }
                            else
                            {
                                if (tVRadioComps[0].Owner == 1)
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, true, 0);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                                else
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, false, 0);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show("Это ваша компания", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            CloseButton.Enabled = true;
                        }
                        break;


                    case 2:
                        if (data.ActivePlayer != TVRadio.Owner - 1)
                        {
                            if (index == 0)
                            {
                                if (tVRadioComps[1].Owner == 2)
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, true, 1);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                                else
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, false, 1);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                            }
                            else
                            {
                                if (tVRadioComps[0].Owner == 2)
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, true, 1);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                                else
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, false, 1);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show("Это ваша компания", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            CloseButton.Enabled = true;
                        }
                        break;

                    case 3:
                        if (data.ActivePlayer != TVRadio.Owner - 1)
                        {
                            if (index == 0)
                            {
                                if (tVRadioComps[1].Owner == 3)
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, true, 2);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                                else
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, false, 2);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                            }
                            else
                            {
                                if (tVRadioComps[0].Owner == 3)
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, true, 2);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                                else
                                {
                                    TvCompanyPay companyPay = new TvCompanyPay(players, false, 2);
                                    companyPay.ShowDialog();
                                    CloseButton.Enabled = true;
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show("Это ваша компания", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            CloseButton.Enabled = true;
                        }
                        break;
                    }
                }
                ShowDialog();
            }
        }
Ejemplo n.º 6
0
        public Force(ref Player[] players, ref Stock[] stocks, ref Company[] companies, ref TVRadioComp[] tVRadioComps, LogForm log)
        {
            InitializeComponent();
            Random rand = new Random();

            Number = rand.Next(1, 16);
            switch (Number)
            {
            case 1:
                ForcePicture.Image     = Res.for1;
                tVRadioComps[0].Price *= 2;
                tVRadioComps[1].Price *= 2;
                log.AddLog("Форс-мажор", "Кризис перепроизводства. Услуги Рекламной и Телекомпаний выросли в цене на 100%");
                data.TVCompServise = true;
                break;

            case 2:
                ForcePicture.Image    = Res.for2;
                stocks[11].Buildings /= 2;
                stocks[12].Buildings /= 2;
                stocks[13].Buildings /= 2;
                stocks[17].Buildings /= 2;
                stocks[18].Buildings /= 2;
                stocks[19].Buildings /= 2;
                log.AddLog("Форс-мажор", "Ураганом уничтоженно 50% домов в крастном и оранжевом секторе");
                break;

            case 3:
                ForcePicture.Image   = Res.for3;
                stocks[2].Buildings  = 0;
                stocks[3].Buildings  = 0;
                stocks[4].Buildings  = 0;
                stocks[21].Buildings = 0;
                stocks[20].Buildings = 0;
                log.AddLog("Форс-мажор", "Наводнением уничтожено 100% домов в районах: Фиджи, Таити, Гавайские" +
                           "острова, Минатоку, Ямато");
                break;

            case 4:
                ForcePicture.Image = Res.for6;
                players[0].Money  -= 10;
                players[1].Money  -= 10;
                players[2].Money  -= 10;
                data.BlagoFond    += 30;
                log.AddLog("Форс-мажор", "Леди и джентельмены, пожертвуйте в благотворительный фонд по 10 АС каждый");
                break;

            case 5:
                ForcePicture.Image = Res.for5;
                stocks[0].Rent    *= 2;
                stocks[1].Rent    *= 2;
                log.AddLog("Форс-мажор", "В связи с инфляцией рента выше на 100% в районах: Пласса Майор, Гран Виа");
                break;

            case 6:
                ForcePicture.Image = Res.for6;
                players[0].Money  -= 10;
                players[1].Money  -= 10;
                players[2].Money  -= 10;
                data.BlagoFond    += 30;
                log.AddLog("Форс-мажор", "Леди и джентельмены, пожертвуйте в благотворительный фонд по 10 АС каждый");
                break;

            case 7:
                ForcePicture.Image = Res.for7;
                stocks[20].Rent   += 10;
                stocks[21].Rent   += 10;
                log.AddLog("Форс-мажор", "В связи с монополизацией ГОСПРОМ сектора, рента выше на 20%: Минатоку, Ямато");
                break;

            case 8:
                ForcePicture.Image = Res.for8;
                stocks[8].Rent    /= 2;
                stocks[9].Rent    /= 2;
                stocks[10].Rent   /= 2;
                stocks[14].Rent   /= 2;
                stocks[15].Rent   /= 2;
                stocks[16].Rent   /= 2;
                log.AddLog("Форс-мажор", "Ливневыми дождями затопило кварталы: Трафальгар сквер, Оксфорд стрит," +
                           "Уайт Холл Стрит, Сен-Дени, Бульвар Мадлен, Елесейские поля. Рента упала вдвое");
                break;

            case 9:
                ForcePicture.Image  = Res.for9;
                stocks[0].Buildings = 0;
                stocks[1].Buildings = 0;
                stocks[5].Buildings = 0;
                stocks[6].Buildings = 0;
                stocks[7].Buildings = 0;
                log.AddLog("Форс-мажор", "Пожары от засухи уничтожили 100% домов в районах: Пласса Майор, Сант Анджело," +
                           "Дель Пополо, Пьяцца Венеции, Гран Виа");
                break;

            case 10:
                ForcePicture.Image = Res.for10;
                for (int i = 0; i < 4; i++)
                {
                    companies[i].Price *= 2;
                    companies[i].Renta *= 2;
                }
                log.AddLog("Форс-мажор", "В следствии падения цен на нефтепродукты, акции транспортных компаний выросли в цене" +
                           "на 50%, рента выросла вдвое");
                break;

            case 11:
                ForcePicture.Image = Res.for11;
                for (int i = 8; i < 20; i++)
                {
                    stocks[i].HousePrice -= ((byte)(stocks[i].HousePrice / 100 * 50));
                }
                log.AddLog("Форс-мажор", "На 50% снижены цены на дома в желтом, красном и оранжевом секторе ");
                break;

            case 12:
                ForcePicture.Image = Res.for13;
                for (int i = 2; i < 8; i++)
                {
                    stocks[i].Rent *= 2;
                }
                log.AddLog("Форс-мажор", "Открытие курортного сезона: Фиджи, Таити, Гавайские острова, Сант Анджело" +
                           ", Дель Пополо, Пьяцца Венеции. Рента выше на 50%");
                break;

            case 13:
                ForcePicture.Image = Res.for13;
                for (int i = 2; i < 8; i++)
                {
                    stocks[i].Rent *= 2;
                }
                log.AddLog("Форс-мажор", "Открытие курортного сезона: Фиджи, Таити, Гавайские острова, Сант Анджело" +
                           ", Дель Пополо, Пьяцца Венеции. Рента выше на 50%");
                break;

            case 14:
                ForcePicture.Image = Res.for14;
                for (int i = 0; i < 4; i++)
                {
                    companies[i].Price /= 2;
                    companies[i].Renta /= 2;
                }
                log.AddLog("Форс-мажор", "Энергетический кризис. Акции транспортных компаний упали в цене на 50%." +
                           " Рента упала вдвое");
                break;

            case 15:
                ForcePicture.Image = Res.for15;
                if (tVRadioComps[0].Price >= 150 && tVRadioComps[1].Price >= 150)
                {
                    tVRadioComps[0].Price /= 2;
                    tVRadioComps[1].Price /= 2;
                }
                log.AddLog("Форс-мажор", "Акции рекламной и телекомпаний упали в цене на 50%");
                data.TVCompServise = false;
                break;
            }
        }