2024-06-09 14:42:45 +00:00
|
|
|
/// <reference types="../../shared/server/index.d.ts" />
|
2024-06-08 22:35:14 +00:00
|
|
|
import rpc from 'rage-rpc'
|
|
|
|
|
2024-06-09 14:42:45 +00:00
|
|
|
class Server implements RageFW_Server {
|
|
|
|
public register<EventName extends RageFW_ServerEvent>(
|
|
|
|
eventName: EventName,
|
2024-06-09 00:06:20 +00:00
|
|
|
callback: RageFW_ServerEventCallback<EventName>,
|
2024-06-09 14:42:45 +00:00
|
|
|
): void {
|
|
|
|
rpc.register(eventName, callback as rpc.ProcedureListener)
|
2024-06-09 00:06:20 +00:00
|
|
|
}
|
2024-06-08 22:35:14 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
export const rage = {
|
|
|
|
event: new Server(),
|
|
|
|
}
|
|
|
|
|
2024-06-09 14:42:45 +00:00
|
|
|
rage.event.register('customServerEvent', (player, arg1, arg2) => {
|
|
|
|
return true
|
2024-06-09 00:06:20 +00:00
|
|
|
})
|
2024-06-08 22:35:14 +00:00
|
|
|
|
2024-06-09 14:42:45 +00:00
|
|
|
// public registerMultiple(events: {
|
|
|
|
// [name: string]: (player: PlayerMp, ...args: any[]) => any
|
|
|
|
// }): void
|
|
|
|
//
|
|
|
|
// registerMultiple(events: { [name: string]: (...args: any[]) => any }) {
|
|
|
|
// Object.entries(events).forEach(([name, callback]) =>
|
|
|
|
// rpc.register(name, (data: any[]) => {
|
|
|
|
// return Array.isArray(data) ? callback(...data) : callback(data)
|
|
|
|
// }),
|
|
|
|
// )
|
|
|
|
// }
|