renpy / pygame_sdl2

Reimplementation of portions of the pygame API using SDL2.
GNU Lesser General Public License v2.1
328 stars 65 forks source link

gfxdraw.thick_line cast to integers doesn't seem to work #146

Closed Gouvernathor closed 1 year ago

Gouvernathor commented 1 year ago

Passing float values for points to cv.lines fails. cv.aalines fails too and shows the same error, "an integer is required", but from a different point in the pyx files.

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "game/script.rpy", line 29, in script call
    e "Once you add a story, pictures, and music, you can release it to the world!"
  File "renpy/common/00console.rpy", line 1163, in script
    python in _console:
  File "renpy/common/00console.rpy", line 1165, in <module>
    console.interact()
  File "renpy/common/00console.rpy", line 605, in interact
    line = ui.interact()
TypeError: an integer is required

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

Full traceback:
  File "game/script.rpy", line 29, in script call
    e "Once you add a story, pictures, and music, you can release it to the world!"
  File "renpy/common/00console.rpy", line 1163, in script
    python in _console:
  File "E:\dev\renpy-8-nightly-sdk\renpy\ast.py", line 1130, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "E:\dev\renpy-8-nightly-sdk\renpy\python.py", line 1085, in py_exec_bytecode
    exec(bytecode, globals, locals)
  File "renpy/common/00console.rpy", line 1165, in <module>
    console.interact()
  File "renpy/common/00console.rpy", line 605, in interact
    line = ui.interact()
  File "E:\dev\renpy-8-nightly-sdk\renpy\ui.py", line 299, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "E:\dev\renpy-8-nightly-sdk\renpy\display\core.py", line 3454, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, pause_modal=pause_modal, **kwargs) # type: ignore
  File "E:\dev\renpy-8-nightly-sdk\renpy\display\core.py", line 4016, in interact_core
    self.draw_screen(root_widget, fullscreen_video, (not fullscreen_video) or video_frame_drawn)
  File "E:\dev\renpy-8-nightly-sdk\renpy\display\core.py", line 2674, in draw_screen
    surftree = renpy.display.render.render_screen(
  File "render.pyx", line 495, in renpy.display.render.render_screen
  File "render.pyx", line 266, in renpy.display.render.render
  File "E:\dev\renpy-8-nightly-sdk\renpy\display\layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "E:\dev\renpy-8-nightly-sdk\renpy\display\layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "E:\dev\renpy-8-nightly-sdk\renpy\display\layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "E:\dev\renpy-8-nightly-sdk\renpy\display\transform.py", line 753, in render
    return transform_render(self, width, height, st, at)
  File "accelerator.pyx", line 187, in renpy.display.accelerator.transform_render
  File "render.pyx", line 266, in renpy.display.render.render
  File "game/map_cdd_ren.py", line 77, in render
    cv.lines(Color(self.color), False, points)
  File "render.pyx", line 1690, in renpy.display.render.Canvas.lines
  File "src/pygame_sdl2/draw.pyx", line 90, in pygame_sdl2.draw.lines
  File "src/pygame_sdl2/draw.pyx", line 80, in pygame_sdl2.draw.line
  File "src/pygame_sdl2/gfxdraw.pyx", line 81, in pygame_sdl2.gfxdraw.thick_line
TypeError: an integer is required

Windows-10-10.0.19045 AMD64
Ren'Py 8.1.0.23022105n
Dominion for all kinds of experimentation 1.0
Wed Feb 22 23:31:25 2023
Gouvernathor commented 1 year ago

Nvm, my mistake (I was passing a tuple of tuple of tuple of ints instead of a tuple of tuples of ints)