Запустите событие с помощью Decentraland SDK

Я пытаюсь запустить пользовательское событие в своей сцене Decentraland. Согласно документам , мне просто нужно сделать что-то вроде:

      const events = new EventManager()
events.fireEvent(new MyEvent(field1, field2))

Итак, следуя этому примеру, я пытаюсь смоделироватьEпользовательский ввод, когда пользователи нажимают наUIImage. Для этого:

  1. Я установил свойство onClick кнопки следующим образом:
      let btn = new UIImage(someContainer, new Texture('assets/images/btn.png'))
btn.onClick = () => { triggerPrimaryInput() }
  1. 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)
}
  1. Когда я нажимаю кнопку, консоль Chrome показывает ошибку:
      Error: Error: The EventConstructor is not registered

Из-за этого я создал новый класс, используя@EventConstructor()декоратор и я поставилtriggerPrimaryInput()логика функции в конструкторе, но ошибка остается прежней.

0 ответов

Другие вопросы по тегам