スモウルビー-大きくする

スモウルビーの使い方にはだいぶ慣れてきたでしょうか?

まだ不安な方がいたら下記の記事をご覧ください。

今回はスプライトをグルグルと回してみたいと思います。

回すのに何度も回る命令をしていては面倒なので繰り返しを使ってみましょう。

繰り返しはプログラミングにおける基本的な処理の1つです。

プログラミングの基本的な処理について知りたい方は以下の記事をご覧ください。

最終的にはグルグルと回しながらスプライトを大きくさせるということをやってみます。

それではやってみましょう!

スプライトをグルグルと回してみる

まずはスプライトをグルグルと回してみることからはじめましょう。

グルグルと回すためにはブロックでいうと「動き」のグループに「15度回す」を使っていました。

これをRubyで書くと以下のようになります。

self.when(:flag_clicked) do
    turn_right(15)
end

最初の『self.when(:flag_clicked)』は緑のはたです。

ブロックはクリックで動作の確認ができましたがコードからは確認がしづらいので最初につけるようにしましょう。

次の『turn_right(15)』が右に15度回すです。

英語が少しわかればそのままなので非常にわかりやすいです。

turn_rightが右に回れと言う命令でカッコのなかの15が回る度数を指示しています。

コードがかけたら緑の旗をクリックしてみましょう。

スプライトが右に回転してくれればOKです。

でも何度もクリックするのがすごく大変ですね。

次はスプライトに自動でグルグル回ってもらうようにしましょう!

スプライトを自動でグルグルと回してみる

カチカチとクリックしなくてもグルグルとスプライトに回ってもらいましょう。

自動で回ってもらうには繰り返し処理を使います。

繰り返し処理は「制御エリア」にある「ずっと」ブロックを使っていました。

『右に15度回す』ブロックを『ずっと』ブロックの中にいれるような形にしていました。

どうようにRubyでも書いていきましょう。

Ruybでずっとを命令するには 『loop do ~ end』を使います。

『~』の部分にある命令をずっと繰り返します。

実際にコードを書くといかのような形です。

self.when(:flag_clicked) do
    loop do
        turn_right(15)
    end
end

上記のようにできたら緑の旗を押して動きを確認してみましょう。

どうでしょう1回クリックするとずっとグルグル回ってくれますね。

あんまり見すぎると目が回ってしまうのでほどほどにして緑のはたのとなりにある赤のSTOPボタンをクリックします。

そうすると止めることができます。

スプライトを自動でグルグルと回しながら大きくしてみる

ずっとグルグル回すことができましたね。

最後にもう1つくわえてみましょう。

スプライトをグルグル回しながら巨大化してみましょう。

大きくするには「見た目エリア」に「大きさを10ずつ変える」ブロックを使っていました。

大きさを10ずつ変えるをテキストにすると以下のように書きます。

self.size = self.size + 10

『self』は自分のことです。

ここでは猫のスプライトのことになります。

『.』は 『の』とか『は』だと思ってもらって大丈夫です。

そして『size』が大きさのことですね。

猫のスプライトのサイズということになります。

そして『=』ですが普段の算数では同じという意味でつかっていましたよね。

ただプログラミングでは同じではなく代入するになります。

値を設定するということです。

ここまで説明したことで考えると以下のような処理をしています。

猫のスプライトのサイズを猫のスプライトのサイズに10足す。

自分のサイズを10大きくしているということですね。

このプログラムを「ずっと」の中に入れてみましょう。

それでは実行してみましょう。

self.when(:flag_clicked) do
    loop do
        turn_right(15)
        self.size = self.size + 10
    end
end

迫力のある動きになりましたね、おめでとうございます!

スプライトを元の大きさに戻したい人はこちらを参考にするか以下のようなブロックを用意すると便利です。

スプライトをもとに戻す

ちなみにサイズを大きくするところですこし短縮した書き方をすることができます。

self.size += 10

上記のようにかけます、書き直して実際に動かすとまったく同じ動きをしてくれます。

Rubyは同じ命令を短縮して書くことができ面白いので慣れてきたらいろいろと試しながらやってみるようにしましょう。

本日はここまでお疲れさまでした。

おすすめの記事