Mercurial > touhou
view pytouhou/game/item.pxd @ 524:7f016dfbdfb1
Make vector a struct, allocate it directly on the stack, and thus pass it by copy, which is much less expensive than a python allocation.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Wed, 18 Dec 2013 18:15:40 +0100 |
parents | 3d3285918ba1 |
children | a6af3ff86612 |
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 void autocollect(self, Player player) except * cdef void on_collect(self, Player player) except * cpdef update(self)