มัลติเพลย์ รูม
👍 กระบวนการเชื่อมต่อห้อง
- ขอเชื่อมต่อจากลูกค้า
- เซิร์ฟเวอร์ ZEPETO Multiplay สร้าง Client Session และเชื่อมต่อกับห้อง
- ถ้าห้องเชื่อมต่อสำเร็จ
- แชร์ Room ID และ Session ID ที่เชื่อมต่อกับลูกค้า
- ถ้าลูกค้าไม่สามารถเข้าถึงห้อง
- สร้างห้องใหม่และเชื่อมต่อ
โค้ดเซิร์ฟเวอร์ควรจะถูกนำไปใช้ในแพ็คเกจ World.multiplay → ไฟล์ index.ts.
เซิร์ฟเวอร์ให้เหตุการณ์วงจรชีวิตห้องต่อไปนี้:
เหตุการณ์วงจรชีวิตห้อง | คำอธิบาย |
---|---|
onCreate(options: SandboxOptions) | เรียกเมื่อห้องถูกสร้างขึ้นแล้ว สามารถเพิ่มตรรกะการเริ่มต้นห้องได้ที่นี่ |
onJoin(client: SandboxPlayer) | เรียกเมื่อไคลเอนต์เข้าร่วมห้อง พารามิเตอร์ไคลเอนต์ (SandboxPlayer) จะมี sessionId ของไคลเอนต์ |
onLeave(client: SandboxPlayer, consented?: boolean) | เรียกเมื่อไคลเอนต์ออกจากห้อง พารามิเตอร์ consented จะเป็น true เมื่อการตัดการเชื่อมต่อถูกขอโดยไคลเอนต์ |
onTick(deltaTime: number) | เรียกเหตุการณ์ช่วงเวลาในฝั่งเซิร์ฟเวอร์ สามารถตั้งค่าช่วงเวลาได้ใน SandboxOptions (tickInterval : 100ms) |
- เหตุการณ์ OnLeave() จะเกิดขึ้นเมื่อคุณกด 'ปุ่มโฮม > ออกจาก' ที่มุมซ้ายบนระหว่างสถานะการทดสอบบนมือถือ
- เหตุการณ์ OnLeave() จะไม่เกิดขึ้นใน Unity editor
หากคุณสนใจใน ZEPETO.Multiplay Server API โปรดดูเอกสาร:
📘 โปรดดูคู่มือต่อไปนี้. [ZEPETO.Multiplay(Server) API]
ZepetoWorldMultiplay คอมโพเนนต์ให้ส่วนติดต่อสำหรับลูกค้าในการสมัครสมาชิกเพื่อเข้าร่วมกิจกรรมการเล่นในโลก (ห้อง) จากเซิร์ฟเวอร์ ZEPETO Multiplay.
รายการของกิจกรรมที่มีอยู่:
ห้อง EventListener | คำอธิบาย |
---|---|
RoomCreated(Room) | เรียกเมื่อห้องถูกสร้างและสามารถเข้าถึงได้ ให้พารามิเตอร์ห้อง |
RoomJoined(Room) | เรียกเมื่อห้องเชื่อมต่อ ให้พารามิเตอร์ห้อง |
RoomLeave(RoomLeaveEvent) | เรียกเมื่อมีการตัดการเชื่อมต่อจากห้อง ให้พารามิเตอร์ RoomLeaveEvent |
RoomReconnected(Room) | เรียกเมื่อห้องที่เกี่ยวข้องเชื่อมต่ออีกครั้ง ให้พารามิเตอร์ห้อง |
RoomError(RoomErrorEvent) | เรียกเมื่อเกิดข้อผิดพลาดในห้องที่เกี่ยวข้อง ให้พารามิเตอร์ RoomErrorEvent |
RoomWeakConnection | เรียกเมื่อการเชื่อมต่อไม่เสถียร |