コウです、よろしくお願いします!
「ゼロからプログラミングを始める」人に役立つ情報を発信しています。
今回はDay63「違う型のインスタンスを使う」です。どうぞ!!
解答例
まずは解答例を確認しましょう。
コードは次のようになります。
解答例を動画で確認する
上記のコードを実行した結果がこちらになります。
ステージ攻略「違う型のインスタンスを使う」
それではステージを攻略していきましょう!
今回のクリア条件は、『宝石を2つ集める』ことです。
ステージは奥と手前に分かれていて、
それぞれ行き来することができません。
そこで、それぞれ特徴を持った2体を奥と手前に配置してクリアを目指します。
まずは初期化してエキスパートとキャラクターをステージに登場させましょう。
エキスパートとキャラクターを初期化
let expert = Expert()
let character = Character()
今回は、『Expert型』と『Character型』の2種類を宣言します。
宣言して、コードを実行すると2人は画像の位置に出現します。
ここから鍵を開けたり宝石を取ったりすることになります。
expertは赤で囲った部分、characterは緑で囲った部分をそれぞれ担当します。
コマンドを入力する
あとは2人の行動の順番にコマンドを入力していくのですが、
注意点があります。
それはそれぞれが型なので、
ドット表記をする必要があるということです。
ドット表記については↓から。
今まではcharacter(ByteやHopper)の行動に対して
ドット表記はしませんでしたよね。
しかし、今回はexpertとcharacterの2種類がいるので
どっちに対するコマンドなのかをはっきり区別する必要があります。
ドット表記をするのは面倒ですが、
expertかcharacterかどちらに対する命令かを明確にしましょう。
動くマスは全て連動する
前回もお伝えしましたが、動くマスは鍵を開けると全て連動します。
今回のステージではまずマスを上げる必要がありますが、
そうするともう1つのマスは2段分上がることになります。
そこで、Hopperがワープした後にexpertは鍵を2回開けています。
こうすることで2段分下がってちょうど通れるようになります。
まとめ:違う型のインスタンスを使う
初めてステージ上に2種類のキャラクターが存在しましたね!
今回のポイントを振り返りましょう。
- 特徴を持ったキャラクターを2種類それぞれ宣言できる
次回はDay64「力を合わせて」でお会いしましょう!それでは!!