property
4 分
ZEPETOScriptによって公開されているプロパティをチェックしてください。
プロパティは、インスペクターで編集できるコンポーネントの設定とオプションです。
プロパティを使用すると、GameObjectsや他のコンポーネントの状態とデータを管理し、外部からのアクセスを制御できます。

ZEPETOScriptはTypeScriptをプログラミング言語として基にしており、 そのため、プロパティ宣言には以下の構文が使用されます。
AccessModifier propertyName: propertyType;
ex)
public playerNumber: float;
private playerLocation: Vector3;
この方法で宣言されたプロパティはインスペクタに表示され、そこに値やオブジェクトを割り当てることができます。 割り当てた値は、後でランタイムで初期化されます。
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Vector3, GameObject, Transform } from 'UnityEngine';
export default class Properties extends ZepetoScriptBehaviour {
public floatValue: float;
public strValue: string;
public gameObj: GameObject;
public transformValue: Transform;
public vectorValue : Vector3;
}

ZEPETOScript内からプロパティにアクセスするには、this.property Nameを使用します。
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Vector3, GameObject, Transform } from 'UnityEngine';
export default class Properties extends ZepetoScriptBehaviour {
public floatValue: float;
public strValue: string;
public gameObj: GameObject;
public transformValue: Transform;
public vectorValue : Vector3;
Start() {
console.log(`floatValue : ${this.floatValue}`);
console.log(`strValue : ${this.strValue}`);
}
Update() {
// Cube_Aを回転させる
const transform = this.gameObj.GetComponent<Transform>();
transform.Rotate(this.vectorValue);
// Cube_Bを回転させる
this.transformValue.Rotate(this.vectorValue);
}
}
複数のプロパティを使用する場合は、ZEPETOScriptの配列で宣言してください。 プロパティはインスペクタの配列に表示され、異なる要素のデータを入力できます。
public floatValues: float[];

スクリプトで属性を宣言すると、インスペクタでプロパティを制御できます。
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Transform } from 'UnityEngine';
export default class Attribute extends ZepetoScriptBehaviour {
// シリアライズする必要のないパブリックプロパティ
@NonSerialized()
public strValue: string;
// インスペクタに表示されるべきでないプロパティ
@HideInInspector()
public strValue2: string;
// シリアライズする必要のあるプライベートプロパティ
@SerializeField()
private strValue3: string;
// プロパティの上にヘッダーを追加
@Header("ヘッダータイトル")
public stringProperty: string;
// プロパティの間にスペースを追加
@Space(10)
public numberProperty: number;
// プロパティにマウスを置いたときに表示されるツールチップを追加
@Tooltip("これはツールチップです")
public transformProperty: Transform;
Start() {
}
}
属性が適用されたときの例の画面は以下の通りです。

ZEPETOScriptで利用可能な属性については、以下のガイドを参照してください。
📘 以下のガイドを参照してください。 [ZEPETOワールドで利用可能なUnity関数のリスト]