Unity チュートリアルのタワーディフェンステンプレートを触ってみる(17)では LaserTower_0 に追加した AttackAffector コンポーネントの継承関係にある Affector を行った。今回は LaserTower_0 に追加した AttackAffector コンポーネントのインタフェースにある ITowerRadiusProvider の解説を行っていく。
1.標的設定と砲撃編 – ITowerRadiusProvider.cs
ITowerRadiusProvider.cs について稚拙ながら解説
「ITowerRadiusProvider.cs」は「Assets/Scripts/TowerDefense/Towers/ITowerRadiusProvider.cs」の指しておりスクリプトについては以下の通り。内容としては ITowerRadiusProvider インタフェースとするクラスで作成する関数の定義を行っている。
[cce_csharp]using TowerDefense.Targetting; using UnityEngine; namespace TowerDefense.Towers { /// <summary> /// An interface for tower affectors to implement in order to visualize their affect radius /// </summary> public interface ITowerRadiusProvider { float effectRadius { get; } Color effectColor { get; } Targetter targetter { get; } } }[/cce_csharp]
11行目 : 「float effectRadius { get; }」は効果が発生する半径を取得する関数を作る必要があること指している。
12行目 : 「Color effectColor { get; }」は効果が発生する色を取得する関数を作成する費用があることを指している。
13行目 : 「Targetter targetter { get; }」は Taggetter を取得する関数を作る必要があることを指している。