你好 ZEPETOScript
12 分
什么是 ZEPETOScript?
- ZEPETOScript 是一种用于创建 ZEPETO 世界的脚本语言。
- 它支持 TypeScript 编程语言。
- ZEPETOScript 旨在定义 ZEPETO 世界中的行为和功能,包括:
- 物体的运动、物理和交互。
- 处理事件,包括用户输入。
- 继承自 ZepetoScriptBehaviour 类,旨在与 Unity 的 MonoBehaviour 接口兼容。
- 可以附加到场景中的活动 GameObjects 以执行。
❗️ 注意
- 在为 ZEPETO 世界开发时,C# 脚本不包含在包构建中。
- 确保仅使用 ZEPETOScript 进行实现。
你好,世界教程
步骤 1 : 创建 ZEPETOScript
要创建一个新的 ZEPETOScript 文件,
点击 [项目] 并选择面板左上角的 [+] 图标,或点击资产 → 创建 → ZEPETO → TypeScript。

您可以看到一个新的 ZEPETOScript 已被创建,如下所示。

步骤 2 : 将 ZEPETOScript 添加到 GameObject
要将之前创建的 ZEPETOScript 作为组件添加到 GameObject,请单击 GameObject 的 Inspector 窗口中的 Add Component 按钮。

在Add Component窗口中,选择Zepeto Script Component。

点击Attach Zepeto Script中的Zepeto Script Component按钮。

在Attach Zepeto Script窗口中,选择之前创建的HelloWorld ZEPETOScript文件。

您可以将 HelloWorld ZEPETOScript 文件作为 Component 添加到 GameObject,如下图所示。

步骤 3 : 添加测试代码或发出日志
新生成的 ZEPETOScript 如下所示。您可以使用 Unity 的开发工具编辑该脚本。
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
export default class NewTypescript extends ZepetoScriptBehaviour {
Start() {
}
}
尝试在 Start 函数中添加日志代码,以测试 ZEPETOScript 是否移动。
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
export default class HelloWorld extends ZepetoScriptBehaviour {
Start() {
console.log(`日志 : 你好,世界`);
console.warn(`警告 : 你好,世界`);
console.error(`错误 : 你好,世界`);
}
}
请查看下面的测试代码输出屏幕。

恭喜你完成了ZEPETOScript教程!
对于那些之前在Unity中使用C#开发的人或那些新接触ZEPETO World开发的人,让我们深入了解ZEPETOScript的基础知识。
在ZEPETOScript中声明变量
- ZEPETOScript遵循TypeScript语法。
- 因此,在声明变量时声明类型是至关重要的。
- 变量声明示例:
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
export default class HelloZepetoScript extends ZepetoScriptBehaviour {
// 全局变量
private number: number = 10;
private floatNumber: number = 10.5;
private word: string = "ZEPETO!";
private isTrue: boolean = true;
private list : number[] = [1,2,3];
private listGeneric : Array<number> = [4,5,6];
Start() {
console.log(this.number);
console.log(this.floatNumber);
console.log(`你好, ${this.word}`);
console.log(this.isTrue);
console.log(this.list);
console.log(this.listGeneric);
// 局部变量
let a = 30;
const b = 40;
console.log(a);
console.log(b);
}
}
使用 Map 数据类型
- 与 C# 的 Dictionary 数据类型不同,使用 TypeScript 的 Map 数据类型来存储和管理键值对。
- 在实现多人游戏世界时,这种数据类型特别方便用于管理玩家数据。
- Map 的简单使用示例:
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
export default class HelloZepetoScript extends ZepetoScriptBehaviour {
private myMap = new Map<string, string>();
Start() {
this.myMap.set("Player1", "Ze");
this.myMap.set("Player2", "pe");
this.myMap.set("Player3", "to");
this.myMap.forEach((value, key) => {
console.log(key, value);
});
if(this.myMap.has("Player2")) {
let value: string | undefined = this.myMap.get("Player2");
console.log(value);
}
this.myMap.delete("Player2");
console.log(this.myMap.has("Player2"));
}
}
利用 JSON
在处理 JSON 格式的数据时,可以使用 TypeScript 的内置函数。
- 将 JSON 字符串转换为对象
- 使用 JSON.parse() 方法。
- 将对象转换为 JSON 字符串
- 使用 JSON.stringify() 方法。
- 使用 JSON 的示例:
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
export default class HelloZepetoScript extends ZepetoScriptBehaviour {
Start() {
let jsonData = '{"id":"USER1234", "name":"zepeto", "age":15}';
// 将 JSON 字符串转换为对象
let userObject : User = JSON.parse(jsonData);
console.log(userObject.id);
console.log(userObject.name);
console.log(userObject.age);
userObject.age = 16;
// 将对象转换为 JSON 字符串
let newJsonData = JSON.stringify(userObject);
console.log(newJsonData);
}
}
class User {
constructor(public id: string, public name: string, public age: number) {}
}
- 有关更详细的语法,请参考 TypeScript 文档