ringsのなでしこ日記

2007-11-15石を置けるようになりました。

最近、少し忙しくて、2,3日、いてしまいました(汗

引き続き、オセロの続きをww

は、マウスイベントに挑戦してみました。

マウスをクリックしたかを判定するのは、以下のように書くそうです。

母艦のマウスを押した時は、「こんにちは世界」と言う。

以下はプログラムより抜粋したマウス処理の部分です。

設置フラグを定義して、オンならば、石を置ける。

オフならば石を置けないいう感じにしてみました。


マウスをクリックした位置を知るためには、

マウスXとマウスYを使います。

マウスXは、X座標を、マウスYはY座標を取得することができるようです。

母艦のマウス押した時は
	設置フラグはオン。
	もし母艦のマウスXが40以下ならば設置フラグはオフ
	もし母艦のマウスXが360以上ならば設置フラグはオフ
	もし母艦のマウスYが40以下ならば設置フラグはオフ
	もし母艦のマウスYが360以上ならば設置フラグはオフ

	もし設置フラグがオフならば
		「その場所に石はおけません。」と言う。
	違えば
		母艦のマウスXをサイズで割るの整数部分をテストXに代入。
		母艦のマウスYをサイズで割るの整数部分をテストYに代入。
		1をマスの¥テストX,テストYに代入。
		石設置。

続きにプログラムがありますが、まだクリックした位置に黒石を置くぐらいしか実装できてません。

また、盤の状態を管理していた配列を2次元配列にしてみました。

少々、改善してみましたが、まだまだ改良の余地ありかな~

ルールを実装して、オセロが形になるのはもう少し先になりそうです。

# 初期化、マスの大きさと初期配置を定義する。
初期化は
	母艦はリバーシです。
	母艦の幅は600です。
	母艦の高さは450です。

	40をサイズに代入する。

	1をマスの¥4,4に代入。
	2をマスの¥4,5に代入。
	2をマスの¥5,4に代入。
	1をマスの¥5,5に代入。
	
	白数は2。
	黒数は2。

# 盤の外枠を描画
外枠は
	塗り色はRGB(153, 76, 0)。
	サイズを2で割る,サイズを2で割るから,サイズに9を掛けるにサイズを2で割るを足す,サイズに9を掛けるにサイズを2で割るを足すへ四角

	文字色は白色  
	カウンタで1から8まで繰り返す
		サイズを2で割るに5を足す,サイズにカウンタを掛けるに10を足すへカウンタを文字表示
	
	サイズに15を足す,サイズを2で割るに5を足すへAを文字表示
	サイズに2を掛けるに15を足す,サイズを2で割るに5を足すへBを文字表示
	サイズに3を掛けるに15を足す,サイズを2で割るに5を足すへCを文字表示
	サイズに4を掛けるに15を足す,サイズを2で割るに5を足すへDを文字表示
	サイズに5を掛けるに15を足す,サイズを2で割るに5を足すへEを文字表示
	サイズに6を掛けるに15を足す,サイズを2で割るに5を足すへFを文字表示
	サイズに7を掛けるに15を足す,サイズを2で割るに5を足すへGを文字表示
	サイズに8を掛けるに15を足す,サイズを2で割るに5を足すへHを文字表示

# 盤を描画
盤は
	塗り色は緑色
	サイズ,サイズからサイズに9を掛ける,サイズに9を掛けるへ四角

	カウンタで1から9まで繰り返す
	  サイズ,サイズにカウンタを掛けるからサイズに9を掛ける,サイズにカウンタを掛けるへ線。
	  サイズにカウンタを掛ける,サイズからサイズにカウンタを掛ける,サイズに9を掛けるへ線。

# 石を設置
石設置は
	カウンタXで1から8まで繰り返す。
		カウンタYで1から8まで繰り返す。
			x = カウンタと8の余りの整数部分にサイズを掛ける
			y = カウンタを8で割るの整数部分に1を足すにサイズを掛ける
			もしマス\カウンタX,カウンタYが1ならば、
				塗り色は黒色
				カウンタXにサイズを掛ける,カウンタYにサイズを掛けるからカウンタXにサイズを掛けるにサイズを足す,カウンタYにサイズを掛けるにサイズを足すへ円
			もしマス\カウンタX,カウンタYが2ならば、
				塗り色は白色
				カウンタXにサイズを掛ける,カウンタYにサイズを掛けるからカウンタXにサイズを掛けるにサイズを足す,カウンタYにサイズを掛けるにサイズを足すへ円

# 石の数を表示
石数は
	塗り色は白色。
	400,20から500,40へ四角
	400,40から500,120へ四角。
	塗り色は黒色。
	450,20から450,120へ線。
	文字色は黒色。
	420,25へ白を文字表示
	470,25へ黒を文字表示
	420,100へ白数を文字表示
	470,100へ黒数を文字表示
	
	塗り色は白色。
	405,45から405にサイズを足す,45にサイズを足すへ円。
	塗り色は黒色。
	455,45から455にサイズを足す,45にサイズを足すへ円。

	
初期化。
外枠。
盤。
石設置。
石数

母艦のマウス押した時は
	設置フラグはオン。
	もし母艦のマウスXが40以下ならば設置フラグはオフ
	もし母艦のマウスXが360以上ならば設置フラグはオフ
	もし母艦のマウスYが40以下ならば設置フラグはオフ
	もし母艦のマウスYが360以上ならば設置フラグはオフ

	もし設置フラグがオフならば
		「その場所に石はおけません。」と言う。
	違えば
		母艦のマウスXをサイズで割るの整数部分をテストXに代入。
		母艦のマウスYをサイズで割るの整数部分をテストYに代入。
		1をマスの¥テストX,テストYに代入。
		石設置。

ゲスト



トラックバック - http://nadesiko.g.hatena.ne.jp/rings/20071115