- Mar 18, 2018
- 723
- 356
Hello,
I ran into a bug/issue with several ren'py vn's, ones that use scroll-able content, like a viewpoint, vpgird, etc.
Both trigger on mouse wheel, and the rollback/forward backs out of the current screen/menu I was currently viewing.
I'm trying to figure out how I can temporarily disable mouse-wheel-rollback on screens that are using a scroll-able viewpoint, vpgrid, etc.
I want rollback, I just don't want mouse wheel to mess with it while there is scroll-able content [like vpgrid, viewpoint, etc.].
I can think of three ways to go about this:
1) temporarily remove keys from: config.keymap = dict(rollback[]) ... NO idea how to even go about this honestly
2) change the viewpoint/vpgrid/etc to cover entire screen but keep the content the same size, basically a big transparent vp/vpgrid/etc. ... too much work getting it to line up with multiple games
3) temporarily disable mouse-wheel-rollback
What I've tried, was adding a "config.rollback_enabled = False/True" to the actions that show/hide said screens.
Example:
However, the mobile screen can be closed via other methods, so the variable isn't always being reset.
I guess for now my solution works, but not perfect.
Maybe a tiny script somewhere to disable mouse-wheel-rollback when any screen is being shown [except the ???say??? screen].
I would be nice if 'modal' itself also disabled rollback/forward, BOOOOO!
Thanks.
I ran into a bug/issue with several ren'py vn's, ones that use scroll-able content, like a viewpoint, vpgird, etc.
Both trigger on mouse wheel, and the rollback/forward backs out of the current screen/menu I was currently viewing.
I'm trying to figure out how I can temporarily disable mouse-wheel-rollback on screens that are using a scroll-able viewpoint, vpgrid, etc.
I want rollback, I just don't want mouse wheel to mess with it while there is scroll-able content [like vpgrid, viewpoint, etc.].
I can think of three ways to go about this:
1) temporarily remove keys from: config.keymap = dict(rollback[]) ... NO idea how to even go about this honestly
2) change the viewpoint/vpgrid/etc to cover entire screen but keep the content the same size, basically a big transparent vp/vpgrid/etc. ... too much work getting it to line up with multiple games
3) temporarily disable mouse-wheel-rollback
What I've tried, was adding a "config.rollback_enabled = False/True" to the actions that show/hide said screens.
Example:
Code:
some button:
action Show("mobile"),SetVariable("config.rollback_enabled", False)
screen mobile:
modal True
zorder 1
add "Mobile/Backgrounds/bg01.png" at phonepos
imagebutton:
idle "Mobile/Buttons/middle_button.png"
hover "Mobile/Buttons/middle_button_hover.png"
action Hide("mobile"),SetVariable("config.rollback_enabled", True)
I guess for now my solution works, but not perfect.
Maybe a tiny script somewhere to disable mouse-wheel-rollback when any screen is being shown [except the ???say??? screen].
I would be nice if 'modal' itself also disabled rollback/forward, BOOOOO!
Thanks.
Last edited: