Okay, a bit of resolution to this one.
The main thing here is that the add FileScreenshot(slot) xalign 0.5
doesn't really integrate with imagemap:
and hospot:
. Sat here now, in hindsight... I am wondering if you could simply overlap the two and still rely on the hotspot
to take care of the interactions. But to do so might mean other save/load UI functionality being lost too. Regardless, that wasn't the route I took.
I decided to copy/paste the original screen load():
, screen save():
and screen file_slots():
code from another unaltered RenPy game. I got so far with that, before I ran into problems because the load and save screen also make use of the common game_menu()
and main_menu()
screens to act as wrappers around these screens.
All the menus, except the main menu, had been oriented horizontally instead of vertically. They'd also all been gutted, in favor of hotspots:
. The Preferences, About, Help, etc screens all used hotspots for everything.
So rather than try to implement one solution on two screens, while leaving an entirely different solution on all the other screens... I went with a scorched earth policy. I copied a vanilla copy of screens.rpy
from another project. In effect, I reverted the UI back to it's original format, completely wiping out all those hotspots code. I then worked forward, adapting the existing code to look like the version of the game using hotspots. I butchered a lot of styles along the way. I'm sure with more patience, I could have done it a better way. The final version isn't a 100% match, but it is close enough.
The end result is that screen main_menu
is still vertical (using vboxes
, but screen game_menu
is now horizontal (using hboxes
. Everything that was previous done using hotspot:
is now using textbutton:
. Which allows the default code for save/load screens to work with very little modification... and so save thumbnails, etc... all work again.