Develop and Download Open Source Software

Browse Subversion Repository

Annotation of /Unit2.pas

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1 - (hide 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 yamat0jp 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