IEvent
Type | Name | Interface Description |
---|---|---|
Variables | type: number | UserEventType | The type of the event, which can be either a number or a UserEventType. |
Variables | args: any[] | Arguments passed to the event. |
Examples
type: number | UserEventType
const type = event.type;
args: any[]
const event = APJS.EventManager.createEvent(MyEvent);
event.args.push('Test')
Use Case
@component()
export class NewBehaviourScript extends APJS.BasicScriptComponent {
onGlobalCallback(e: APJS.IEvent) { }
onObjectCallback(e: APJS.IEvent) { }
onStart() {
// define EventType
const MyEvent = APJS.EventManager.defineUserEventType('MyEvent');
// Get Global Emitter
const globalEmitter = APJS.EventManager.getGlobalEmitter();
// Register Global Event Callback
globalEmitter.on(MyEvent, this.onGlobalCallback, this);
// Emit
globalEmitter.emit(APJS.EventManager.createEvent(MyEvent));
// Unregister
globalEmitter.off(MyEvent, this.onGlobalCallback, this);
// Get Object Emitter
const objectEmitter = APJS.EventManager.getObjectEmitter(this.sceneObject);
console.log(objectEmitter)
// Register Object Event Callback
objectEmitter.on(MyEvent, this.onObjectCallback, this);
// Emit
const event = APJS.EventManager.createEvent(MyEvent);
event.args.push('Test')
objectEmitter.emit(event);
// Unregister
objectEmitter.off(MyEvent, this.onObjectCallback, this);
}
onUpdate(deltaTime: number) {
}
}