Opened 12 years ago

Closed 10 years ago

Last modified 2 years ago

#4420 closed defect (fixed)

GMM: Overwrites engine cursor settings, when loading

Reported by: lordhoto Owned by: athrxx
Priority: normal Component: GUI
Version: Keywords:
Cc: Game:


Version: trunk r42543 Platform: Linux/amd64 Compiler: g++ 4.3.3

Some engines setup a new cursor when loading games. KYRA and SKY are an example for this. Now when a game is load via the GMM (thus our GUI), this change is lost. This was first reported for KYRA on our forums from "hydr0x". I was also able to reproduce it in the SKY engine.

In both cases it's easy to reproduce: - Start the game. - Skip intros etc. (- Make a save if you don't have one already).

Now for SKY: - Take the Circuit board out of your inventory - Open up the GMM - Load a game

For Kyrandia 1: - Pick up the garnet - Open up the GMM - Load a game

After that you'll clearly notice the cursor is still the item you had previously in your hand. Of course it will work with every other item there in the games.

I suspect this is because the engines, replace the top most cursor, thus the GUI cursor, which is then removed from the cursor stack, when the GUI is closed, so the old engine cursor is setup again.

Ticket imported from: #2822778. Ticket imported from: bugs/4420.

Change History (7)

comment:1 by fingolfin, 10 years ago

What is the status of this item?

comment:2 by lordhoto, 10 years ago

Still present.

I am also not sure how to fix it properly, since at least from the engine side one has no way to replace the game cursor via CursorMan. And even if one had, every engine which loads directly on Engine::loadGameState.

It *might* be possible to only call loadGameState after the GMM (and thus the GUI) closed, but not sure how feasible that is.

comment:3 by athrxx, 10 years ago

I fixed that bug in the suggested manner (postponing game load until after the menu execution). Please test.

comment:4 by athrxx, 10 years ago

Owner: set to athrxx
Resolution: fixed
Status: newpending

comment:5 by SF/sf-robot, 10 years ago

Status: pendingclosed

comment:6 by SF/sf-robot, 10 years ago

This Tracker item was closed automatically by the system. It was previously set to a Pending status, and the original submitter did not respond within 14 days (the time period specified by the administrator of this Tracker).

comment:7 by digitall, 2 years ago

Component: GUI
Note: See TracTickets for help on using tickets.