<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'  'http://www.docbook.org/xml/4.4/docbookx.dtd'><article><articleinfo><title>15ゲーム作成</title><revhistory><revision><revnumber>8</revnumber><date>2012-01-11 04:27:28</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>7</revnumber><date>2012-01-09 12:45:57</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>6</revnumber><date>2012-01-09 12:41:38</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>5</revnumber><date>2012-01-09 12:37:55</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>4</revnumber><date>2012-01-09 12:32:29</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>3</revnumber><date>2012-01-09 12:28:03</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>2</revnumber><date>2012-01-09 12:22:23</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>1</revnumber><date>2012-01-09 12:17:41</date><authorinitials>masahiko</authorinitials></revision></revhistory></articleinfo><section><title>15ゲーム作成</title><para>こらからJavaでプログラミングを行いますが、 全体の考え方を説明しておきます。 </para><para>個々のステップの詳細については 別ページで解説するとともに、演習問題にしています。 </para><!--rule (<hr>) is not applicable to DocBook--><section><title>作成方針</title><itemizedlist><listitem><para>ピースに使う絵は、全体を1枚の画像ファイルとして用意する。 </para></listitem><listitem><para>起動するとピースを混ぜ合わせた状態の表示をする。 </para></listitem><listitem><para>操作はマウスのクリックによる。 </para></listitem><listitem><para>うまく並べられたら、右下の空白部分を表示する。 </para></listitem><listitem><para>盤の状態(現在どのように並んでいるか)は配列を使って表す。 </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--></section><section><title>プログラミング</title><para>必ず順番に行うこと。 </para><orderedlist numeration="arabic"><listitem><para>画像を表示する。 </para></listitem><listitem><para>画像の使う位置と表示位置を指定して表示する。 </para></listitem><listitem><para>マウスのボタンが押された位置を読み取る。 </para></listitem><listitem><para>マウスのボタンがどのピースの位置で押されたか判定する。 </para></listitem><listitem><para>盤の状態と配列の対応を理解する。 </para></listitem><listitem><para>配列の内容に応じて表示を行う。 </para></listitem><listitem><para>クリックした位置に応じてピースの移動を行う。 </para></listitem><listitem><para>全体がうまく並べられたか判定する。 </para></listitem></orderedlist><para>ここまでで一応遊べる状態になります。 </para><para>このパズルでは初期配置をランダムに作成すると 半数は解けないものになってしまいます。 解ける初期配置のみを作成する処理を書くこともできます。 このメソッドは提供します。 </para></section></section></article>