突然ですがちょっとこれをやっていくことにする。
Intermediate Scripting - Unity Learn
これが何かというと公式が出しているオンラインチュートリアルです。知らない間にやったこと管理できる機能付いてたんですね。
んで、なんでこれやるかですが。メイン関数にだらだらと長いコード書いたり、使い捨てのコードにオブジェクト貼り付けて利用する使い方しかしてない僕には不要と思っていましたが、そろそろちゃんと設計考えてコーディングできるようにならんとなとか思ったのでこれを少しずつ消化することにします。
プロパティやった。
今更ですが、クラスのメンバー変数 (フィールド) にアクセスする方法を学んだ。……知ってる。けども、こういうのをやったという記録を残したくてやってるので続けます。
Game.cs
using UnityEngine; public class Game : MonoBehaviour { void Start () { // Player Player myPlayer = new Player(); myPlayer.Experience = 5; int x = myPlayer.Experience; Debug.Log("X:"+x); } }
Player.cs
using UnityEngine; public class Player : MonoBehaviour { private int experience; public int Experience { get { Debug.Log("getExp:" + experience); return experience; } set { experience = value; Debug.Log("Exp:" + experience); } } public int Level { get { Debug.Log("getLevel:" + experience); return experience / 1000; } set { experience = value * 1000; Debug.Log("Level:"+experience); } } //スニペット prop+[TAB] public int Health { get; set; }
propスニペットあることを動画サイトみてはじめてしった。そんなのあったのか……。意外なところに学びがある。
ログ
Exp:5 getExp:5 X:5
以上
本当はここの項目で得た知識で実際に動くものをつくりたいなって思ってたんだけどこの記事書いているときは特に思いつかなかった。練習題材として適当なゲームの経験値テーブルを表示するアプリでもつくるかね……。
■ ToDo
・なんかのゲームの経験値テーブルアプリをつくる
まあなんかネタ思いついたら実装にうつします……。
とりあえず、こんな感じでUnity開発のための知見を深めていきたい。
次回は三項演算子です。三項演算子……知ってる、普段からめっちゃ使ってる……。
つづく