The code for the button is as follows
Code: Select all
define selection_number = 0
define selection_hovered = 0
define output = 0
screen menu_button:
imagebutton:
idle "/images/Wheel UI/menu_button.jpg" action Show("wheel_UI"), Show("stuff_wheel_displays_or_does"), Hide("menu_button") focus_mask True
screen stuff_wheel_displays_or_does:
if output == 1:
add "/images/Wallpapers/w (1).jpg"
elif output == 2:
add "/images/Wallpapers/w (2).jpg"
elif output == 3:
add "/images/Wallpapers/w (3).jpg"
elif output == 4:
add "/images/Wallpapers/w (4).jpg"
elif output == 5:
add "/images/Wallpapers/w (5).jpg"
elif output == 6:
add "/images/Wallpapers/w (6).jpg"
elif output == 7:
add "/images/Wallpapers/w (7).jpg"
elif output == 8:
add "/images/Wallpapers/w (8).jpg"
screen wheel_UI:
add "/images/Wheel UI/Wheel.png"
if selection_number == 1 or selection_number == 2 or selection_number == 3 or selection_number == 4 or selection_number == 5 or selection_number == 6 or selection_number == 7 or selection_number == 8:
imagebutton:
idle "/images/Wheel UI/expanded_button.png" action SetVariable("output", selection_number), Hide("wheel_UI"), Show("menu_button"), SetVariable("selection_number", 0) focus_mask True
else:
add "/images/Wheel UI/minimized_button.png"
imagebutton:
idle "/images/Wheel UI/Acurate_hover_1.png" action SetVariable("selection_number", 1) hovered SetVariable("selection_hovered", 1) unhovered SetVariable("selection_hovered", 0) focus_mask True
imagebutton:
idle "/images/Wheel UI/Acurate_hover_2.png" action SetVariable("selection_number", 2) hovered SetVariable("selection_hovered", 2) unhovered SetVariable("selection_hovered", 0) focus_mask True
imagebutton:
idle "/images/Wheel UI/Acurate_hover_3.png" action SetVariable("selection_number", 3) hovered SetVariable("selection_hovered", 3) unhovered SetVariable("selection_hovered", 0) focus_mask True
imagebutton:
idle "/images/Wheel UI/Acurate_hover_4.png" action SetVariable("selection_number", 4) hovered SetVariable("selection_hovered", 4) unhovered SetVariable("selection_hovered", 0) focus_mask True
imagebutton:
idle "/images/Wheel UI/Acurate_hover_5.png" action SetVariable("selection_number", 5) hovered SetVariable("selection_hovered", 5) unhovered SetVariable("selection_hovered", 0) focus_mask True
imagebutton:
idle "/images/Wheel UI/Acurate_hover_6.png" action SetVariable("selection_number", 6) hovered SetVariable("selection_hovered", 6) unhovered SetVariable("selection_hovered", 0) focus_mask True
imagebutton:
idle "/images/Wheel UI/Acurate_hover_7.png" action [SetVariable("selection_number", 7)] hovered SetVariable[("selection_hovered", 7), Jump("test_movie")] unhovered SetVariable("selection_hovered", 0) focus_mask True
imagebutton:
idle "/images/Wheel UI/Acurate_hover_8.png" action SetVariable("selection_number", 8) hovered SetVariable("selection_hovered", 8) unhovered SetVariable("selection_hovered", 0) focus_mask True
if selection_hovered == 1 or selection_number == 1:
add "/images/Wheel UI/Wheel_selection_1.png"
if selection_hovered == 2 or selection_number == 2:
add "/images/Wheel UI/Wheel_selection_2.png"
if selection_hovered == 3 or selection_number == 3:
add "/images/Wheel UI/Wheel_selection_3.png"
if selection_hovered == 4 or selection_number == 4:
add "/images/Wheel UI/Wheel_selection_4.png"
if selection_hovered == 5 or selection_number == 5:
add "/images/Wheel UI/Wheel_selection_5.png"
if selection_hovered == 6 or selection_number == 6:
add "/images/Wheel UI/Wheel_selection_6.png"
if selection_hovered == 7 or selection_number == 7:
add "/images/Wheel UI/Wheel_selection_7.png"
if selection_hovered == 8 or selection_number == 8:
add "/images/Wheel UI/Wheel_selection_8.png"
The way I got to get the movie to play when clcked was using the Jump fuction in the action section. I thought I could do the same with the hover fuction, but I run into this error
Code: Select all
I'm sorry, but an uncaught exception occurred.
While running game code:
File "game/script.rpy", line 8, in script
$ result = ui.interact() #freezes the textbox if used with text
File "game/script.rpy", line 8, in <module>
$ result = ui.interact() #freezes the textbox if used with text
File "game/wheel ui screens.rpy", line 30, in execute
screen wheel_UI:
File "game/wheel ui screens.rpy", line 30, in execute
screen wheel_UI:
File "game/wheel ui screens.rpy", line 51, in execute
imagebutton:
File "game/wheel ui screens.rpy", line 51, in keywords
imagebutton:
File "game/wheel ui screens.rpy", line 52, in <module>
idle "/images/Wheel UI/Acurate_hover_7.png" action [SetVariable("selection_number", 7)] hovered SetVariable[("selection_hovered", 7), Jump("test_movie")] unhovered SetVariable("selection_hovered", 0) focus_mask True
TypeError: 'function' object has no attribute '__getitem__'
-- Full Traceback ------------------------------------------------------------
Full traceback:
File "game/script.rpy", line 8, in script
$ result = ui.interact() #freezes the textbox if used with text
File "renpy/ast.py", line 928, in execute
renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
File "renpy/python.py", line 2245, in py_exec_bytecode
exec(bytecode, globals, locals)
File "game/script.rpy", line 8, in <module>
$ result = ui.interact() #freezes the textbox if used with text
File "renpy/ui.py", line 298, in interact
rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
File "renpy/display/core.py", line 3315, in interact
repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, **kwargs)
File "renpy/display/core.py", line 3735, in interact_core
root_widget.visit_all(lambda i : i.per_interact())
File "renpy/display/core.py", line 568, in visit_all
d.visit_all(callback, seen)
File "renpy/display/core.py", line 568, in visit_all
d.visit_all(callback, seen)
File "renpy/display/core.py", line 568, in visit_all
d.visit_all(callback, seen)
File "renpy/display/screen.py", line 436, in visit_all
callback(self)
File "renpy/display/core.py", line 3735, in <lambda>
root_widget.visit_all(lambda i : i.per_interact())
File "renpy/display/screen.py", line 447, in per_interact
self.update()
File "renpy/display/screen.py", line 637, in update
self.screen.function(**self.scope)
File "game/wheel ui screens.rpy", line 30, in execute
screen wheel_UI:
File "game/wheel ui screens.rpy", line 30, in execute
screen wheel_UI:
File "game/wheel ui screens.rpy", line 51, in execute
imagebutton:
File "game/wheel ui screens.rpy", line 51, in keywords
imagebutton:
File "game/wheel ui screens.rpy", line 52, in <module>
idle "/images/Wheel UI/Acurate_hover_7.png" action [SetVariable("selection_number", 7)] hovered SetVariable[("selection_hovered", 7), Jump("test_movie")] unhovered SetVariable("selection_hovered", 0) focus_mask True
TypeError: 'function' object has no attribute '__getitem__'
Windows-10-10.0.19041
Ren'Py 7.4.10.2178
Greybox 1.0
Thu May 12 21:48:08 2022
Thanks!