pythonpython-3.xpygamepygame-surfacepygame2

How to fix this DeprecationWarning


DeprecationWarning: an integer is required (got type float). Implicit conversion to integers using int is deprecated, and may be removed in a future version of Python.

win.blit(playerStand, (x, y))

DeprecationWarning: an integer is required (got type float). Implicit conversion to integers using int is deprecated, and may be removed in a future version of Python.

win.blit(walkLeft[animCount // 5], (x, y))


Solution

  • The warning is related to the coordinate parameter of blit(). Floating point coordinates, would mean that the origin of the Surface is somewhere in between to pixels in the window. That doesn't make much sense. The coordinates are automatically, implicitly truncated and that is indicated by the warning.
    Use either int or round to convert the floating point coordinates to integral numbers:

    win.blit(playerStand, (round(x), round(y)))