This commit is contained in:
Asuro
2025-05-19 18:41:10 +02:00
parent 70db6ca2aa
commit 15dc65530d
11 changed files with 50 additions and 11 deletions

View File

@@ -383,6 +383,7 @@ namespace Game
quad.EData.ModelH = GameRendering::Get().GetModelHandleFromPath("models/plane.glb");
}
SolvedQuad = level.UIQuads.New();
ResetQuad = level.UIQuads.New();
IsSetup = true;
LOG("finished setup!");
}
@@ -450,6 +451,7 @@ namespace Game
UpdateMatrix(tileOriginTransform);
Vec3 mousePosWorld = GetMousePosWorld();
Vec3 quadPlaneIntersectPos;
Puzzle::PuzzleSolver solver;
EntityRenderData solvedData;
@@ -462,10 +464,24 @@ namespace Game
: solvedData.TextureHandle;
solvedQuad.EData.Transform.Position = tileOriginTransform.Position;
solvedQuad.EData.Transform.Rotation = camTransform.Rotation;
solvedQuad.EData.Transform.Scale = solvedData.Transform.Scale;
TranslateLocal(solvedQuad.EData.Transform, solvedData.Transform.Position);
Rotate(solvedQuad.EData.Transform, Vec3{bx::kPi * 0.5f, 0.0f, (1.0f - 0 * 0.5f) * bx::kPi});
EntityRenderData resetData;
resetData.LoadFromSaved(GetInstance().Player.Config.TabletResetRenderData);
auto& resetQuad = level.UIQuads.Get(ResetQuad);
resetQuad.EData = resetData;
resetQuad.EData.Visible = IsActive;
resetQuad.EData.Transform.Position = tileOriginTransform.Position;
resetQuad.EData.Transform.Rotation = camTransform.Rotation;
TranslateLocal(resetQuad.EData.Transform, resetData.Transform.Position);
Rotate(resetQuad.EData.Transform, Vec3{bx::kPi * 0.5f, 0.0f, (1.0f - 0 * 0.5f) * bx::kPi});
if (GetMouseButtonPressedNow(MouseButton::Left) &&
IsQuadHovered(resetQuad.EData.Transform, mousePosWorld, quadPlaneIntersectPos))
{
// TODO
}
// Available Cards
for (int32_t i = 0; i < Puzzle::Config::MaxAvailableStacks; ++i)
{
@@ -492,7 +508,6 @@ namespace Game
if (j == 0)
{
Vec3 quadPlaneIntersectPos;
if (IsQuadHovered(quad.EData.Transform, mousePosWorld, quadPlaneIntersectPos) &&
DraggedAvailableCardIdx == UINT16_MAX && DraggedCard.X == -1 &&
GetMouseButtonPressedNow(MouseButton::Left))