Class: Client
Represents a client that connects to Transformice.
Example
const { Client, enums } = require("transformice.js");
const client = new Client("username", "password", {
language: enums.languages.en
});
client.on("roomMessage", (message) => {
if (client.name === message.author.name) return;
client.sendRoomMessage(message.author.look);
});
client.run("tfm_id", "token");
Hierarchy
EventEmitter
↳
Client
Constructors
constructor
• new Client(name
, password
, options?
): Client
Parameters
Name | Type |
---|---|
name | string |
password | string |
options? | ClientOptions |
Returns
Properties
bulle
• bulle: Connection
The connection with the game server (bulle).
channels
• channels: Map
<string
, Channel
>
The client's joined channels.
community
• community: GameCommunity
The client's community code.
connectionTime
• connectionTime: number
The connection time.
friends
• friends: Map
<string
, Friend
>
The client's friends.
language
• language: Language
The language suggested by the server.
loginRoom
• loginRoom: string
The room where the client will be logged in.
main
• main: Connection
The connection with the main server.
name
• name: string
The client's name.
onlinePlayers
• onlinePlayers: number
The online players when the bot log.
pcode
• pcode: number
The client's temporary code.
player
• player: RoomPlayer
The client's player.
playerId
• playerId: number
The client's Id.
playingTime
• playingTime: number
The client's playing time.
room
• room: Room
The client's room.
Methods
addFriend
▸ addFriend(name
): void
Add a player to friend list
Parameters
Name | Type |
---|---|
name | string |
Returns
void
closeFriendList
▸ closeFriendList(): void
Close friend list.
Returns
void
Throws
When intents.friendList is set.
disconnect
▸ disconnect(): void
Disconnects the client.
Returns
void
enterRoom
▸ enterRoom(name
, options?
): void
Sends a request to the server to join a room with specific name.
Parameters
Name | Type |
---|---|
name | string |
options? | RoomJoinOptions |
Returns
void
enterTribeHouse
▸ enterTribeHouse(): void
Joins the tribe house.
Returns
void
getChannelPlayers
▸ getChannelPlayers(channelName
): Promise
<TribullePlayer
[]>
Get player list inside a chat channel
Parameters
Name | Type |
---|---|
channelName | string |
Returns
Promise
<TribullePlayer
[]>
getFriendList
▸ getFriendList(): Promise
<Map
<string
, Friend
>>
Get friend list.
Returns
Promise
<Map
<string
, Friend
>>
getProfile
▸ getProfile(username
): Promise
<Profile
>
Get user profile
Parameters
Name | Type |
---|---|
username | string |
Returns
Promise
<Profile
>
getTribe
▸ getTribe(includeDisconnectedMember?
): Promise
<null
| Tribe
>
Get tribe data
Parameters
Name | Type | Default value |
---|---|---|
includeDisconnectedMember | boolean | true |
Returns
Promise
<null
| Tribe
>
joinChannel
▸ joinChannel(channelName
, permanent?
): void
Join to a chat channel
Parameters
Name | Type | Default value |
---|---|---|
channelName | string | undefined |
permanent | boolean | true |
Returns
void
leaveChannel
▸ leaveChannel(channelName
): void
Leave a chat channel
Parameters
Name | Type |
---|---|
channelName | string |
Returns
void
loadLua
▸ loadLua(script
): void
Load a lua script in the room.
Parameters
Name | Type |
---|---|
script | string |
Returns
void
on
▸ on<T
>(event
, listener
): this
Listens to a Client Event
Type parameters
Name | Type |
---|---|
T | extends keyof ClientEvents |
Parameters
Name | Type |
---|---|
event | T |
listener | ClientEvents [T ] |
Returns
this
openFriendList
▸ openFriendList(): void
Open friend list.
Returns
void
removeFriend
▸ removeFriend(name
): void
Add a player to friend list
Parameters
Name | Type |
---|---|
name | string |
Returns
void
requestProfile
▸ requestProfile(username
): void
Request profile
Alias for: client.sendCommand("profile")
Parameters
Name | Type |
---|---|
username | string |
Returns
void
requestTribe
▸ requestTribe(includeDisconnectedMember?
): void
Request tribe data
Parameters
Name | Type | Default value |
---|---|---|
includeDisconnectedMember | boolean | true |
Returns
void
requestWho
▸ requestWho(channelName
): number
Request /who to a chat channel
Parameters
Name | Type |
---|---|
channelName | string |
Returns
number
restart
▸ restart(): Promise
<void
>
Restart the client
Returns
Promise
<void
>
run
▸ run(): Promise
<void
>
Starts the client.
Returns
Promise
<void
>
sendChannelMessage
▸ sendChannelMessage(channelName
, message
): void
Sends a message to a chat channel
Parameters
Name | Type |
---|---|
channelName | string |
message | string |
Returns
void
sendCommand
▸ sendCommand(message
): void
Sends a server command.
Parameters
Name | Type | Description |
---|---|---|
message | string | The command message (without the / ). |
Returns
void
Example
client.sendCommand('mod');
sendRoomMessage
▸ sendRoomMessage(message
): void
Sends a message to the client's room.
Parameters
Name | Type |
---|---|
message | string |
Returns
void
sendTribeMessage
▸ sendTribeMessage(message
): void
Sends a message to tribe
Parameters
Name | Type |
---|---|
message | string |
Returns
void
sendWhisper
▸ sendWhisper(name
, message
): void
Sends a whisper message to a player.
Parameters
Name | Type |
---|---|
name | string |
message | string |
Returns
void
waitFor
▸ waitFor<T
>(eventName
, timeout?
, condition?
): Promise
<Parameters
<ClientEvents
[T
]>>
Wait for specific event to be emitted
Type parameters
Name | Type |
---|---|
T | extends keyof ClientEvents |
Parameters
Name | Type |
---|---|
eventName | T |
timeout? | number |
condition? | (...args : Parameters <ClientEvents [T ]>) => boolean |
Returns
Promise
<Parameters
<ClientEvents
[T
]>>
▸ waitFor<T
>(eventName
, condition?
, timeout?
): Promise
<Parameters
<ClientEvents
[T
]>>
Type parameters
Name | Type |
---|---|
T | extends keyof ClientEvents |
Parameters
Name | Type |
---|---|
eventName | T |
condition? | (...args : Parameters <ClientEvents [T ]>) => boolean |
timeout? | number |
Returns
Promise
<Parameters
<ClientEvents
[T
]>>
fetchIP
▸ fetchIP(): Promise
<ConnectionSettings
>
Get Transformice IP and ports.
Returns
Promise
<ConnectionSettings
>