Andrei Alexeyev
1acd9b4d12
sync music after skipping to bookmark
2020-03-04 22:26:40 +02:00
Andrei Alexeyev
f4d25a8409
basic "bookmark" system for skipping to specific stage portions
2020-03-04 22:26:40 +02:00
Andrei Alexeyev
7ca54ec350
Add CANCEL_TASK_AFTER and macros for boss attacks
...
Also document various coroutine system macros
2020-03-04 22:25:44 +02:00
Andrei Alexeyev
a753bd462d
remove a bunch of stage1 dead code
2020-03-04 22:06:40 +02:00
Andrei Alexeyev
20a417da97
remake Cirno's snowflake non
2020-03-04 22:06:40 +02:00
Andrei Alexeyev
75e99fa5c8
fix another subtask corruption
2020-03-04 22:06:40 +02:00
Andrei Alexeyev
490b224bd7
run upkeep
2020-03-04 22:06:39 +02:00
Andrei Alexeyev
953ac1c97b
macro fuckery for boxed ent arrays
2020-03-04 22:06:39 +02:00
Andrei Alexeyev
56aebcd921
fix corruption when subtask ends before its parent
2020-03-04 22:06:39 +02:00
Andrei Alexeyev
a846e4598f
event-based way to wait for boss defeat and retrieve the waiting time
2020-03-04 22:06:39 +02:00
laochailan
8a1f51dce8
pfreeze
2020-03-04 22:06:39 +02:00
Andrei Alexeyev
1ddea7ab97
random wandering function
2020-03-04 22:06:38 +02:00
laochailan
10f0ffe814
snowflake port
2020-03-04 22:06:38 +02:00
Andrei Alexeyev
63c55ba09b
remove some bad assertions
2020-03-04 22:06:38 +02:00
Andrei Alexeyev
6596b76641
Add dependent subtasks; fix finalization bugs
2020-03-04 22:06:38 +02:00
Andrei Alexeyev
3dcc3dbfa1
add PFLAG_NOMOVE and PFLAG_MANUALANGLE
2020-03-04 22:06:38 +02:00
Andrei Alexeyev
9498e64dd1
further task-boss infrastructure WIP
2020-03-04 22:06:38 +02:00
Andrei Alexeyev
e14eb36e5c
implement some infrastructure for coroutine bosses
2020-03-04 22:06:37 +02:00
laochailan
4dc86d976c
Create extra stage stub (with an enemy pattern)
2020-03-04 22:05:55 +02:00
Andrei Alexeyev
65a0f77d01
stage1 progress: pre-midboss section somewhat playable (tuned for lunatic)
2020-03-04 21:53:28 +02:00
Andrei Alexeyev
b45fdfdd84
Use INLINE macro for various static-inline functions
2020-03-04 21:52:54 +02:00
Andrei Alexeyev
c9ab42dc02
wip stage 1 progress
2020-03-04 21:52:53 +02:00
Andrei Alexeyev
c3d7827b7c
add generic move support for enemies
2020-03-04 21:52:53 +02:00
Andrei Alexeyev
4e4224dc59
task system tweaks and early Stage 1 port attempt
2020-03-04 21:50:51 +02:00
Andrei Alexeyev
76aef22e23
integrate task scheduling into the stage loop
2020-03-04 21:50:51 +02:00
Andrei Alexeyev
5b0b676c0e
INVOKE_TASK_DELAYED; CANCEL_TASK_WHEN; event robustness fixes
2020-03-04 21:50:51 +02:00
Andrei Alexeyev
156d8147b1
Add a way to define extern tasks (to reference across files)
2020-03-04 21:50:51 +02:00
Andrei Alexeyev
13b5e33b0c
add 'killed' event for projectiles
2020-03-04 21:50:51 +02:00
Andrei Alexeyev
2a34f7bad4
generalize common bullet motion rules; add some math helpers
2020-03-04 21:50:50 +02:00
Andrei Alexeyev
439d8ea339
add kill_projectile() as a kind-of ACTION_DESTROY substitute
2020-03-04 21:50:50 +02:00
Andrei Alexeyev
3f99739d62
coroutines: task finalizers; fix enemy death event
2020-03-04 21:50:50 +02:00
Andrei Alexeyev
9fe54e0335
experimental event system for coroutine-based stages
2020-03-04 21:50:50 +02:00
Andrei Alexeyev
1579082e30
"Boxed" entities; facility to bind tasks to entity lifetime
2020-03-04 21:50:50 +02:00
Andrei Alexeyev
6a8ed64adb
make enemy logic rule optional
2020-03-04 21:50:50 +02:00
Andrei Alexeyev
bdef62d7f4
Initial coroutine/task system implementation
2020-03-04 21:50:22 +02:00
Kasymov Grigorii
6ba4d4fa6b
move sound resume code to js for emscripten build ( #195 )
2020-03-02 10:54:30 +02:00
Andrei Alexeyev
8aad971114
clear up some ancient 3D confusion
2020-02-22 08:56:41 +02:00
Andrei Alexeyev
fadd6de76d
refactor some aspects of path config, ANGLE libs in particular
2020-02-21 00:36:40 +02:00
Alice
0b29dd473b
OpenGL ES 3.0/ANGLE support on macOS ( #190 )
...
* fixing OpenGL ES 3.0 support in macOS
* make GLES libraries loaded via buildconf vars
* fix relative install paths for macOS
* fix indenting, add comments
* fix indentation for REAL this time (thanks editorconfig)
2020-02-20 04:16:28 +02:00
Andrei Alexeyev
5d02fa4e47
webgl: enable WEBGL_debug_renderer_info
2020-02-18 06:00:29 +02:00
Andrei Alexeyev
58f7dc7d7b
Workaround for macOS AMD performance issues ( #188 )
...
fixes #182
2020-02-18 05:56:36 +02:00
Alice
00cd15af21
fix Stage 1 water effect on Intel UHD ( #189 )
2020-02-18 05:06:21 +02:00
Andrei Alexeyev
f4a3207f61
support GL_ANGLE_base_vertex_base_instance
2020-02-15 20:58:15 +02:00
Andrei Alexeyev
7474ff3a25
OpenGL ES 2.0 support ( #187 )
...
* WIP gles2 compat
* More gles2 compat. Playable with ANGLE now, with some rendering bugs.
* fix matrix mult. order in generic laser shader
* gles20: fix indexed rendering
* Update docs about gles20 status
* fix formatting
2020-02-15 19:45:09 +02:00
laochailan
44bd09bada
linear3dpos saved a multiplication and draw nearest to farthest
2020-02-01 08:55:37 +01:00
laochailan
7e6b98fe4f
refactored linear3dpos
2020-02-01 08:37:36 +01:00
Andrei Alexeyev
3bd884cd1b
Stage3D improvements
...
* More consistent function names
* No need to register models, just pass what you want to draw to
stage3d_draw()
* Optimize vector math
2020-02-01 03:24:17 +02:00
makise-homura
f9f1f41991
Fix for strange behavior of elbrus compiler regarding __auto_type
...
On `__auto_type x = y`, it creates x as array rather than pointer
if y is array, while gcc always makes x a pointer.
2020-01-24 02:33:14 +03:00
Andrei Alexeyev
1cca9173b8
renderer: expose half-float and depth{24,32} pixel formats
2020-01-16 21:58:25 +02:00
Andrei Alexeyev
b8c2755ce1
attempt to fix more feature-test-macro portability issues
2019-12-18 15:38:00 +02:00