目指せGUI
こんばんは。お久しぶりでございます。
今日*1はひたすらプログラミングしてました。
午前の部
午前中はひたすらJavaやりました。使ってる参考書がクラスのところに入り、いよいよここから、といったところです。コンストラクタだのprivateだのpublicだのゲッタ(ロボでない)だのアクセッサだのと多くのことを学びました。
お陰様で、昼食を取る前はヘトヘトでした。
ろくに休みも取らずに3, 4時間くらいぶっ通しでやっていたため、昼食後程なくして一区切りついたところで寝ました。15分だけの昼寝*2のつもりだったのですが、結構疲れは取れました。
午後の部
ここからはGUIオセロの開発に移ります。言語は(なんちゃって)C++です。全くと言っていい程C++の機能は使わず、CとDXライブラリの機能に頼りまくってました。かじる程度でもC++をやれたらいいのですが、Javaとの並行は難しそうです。春休みでJavaの勉強を一通り終わらせることができたら、C++の勉強に移ろうかと考えています。
さて、肝心のプログラムですが、今回できたのは3つです。
- メインメニュー
- モード選択
- NPCの難易度設定
メインメニューはこんな感じです。
背景が少し寂しいですが、特にいいアイディアが見つからなければこのままです。
オセロということで*3、それぞれのモードは白黒で表しました。フォントはWide Latinを使っています。また、マウスをそれぞれの四角の上に持って行くと、四角がなくなって文字色が反転します。クリックした時は四角がREVESIの文字色になり、それぞれのモードに進みます。
モード選択画面も白と黒が基本です。
黒と白、クリックする度にPLAYER→NPC→PLAYERと変わっていきます。カーソルが上に来ると緑が濃くなり、クリックすると緑の純色になります。下側に少し余りがあるのですが、そこは別のボタンを用意する予定です*4。
文字は透過を利用したビットマップになっていて、L-EO先輩に教わった方法*5で作っています。ですが、画像とマウス処理を同時にやると反応が悪くなるため、フォントに変えるかもしれません。
NPCの難易度設定は、メインメニューでSETTINGを選ぶとできます。
メインメニューが白黒白黒だったので、こちらは黒白黒白にしてみました。選択中の難易度が純色の緑、マウスが乗っている難易度が濃い緑、それ以外(上画像のBASIC, MEDIUM, BACK TO MENU)がREVERSIで基本としている緑です。
こちらの文字もモード選択と同じ方法で作成しており、こっちもフォントに変えるかもしれません。こんな感じのフォントがあったら教えて下さるとありがたいです。
今回できたのはこれくらいです。次はいよいよ駒置き、リザルト画面への挑戦をします。え、READ LOGS?あれは最後でいいんです、最後で。