Проблемы с реализацтей Entity–component–system Design Pattern [требует правки]

344
15 января 2017, 16:36

Реализовал ECS pattern на примере игры. Пока была одна сущность - Игрок (Player) было все хорошо, создал 10 компонентов Position, SpriteSheet, State, Movable, MovableMod, Controller, Collidable, Rotatable, Health, Info; и 8 систем Renderer, Movement, ComplexMovement, Collision, Control, State, SheetAnimation, Rotator. Более или менее все получалось, но дошла очередь реализовывать оружие, пули. И здесь возник вопрос, если компонент Movable подходит для пули, то вот сама система Movement - нет, поскольку у пули и персонажа разные способы изменения позиции. И как быть в таком случае, в системе с помощью операторов условия по-имени (name == "Player", name == "Bullet") разное поведение приписывать, или создать еще одну систему для движения пули. Как будет правильно?

READ ALSO
Рекурсивная функция

Рекурсивная функция

Дано натуральное число nВыведите все числа от 1 до n

353
Горизонтальный ScrollBar в QTreeView

Горизонтальный ScrollBar в QTreeView

Как можно включить отображение горизонтального ScrollBar в QTreeView с фиксированной шириной при выходе названия ветки за границы view'шки?

457
SQL выборка по дате

SQL выборка по дате

Пишу запрос на выборку ТОП-10 покупателейВывести покупателей за все время я смог запросто, но встал вопрос о сортировке по дате

379