3 Docs @ 0.1.0
rilaxik edited this page 2024-06-18 20:10:52 +00:00

RageFW and it's documentation is still in early development and may contain come unclear explanations. It you find any of those please open an issue and describe you problem or any improvemenets you want to see

RageFW distibutes under a list of packages:

These are setup as-should if you are using our CLI, if you still want to setup yourself, please refer to example

Shared types

Core element of type-safety in our framework system. It allows you to manually type any custom events you have in your server system. There are three interfaces, which share between the system to apply types:

  • RageFW_ICustomClientEvent
  • RageFW_ICustomServerEvent
  • RageFW_ICustomCefEvent

To apply types for events we use the following system and below is a sample how it applies them your code

customEventName(arg1: string, arg2: number): boolean
register('customEventName', (arg1 /*string*/, arg2 /*number*/) => {
  // your logic
return true /*boolean*/
})

Server

Package used on a server-side of your Rage:MP Server

Usage

import { fw } from 'rage-fw-server'

Only usable in server environment. For usage in Client and CEF refer to their docs

Declaration

fw = {
    event: Server,
    player: Player,
    system: {
        log: Logger
    }
}

Further documentation will describe the functions included in fw

Server

Handles event manipulations that do not require player to be present in context

register

Registers server event

fw.event.register('serverEventName', ([arg1, arg2]) => {
    // your logic here
})

registerMany

Registers more than one server event at a time

fw.event.registerMany({
    serverEventName1: ([arg1, arg2]) => { /* your logic here */}
    serverEventName2: ([arg1, arg2]) => { /* your logic here */}
})

unregister

Unregisters server event

fw.event.unregister('serverEventName')

trigger

Triggers registered server event. Formerly known as call or emit

fw.event.trigger('serverEventName', ['arg1', 2])

Player

Handles event manipulations that require player to be present in context

triggerClient

Triggers registered client event with passed arguments. Formerly known as callClient or emitClient

fw.player.triggerClient('clientEventName', ['arg1', 2])

triggerBrowser

Triggers registered CEF event with passed arguments. Formerly known as callBrowser or emitBrowser

fw.player.triggerBrowser('cefEventName', ['arg1', 2])

System

Handles functions used to interact with system environment

Logger

Used to log in a server console

info

Informational logs. Colored in white

fw.system.log.info('some information to be logged')
warn

Warning logs. Colored in yellow

fw.system.log.info('warning message')
error

Error logs. Colored in red

fw.system.log.info('error message')

Client

Package used on a client-side of your Rage:MP Server

Usage

import { fw } from 'rage-fw-client'

Only usable in client environment. For usage in Server and CEF refer to their docs

Declaration

fw = {
    event: Client,
    player: Player,
    browser: Browser,
    system: {
        log: Logger
    }
}

Further documentation will describe the functions included in fw

Client

Handles event manipulations that do not require player to be present in context

register

Registers client event

fw.event.register('clientEventName', ([arg1, arg2]) => {
    // your logic here
})

unregister

Unregisters client event

fw.event.unregister('clientEventName')

Player

Handles event manipulations that require player to be present in context

trigger

Triggers registered client event with passed arguments. Formerly known as call or emit

fw.player.trigger('clientEventName', ['arg1', 2])

triggerServer

Triggers registered client event with passed arguments. Formerly known as callServer or emitServer

fw.player.triggerServer('serverEventName', ['arg1', 2])

triggerBrowser

Triggers registered CEF event with passed arguments. Formerly known as callBrowser or emitBrowser

fw.player.triggerBrowser('cefEventName', ['arg1', 2])

Browser

registerBrowser

Used to assign a browser instance. Returns the same browser instance

fw.browser.registerBrowser(browserInstance)

System

Handles functions used to interact with system environment

Logger

Used to log in a client in-game console

info

Informational logs. Colored in white

fw.system.log.info('some information to be logged')
warn

Warning logs. Colored in yellow

fw.system.log.info('warning message')
error

Error logs. Colored in red

fw.system.log.info('error message')

CEF

Package used on a frontend-side of your Rage:MP Server

Usage

import { fw } from 'rage-fw-cef'

Only usable in CEF environment. For usage in Server and Client refer to their docs

Declaration

fw = {
    event: Cef,
}

Further documentation will describe the functions included in fw

Cef

register

Registers CEF event

fw.event.register('cefEventName', ([arg1, arg2]) => {
    // your logic here
})

trigger

Triggers registered CEF event with passed arguments. Formerly known as call or emit

fw.event.trigger('clientEventName', ['arg1', 2])

triggerServer

Triggers registered client event with passed arguments. Formerly known as callServer or emitServer

fw.event.triggerServer('serverEventName', ['arg1', 2])

triggerClient

Triggers registered client event with passed arguments. Formerly known as trigger

fw.event.triggerClient('clientEventName', ['arg1', 2])