投稿
まげ MAGE_LOVEMARINE
スプライトを使った1画面アナログ時計プログラムです。スプライトは角度を設定できるので、三角関数を使わずに済みます。
7そうだね
プレイ済み
返信[1]
親投稿
まげ MAGE_LOVEMARINE
説明忘れてました。Bボタンを押すと止まります。ちなみにSTOPボタンで止めると、秒針の動きにSPANIMを使っているため、秒針だけが止まりません(^^;)。 もちろん改造OK、二次使用OKです。
0そうだね
プレイ済み
返信[2]
親投稿
V.D. 5962-63214-97513
使ってみました。おもしろいです。
0そうだね
プレイ済み
返信[3]
親投稿
まげ MAGE_LOVEMARINE
>Hanazinさん さっそく打ち込んでくださったんですね! ありがとうございます!
0そうだね
プレイ済み
返信[4]
親投稿
まげ MAGE_LOVEMARINE
せっかくなので、1行ずつ解説してみますね。(長文になります) 1/プチコン初期化(画面を消したり、スプライトをリセットしたり…)。 2/どの座標を中心に時計を表示するか設定。 3/ここから、下にある「NEXT」(行番号5)までの間を、変数「I(アイ)」が0から2になるまで(1ずつ足していって)繰り返す。 4/スプライト背番号I(0〜2に変化。以下同様)の絵を、登録番号259(細目の三角)に設定。   同じく背番号Iの軸を、「針の左右の中心・上下の一番下からちょっと上」の位置に設定。   同じく背番号Iの位置を、指定した座標(行番号2)に設定。その際、背番号の多いスプライトほど、奥に表示されるようにする(「1+I」の部分)。なお、背番号0が時針、1が分針、秒針2がになります。 5/ここから、上にある「FOR」(行番号3)までの間を繰り返す(ここで、Iに1足される)。 【次コメントに続く】
0そうだね
プレイ済み
返信[5]
親投稿
まげ MAGE_LOVEMARINE
11/現時刻を読み取って、時間を変数H、分を変数M、秒を変数Sに入れる。 12/スプライト背番号2(秒針)の角度を、現時刻の秒と合うよう計算する。円を1周する角度360を時計1周の秒数60で割り算すると、1秒に移動する角度が出る。それにS(現在の秒数)をかけ算することで、スプライトを何度かたむければいいかがわかる。 13/同じく背番号2の動き(アニメ)を指定。「R+」は角度を変更させるゾという宣言。次の数値「-60*60」は移動にかける時間(1で1/60秒。60*60で3600秒=1分。マイナスをつけると、スムーズなアニメになる)。次の数値「360」は変化する角度(円1周分)。次の数値「0」は、繰り返すかどうかのサイン(繰り返さない時は「1」)。一度アニメ設定すると、以後は止める命令(SPSTOPなど)をするまで、例えSTOPボタンを押しても、アニメし続けます。 【次コメントに続く】
0そうだね
プレイ済み
返信[6]
親投稿
まげ MAGE_LOVEMARINE
15/ここから、下にある「UNTIL」(行番号21)までの間を繰り返す。 16/現時刻を読み取って、時間を変数H、分を変数M、秒を変数Sに入れる。 17〜18/秒の場合(行番号12)と同様に、時針・分針の角度を計算する。「H MOD 12」は、「TMREAD」で取り出す時間が24時間制なので、それを12時間制の数字に変換するもの。…あとは、時針1周が12時間、分針1周が60分であることを考えて、読み取ってください(^^;)。(実際のアナログ時計同様に、分や秒による微妙な角度の変化を加算しています) 19〜20/時針・分針を、計算した角度に設定。 21/ボタン番号32(Bボタン)が押されるまで、ここから、上にある「REPEAT」(行番号15)までの間を繰り返す。 22/スプライトのアニメを停止。 以上です。わかりづらかったらゴメンなさい。
0そうだね
プレイ済み
返信[7]
親投稿
まげ MAGE_LOVEMARINE
わ。説明の行番号、3〜5にかけて、ひとつズレてました。1つ足してください。それと、7〜9の説明が抜けてますね。それぞれの針の大きさ(長さ)とカラーを設定しています。…あ、誤字みっけ。「秒針2がに」は「2が秒針に」です。…ぐだぐだだなぁ(^^;)。
0そうだね
プレイ済み