hytopia
Version:
The HYTOPIA SDK makes it easy for developers to create massively multiplayer games using JavaScript or TypeScript.
184 lines (84 loc) • 2.81 kB
Markdown
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index.md) > [server](./server.md) > [PlayerManager](./server.playermanager.md)
## PlayerManager class
Manages all connected players in a game server.
**Signature:**
```typescript
export default class PlayerManager
```
## Remarks
The PlayerManager is created internally as a global singleton accessible with the static property `PlayerManager.instance`<!-- -->.
<h2>Events</h2>
This class emits global events with payloads listed under [PlayerManagerEventPayloads](./server.playermanagereventpayloads.md)
The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `PlayerManager` class.
## Example
```typescript
import { PlayerManager } from 'hytopia';
const playerManager = PlayerManager.instance;
const connectedPlayers = playerManager.getConnectedPlayers();
```
## Properties
<table><thead><tr><th>
Property
</th><th>
Modifiers
</th><th>
Type
</th><th>
Description
</th></tr></thead>
<tbody><tr><td>
[instance](./server.playermanager.instance.md)
</td><td>
`static`
`readonly`
</td><td>
[PlayerManager](./server.playermanager.md)
</td><td>
The global PlayerManager instance as a singleton.
</td></tr>
<tr><td>
[playerCount](./server.playermanager.playercount.md)
</td><td>
`readonly`
</td><td>
number
</td><td>
The number of players currently connected to the server.
</td></tr>
<tr><td>
[worldSelectionHandler?](./server.playermanager.worldselectionhandler.md)
</td><td>
</td><td>
(player: [Player](./server.player.md)<!-- -->) => Promise<[World](./server.world.md) \| undefined>
</td><td>
_(Optional)_ Optional handler for selecting the world a newly connected player joins. Returning no world results in the player joining the default WorldManager world.
</td></tr>
</tbody></table>
## Methods
<table><thead><tr><th>
Method
</th><th>
Modifiers
</th><th>
Description
</th></tr></thead>
<tbody><tr><td>
[getConnectedPlayerByUsername(username)](./server.playermanager.getconnectedplayerbyusername.md)
</td><td>
</td><td>
Get a connected player by their username (case insensitive).
</td></tr>
<tr><td>
[getConnectedPlayers()](./server.playermanager.getconnectedplayers.md)
</td><td>
</td><td>
Get all connected players.
</td></tr>
<tr><td>
[getConnectedPlayersByWorld(world)](./server.playermanager.getconnectedplayersbyworld.md)
</td><td>
</td><td>
Get all connected players in a specific world.
</td></tr>
</tbody></table>