Артемида - несколько экземпляров EntityManager

Я использую фреймворк Artemis-odb для кодирования игры на Java ( https://github.com/junkdog/artemis-odb).

Я хотел бы создать экземпляр некоторой сущности (например, здания и люди / рабочие). Я также видел класс EntityManager фреймворка и пытался его использовать.

Вот моя проблема:

  • Я не хочу иметь огромный класс, расширяющий EntityManager и имеющий все методы "создания", потому что это будет ужасный класс -> слишком много строк кода, нет правдоподобия, нет, спасибо.
  • Я пытался создать классы Mutliple, расширяющие EntityManager, но затем каждый из них имеет свое значение "nextId" (это позволяет узнать идентификатор, который нужно передать новому объекту) -> я получаю объекты Mutliple с тем же идентификатором.
  • Если я создаю несколько классов и ссылаюсь только на один EntityManager, я не могу получить доступ к методу создания EntityManager, потому что этот метод защищен.
  • Другое решение, которое я попробовал, состояло в том, чтобы создать различные классы только со статическими методами и ссылками на EntityManager. Но у моих EntityManager должны быть нестатические методы по другой причине (я оставляю детали).

Есть ли у вас какое-либо жизнеспособное решение? Пока не так много документации об этой платформе, так что она немного сложна!

Спасибо,

1 ответ

Я отвечаю на мой вопрос, если он кому-то пригодится.

Наконец, я не использовал класс EntityManager платформы. Я создал несколько EntityManager для того, что мне нужно (здания, рабочие и т. Д.) И заставил их наследовать от BaseSystem. Благодаря этому я могу получить к ним доступ благодаря миру и делать то, что хочу.

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