22 void init()
override {
26 void update(
float deltaTime)
override {
27 Entity* parentEntity = entity->getParentEntity();
38 glm::vec3 newPosition = getSlotPosition();
39 transform->local_position = newPosition;
42 glm::vec3 getSlotPosition()
const {
43 size_t childrenSize = entity->getParentEntity()->
children.size();
44 if (index >= childrenSize) {
46 return entity->getParentEntity()->
47 GetComponent<TransformComponent>().getPosition();
50 glm::vec3 offset(0.0f);
52 if (!entity->getParentEntity()->isVertical) {
53 offset.x = (
static_cast<float>(index) - (childrenSize - 1) / 2.0f) * entity->getParentEntity()->slotSpacing;
56 offset.y = (
static_cast<float>(index) - (childrenSize - 1) / 2.0f) * entity->getParentEntity()->slotSpacing;
66 std::string GetComponentName()
override {
67 return "PortSlotComponent";
70 void showGUI(std::vector<BaseComponent*> otherComponents = {})
override {
74 void showGUI(std::vector<BaseComponent*> otherComponents, std::vector<Entity*> otherEntities)
override {