Компьютерная игра

Автор работы: Пользователь скрыл имя, 26 Января 2012 в 07:33, отчет по практике

Описание

ПОСТАНОВКА ЗАДАЧИ
Ознакомиться с различными типами компьютерных игр, моделированием систем реального времени, создать собственный вариант программы компьютерной игры. Согласно варианту игра «Гидроцикл», и музыкальное сопровождение Игорь Тальков Родина.

Работа состоит из  1 файл

trpo1.docx

— 260.72 Кб (Скачать документ)
">  Timer1.Enabled:=true;

Timer2.Enabled:=true;

Timer3.Enabled:=true;

Timer4.Enabled:=true;

Timer5.Enabled:=true;

Timer6.Enabled:=true;

Timer7.Enabled:=true;

Timer8.Enabled:=true;

Timer9.Enabled:=true;

Timer10.Enabled:=true;

end; 

procedure TMainForm.Timer2Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block2.Top:=Block2.Top+(Block2.Height div 2); 

//Проверяем не произошла ли авария

if (Block2.Top+Block2.Height)>(Car.Top) then

   if (Block2.Left+1<=Car.Left) and (Car.Left<=(Block2.Left+Block2.Width-1))

    then GameOver; 
 

if (Block2.Top+Block2.Height)>(Car.Top) then

   if (Block2.Left+1<=(Car.Left+Car.Width)) and ((Car.Left+Car.Width)<=(Block2.Left+Block2.Width-1))

       then GameOver; 
 

//Дошло  ли препятствие  до нижней границы

  If  Block2.Top+Block2.Height>=(MainForm.ClientHeight) then

begin

        Bonus:=Bonus+1;

        Block2.Hide;

        Block2.Top:=1; 

        //препятствие не  должно вылазить  за левую границу

        repeat

          Block2.Left:=Random(450-Car.Width);

        until (Block2.Left>10);

        Block2.Show;

end;

end; 

procedure TMainForm.Timer3Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block3.Top:=Block3.Top+(Block3.Height div 2); 

//Проверяем не произошла ли авария

if (Block3.Top+Block3.Height)>(Car.Top) then

   if (Block3.Left+1<=Car.Left) and (Car.Left<=(Block3.Left+Block3.Width-1))

    then GameOver; 
 

if (Block3.Top+Block3.Height)>(Car.Top) then

   if (Block3.Left+1<=(Car.Left+Car.Width)) and ((Car.Left+Car.Width)<=(Block3.Left+Block3.Width-1))

       then GameOver; 
 

//Дошло  ли препятствие  до нижней границы

  If  Block3.Top+Block3.Height>=(MainForm.ClientHeight) then

begin

        Bonus:=Bonus+1;

        Block3.Hide;

        Block3.Top:=1; 

        //препятствие не  должно вылазить  за левую границу

        repeat

          Block3.Left:=Random(450-Car.Width);

        until (Block3.Left>10);

        Block3.Show;

end;

end; 

procedure TMainForm.Timer4Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block4.Top:=Block4.Top+(Block4.Height div 2); 

//Проверяем не произошла ли авария

if (Block4.Top+Block4.Height)>(Car.Top) then

   if (Block4.Left+1<=Car.Left) and (Car.Left<=(Block4.Left+Block4.Width-1))

    then  GameOver; 
 

if (Block4.Top+Block4.Height)>(Car.Top) then

   if (Block4.Left+1<=(Car.Left+Car.Width)) and ((Car.Left+Car.Width)<=(Block4.Left+Block4.Width-1))

       then GameOver; 
 

//Дошло  ли препятствие  до нижней границы

  If  Block4.Top+Block4.Height>=(MainForm.ClientHeight) then

begin

        Bonus:=Bonus+1;

        Block4.Hide;

        Block4.Top:=1; 

        //препятствие не  должно вылазить  за левую границу

        repeat

          Block4.Left:=Random(450-Car.Width);

        until (Block4.Left>10);

        Block4.Show;

end; 
 

end; 

procedure TMainForm.Timer5Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block5.Top:=Block5.Top+(Block5.Height div 2); 

//Проверяем не произошла ли авария

if (Block5.Top+Block5.Height)>(Car.Top) then

   if (Block5.Left+1<=Car.Left) and (Car.Left<=(Block5.Left+Block5.Width-1))

    then  GameOver; 
 

