151 lines
2.8 KiB
Markdown
151 lines
2.8 KiB
Markdown
---
|
|
outline: [2, 4]
|
|
---
|
|
# Client <Badge type="tip" text="^0.3.0" />
|
|
|
|
Package used on a client-side of your Rage:MP Server
|
|
|
|
## Usage
|
|
|
|
```ts
|
|
import { fw } from '@entityseven/rage-fw-client'
|
|
```
|
|
|
|
Only usable in client environment. For usage in [Server](./server) and [Browser](./browser) refer to their docs
|
|
|
|
## Declaration
|
|
|
|
```ts
|
|
fw = {
|
|
event: Client,
|
|
player: Player,
|
|
system: {
|
|
log: Logger
|
|
},
|
|
rpc: Rpc
|
|
}
|
|
```
|
|
|
|
Further documentation will describe the fields included in `fw`
|
|
|
|
## Client
|
|
|
|
Client-side interactions
|
|
|
|
### register
|
|
|
|
Registers a client event with an associated callback
|
|
|
|
```ts
|
|
fw.event.register("playerDeath", (player, reason, killer) => {
|
|
// do something
|
|
})
|
|
|
|
// Registering an event with middlewares
|
|
fw.event.register("playerDeath", (player, reason, killer) => {
|
|
// do something
|
|
}, {
|
|
middlewares: [...] // <- your middlewares here
|
|
})
|
|
|
|
// or
|
|
|
|
fw.event.register("playerDeath", (player, reason, killer) => {
|
|
// do something
|
|
}, {
|
|
middlewares: {
|
|
executables: [...], // <- your middlewares here
|
|
onError: (msg) => void msg // <- error handling here
|
|
}
|
|
})
|
|
```
|
|
|
|
### unregister
|
|
|
|
Unregisters a client event, removing the associated callback
|
|
|
|
```ts
|
|
fw.event.unregister('playerDeath')
|
|
```
|
|
|
|
## Player
|
|
|
|
Handles event manipulations that require player to be present in context
|
|
|
|
### browser
|
|
|
|
Setter. Also shares browser with `rage-fw-rpc`
|
|
|
|
```ts
|
|
fw.player.browser = mp.browsers.new('package://index.html')
|
|
```
|
|
|
|
### trigger
|
|
|
|
Triggers registered client event with passed arguments. Formerly known as `call` or `emit`
|
|
|
|
```ts
|
|
// without args
|
|
fw.player.trigger('clientEventName')
|
|
// with args
|
|
fw.player.trigger('clientEventName', ['message to me'])
|
|
```
|
|
|
|
### triggerServer
|
|
|
|
Triggers a server event from the client with arguments from shared types. Formerly known as `callServer` or `emitServer`
|
|
|
|
```ts
|
|
// without args
|
|
fw.player.triggerServer('serverEventName')
|
|
// with args
|
|
fw.player.triggerServer('serverEventName', ['message to server'])
|
|
```
|
|
|
|
### triggerBrowser
|
|
|
|
Triggers a browser event from the client with arguments from shared types. Formerly known as `callBrowser` or `emitBrowser`
|
|
|
|
```ts
|
|
// without args
|
|
fw.player.triggerBrowser('browserEventName')
|
|
// with args
|
|
fw.player.triggerBrowser('browserEventName', ['message to browser'])
|
|
```
|
|
|
|
## System
|
|
|
|
Handles functions used to interact with the client environment
|
|
|
|
### Logger
|
|
|
|
Used to log to a client in-game console
|
|
|
|
### info
|
|
|
|
Informational logs. Colored in white
|
|
|
|
```ts
|
|
fw.system.log.info('some information to be logged')
|
|
```
|
|
|
|
### warn
|
|
|
|
Warning logs. Colored in yellow
|
|
|
|
```ts
|
|
fw.system.log.warn('warning message')
|
|
```
|
|
|
|
### error
|
|
|
|
Error logs. Colored in red
|
|
|
|
```ts
|
|
fw.system.log.info('some error information')
|
|
```
|
|
|
|
## Rpc
|
|
|
|
`rage-fw-rpc` instance used under the hood. It is highly recommended to use this one if you need it instead of creating a new instance
|