Mercurial > touhou
annotate pytouhou/game/bullet.pxd @ 783:ec1e06402a97
Replace SDL2_mixer with the kira crate
| author | Link Mauve <linkmauve@linkmauve.fr> |
|---|---|
| date | Fri, 21 Nov 2025 10:21:59 +0100 |
| parents | a6af3ff86612 |
| children |
| rev | line source |
|---|---|
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
1 from pytouhou.game.element cimport Element |
|
447
78e1c3864e73
Make pytouhou.game.game an extension type.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
442
diff
changeset
|
2 from pytouhou.game.game cimport Game |
|
472
8038f1957b71
Type bullettype, itemtype and lasertype a bit.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
468
diff
changeset
|
3 from pytouhou.game.bullettype cimport BulletType |
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
4 from pytouhou.utils.interpolator cimport Interpolator |
|
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
5 |
|
448
3bc37791f0a2
Make Bullet.state an enum.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
447
diff
changeset
|
6 |
|
3bc37791f0a2
Make Bullet.state an enum.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
447
diff
changeset
|
7 cdef enum State: |
|
3bc37791f0a2
Make Bullet.state an enum.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
447
diff
changeset
|
8 LAUNCHING, LAUNCHED, CANCELLED |
|
3bc37791f0a2
Make Bullet.state an enum.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
447
diff
changeset
|
9 |
|
3bc37791f0a2
Make Bullet.state an enum.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
447
diff
changeset
|
10 |
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
11 cdef class Bullet(Element): |
|
448
3bc37791f0a2
Make Bullet.state an enum.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
447
diff
changeset
|
12 cdef public State state |
|
3bc37791f0a2
Make Bullet.state an enum.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
447
diff
changeset
|
13 cdef public unsigned long flags, frame, sprite_idx_offset, damage |
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
14 cdef public double dx, dy, angle, speed |
|
492
887de1309491
Add friendly fire in netplay.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
472
diff
changeset
|
15 cdef public bint was_visible, grazed |
|
472
8038f1957b71
Type bullettype, itemtype and lasertype a bit.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
468
diff
changeset
|
16 cdef public Element target |
|
8038f1957b71
Type bullettype, itemtype and lasertype a bit.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
468
diff
changeset
|
17 cdef public BulletType _bullet_type |
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
18 cdef public list attributes |
|
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
19 |
|
468
feecdb4a8928
Add “except *” to cdef void functions, and type some more.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
448
diff
changeset
|
20 cdef double hitbox[2] |
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
21 cdef Interpolator speed_interpolator |
|
447
78e1c3864e73
Make pytouhou.game.game an extension type.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
442
diff
changeset
|
22 cdef Game _game |
|
492
887de1309491
Add friendly fire in netplay.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
472
diff
changeset
|
23 cdef long player |
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
24 |
|
606
3c2f96f1d715
Fix compilation under Cython 0.22, by making the pyx and the pxd declarations’ except clause similar.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
492
diff
changeset
|
25 cdef bint is_visible(self, unsigned int screen_width, unsigned int screen_height) nogil |
|
442
6b4c3e250bd6
Type Bullet more, to improve performances.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
26 cpdef set_anim(self, sprite_idx_offset=*) |
|
617
a6af3ff86612
Change all “void except *” function into “bint except True”, to prevent PyErr_Occurred() from being called at each call.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
606
diff
changeset
|
27 cdef bint launch(self) except True |
|
a6af3ff86612
Change all “void except *” function into “bint except True”, to prevent PyErr_Occurred() from being called at each call.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
606
diff
changeset
|
28 cdef bint collide(self) except True |
|
a6af3ff86612
Change all “void except *” function into “bint except True”, to prevent PyErr_Occurred() from being called at each call.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
606
diff
changeset
|
29 cdef bint cancel(self) except True |
|
a6af3ff86612
Change all “void except *” function into “bint except True”, to prevent PyErr_Occurred() from being called at each call.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
606
diff
changeset
|
30 cdef bint update(self) except True |
