Запустите событие с помощью Decentraland SDK
Я пытаюсь запустить пользовательское событие в своей сцене Decentraland. Согласно документам , мне просто нужно сделать что-то вроде:
const events = new EventManager()
events.fireEvent(new MyEvent(field1, field2))
Итак, следуя этому примеру, я пытаюсь смоделироватьE
пользовательский ввод, когда пользователи нажимают наUIImage
. Для этого:
- Я установил свойство onClick кнопки следующим образом:
let btn = new UIImage(someContainer, new Texture('assets/images/btn.png'))
btn.onClick = () => { triggerPrimaryInput() }
- The
triggerPrimaryInput
функция такая:
triggerPrimaryInput()
{
const simulatedEvent: LocalActionButtonEvent = {
origin: new Vector3(0, 0, 0),
direction: new Vector3(0, 0, 0),
button: ActionButton.PRIMARY,
buttonId: 1,
type: 1
}
const em = new EventManager
em.fireEvent(simulatedEvent)
}
- Когда я нажимаю кнопку, консоль Chrome показывает ошибку:
Error: Error: The EventConstructor is not registered
Из-за этого я создал новый класс, используя@EventConstructor()
декоратор и я поставилtriggerPrimaryInput()
логика функции в конструкторе, но ошибка остается прежней.