рефераты рефераты
Главная страница > Курсовая работа: Создание сетевой игры  
Курсовая работа: Создание сетевой игры
Главная страница
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
География экономическая география
Геодезия
Геология
Госслужба
Гражданский процесс
Гражданское право
Иностранные языки лингвистика
Искусство
Историческая личность
История
История государства и права
История отечественного государства и права
История политичиских учений
История техники
История экономических учений
Биографии
Биология и химия
Издательское дело и полиграфия
Исторические личности
Краткое содержание произведений
Новейшая история политология
Остальные рефераты
Промышленность производство
психология педагогика
Коммуникации связь цифровые приборы и радиоэлектроника
Краеведение и этнография
Кулинария и продукты питания
Культура и искусство
Литература
Маркетинг реклама и торговля
Математика
Медицина
Реклама
Физика
Финансы
Химия
Экономическая теория
Юриспруденция
Юридическая наука
Компьютерные науки
Финансовые науки
Управленческие науки
Информатика программирование
Экономика
Архитектура
Банковское дело
Биржевое дело
Бухгалтерский учет и аудит
Валютные отношения
География
Кредитование
Инвестиции
Информатика
Кибернетика
Косметология
Наука и техника
Маркетинг
Культура и искусство
Менеджмент
Металлургия
Налогообложение
Предпринимательство
Радиоэлектроника
Страхование
Строительство
Схемотехника
Таможенная система
Сочинения по литературе и русскому языку
Теория организация
Теплотехника
Туризм
Управление
Форма поиска
Авторизация




 
Статистика
рефераты
Последние новости

Курсовая работа: Создание сетевой игры

     {

        ViProigrali();

     }

     else if (HisWholeOch>MaxOch)

     {

        lbHisWholeOch->Font->Color=clRed;

        ViViigrali();

     }

     else if(IsYaFixed && HisWholeOch<=MyWholeOch)

     {

        ChangeInterfacePerehodHoda(0);

     }

     else

     {

        ChangeInterfacePerehodHoda(1);

     }

  }

  else if (MasPriem[0]==2)  //соперник зафиксировал

  {

     IsHeFixed=true;

     lbHisWholeOch->Font->Color=clRed;

     shapeFixed->Brush->Color=0x000000CE;

     if(!IsServer)

     {

        NomHoda++;

     }

     enum TypeDannihForTabl DannieForTabl;

     DannieForTabl=hefixed;

     ZapolnTabl(DannieForTabl);

     if(IsYaFixed && MyWholeOch==HisWholeOch)

     {

        Nichia();

     }

     else if(MyWholeOch>HisWholeOch)

     {

        ViViigrali();

     }

     else

     {

        ChangeInterfacePerehodHoda(1);

     }

  }

  else if (MasPriem[0]==3) //соперник разорвал соединение

  {

      IsVisitApplicationBox=true;

      Application->MessageBoxA("Ваш соперник разорвал соединение.\nИгра окончена.","Разрыв соединения",MB_OK);

      switch(choosenProt)

      {

         case 0:

            IPXCloseConnection();

            break;

         case 1:

            TCPIPCloseConnection();

            break;

         case 2:

            NetBiosCloseConnection();

            break;

         case 3:

            MailSlotCloseConnection();

            break;

         case 4:

            PipeCloseConnection();

            break;

      }

      for (int i=0;i<KolKub;i++)

      {

          delete Kubiki1[i];

          delete Kubiki2[i];

      }

      IsIgrayut=false;

      InterfaceBezIgri();

      IsVisitApplicationBox=false;

  }

  delete [] MasPriem;

}

//----------------процедура заполнения таблицы----------------------------------

void __fastcall TMainForm::ZapolnTabl(enum TypeDannihForTabl DannieForTabl)

{

  if(IsServer)

  {

     if(DannieForTabl==yabrosil)

     {

        listboxOchki->Items->Add("          "+IntToStr(NomHoda)+";         "+IntToStr(MyCurOch));

        listboxOchki->TopIndex=NomHoda-1;

        if(NomHoda==9)

        {

            listboxOchki->Width=236;

            listboxOchki->Left=14;

        }

     }

     else if (DannieForTabl==yafixed)

     {

        listboxOchki->Items->Add("          "+IntToStr(NomHoda)+";         0");

        listboxOchki->TopIndex=NomHoda-1;

        if(NomHoda==9)

        {

            listboxOchki->Width=236;

            listboxOchki->Left=14;

        }

     }

     else if (DannieForTabl==hebrosil)

     {

        listboxOchki->SetItemPart(NomHoda-1,2,"         "+IntToStr(MasPriem[1]));

        listboxOchki->TopIndex=NomHoda-1;

     }

     else

     {

        listboxOchki->SetItemPart(NomHoda-1,2,"         0");

        listboxOchki->TopIndex=NomHoda-1;

     }

  }

  else

  {

     if(DannieForTabl==yabrosil)

     {

        listboxOchki->SetItemPart(NomHoda-1,1,"         "+IntToStr(MyCurOch));

        listboxOchki->TopIndex=NomHoda-1;

     }

     else if (DannieForTabl==yafixed)

     {

        listboxOchki->SetItemPart(NomHoda-1,1,"         0");

        listboxOchki->TopIndex=NomHoda-1;

     }

     else if (DannieForTabl==hebrosil)

     {

        listboxOchki->Items->Add("          "+ IntToStr(NomHoda)+";;         "+IntToStr(MasPriem[1]));

        listboxOchki->TopIndex=NomHoda-1;

        if(NomHoda==9)

        {

            listboxOchki->Width=236;

            listboxOchki->Left=14;

        }

     }

     else

     {

        listboxOchki->Items->Add("          "+ IntToStr(NomHoda)+";;         0");

        listboxOchki->TopIndex=NomHoda-1;

        if(NomHoda==9)

        {

            listboxOchki->Width=236;

            listboxOchki->Left=14;

        }

     }

   }

}

