Keys 1, 2, 3, 4, 5, 6 should switch active character in the party but only 1, 2 and 6 work #217

Closed
opened 2020-01-04 22:19:15 +00:00 by x-qq · 4 comments
x-qq commented 2020-01-04 22:19:15 +00:00 (Migrated from github.com)

Tested on 64bit linux.

Additionally, it was reported on IRC that on Windows, key "5" also works (but 3 and 4 still don't).

Tested on 64bit linux. Additionally, it was reported on IRC that on Windows, key "5" also works (but 3 and 4 still don't).
clort81 commented 2020-01-05 02:54:12 +00:00 (Migrated from github.com)

Confirmed on aarch64.

Confirmed on aarch64.
clort81 commented 2020-01-05 05:07:05 +00:00 (Migrated from github.com)

The keyboard event handler simulates a mouseclick over the Party Stats window to switch characters.

gamewin

In game/boe.actions.cpp: ~1726, increasing offsets into the box works for me

// Clort the pass points needed to be shifted further into the party stat box, for some reason +20,4 worksforme
                case '1': case '2': case '3': case '4': case '5': case '6':
                        pass_point = pc_buttons[((short) chr) - 49][PCBTN_NAME].topLeft();
                        pass_point.x += 20 + win_to_rects[WINRECT_PCSTATS].left;
                        pass_point.y += 4 + win_to_rects[WINRECT_PCSTATS].top;

These offsets are prior to scaled window translation by mainPtr.mapCoordsToPixel(pass_point, mainView); so they should work with any scale factor. (tested with 1.000, 2.000, 2.420, 3.000)

The keyboard event handler simulates a mouseclick over the Party Stats window to switch characters. ![gamewin](https://user-images.githubusercontent.com/51511737/71775493-e48db400-2f81-11ea-9a03-99c049dfa531.png) In game/boe.actions.cpp: ~1726, increasing offsets into the box works for me ``` // Clort the pass points needed to be shifted further into the party stat box, for some reason +20,4 worksforme case '1': case '2': case '3': case '4': case '5': case '6': pass_point = pc_buttons[((short) chr) - 49][PCBTN_NAME].topLeft(); pass_point.x += 20 + win_to_rects[WINRECT_PCSTATS].left; pass_point.y += 4 + win_to_rects[WINRECT_PCSTATS].top; ``` These offsets are prior to scaled window translation by mainPtr.mapCoordsToPixel(pass_point, mainView); so they should work with any scale factor. (tested with 1.000, 2.000, 2.420, 3.000)
retropipes commented 2020-01-05 15:48:28 +00:00 (Migrated from github.com)

Could anything be altering the width of the PC status area, causing the simulated clicks to go to the wrong place? For instance, a status effect changes the name of your character in such a way as to cause the status line to wrap?

Could anything be altering the width of the PC status area, causing the simulated clicks to go to the wrong place? For instance, a status effect changes the name of your character in such a way as to cause the status line to wrap?
CelticMinstrel commented 2020-01-06 13:51:02 +00:00 (Migrated from github.com)

Pretty sure the status line does not wrap… it would be cut off if there are too many, I believe.

Pretty sure the status line does not wrap… it would be cut off if there are too many, I believe.
Sign in to join this conversation.
No description provided.