[Sloved] About Preference Menu

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Post Reply
Message
Author
User avatar
rougemortar
Newbie
Posts: 15
Joined: Wed Dec 13, 2017 1:58 am
itch: rougemortar
Contact:

[Sloved] About Preference Menu

#1 Post by rougemortar »

I am currently working on preference menu, and i follow the instruction from below website:
http://fuckyeahrenpy.tumblr.com/post/91 ... ences-menu

Here is my code:

Code: Select all

## Preferences screen ##########################################################
##
## The preferences screen allows the player to configure the game to better suit
## themselves.
##
## https://www.renpy.org/doc/html/screen_special.html#preferences

screen preferences():

    tag menu

    use game_menu(_("Preferences"), scroll="viewport"):

        imagemap:   
            ground "gui/config-2.jpg"
            idle "gui/config-2.jpg"
            hover "gui/config-2.jpg"
            selected_idle "gui/config-2.jpg" 
            selected_hover "gui/config-2.jpg"
            alpha False
        
            hotspot (339,357,609,399) action Preference("display", "fullscreen")
            hotspot (339,357,609,399) action Preference("display", "window")
            hotspot (339,357,609,399) action Preference("skip", "seen")
            hotspot (339,357,609,399) action Preference("skip", "all")
            hotspot (339,357,609,399) action Preference("transitions", "all")
            hotspot (339,357,609,399) action Preference("transitions", "none")
            hotspot (339,357,609,399) action Preference("after choices", "stop")
            hotspot (339,357,609,399) action Preference("after choices", "skip")
        
            bar pos (120,200) value Preference("text speed") style "pref_slider"
            bar pos (220, 300) value Preference("sound volume") style "pref_slider"
            bar pos (320, 400) value Preference("music volume") style "pref_slider"
            bar pos (420, 500) value Preference("auto-forward time") style "pref_slider"

init -2 python:
    style.pref_slider.left_bar = "gui/dark_slider_bar.png"
    style.pref_slider.right_bar = "gui/dark_slider_bar.png"

    style.pref_slider.xmaximum = 164
    style.pref_slider.ymaximum = 30

    style.pref_slider.thumb = "dark_slider_button_normal.png"
    
    style.pref_slider.thumb_offset = 4
    style.pref_slider.thumb_shadow = None
And also error message when I click in to the preference menu:

Code: Select all

I'm sorry, but an uncaught exception occurred.

