roblox object event
v1.1.0
@rbxts/objeto-evento
Este paquete NPM para Roblox-TS permite a los desarrolladores implementar eventos personalizados para clases personalizadas, sin recurrir a BindableEvents
.
Esto debería ser particularmente útil para proyectos que dependen en gran medida del paradigma OOP para bibliotecas y otros componentes del juego.
El módulo se puede usar tanto en scripts de lua (u) puro (a través de ROJO o de cualquier otra manera) como con roBlox-TS (incluye verificación de tipo de tiempo de compilación).
/////// Module.ts ///////
import ObjectEvent from "@rbxts/object-event"
const event = new ObjectEvent < [ number , String , Vector3 ] > ( )
event . Connect ( ( id , msg , position ) => {
// We can safely assume that:
// id is a number
// msg is a string
// position is a Vector3
} )
export event
/////// Waiter.server.ts ///////
import { event } from "./Module"
event . Fire ( 10 , "oof" , new Vector3 ( 1 , 2 , 3 ) ) // all good
event . Fire ( 10 , "oof" ) // will not compile!
export { }
Para permitir todo tipo de argumentos, de cualquier número:
let event = new ObjectEvent < [ ... unknown ] > ( )
ObjectEvent
Connect(f)
- f
es una función que toma los argumentos escritos en consecuencia y devuelve void
. Devuelve una ObjectEventConnection
Wait()
- produce el hilo hasta que se dispare el evento. Devuelve los valores tipados en consecuencia.Fire(...)
- Dispara el evento. Los argumentos deben ser el mismo número y tipo de evento.Event
: una interfaz RBXScriptSignal
-similar al que admite la Connect()
y Wait()
, en caso de que prefiera usarlo como un bindableEvent.SubscribedConnections
: una matriz de ObjectEventConnection
s con todas las conexiones que actualmente escuchan el evento. ObjectEventConnection
Disconnect()
- Desconectarse del eventoReconnect()
- Revierte una desconexiónIsConnected()
- Devuelve true
si la conexión está escuchando el evento (esto es, no desconectar () 'ed), false
de lo contrario.Event
: el ObjectEvent
asociado con esta conexiónListener
: la función asociada con esta conexión