财产
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 名称。
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 World 中可用的 Unity 函数列表]