Develop and Download Open Source Software

Browse Subversion Repository

Contents of /Unit2.pas

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1 - (show annotations) (download) (as text)
Fri Jul 10 00:31:32 2015 UTC (8 years, 8 months ago) by yamat0jp
File MIME type: text/x-pascal
File size: 1350 byte(s)
ぷよぷよでは2つ一組で落下してくるところを4つにしました

斜めの連鎖判定も出しています

おかげで面白く無いかもしれません

AIの部分はまだ詰めていませんがイベント化しました
1 unit Unit2;
2
3 interface
4
5 uses
6 System.Classes;
7
8 type
9 TRensa = class(TThread)
10 private
11 { Private 宣言 }
12 protected
13 procedure Execute; override;
14 end;
15
16 implementation
17
18 {
19 重要: ビジュアル コンポーネントにおけるオブジェクトのメソッドとプロパティは、Synchronize を使って
20 呼び出されるメソッドでのみ使用できます。たとえば、次のようになります。
21
22 Synchronize(UpdateCaption);
23
24 UpdateCaption は、たとえば次のようなコードになります。
25
26 procedure TRensa.UpdateCaption;
27 begin
28 Form1.Caption := 'スレッドで更新されました';
29 end;
30
31 あるいは
32
33 Synchronize(
34 procedure
35 begin
36 Form1.Caption := '無名メソッドを通じてスレッドで更新されました'
37 end
38 )
39 );
40
41 ここでは、無名メソッドが渡されています。
42
43 同様に、開発者は上記と同じようなパラメータで Queue メソッドを呼び出すことができます。
44 ただし、別の TThread クラスを第 1 パラメータとして渡し、呼び出し元のスレッドを
45 もう一方のスレッドでキューに入れます。
46
47 }
48
49 uses Unit1;
50
51 { TRensa }
52
53 procedure TRensa.Execute;
54 var
55 s: TPlayer;
56 begin
57 { スレッドとして実行したいコードをここに記述してください }
58 s := Form1.Player2;
59 s.Com := true;
60 s.Start(true);
61 while Terminated = false do
62 begin
63 s.Execute;
64 Synchronize(
65 procedure
66 begin
67 Form1.FormPaint(nil);
68 end);
69 end;
70 end;
71
72 end.

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26