kickPlayer method
bool
kickPlayer( - Channel requester,
- Channel targetPlayer, {
- String message = '',
})
Implementation
bool kickPlayer(
Channel requester,
Channel targetPlayer, {
String message = '',
}) {
final room = getChannelRoom(requester);
if (room == null || room.getChannel(requester) != kAuthorityChannel) {
return false;
}
if (targetPlayer == kAuthorityChannel) return false;
final targetChannel = room.getPlayer(targetPlayer);
if (targetChannel == null) return false;
_joined.remove(targetChannel);
room._removePlayer(targetChannel);
_playerCount--;
_sendKickMessage(targetChannel, KickReason.kicked, message);
_sendPacketToRoom(
room,
RpcNetworkerPacket.named(
name: SwampEvent.playerLeft,
data: Uint8List.fromList([targetPlayer >> 8, targetPlayer & 0xFF]),
),
);
return true;
}