view pytouhou/game/laser.pxd @ 604:aca9551ee8b4

Fix compiling issues with Cython 0.20 ; don't pretend to concat shader sources
author Thibaut Girka <thib@sitedethib.com>
date Tue, 11 Nov 2014 15:46:31 +0100
parents 53fa73932e9a
children a6af3ff86612
line wrap: on
line source

from pytouhou.game.element cimport Element
from pytouhou.game.sprite cimport Sprite
from pytouhou.game.lasertype cimport LaserType

cdef enum State:
    STARTING, STARTED, STOPPING


cdef class LaserLaunchAnim(Element):
    cdef Laser _laser

    cpdef update(self)


cdef class Laser(Element):
    cdef public unsigned long frame
    cdef public double angle

    cdef unsigned long start_duration, duration, stop_duration, grazing_delay,
    cdef unsigned long grazing_extra_duration, sprite_idx_offset
    cdef double base_pos[2]
    cdef double speed, start_offset, end_offset, max_length, width
    cdef State state
    cdef LaserType _laser_type

    cdef void set_anim(self, long sprite_idx_offset=*) except *
    cpdef set_base_pos(self, double x, double y)
    cdef bint _check_collision(self, double point[2], double border_size)
    cdef bint check_collision(self, double point[2])
    cdef bint check_grazing(self, double point[2])
    #def get_bullets_pos(self)
    cpdef cancel(self)
    cpdef update(self)


cdef class PlayerLaser(Element):
    cdef double hitbox[2]
    cdef double angle, offset
    cdef unsigned long frame, duration, sprite_idx_offset, damage
    cdef Element origin
    cdef LaserType _laser_type

    cdef void set_anim(self, long sprite_idx_offset=*) except *
    cdef void cancel(self) except *
    cdef void update(self) except *