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
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
9706f516f9
Add reset functions for DLL modules
2022-06-26 17:25:43 +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
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
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
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
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
d61ce9a18e
SACT/NIGHTDLL: Check nact->is_quit flag in wait loops
2021-01-24 11:43:23 +09:00
kichikuou
cd77cbfbf1
Remove ags_regionContains()
2021-01-09 13:43:24 +09:00
kichikuou
e18bb6cb75
Make MyRectangle an alias of SDL_Rect
2021-01-09 13:43:21 +09:00
kichikuou
da1c136b39
Move message skip status flags from input.c to msgskip.c
2020-12-29 12:07:37 +09:00
kichikuou
9f9805128f
Improve message skip
...
When message skip is enabled while executing sys_keywait(), skip starts
immediately.
2020-12-13 12:29:09 +09:00
kichikuou
9541f3f85a
Make image_Mosaic operate on SDL_Surface
2020-10-04 16:02:10 +09:00
kichikuou
ebb249cd47
Remove 15bpp surface operations
...
These were used only with X11 backend.
2020-10-04 16:01:48 +09:00
kichikuou
ec270f2378
Remove X11/SDL abstraction macros
2020-10-01 22:10:12 +09:00
kichikuou
316a06a168
Refactor string variable functions
...
This replaces v_str* functions with new svar_* functions.
The new svar_* functions use 1-based string variable index, so that
callers don't have to decrement string numbers from SCO.
2020-09-21 16:17:23 +09:00
kichikuou
440fb93b08
Fix memory leak in sprite_update.c
2020-08-30 12:17:46 +09:00
kichikuou
15fb122148
Remove agsurface.has_{pixel,alpha} fields
2020-08-30 10:26:55 +09:00
kichikuou
bc9fc924ed
[experimental] Unicode mode
...
This adds "Unicode mode", in which scenarios can be written in any
language. xsys35c 1.2.0 and later can produce Unicode scenarios.
- nact->encoding represents the current scenario encoding. The initial
value is SJIS, and ZU command changes it to UTF8.
- Use conversion macros that switch the behavior by the scenario
encoding. For example, toUTF8() calls sjis2utf() if the scenario
encoding is SJIS, and calls strdup() if it is UTF8.
- Fix various string processing functions to work with UTF8.
2020-08-09 21:24:56 +09:00
kichikuou
d8fbf9a8b1
Cleanup
2020-08-09 13:41:26 +09:00
kichikuou
652e4b9111
Simplify ags_drawStringToSurface()
2020-08-08 22:57:22 +09:00
kichikuou
3cecc58607
Narrow dependency on font.h
...
This removes font.h dependency from header files such as ags.h and
nact.h. After this, font.h must be explicitly included in order to use
font functions.
2020-08-08 22:52:47 +09:00
kichikuou
e830190537
Add ags_drawStringToSurface()
2020-08-08 21:28:01 +09:00
kichikuou
f978c43ee1
Move mmap-related code to mmap.{h,c}
...
And add Windows implementation.
2020-08-06 15:09:51 +09:00