สวัสดี ZEPETOScript
ZEPETOScript คืออะไร?
- ZEPETOScript เป็นภาษาสคริปต์ที่ใช้สำหรับสร้าง ZEPETO World.
- รองรับภาษาการเขียนโปรแกรม TypeScript.
- ZEPETOScript ถูกออกแบบมาเพื่อกำหนดพฤติกรรมและฟังก์ชันภายใน ZEPETO World รวมถึง:
- การเคลื่อนไหว ฟิสิกส์ และการโต้ตอบของวัตถุ.
- การจัดการเหตุการณ์ รวมถึงการป้อนข้อมูลของผู้ใช้.
- สืบทอดจากคลาส ZepetoScriptBehaviour ซึ่งออกแบบมาให้เข้ากันได้กับอินเทอร์เฟซ MonoBehaviour ของ Unity.
- สามารถแนบกับ GameObjects ที่ใช้งานอยู่ในฉากเพื่อการดำเนินการ.
❗️ ระวัง
- เมื่อพัฒนาสำหรับ ZEPETO World สคริปต์ C# จะไม่รวมอยู่ในแพ็คเกจการสร้าง.
- ตรวจสอบให้แน่ใจว่าใช้เฉพาะ ZEPETOScript เท่านั้น.
บทเรียน Hello World
ขั้นตอนที่ 1 : การสร้าง ZEPETOScript
ในการสร้างไฟล์ ZEPETOScript ใหม่,
คลิก [Project] และเลือกไอคอน [+] ที่มุมซ้ายบนของแผง หรือคลิก Assets → Create → ZEPETO → TypeScript.

คุณสามารถเห็นว่า ZEPETOScript ใหม่ถูกสร้างขึ้นแล้ว ตามที่แสดงด้านล่าง.

ขั้นตอนที่ 2 : การเพิ่ม ZEPETOScript ลงใน GameObject
หากต้องการเพิ่ม ZEPETOScript ที่สร้างไว้ก่อนหน้านี้เป็นส่วนประกอบให้กับ GameObject ให้คลิกปุ่ม Add Component ในหน้าต่าง Inspector ของ GameObject

ในหน้าต่าง 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(`log : สวัสดีชาวโลก`);
console.warn(`warn : สวัสดีชาวโลก`);
console.error(`error : สวัสดีชาวโลก`);
}
}
ดูผลลัพธ์ของโค้ดทดสอบด้านล่างนี้.

ขอแสดงความยินดีที่คุณได้ทำการเรียนรู้ ZEPETOScript เสร็จสิ้นแล้ว!
สำหรับผู้ที่เคยพัฒนาด้วย C# ใน Unity หรือผู้ที่ใหม่กับการพัฒนา 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
- แทนที่จะใช้ประเภทข้อมูล Dictionary ของ C# ให้ใช้ประเภทข้อมูล Map ของ TypeScript เพื่อเก็บและจัดการคู่คีย์-ค่า
- ประเภทข้อมูลนี้สะดวกโดยเฉพาะในการจัดการข้อมูลผู้เล่นเมื่อทำการสร้างโลกแบบผู้เล่นหลายคน
- ตัวอย่างการใช้งานที่ง่ายของ 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