diff --git a/src/Core/Crawl/layout.cpp b/src/Core/Crawl/layout.cpp index b53ee3c..a08db99 100644 --- a/src/Core/Crawl/layout.cpp +++ b/src/Core/Crawl/layout.cpp @@ -89,6 +89,7 @@ void Layout::drawSquare() { } int height = qFloor(qSqrt(objects().size())); + int width = qFloor(objects().size() / height); int indObject = 0; for (auto idObj = objects().keyBegin(); idObj != objects().keyEnd(); idObj++) { @@ -96,9 +97,8 @@ void Layout::drawSquare() { float x = indObject % height; float y = qCeil(indObject / height); - GroupObject::updatePosition(*idObj, {x + _distance, - y + _distance, - 0}); + GroupObject::updatePosition(*idObj, {(x * _distance) - (height * _distance / 2), + (y * _distance) - (width * _distance / 2), 0}); indObject++; } @@ -113,8 +113,10 @@ void Layout::drawLine() { } float xObject = 0; - for (ClasterItem* object: objects()) { - GroupObject::updatePosition(object->guiId(), {xObject + _distance, 0, 0}); + float height = objects().size() * _distance; + for (auto idObj = objects().keyBegin(); idObj != objects().keyEnd(); idObj++) { + + GroupObject::updatePosition(*idObj, {(xObject * _distance) - (height/2 * _distance), 0, 0}); xObject++; } diff --git a/src/CrawlAbstractLvl/private/abslvlworld.cpp b/src/CrawlAbstractLvl/private/abslvlworld.cpp index 5df1998..1837687 100644 --- a/src/CrawlAbstractLvl/private/abslvlworld.cpp +++ b/src/CrawlAbstractLvl/private/abslvlworld.cpp @@ -38,7 +38,7 @@ CRAWL::WorldRule *AbsLvlWorld::initWorldRules() { } }, - {300, + {210, { {registerObject(), 1}, {registerObject(), 1} } diff --git a/src/CrawlAbstractLvl/private/groupobstaclered.cpp b/src/CrawlAbstractLvl/private/groupobstaclered.cpp index c22da23..f261e3f 100644 --- a/src/CrawlAbstractLvl/private/groupobstaclered.cpp +++ b/src/CrawlAbstractLvl/private/groupobstaclered.cpp @@ -12,7 +12,11 @@ namespace AbstractLvl { GroupObstacleRed::GroupObstacleRed(): CRAWL::IWorldItem(AUTO_CLASS_NAME) { - setDistance(20); + QQuaternion rotation = + QQuaternion::fromAxisAndAngle(QVector3D(0,1,0), 90); + + setDistance(7); + setRotation(rotation); changeLayout(CRAWL::LayoutType::LINE); for(int i(0); i < 4; i++) {