Two things.
1. Try this. Literally the only thing I changed is the ground image in the imagemap.
Code: Select all
screen main_menu:
default i = 0
tag menu
if i == 0:
add "blah_ground.png"
elif i == 1:
add "blah_bghover.png"
imagemap:
ground Null()
idle "blah_idle.png"
hover "blah_hover.png"
hotspot (0, 40, 378, 176) action Start() hovered SetScreenVariable("i", 1) unhovered SetScreenVariable("i", 0)
hotspot (0, 136, 378, 176) action ShowMenu('load') hovered SetScreenVariable("i", 1) unhovered SetScreenVariable("i", 0)
hotspot (0, 235, 378, 176) action ShowMenu("preferences") hovered SetScreenVariable("i", 1) unhovered SetScreenVariable("i", 0)
hotspot (0, 325, 378, 176) action Quit(confirm=False) hovered SetScreenVariable("i", 1) unhovered SetScreenVariable("i", 0)
2. I can't think of any reason the above wouldn't work, and given what you already have, it would seem to be the simplest solution. But obviously I can't test it, so on the offhand chance that it doesn't work, the below should be a decent place to start for ConditionSwitch. See also
http://lemmasoft.renai.us/forums/viewto ... 51&t=19063 (the two separate imagemaps are just to give you an idea of where the hotspot is -- it's a 30, 30 rectangle from the top left corner of a 50, 50 solid square)
Code: Select all
image white = Solid("FFF", xysize=(50,50))
image red = Solid("F00", xysize=(50,50))
default testvar = True
image testcs = ConditionSwitch(
"testvar", "white",
"not testvar", "red")
screen test():
imagemap:
ground "testcs"
idle "white"
hover "red"
hotspot (0, 0, 30, 30) action Null() hovered SetVariable("testvar", False) unhovered SetVariable("testvar", True)
imagemap:
xalign 0.9
ground "white"
idle "white"
hover "red"
hotspot (0, 0, 30, 30) action Null() hovered SetVariable("testvar", False) unhovered SetVariable("testvar", True)