<?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>クレーンゲーム</title><revhistory><revision><revnumber>55</revnumber><date>2012-06-14 12:49:54</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>54</revnumber><date>2012-06-14 12:48:05</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>53</revnumber><date>2012-06-14 12:40:27</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>52</revnumber><date>2012-06-07 05:04:00</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>51</revnumber><date>2012-06-07 05:00:31</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>50</revnumber><date>2012-06-07 04:38:01</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>49</revnumber><date>2012-06-07 04:36:36</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>48</revnumber><date>2012-06-07 04:20:37</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>47</revnumber><date>2012-06-07 04:19:50</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>46</revnumber><date>2012-06-07 04:14:33</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>45</revnumber><date>2012-06-07 03:59:06</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>44</revnumber><date>2012-06-07 03:05:25</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>43</revnumber><date>2012-06-07 02:51:42</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>42</revnumber><date>2012-06-07 02:43:27</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>41</revnumber><date>2012-06-07 02:34:52</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>40</revnumber><date>2012-06-07 02:19:19</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>39</revnumber><date>2012-06-07 02:18:50</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>38</revnumber><date>2012-06-07 02:15:31</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>37</revnumber><date>2012-06-07 02:11:29</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>36</revnumber><date>2012-06-07 01:59:49</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>35</revnumber><date>2012-06-07 01:59:05</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>34</revnumber><date>2012-06-07 01:47:08</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>33</revnumber><date>2012-06-07 01:44:28</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>32</revnumber><date>2012-06-07 01:34:33</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>31</revnumber><date>2012-06-07 01:23:25</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>30</revnumber><date>2011-06-02 06:28:44</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>29</revnumber><date>2011-06-02 06:26:42</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>28</revnumber><date>2011-06-02 06:23:03</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>27</revnumber><date>2011-06-02 06:21:51</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>26</revnumber><date>2011-06-02 05:37:35</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>25</revnumber><date>2011-06-02 05:18:18</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>24</revnumber><date>2011-06-01 14:08:58</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>23</revnumber><date>2011-06-01 13:56:15</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>22</revnumber><date>2011-06-01 13:51:03</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>21</revnumber><date>2011-06-01 13:24:09</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>20</revnumber><date>2011-06-01 13:22:57</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>19</revnumber><date>2011-06-01 13:20:51</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>18</revnumber><date>2011-06-01 13:19:38</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>17</revnumber><date>2011-06-01 13:15:32</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>16</revnumber><date>2011-06-01 13:10:08</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>15</revnumber><date>2011-06-01 13:06:04</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>14</revnumber><date>2011-06-01 05:46:42</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>13</revnumber><date>2011-06-01 03:53:23</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>12</revnumber><date>2011-05-31 13:08:07</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>11</revnumber><date>2011-05-31 12:46:23</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>10</revnumber><date>2011-05-31 12:36:25</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>9</revnumber><date>2011-05-31 12:34:36</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>8</revnumber><date>2011-05-31 12:29:26</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>7</revnumber><date>2011-05-31 12:29:06</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>6</revnumber><date>2011-05-31 12:21:53</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>5</revnumber><date>2011-05-31 12:18:13</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>4</revnumber><date>2011-05-31 12:15:41</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>3</revnumber><date>2011-05-31 11:59:23</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>2</revnumber><date>2011-05-31 11:30:47</date><authorinitials>masahiko</authorinitials></revision><revision><revnumber>1</revnumber><date>2011-05-31 11:30:13</date><authorinitials>masahiko</authorinitials></revision></revhistory></articleinfo><section><title>クレーンゲーム</title><para>ゲーム作りを通してプログラム作成の考え方を学びます。 </para><para>ゲーム内容 </para><itemizedlist><listitem override="none"><screen><![CDATA[Aボタンを押すとクレーンが動き始め、Bボタンを押すとクレーンが下がり、うまくぬいぐるみをつかんだら運ぶことができます。]]></screen></listitem></itemizedlist><para>画面例 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane30.png"/></imageobject><textobject><phrase>crane30.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--><section><title>オブジェクト指向</title><para>それぞれのもの(オブジェクト)の状態や動作を考えることで プログラムの構成を決定します。 </para><para>このプロジェクトでは </para><orderedlist numeration="arabic"><listitem><para>クレーンの動き </para></listitem><listitem><para>Aボタンを押したときの動作 </para></listitem><listitem><para>Bボタンを押したときの動作 </para></listitem><listitem><para>ぬいぐるみの動き </para></listitem></orderedlist><para>に分け、この順にスクリプトを作成していきます。 </para><!--rule (<hr>) is not applicable to DocBook--></section><section><title>クレーンの動きを考える</title><para>クレーンの動きは上下左右の４つです。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=idou1.png"/></imageobject><textobject><phrase>idou1.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>開始時には左上にあり、 動き始めてから止まるまでなにも操作をしなかったら つぎのような動きになります。 </para><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><listitem><para>停止 </para></listitem></orderedlist><para>図に書くとこのようになります。(状態図) </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane31.png"/></imageobject><textobject><phrase>crane31.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>個々の状態に対応するスクリプトに分け、 一度に１つのスクリプトがチクタクで動作するように考えると分かりやすい。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane32.png"/></imageobject><textobject><phrase>crane32.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>青の点線で囲んだ範囲を１つのスクリプトとして作成します。 </para><itemizedlist><listitem override="none"><para>スクリプト１～４はどれか１つが<emphasis role="strong">チクタク</emphasis>で動作すると考えます。 </para></listitem></itemizedlist><section><title>スクリプト１</title><para>クレーンの絵の向きを変えずに動かす方法はいくつかありますが、 座標を増減する方法で書くことにします。 </para><para>チクタクごとに右に５動かすにはつぎのように書きます。 動きの速さは調整してください。 </para><para>書き方１ </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane33.png"/></imageobject><textobject><phrase>crane33.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>書き方２ </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane34.png"/></imageobject><textobject><phrase>crane34.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>右端についたときの処理を テストタイルを使って書き加えます。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane35.png"/></imageobject><textobject><phrase>crane35.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>判定に用いるの数値(座標)はクレーンの形や画面全体のデザインによって調整が必要です。 </para></section><section><title>スクリプト２、３、４</title><para>同様に書けます。 </para><para>クレーンが下がるときに開くようにすると おもしろいでしょう。 </para><!--rule (<hr>) is not applicable to DocBook--></section></section><section><title>Aボタンが押されたとき</title><para>Aボタンが押されたときはクレーンが右に動き始め、 Bボタンが押されたときはクレーンが下に動くようにしたい。 </para><para>状態図を見ながら考えます。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane36.png"/></imageobject><textobject><phrase>crane36.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>Aボタンが押されたとき、 </para><itemizedlist><listitem override="none"><para>スクリプト１をスタート </para></listitem></itemizedlist><para>すれば右に動き始めますが、 これではうまく動作しない場合があります。 </para><para>クレーンが左上で停止しているときはこれだけでよいのですが、 次のような可能性もあるからです。 </para><itemizedlist><listitem><para>クレーンが動作中である </para></listitem><listitem><para>クレーンが別の位置にある </para></listitem></itemizedlist><para>こんな場合にAボタンが押されたときも、同様に動作させるには </para><itemizedlist><listitem><para>クレーンを動かしているスクリプトを停止する </para></listitem><listitem><para>クレーンを左上に配置する </para></listitem></itemizedlist><para>を行ってから </para><itemizedlist><listitem override="none"><para>スクリプト１をスタート </para></listitem></itemizedlist><para>すればよい。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane37.png"/></imageobject><textobject><phrase>crane37.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>クレーンが左上で止まっているときしかAボタンが押せない ようにすることも可能ですが、 その場合は初期化のためのボタンがもう１つ必要です。 </para><!--rule (<hr>) is not applicable to DocBook--></section><section><title>Bボタンが押されたとき</title><para>Bボタンが押されたときは、スクリプト１を停止し、スクリプト２をスタートすればよい。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane38.png"/></imageobject><textobject><phrase>crane38.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><section><title>応用問題</title><para>クレーンが右に移動中でないときにBボタンが押されたときには、 反応しないようにしてください。 </para><para>ヒント </para><itemizedlist><listitem override="none"><para>クレーンの位置を使って判定する </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--></section></section><section><title>クレーンの動作</title><para>クレーンの状態図はこのように書ける。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane39.png"/></imageobject><textobject><phrase>crane39.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>他に動作がおかしな点があるかもしれません。 </para><itemizedlist><listitem override="none"><para>発見するにはシナリオを </para></listitem><listitem override="none"><para>動作を検討するには状態図を </para></listitem></itemizedlist><para>使うとよい。 </para><!--rule (<hr>) is not applicable to DocBook--></section><section><title>ぬいぐるみの動作</title><para>ぬいぐるみの状態は次の３つが考えられます。 </para><itemizedlist><listitem override="none"><para>止まっている。 </para></listitem><listitem override="none"><para>クレーンでつかまれている。 </para></listitem><listitem override="none"><para>クレーンから開放されて落ちている。 </para></listitem></itemizedlist><para>状態図にするとこのようになります。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane40.png"/></imageobject><textobject><phrase>crane40.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>状態の数が少なく、状態の変わり方も単純なので、 １つのスクリプトで書けそうです。 </para><para>このように場合分けできます。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane41.png"/></imageobject><textobject><phrase>crane41.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>テストタイル２つを組み合わせて記述できます。 </para><itemizedlist><listitem override="none"><para>１つめのテストタイルの「いいえ」のところに２つめのテストタイルを入れる </para></listitem></itemizedlist><section><title>クレーンと一緒に動く</title><itemizedlist><listitem override="none"><para>ぬいぐるみの座標をクレーンの座標と同じにすれば、クレーンの動きと一緒にぬいぐるみを動かすことができます。 </para></listitem><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane15.png"/></imageobject><textobject><phrase>crane15.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><para>クレーンでつかまれているかどうかの判定は<emphasis role="strong">タートルへの距離</emphasis>を用いて行えます。 </para><itemizedlist><listitem override="none"><para><emphasis role="strong">タートルへの距離</emphasis>は２つのオブジェクトの中心位置の距離を求めるものです。 </para></listitem><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane12.png"/></imageobject><textobject><phrase>crane12.png</phrase></textobject></inlinemediaobject> </para></listitem><listitem override="none"><para>このように記述すると、距離が３０より小さいときぬいぐるみがクレーンと一緒に動きます。 </para></listitem><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane11.png"/></imageobject><textobject><phrase>crane11.png</phrase></textobject></inlinemediaobject> </para></listitem><listitem override="none"><para>クレーンの中心位置と距離の数値をうまく調整して、赤丸の範囲にぬいぐるみの中心位置が入っているかどうか判定できるようにします。 </para></listitem><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane14.png"/></imageobject><textobject><phrase>crane14.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist></section><section><title>クレーンから落ちるとき</title><itemizedlist><listitem override="none"><para>下方向に動かすにはｙ座標を使うのが簡単です。 </para></listitem><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane16.png"/></imageobject><textobject><phrase>crane16.png</phrase></textobject></inlinemediaobject> </para></listitem><listitem override="none"><para>ある色に触れるまで落ちるようにするにはこのように書きます。 </para></listitem><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane18.png"/></imageobject><textobject><phrase>crane18.png</phrase></textobject></inlinemediaobject> </para></listitem><listitem override="none"><para>下の方に何かを描いておき、その色を判定に使う例です。 </para></listitem><listitem override="none"><para>y座標で判定してもよい。 </para></listitem><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane17.png"/></imageobject><textobject><phrase>crane17.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist></section><section><title>３つの状態をまとめると</title><itemizedlist><listitem override="none"><para>クレーンにつかまれている時は </para><itemizedlist><listitem override="none"><para>クレーンと一緒に動く </para></listitem></itemizedlist></listitem><listitem override="none"><para>そうではなくて </para><itemizedlist><listitem override="none"><para>指定の色に触れている時は </para><itemizedlist><listitem override="none"><para>止まっている </para></listitem></itemizedlist></listitem><listitem override="none"><para>そうでない時は </para><itemizedlist><listitem override="none"><para>下に動く </para></listitem></itemizedlist></listitem></itemizedlist></listitem></itemizedlist><para>となり、次のように記述できます。 </para><itemizedlist><listitem override="none"><para><inlinemediaobject><imageobject><imagedata fileref="http://ei-www.hyogo-dai.ac.jp/~masahiko/moin.cgi/%E3%82%AF%E3%83%AC%E3%83%BC%E3%83%B3%E3%82%B2%E3%83%BC%E3%83%A0?action=AttachFile&amp;do=get&amp;target=crane19.png"/></imageobject><textobject><phrase>crane19.png</phrase></textobject></inlinemediaobject> </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--></section></section><section><title>完成まで</title><para>Aボタンが押されたときのスクリプトに </para><itemizedlist><listitem override="none"><para>ぬいぐるみを適当な場所に配置し、 </para></listitem><listitem override="none"><para>ぬいぐるみのスクリプトをチクタクにする処理を </para></listitem></itemizedlist><para>追加します。 </para><para>クレーンが元の位置までもどったとき、 つかんでいたぬいぐるみが落ちるようにする方法を考えてください。 </para><para>本物のように動作させるには細かな調整が必要かもしれません。 </para><para>いろいろ工夫して楽しい作品にしましょう。 例えば </para><itemizedlist><listitem override="none"><para>景品をたくさん置いてみたり </para></listitem><listitem override="none"><para>取りやすいものと取りにくいものを作り分ける </para></listitem><listitem override="none"><para>取り出し口の動きを考える </para></listitem></itemizedlist><para>など </para></section></section></article>