第12回「キャラクターの移動(2)」さて、たまひよ塾も連載10回を越える、この時に、前回の疑問符に答えを提示するつわものが現れました。命令を使って、画像移動後に残る矩形の部分を白塗りしてみました。画像の異動が荒いために、がくがくしていたのを1回の移動距離を短くすることによって、動きをスムーズにしました。して待ち時間を短くしました。いう条件を付けました。これでOKでしょうか。(矢野重文さん)矢野さん、たまひよ塾へのお便りありがとうございます。プログラムは工夫しながら作り上げていくことがすごく大事です。命令の位置を変えたりする試行錯誤もすてき、動きをスムーズにしようという思いもナイスです。boxf命令を使うアイデアがよかったですね。前回の解答編、まいりましょうか。キャラクター画像移動時の残像を消すには、boxf命令を使って残像の残る範囲を塗りつぶします。画像:onitama.jpghttp://www.hspcenter.com/hsptvm/archives/onitama.jpg(WEBブラウザで表示後、右クリックで画像を保存。10loop;----------------------------------------一つ移動先にコピーする度に残像が残るわけですが、さらにカンペキを目指すならこれも見えないようにすることができます。それにはredraw命令を使います。redraw命令は画面の更新を制御する命令です。指定すると、書き換えた画面が実際の画面にも反映されます。すると完璧に画像もチラつかせずに移動させることができます。第9回このコーナーでは、HSP3の変わった使用例や、気がつきにくい機能などを紹介していきたいと思います。今回は実数の乱数を得る方法についてご紹介します。乱数は、通常rnd関数というもので得られます。0から9までの10通りの乱数が欲しい時は、「変数=rnd(10)」のように書けば、乱数が変数に代入されます。rnd関数はあくまでも実用の範囲内で簡易的に求められており、その範囲も整数で32768通り(15bit精度)までとなっています。精度が足りないことがあります。そこで、HSP3からは拡張プラグインHSPDAに実数で乱数を取得するための命令が追加されています。以下のスクリプトは、実数の乱数を20回表示するものです。"実数で0~1までの乱数を生成します。Twisterと呼ばれる優れたアルゴリズムを使用しています。詳しくは、以下のページを参照してみてください。画像を回転する”の続編としてgsquare命令を使ってみます。これは、ヘルプの説明では”任意の4点を持つ四角形をコピーまたは塗りつぶします。画像を台形に変形しながらコピーしたりも出来るので、なにか面白い効果につかえるかもしれないね。ちなみに、サンプルでは文字を変形してるけど、かわりに画像を変形させてもOK。座標を配列で指定するというのが、ちょっと難しいかな?いろいろ数値を変えて、実験して覚えてね。メルマガ投稿募集中”HSPTV!メルマガ”への投稿をお待ちします。募集するコーナーは(1)「教えて!おにたま!!」HSPの素朴な疑問をHSPの作者おにたま氏に聞いてみよう!というコーナー。知りたいテクニックなどを直接聞くチャンス。(2)「オススメホームページ」あなたのオススメするホームページを紹介します。・URL・何がオススメポイントなのかをメールで教えてください。(3)「うしくんの名前募集」HSPTVサイトで見かける”うしくん”に名前を付けてね。タイトルに”【うしくんの名前】”を書いてメールでお願いします。これ以外にも”こんな事をやって欲しい”、”週刊にして欲しい”などのメルマガに関する要望や感想、日常のふつうのお便りもお待ちしています。[PR]オススメHSP3の本HSP3がよく分かる1冊。ゲームのノウハウも沢山つまってます。"HSP教室"をHSP3用に更新しました。http://www.vector.co.jp/soft/win95/prog/se069610.html久々にフリーウェアを更新。いまごろバージョン3に対応です。暇な人はみてみてね~~。23:10口臭チェッカ。