//------------------------------Результаты--------------------------------------

void __fastcall TMainForm::ViProigrali(void)

{

  IsVisitApplicationBox=true;

  HisWinPoPartiam++;

  Application->MessageBoxA("Вы проиграли!\nИграем дальше!","Поражение",MB_OK+MB_ICONEXCLAMATION);

  InterfaceIgraemDalshe();

  IsVisitApplicationBox=false;

}

//---------------------------------

void __fastcall TMainForm::ViViigrali(void)

{

  IsVisitApplicationBox=true;

  MyWinPoPartiam++;

  Application->MessageBoxA("Вы выиграли!\nИграем дальше!","Победа!!",MB_OK+MB_ICONEXCLAMATION);

  InterfaceIgraemDalshe();

  IsVisitApplicationBox=false;

}

//----------------------------------

void __fastcall TMainForm::Nichia(void)

{

  IsVisitApplicationBox=true;

  MyWinPoPartiam++;

  HisWinPoPartiam++;

  Application->MessageBoxA("Вы сыграли вничью!\nИграем дальше!","Ничья",MB_OK+MB_ICONEXCLAMATION);

  InterfaceIgraemDalshe();

  IsVisitApplicationBox=false;

}

//----------------------------------------------------------------------------

void __fastcall TMainForm::menuOProgrClick(TObject *Sender)

{

FormAbout->ShowModal();

}

//----------------------------Интерфейсы---------------------------------------

void __fastcall TMainForm::InterfaceBezIgri(void)

{

   MyWholeOch=0;

   HisWholeOch=0;

   MyCurOch=0;

   NomHoda=0;

   IsYaFixed=false;

   IsHeFixed=false;

   NomPartia=0;

   MyWinPoPartiam=0;

   HisWinPoPartiam=0;

   ServerHostName="";

   ServerHostIP="";

   IsIgrayut=false;

   menuStop->Enabled=false;

   panParam->Visible=false;

   lbNomPartia->Visible=false;

   panSchetPoPartiam->Visible=false;

   gbPole1->Top=15;

   gbPole2->Top=15;

   gbTabl->Top=15;

   this->Height=400;

   this->Caption="Игровое поле";

   btBrosit->Enabled=false;

   btFix->Enabled=false;

   btBrosit->Color=clCream;

   btFix->Color=clCream;

   shapeBrosil->Brush->Color=clSilver;

   shapeFixed->Brush->Color=clSilver;

   shapeBrosil->Caption->Font->Color=clWhite;

   shapeFixed->Caption->Font->Color=clWhite;

   lbMyWholeOch->Caption="0";

   lbHisWholeOch->Caption="0";

   lbMaxOch2->Caption="";

   listboxOchki->Clear();

   listboxOchki->Width=218;

   listboxOchki->Left=23;

   AnsiString tmp=AnsiQuotedStr("Игра->Начать новую игру",'"');

   lbStat->Caption="Для начала новой игры выберете пункт меню "+tmp;

}

//--------------------------------------------------------------

void __fastcall TMainForm::InterfaceBeginNewGame(void)

{

  menuStop->Enabled=true;

  if(IsServer)

  {

    Caption=Caption+" Сервер";

    imStolServer->Parent=panPole1;

    imStolClient->Parent=panPole2;

  }

  else

  {

    Caption=Caption+" Клиент";

    imStolClient->Parent=panPole1;

    imStolServer->Parent=panPole2;

  }

  for (int i=0;i<KolKub;i++)

  {

     Kubiki1[i] = new TImage(this);

     Kubiki1[i]->Parent=panPole1;

     Kubiki1[i]->Transparent=true;

     Kubiki2[i] = new TImage(this);

     Kubiki2[i]->Parent=panPole2;

     Kubiki2[i]->Transparent=true;

  }

  panParam->Visible=true;

  lbNomPartia->Visible=true;

  panSchetPoPartiam->Visible=true;

  gbPole1->Top=80;

  gbTabl->Top=80;

  gbPole2->Top=80;

  this->Height=470;

  lbKolKub->Caption=IntToStr(KolKub);

  lbMaxOch->Caption=IntToStr(MaxOch);

  lbMaxOch2->Caption=IntToStr(MaxOch);

  lbNomPartia->Caption="Партия № 1";

  lbSchetPoPartiam->Caption="0  :  0";

  NomPartia=1;

  IsIgrayut=true;

}

//---------------------------------------------------------

void __fastcall TMainForm::ChangeInterfacePerehodHoda(bool HozhuYa)

{

 if(HozhuYa)

 {

   btBrosit->Enabled=true;

   btFix->Enabled=true;

   btBrosit->Color=clCream;

   btFix->Color=clCream;

   shapeBrosil->Caption->Font->Color=clWhite;

   shapeFixed->Caption->Font->Color=clWhite;

   lbStat->Caption="Твой ход...";

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9

рефераты
Новости