if (Block5.Top+Block5.Height)>(Car.Top) then

   if (Block5.Left+1<=(Car.Left+Car.Width)) and ((Car.Left+Car.Width)<=(Block5.Left+Block5.Width-1))

       then GameOver; 
 

//Дошло  ли препятствие  до нижней границы

  If  Block5.Top+Block5.Height>=(MainForm.ClientHeight) then

begin

        Bonus:=Bonus+1;

        Block5.Hide;

        Block5.Top:=1; 

        //препятствие не  должно вылазить  за левую границу

        repeat

          Block5.Left:=Random(450-Car.Width);

        until (Block5.Left>10);

        Block5.Show;

end; 
 

end; 

procedure TMainForm.Timer6Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block6.Top:=Block6.Top+(Block6.Height div 2); 

//Проверяем не произошла ли авария

if (Block6.Top+Block6.Height)>(Car.Top) then

   if (Block6.Left+1<=Car.Left) and (Car.Left<=(Block6.Left+Block6.Width-1))

    then  GameOver; 
 

if (Block6.Top+Block6.Height)>(Car.Top) then

   if (Block6.Left+1<=(Car.Left+Car.Width)) and ((Car.Left+Car.Width)<=(Block6.Left+Block6.Width-1))

       then GameOver; 
 

//Дошло  ли препятствие  до нижней границы

  If  Block6.Top+Block6.Height>=(MainForm.ClientHeight) then

begin

        Bonus:=Bonus+1;

        Block6.Hide;

        Block6.Top:=1; 

        //препятствие не  должно вылазить  за левую границу

        repeat

          Block6.Left:=Random(450-Car.Width);

        until (Block6.Left>10);

        Block6.Show;

end; 
 

end; 

procedure TMainForm.Timer7Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block7.Top:=Block7.Top+(Block7.Height div 2); 

//Проверяем не произошла ли авария

if (Block7.Top+Block7.Height)>(Car.Top) then

   if (Block7.Left+1<=Car.Left) and (Car.Left<=(Block7.Left+Block7.Width-1))

    then  GameOver; 
 

if (Block7.Top+Block7.Height)>(Car.Top) then

   if (Block7.Left+1<=(Car.Left+Car.Width)) and ((Car.Left+Car.Width)<=(Block7.Left+Block7.Width-1))

       then GameOver; 
 

//Дошло  ли препятствие  до нижней границы

  If  Block7.Top+Block7.Height>=(MainForm.ClientHeight) then

begin

        Bonus:=Bonus+1;

        Block7.Hide;

        Block7.Top:=1; 

        //препятствие не  должно вылазить  за левую границу

        repeat

          Block7.Left:=Random(450-Car.Width);

        until (Block7.Left>10);

        Block7.Show;

end; 
 

end; 

procedure TMainForm.Timer8Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block8.Top:=Block8.Top+(Block8.Height div 2); 

//Проверяем не произошла ли авария

if (Block8.Top+Block8.Height)>(Car.Top) then

   if (Block8.Left+1<=Car.Left) and (Car.Left<=(Block8.Left+Block8.Width-1))

    then  GameOver; 
 

if (Block8.Top+Block8.Height)>(Car.Top) then

   if (Block8.Left+1<=(Car.Left+Car.Width)) and ((Car.Left+Car.Width)<=(Block8.Left+Block8.Width-1))

       then GameOver; 
 

//Дошло  ли препятствие  до нижней границы

  If  Block8.Top+Block8.Height>=(MainForm.ClientHeight) then

begin

        Bonus:=Bonus+1;

        Block8.Hide;

        Block8.Top:=1; 

        //препятствие не  должно вылазить  за левую границу

        repeat

          Block8.Left:=Random(450-Car.Width);

        until (Block8.Left>10);

        Block8.Show;

end; 
 

end; 

procedure TMainForm.Timer9Timer(Sender: TObject);

begin

//Отображаем очки игрока

Label1.Caption:=IntToStr(Bonus); 

//Задаем движение препятствия1

  Block9.Top:=Block9.Top+(Block9.Height div 2); 

//Проверяем не произошла ли авария

if (Block9.Top+Block9.Height)>(Car.Top) then

   if (Block9.Left+1<=Car.Left) and (Car.Left<=(Block9.Left+Block9.Width-1))

    then  GameOver; 
 

if (Block9.Top+Block9.Height)>(Car.Top) then

Информация о работе Компьютерная игра