LINE entryでプログラミング入門 第7回 変数を使ったくじ引きゲームを作ろう
本記事は2021年05月14日にLINE entry公式ブログにて掲載されたものを再掲載した記事です。
はじめての人でもプログラミングを楽しめる入門講座、前回は「乱数」を学びました。くじ引きのようにボックスの中身がランダムに変わるプログラムを作ることができたと思います。
前回の記事はこちら
LINE entryでプログラミング入門 第6回 ランダムに結果を変えよう
前回作ったプログラムではプログラムを実行するとボックスの中に宝物かトゲが入っているというプログラムでした。しかし、いくつかの中から自分で選んで宝物を見つけることができた方がおもしろいと思いませんか?
今回は「変数」という考えを学んで前回のプログラムを改造してみましょう。まずは前回の記事を読み、乱数でボックスの中身を変えるプログラムを作ってから、以下の作業を行なってください。
「変数」を知ろう
「変数」とは数値や文字といった値を入れることのできるものです。身近な物の中では箱をイメージするといいでしょう。「変数」という箱には自由に名前をつけることができ、その箱の中に数値や文字を入れることができます。
まずは、変数を作るところから始めましょう。
「属性」タブをクリック
「変数」をクリック
「変数を作成する」をクリック
変数の名前(今回は「あたり」)を入力
「保存」をクリック
これで「あたり」という変数を作ることができ、変数を使う準備ができました。「ブロック」タブをクリックすることでブロックを使う画面にもどります。
なお、作成した変数「あたり」のとなりの目のマークのボタンをクリックすると実行画面左上に表示された変数の名前と値を非表示にすることができます。今回は、プログラムが完成したら非表示にして遊びましょう。
作った変数は「データ」カテゴリーから使うことができますよ。
それでは前回のプログラムに「データ」カテゴリーから「”あたり”を”10”にする」ブロックと「”あたり”の値」ブロックを取り出し、下の図のように組み合わせてブロックの数値を「10」から「1」に変えてください。
プログラムができたら実行してみましょう。実行画面の左上に表示されていた変数「あたり」の数値が0から1に変わり、開いたボックスの中身が宝物になれば成功です。
今作ったプログラムでは、
①スタートボタンをクリックした時に数値を「1」にする
②条件で変数「あたり」の値が1のとき「ボックス_3(宝物)」のイラストに変える
という手順となっているので宝物が表示されました。変数「あたり」にほかの数値(2や3)、文字などを入れたらどうなるでしょうか? 答えは書きませんので、自分で「”あたり”を”1”にする」ブロックの「1」をほかの数値や文字に変えて試してみましょう。
変数を使ったくじ引きを作ってみよう
さらにボックスを3つ追加して4つボックスの中から宝物を見つけるゲームを作ってみましょう。「+」ボタンをクリックしてボックスを追加し、画面左下のキャラクターレイヤーから4つのボックスのX座標とY座標を以下の数値に変えてください。
ボックス ( X:-100 Y:50)
ボックス1 (X:100 Y:50)
ボックス2 (X:-100 Y:-50)
ボックス3 (X:100 Y:-50)
それではキャラクターレイヤーからボックスをクリックして選択しプログラムを改造します。
「開始」カテゴリーから「キャラクターをクリックした時」ブロック、「計算」カテゴリーから「”0”から”10”間の乱数」ブロックを取り出し下の図のように組み合わせ、「”1”から”4”間の乱数」に変えましょう。
こうすることで、
①「あたり」という名前の変数に1~4の間のどれかの数字を入れる
②キャラクターをクリックしたら、変数「あたり」の中身を見て、もし1なら宝物のイラストに変える
③変数「あたり」の中身が1でないのならトゲのイラストに変える
というプログラムになりました。
「あたり」という名前の変数(箱)は、プログラムのほかの場所から中身を見ることができるのです。
ほかのボックス1~3はどのようにプログラミングすればいいでしょうか?
ほかのボックスのプログラミングしてみよう
変数「あたり」の値はスタートボタンをクリックしたときに乱数で決まるので、ほかのボックスではキャラクターをクリックしたときの動作だけプログラミングすればOKです。ボックスで設定した「キャラクターをクリックした時」ブロックを右クリックして現われたメニューから「コピーする」をクリックしてください。
すると何も起こっていないように見えますが、パソコンの中にコピーができています。次はキャラクターレイヤーから「ボックス1」をクリックしてプログラミングをします。ブロックを組み立てるプログラムエリアの何もないところで右クリックして現われたメニューから「貼り付ける」をクリックします。すると「ボックス」で作ったプログラムと同じものが表示されます。もし「貼り付ける」がクリックできなかったり、違うプログラムが出てきた場合はもう一度コピーするところからやり直してみましょう。
ボックスと同じプログラムができたら条件カテゴリーのブロックの「もし "あたり"の値 = "1"なら」の「1」を「2」に変えます。「スタートボタンをクリックした時」と変数「あたり」に乱数を入れるブロックはコピーしてはいけません。
ほかの「ボックス2」、「ボックス3」にも同じようにプログラムを貼り付けてそれぞれ条件の「1」を「3」、「1」を「4」に変えて完成です。スタートボタンをクリックし、ボックスをクリックすると、4つの内どれか1つが宝物、ほかはトゲが出てくるか確認しましょう。
今回はここまで。
変数に数値を入れておき、変数の値によってキャラクターごとの結果を変えました。変数はプログラミングをするときにとても重要な考え方です。複雑なプログラムになるほど変数を使ってプログラミングをすることが多くなるので覚えておきましょう。
これまでの記事はこちら
LINE entryでプログラミング入門 第1回 プログラムを動かそう
LINE entryでプログラミング入門 第2回 コニーを歩かせよう
LINE entryでプログラミング入門 第3回 くり返しをくり返してみよう
LINE entryでプログラミング入門 第4回 「くり返し」の動作をくり返そう
LINE entryでプログラミング入門 第5回 キーボードでブラウンを動かそう
LINE entryでプログラミング入門 第6回 ランダムに結果を変えよう