While loading <'Image' u'dark_slider_button_normal.png'>:
IOError: Couldn't find file 'dark_slider_button_normal.png'.

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "renpy/common/_layout/screen_main_menu.rpym", line 28, in script
    python hide:
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\ast.py", line 827, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\python.py", line 1764, in py_exec_bytecode
    exec bytecode in globals, locals
  File "renpy/common/_layout/screen_main_menu.rpym", line 35, in <module>
    ui.interact()
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\ui.py", line 287, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\core.py", line 2553, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, **kwargs)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\core.py", line 2916, in interact_core
    self.draw_screen(root_widget, fullscreen_video, (not fullscreen_video) or video_frame_drawn)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\core.py", line 1980, in draw_screen
    renpy.config.screen_height,
  File "renpy/display/render.pyx", line 430, in renpy.display.render.render_screen (gen\renpy.display.render.c:6938)
    rv = render(root, width, height, 0, 0)
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 702, in render
    surf = render(child, width, height, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\transition.py", line 361, in render
    top = render(self.new_widget, width, height, st, at)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 702, in render
    surf = render(child, width, height, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 702, in render
    surf = render(child, width, height, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\screen.py", line 625, in render
    child = renpy.display.render.render(self.child, w, h, st, at)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 702, in render
    surf = render(child, width, height, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 1093, in render
    st, at)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 862, in render
    surf = render(d, rw, height - y, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 1093, in render
    st, at)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 1510, in render
    cwidth, cheight = sizeit('c', width, height, 0, 0)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 1505, in sizeit
    rend = render(pos_d[pos], width, height, st, at)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\viewport.py", line 259, in render
    surf = renpy.display.render.render(self.child, child_width, child_height, st, at)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 904, in render
    surf = render(d, width - x, rh, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 702, in render
    surf = render(child, width, height, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\layout.py", line 702, in render
    surf = render(child, width, height, cst, cat)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\behavior.py", line 1662, in render
    thumb = render(self.style.thumb, thumb_dim, height, st, at)
  File "renpy/display/render.pyx", line 110, in renpy.display.render.render (gen\renpy.display.render.c:3445)
    cpdef render(d, object widtho, object heighto, double st, double at):
  File "renpy/display/render.pyx", line 196, in renpy.display.render.render (gen\renpy.display.render.c:2983)
    rv = d.render(widtho, heighto, st, at)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\im.py", line 503, in render
    texture = cache.get(self, texture=True)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\im.py", line 212, in get
    surf = image.load()
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\display\im.py", line 553, in load
    surf = renpy.display.pgrender.load_image(renpy.loader.load(self.filename), self.filename)
  File "D:\GP\RenPy\renpy-6.99.13-sdk\renpy\loader.py", line 548, in load
    raise IOError("Couldn't find file '%s'." % name)
IOError: Couldn't find file 'dark_slider_button_normal.png'.

Windows-8-6.2.9200
Ren'Py 6.99.13.2919
KONWHB 1.0

I would appreciate if anyone would tell me which part causing error, Thanks! :(
Last edited by rougemortar on Sun Mar 04, 2018 8:46 pm, edited 2 times in total.

User avatar
Imperf3kt
Lemma-Class Veteran
Posts: 3791
Joined: Mon Dec 14, 2015 5:05 am
itch: Imperf3kt
Location: Your monitor
Contact:

Re: [Question] About Preference Menu

#2 Post by Imperf3kt »

It looks like your hotspots may need indenting one more time. I'm not sure though, I don't use imagemaps.

The guide you are following is out of date as well, but I think it should still work in this case.
Warning: May contain trace amounts of gratuitous plot.
pro·gram·mer (noun) An organism capable of converting caffeine into code.

Current project: GGD Mentor

Twitter

User avatar
rougemortar
Newbie
Posts: 15
Joined: Wed Dec 13, 2017 1:58 am
itch: rougemortar
Contact:

Re: [Question] About Preference Menu

#3 Post by rougemortar »

Indenting one more time but still not working, update my code ad error message at #1
Hope someone would help me :(

User avatar
mitoky
Veteran
Posts: 316
Joined: Sat Feb 07, 2015 9:12 pm
Projects: The Purring Demon's Love, circus eterie
Contact:

Re: [Question] About Preference Menu

#4 Post by mitoky »

Are you sure its "dark_slider_button_normal.png" and not "gui/dark_slider_button_normal.png"? I am asking because you used gui as path for the slider

User avatar
rougemortar
Newbie
Posts: 15
Joined: Wed Dec 13, 2017 1:58 am
itch: rougemortar
Contact:

Re: [Question] About Preference Menu

#5 Post by rougemortar »

mitoky wrote: Tue Feb 06, 2018 11:35 am Are you sure its "dark_slider_button_normal.png" and not "gui/dark_slider_button_normal.png"? I am asking because you used gui as path for the slider
HaHa, You are right!! Thanks!
So I finally can see something there, but part of the screen have been taken by the default menu, How can I remove it??

Image
Last edited by rougemortar on Wed Feb 14, 2018 2:05 am, edited 1 time in total.

User avatar
rougemortar
Newbie
Posts: 15
Joined: Wed Dec 13, 2017 1:58 am
itch: rougemortar
Contact:

Re: [Question] About Preference Menu

#6 Post by rougemortar »

Can someone help please... :(

Maou Zenigame
Regular
Posts: 66
Joined: Thu Nov 09, 2017 3:09 am
Contact:

Re: [Question] About Preference Menu

#7 Post by Maou Zenigame »

The code in my preferences screen isn't much different from yours and I don't have this issue...

Try removing the

Code: Select all

use game_menu(_("Preferences"), scroll="viewport"): 
and see if it works then?

User avatar
rougemortar
Newbie
Posts: 15
Joined: Wed Dec 13, 2017 1:58 am
itch: rougemortar
Contact:

Re: [Question] About Preference Menu

#8 Post by rougemortar »

Maou Zenigame wrote: Thu Feb 22, 2018 2:10 am The code in my preferences screen isn't much different from yours and I don't have this issue...

Try removing the

Code: Select all

use game_menu(_("Preferences"), scroll="viewport"): 
and see if it works then?
Finally, I figure it out.
Delete this line, and the "tag menu" as well. Thanks!

Post Reply

Who is online

Users browsing this forum: No registered users