第33回デベロッパーキャンプ 大阪 LT 今からゲームを作ります(仮) [JAPAN]

Posted by on in Blogs

これは Delphi Advent Calendar 15日目の記事です。

http://qiita.com/advent-calendar/2016/delphi

 

12月9日(金曜日)に東京で、12月13日(火曜日)に大阪で、第33回エンバカデロ デベロッパーキャンプ無事に終えました。

[大阪【G6】ライトニングトーク]に参加させて頂きました

Youtube 2016/09/23 に公開の

Shows you how to build a simple car chase game on iOS, Android, Windows and macOS with Delphi.↓これを


これを1から作ると言う事で挑戦いたしました。
 
5分しか無いので最終的に完成できなかったのですが 
 
githubに置いていますので よろしければ皆様 お試しくださいませ。
 
道路を動かすコード
 
////
procedure TfmMain_car_chase.FloatAnimation1Finish(Sender: TObject);
begin
  //Background scroll 1
  Rectangle1.Visible  := False;
  FloatAnimation1.Enabled := False;
  Rectangle2.Visible  := True;
  FloatAnimation2.Enabled := True;
end;

procedure TfmMain_car_chase.FloatAnimation2Finish(Sender: TObject);
begin
  //Background scroll 2
  Rectangle2.Visible  := False;
  FloatAnimation2.Enabled := False;
  Rectangle1.Visible  := True;
  FloatAnimation1.Enabled := True;
end;

 

車のスピードチェンジのコード

////
procedure TfmMain_car_chase.SpeedButton1Click(Sender: TObject);
begin
  //The background scroll, speed up
  FloatAnimation1.Duration  := FloatAnimation1.Duration - 0.1;
  FloatAnimation2.Duration  := FloatAnimation2.Duration - 0.1;
end;

procedure TfmMain_car_chase.SpeedButton2Click(Sender: TObject);
begin
  //The background scroll, slowdown
  FloatAnimation1.Duration  := FloatAnimation1.Duration + 0.1;
  FloatAnimation2.Duration  := FloatAnimation2.Duration + 0.1;
end;

車の車線変更のコード

////
const
  car_left: array[0..2] of Integer = (32,80,125);
procedure TfmMain_car_chase.SpeedButton3Click(Sender: TObject);
begin
  //Move to the left.(Lane change)
  case Round(Rectangle3.Position.X) of
  80: begin
    FloatAnimation3.StartValue  := car_left[1];
    FloatAnimation3.StopValue   := car_left[0];
    FloatAnimation3.Start;
  end;
  125: begin
    FloatAnimation3.StartValue  := car_left[2];
    FloatAnimation3.StopValue   := car_left[1];
    FloatAnimation3.Start;
  end;
  end;
end;

procedure TfmMain_car_chase.SpeedButton4Click(Sender: TObject);
begin
  //Move to the right.(Lane change)
  case Round(Rectangle3.Position.X) of
  32: begin
    FloatAnimation3.StartValue  := car_left[0];
    FloatAnimation3.StopValue   := car_left[1];
    FloatAnimation3.Start;
  end;
  80: begin
    FloatAnimation3.StartValue  := car_left[1];
    FloatAnimation3.StopValue   := car_left[2];
    FloatAnimation3.Start;
  end;
  end;
end;

 

 

 

   



About
Gold User, No rank,
Delphi / C++Builder blogger

Comments

Check out more tips and tricks in this development video: