view pytouhou/game/item.pxd @ 772:7492d384d122 default tip

Rust: Add a Glide renderer (2D only for now) This is an experiment for a Rust renderer, iterating over the Python data using pyo3. It requires --feature=glide to be passed to cargo build, doesn’t support NPOT textures, text rendering, the background, or even msg faces, some of that may come in a future changeset.
author Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
date Mon, 05 Sep 2022 17:53:36 +0200
parents a6af3ff86612
children
line wrap: on
line source

from pytouhou.game.element cimport Element
from pytouhou.game.game cimport Game
from pytouhou.game.player cimport Player
from pytouhou.game.itemtype cimport ItemType
from pytouhou.utils.interpolator cimport Interpolator


cdef class Indicator(Element):
    cdef Item _item

    cdef void update(self) nogil


cdef class Item(Element):
    cdef public ItemType _item_type

    cdef unsigned long frame
    cdef long _type
    cdef double angle, speed
    cdef Game _game
    cdef Player player
    cdef Element target
    cdef Indicator indicator
    cdef Interpolator speed_interpolator, pos_interpolator

    cdef bint autocollect(self, Player player) except True
    cdef bint on_collect(self, Player player) except True
    cpdef update(self)