---
title: การจำกัดการเข้าถึงห้องชั่วคราวใน Multiplay
slug: world-sdk-guide-th/multiplay
docTags: 
createdAt: 2024-09-02T08:34:13.135Z
---

คุณสามารถใช้ฟังก์ชันล็อคและปลดล็อคเพื่อจำกัดหรืออนุญาตการเข้าถึงห้องในเวลาที่คุณต้องการได้

:::hint{type="info"}
**📘&#x20;**&#xE01;รุณาอ้างอิงจากคู่มือต่อไปนี้ \[[ZEPETO.Multiplay(Server) API](https://developer.zepeto.me/docs/multiplay-server/classes/ZEPETO_Multiplay.Sandbox#lock)]
:::

## ล็อค

ฟังก์ชันล็อคเป็นฟังก์ชันที่จำกัดการเข้าถึงห้อง

```typescript
await this.lock();
```



## ปลดล็อค

ฟังก์ชันปลดล็อคเป็นฟังก์ชันที่อนุญาตให้เข้าถึงห้อง
แต่ถ้าจำนวนคนที่เชื่อมต่ออยู่ในขณะนี้เท่ากับจำนวนสูงสุดที่อนุญาตในห้อง ห้องจะไม่สามารถปลดล็อคได้

```typescript
await this.unlock();
```



## ตัวอย่าง

ต่อไปนี้คือตัวอย่างโค้ดที่ใช้ฟังก์ชันล็อกและปลดล็อก

```typescript
import { Sandbox, SandboxOptions, SandboxPlayer } from 'ZEPETO.Multiplay';

export default class extends Sandbox {

    onCreate(options: SandboxOptions) {

    }

    async onJoin(client: SandboxPlayer) {
        try {
            if (this.clients.length > 8) {
                await this.lock();
            }
        } catch(e) {
            console.error(e);
        }
    }

    async onLeave(client: SandboxPlayer, consented?: boolean){
        try {
            if (this.clients.length <= 8) {
                await this.unlock();
            }
        } catch(e) {
            console.error(e);
        }
    }
}
```

:::hint{type="success"}
## 👍 ความแตกต่างระหว่างฟังก์ชันล็อกและฟังก์ชันส่วนตัว

- ห้องมัลติเพลเยอร์ที่ล็อกจะไม่ปรากฏในรายการห้อง ZEPETO และไม่สามารถเข้าถึงได้โดยการเชิญ
- ห้องมัลติเพลเยอร์ส่วนตัวจะไม่แสดงในรายการห้อง ZEPETO แต่สามารถรับการเชิญได้
:::

