kichikuou
29a139c8a1
Use the standard integer types
...
This replaces BYTE, WORD and DWORD types with uint8_t, uint16_t and
uint32_t respectively.
2022-10-29 09:34:21 +09:00
kichikuou
d1712ab7b4
Remove newline character from debug print macro calls
...
Now "\n" is appended by the macros.
2022-09-02 20:37:26 +09:00
kichikuou
d508676c70
Refactoring: Introduce getCaliArray()
...
This replaces global preVar{No,Page,Index} variables.
2022-08-27 16:11:36 +09:00
kichikuou
dc89c92139
Switch JPEG decoder to stb_image
...
To enable JPEG support on Android without complicating CMake files.
2022-07-16 17:16:44 +09:00
kichikuou
fe294bd34b
Remove nact->is_message_locked
...
Now sysWinMsgLock and sysWinMsgUnlock are no-op.
2022-07-02 11:59:18 +09:00
kichikuou
e26779a189
SACT: Do not enter backlog mode if sact.version < 120
2022-07-02 11:15:28 +09:00
kichikuou
f9b5fec03d
Implement mouse wheel input
...
This implements iptGetWheelCount and iptClearWheelCount commands, and
wheel events for SACT backlog.
2022-07-02 10:55:40 +09:00
kichikuou
f56ec88cda
Make sure nact->is_quit breaks event loops
2022-06-26 17:25:43 +09:00
kichikuou
9706f516f9
Add reset functions for DLL modules
2022-06-26 17:25:43 +09:00
kichikuou
1cf0dbc7e2
Refactoring: Simplify music_cdrom.c
2022-06-26 16:30:52 +09:00
kichikuou
3377441caf
Simplify CG drawing functions
...
This removes extra buffer copy in some cases.
2022-04-02 22:13:25 +09:00
kichikuou
a6109b6210
Do not convert to 16bpp when decoding JPEG
2022-04-02 22:13:25 +09:00
kichikuou
901a3bb28c
Revamp NightDemonDemo
...
- Fix off-by-one bug in demo number
- Use the jpeg extraction function in src/
- Improve alk archive interface
2022-04-02 22:12:16 +09:00
kichikuou
f1b80d7086
Improve SACT version detection
...
Using game title (set by the MT command) is fragile in translations.
After this, SACT version is determined from the information in the HEL0
section of System39.ain.
2022-03-31 20:54:43 +09:00
kichikuou
c67198cc0e
emscripten: Load Mincho font on demand in SACT games
2022-03-05 11:52:52 +09:00
kichikuou
63c456329f
Remove (unused) MMX support
2022-02-05 22:08:26 +09:00
kichikuou
933cf5b6a3
Remove old ags_fader()
...
And rename ags_fade2() to ags_runEffect().
2022-01-31 21:44:29 +09:00
kichikuou
d1d943d2a5
Remove old code path for SACT.DrawEffect
...
Now it always uses sdl_effect.
2022-01-30 11:32:33 +09:00
kichikuou
6c59122c59
sdl_effect: Implement EFFECT_POLYGON_ROTATE_*
...
It needs perspective-correct interpolation, so we cannot simply use
SDL_RenderGeometry.
2022-01-30 11:32:21 +09:00
kichikuou
b6a69deab7
sdl_effect: Implement EFFECT_ZOOM_BLEND_BLUR
2022-01-23 22:20:18 +09:00
kichikuou
eea1f9c93a
sdl_effect: Implement EFFECT_ZIGZAG_CROSSFADE
...
This effect is hard to implement correctly without writing a custom
shader. We approximate this by combining vertical and horizontal wave
effects.
2022-01-23 16:46:36 +09:00
kichikuou
10b414fb4e
sdl_effect: Implement mosaic and crossfade-mosaic
2022-01-23 14:08:23 +09:00
kichikuou
49e707e40e
Fix default duration of Gpx.EffectCopy
2022-01-22 09:27:44 +09:00
kichikuou
d35a24f142
sdl_effect: Implement linear blur effects
...
Now Gpx and NIGHTDLL are fully migrated to sdl_effect.
2022-01-17 17:41:13 +09:00
kichikuou
d945dfe77d
sdl_effect: Implement EFFECT_CROSSFADE_{DOWN,UP,LR,RL}
2022-01-17 11:23:22 +09:00
kichikuou
a224d89233
Rename sdl_fader to sdl_effect
2022-01-17 09:47:39 +09:00
kichikuou
bc97e4c826
sdl_fader: Implement blind effects
2022-01-16 22:05:53 +09:00
kichikuou
c4d74d659a
sdl_fader: Add fade in/out and white in/out effects
...
This replaces the existing three separate implementations (CE command,
Gpx, and NIGHTDLL) of these effects with the new one implemented in
sdl_fader.
2022-01-16 15:48:58 +09:00
kichikuou
4daaa5ede5
Use sdl_fader in Gpx.EffectCopy
2022-01-16 11:04:25 +09:00
kichikuou
9ea1a81cc1
Allow more than 256 steps in sdl_fader
...
Now sdl_fader_step() takes a real number between 0 and 1.
2022-01-15 16:53:32 +09:00
kichikuou
5fefd74d4a
Rewrite SACT's rotation effects using sdl_fader
...
This is much faster since it uses (possibly hardware accelarated) SDL
rendering functions.
2022-01-04 17:20:16 +09:00
kichikuou
d03568c3ff
Refactor effect enums
...
Since not all SACT effects can be mapped to CE effects, a third enum
type is needed.
2022-01-04 12:32:10 +09:00
kichikuou
9ad1059ced
Let SACT.WaitKeyMessgae call sys_getInputInfo() while skipping
...
Otherwise it skips messages too fast.
2022-01-01 15:48:16 +09:00
kichikuou
e1e1e5cacc
Use sdl_fader in SACT
2021-12-12 22:21:20 +09:00
kichikuou
93d29b5f87
Implement RandMT.GetNoOverlap
2021-12-03 10:57:09 +09:00
kichikuou
38a40e82f3
Implement OujiMisc module
2021-12-03 10:57:06 +09:00
kichikuou
c31da0fe10
Merge counter.c into cmdz.c
2021-11-16 09:10:07 +09:00
kichikuou
ff9710426f
Remove internal time counters
2021-11-14 22:12:11 +09:00
kichikuou
aa537687c4
Emscripten: Ensure functions in asyncify addlist are not optimized out
...
Also update emscripten version to 2.0.34.
2021-11-14 17:12:47 +09:00
kichikuou
28ac087bca
SACT: Improve sprite move animation
...
- Move operation for hidden sprites shouldn't be ignored.
- Move time set by SACT.SetMoveTime shouldn't be reset after move.
This makes Save Lion in Rance 5D animate smoothly.
2021-11-13 18:28:43 +09:00
kichikuou
e08ba5fb03
Refactor sactcg.c
2021-11-07 21:23:45 +09:00
kichikuou
ca1e47c093
Fix reference counting of SACT CGs
...
This fixes a bug where enemies disappear in Rance 5D battles.
2021-11-07 21:23:45 +09:00
kichikuou
69f5e8f538
Fix message display of SACT and NIGHTDLL in Unicode mode
2021-11-04 09:28:45 +09:00
kichikuou
0ecc4edb43
Add webp CG support
...
Used in the MangaGamer version of Rance 5D.
The logic for the OVER chunk was taken from libsys4.
2021-11-03 21:09:02 +09:00
kichikuou
162bf8dc25
Fix SACT version detection for Rance 5D English version
2021-11-03 12:09:14 +09:00
kichikuou
7f6ab44e96
sp_set_wall_paper: Fix crash when CG loading failed
2021-11-03 10:48:09 +09:00
kichikuou
bc06099e01
Show message box on fatal error
...
Now sys_error() shows error message using a SDL message box, so that
user can see the message on Windows / Android.
2021-10-26 21:41:34 +09:00
kichikuou
d713e1470e
Make SACT work with emscripten
...
- Add some functions to ASYNCIFY_ADD
A function that calls an asynchronous function via a function pointer
must be added to ASYNCIFY_ADD, even if it had a direct call to
another asynchronous function, so that the indirect call itself is
instrumented.
- Add dummy emscripten_sleep() call to send_agsevent
Because adding a function to ASYNCIFY_ADD does not make its callers
instrumented transitively.
2021-09-25 22:54:57 +09:00
kichikuou
6ef699e87d
Clean up scenario.h dependencies
...
- nact.h and xsystem35.h no longer include scenario.h
- Removed `sys_*` aliases in nact.h
- sys_getString() and sys_getConstString() are moved to
scenario.c as sl_getString() and sl_getConstString()
- DEBUG_COMMAND macros are now defined in scenario.h
2021-07-31 15:18:02 +09:00
kichikuou
2e2fbbaa1b
Refactor main loop
2021-07-17 22:12:16 +09:00