kichikuou
989b6a844d
System3: L 101-126 returns 255 if save file does not exist
...
This fixes an issue in Hashiri Onna II where "Data Load" appears in the
start menu even though there is no save. (#32 )
2024-12-11 17:00:14 +09:00
kichikuou
9173742ffb
Introduce GameId class
2024-12-11 10:43:28 +09:00
kichikuou
930fdfab4e
Fix MSVS build
2024-12-10 22:08:19 +09:00
kichikuou
4ec1a12daa
Add Scenario::unknown_command() for error reporting
2024-12-10 09:12:55 +09:00
kichikuou
ffa3a364ce
NACT: Make cmd_{label,page}_{jump,call} methods non-virtual
2024-12-10 08:42:36 +09:00
kichikuou
d10ae21ff4
Move call stacks from NACT to Scenario
2024-12-10 08:35:23 +09:00
kichikuou
e79f24d8b9
Replace NACT::fatal() with global sys_error()
2024-12-10 07:54:56 +09:00
kichikuou
5483d1932f
Introduce Scenario class
2024-12-09 14:44:37 +09:00
kichikuou
8303f7c770
Refactor FILEIO
2024-12-08 15:06:00 +09:00
kichikuou
48d780add6
Introduce Dri class
...
It caches the link table.
2024-12-08 13:39:23 +09:00
kichikuou
8eaaec8e16
Add scenario address to cali parse error messages
2024-12-03 11:08:51 +09:00
kichikuou
ad23d428cc
Y 255,0 should return the value of RND to the system
2023-09-27 16:50:25 +09:00
kichikuou
30ca8b714b
Reorganize flags for exit and restart
...
Pure refactoring, no user-visible changes.
2023-09-27 16:41:05 +09:00
kichikuou
c3556c5213
Replace sprintf_s with snprintf
2023-04-15 09:16:14 +09:00
kichikuou
2178c98a75
Apply K3 hack to the map area selection of Only You
2023-03-17 18:23:58 +09:00
kichikuou
3a13f27dcf
Add a hack to improve menu usability in Alice's Cottage 3
...
Some screens in Alice's Cottage 3 have menus implemented on the script
side. The script does not know the absolute position of the mouse
pointer (cursor movement is done by obtaining the relative movement
distance of the mouse), so the mouse pointer and the selected item were
often misaligned, and the cursor could not be moved by touch operation.
This adds a hack to the K3 command that emulates cursor movements by
absolute mouse pointer location.
2023-02-25 14:29:04 +09:00
kichikuou
cc75dd7c94
Convert linebreaks from CRLF to LF
2022-04-03 11:34:48 +09:00
kichikuou
dc471399e5
Rewrite fade in / fade out implementation
...
Before this change, fade in and fade out was implemented using a
16-steps dithering pattern.
Now fading uses alpha-blending. It behaves like the PC98 version, where
fading was done by palette animation.
This reduces `sizeof(AGS)` by 1.2MB.
2021-11-20 17:09:17 +09:00
kichikuou
da91f10779
Allow overriding hard-coded strings by system3.ini
...
Some strings ("戻る" and "次のページ" in menu, character names in DPS)
are not included in game files but are hard-coded in the executable.
Now those strings can be overridden by adding [string] section to
system3.ini. For example, system3.ini for English translation of DPS
may look like this:
[config]
game = dps
title = D.P.S - Dream Program System
[string]
back = Back
next_page = Next Page
dps_custom = Custom
dps_linus = Linus
dps_katsumi = Katsumi
dps_yumiko = Yumiko
dps_itsumi = Itsumi
dps_hitomi = Hitomi
dps_mariko = Mariko
2021-09-11 13:20:48 +09:00
kichikuou
ccd99dab07
Apply character encoding conversion to hard-coded strings
...
This fixes an issue where menu items like "戻る" were garbled in Unicode
mode.
2021-09-05 15:10:22 +09:00
kichikuou
92487ada06
Introduce Encoding class
...
It represents a multi-byte character encoding. Currently, SjisEncoding
is the only implementation of it.
2021-09-04 13:41:37 +09:00
kichikuou
d0e40c1c6d
Fix a bug in M command + quoted string
2021-08-30 19:28:10 +09:00
kichikuou
201924f88c
Fix escaping in quoted strings
...
Do not treat 0x5c as an escaping character if it is part of a multibyte
character.
Fixes #15 .
2021-08-29 16:52:03 +09:00
kichikuou
0f4984bef5
Introduce Config struct
...
For now, it's just a container for command line arguments.
2021-06-06 16:18:17 +09:00
kichikuou
34175d5a85
Add English translations for string constants
2021-03-18 09:38:13 +09:00
kichikuou
9a8ebbdcb0
Support SysEng's quoted message commands
2021-03-18 09:38:10 +09:00
kichikuou
20e06235d2
Add CRC32 for English translations of Little Vampire / Rance 4.x
...
Note that these are still in beta; CRC32s may change.
2021-03-17 20:47:01 +09:00
kichikuou
d3d820d727
emscripten: Support message skip
...
Also add flags that control message skip behavior.
2020-12-29 12:09:34 +09:00
kichikuou
46827f35ef
Use common menu selection function in all systems
2020-12-24 22:55:33 +09:00
kichikuou
e091bd9c1c
Improve message skip
...
When message skip is enabled while executing cmd_a(), skip starts
immediately.
This also makes messages displayed during skip visible for a moment.
2020-12-24 22:18:52 +09:00
kichikuou
c2ff6de675
Stop message skip on unseen text
...
This makes System3-sdl2 stop message skip when it sees text that has not
been read by the player. Seen / unseen flags are stored in MSGSKIP.DAT
file in the save folder.
2020-12-24 17:12:47 +09:00
kichikuou
067e1e23bd
Refectoring: Add is_[12]byte_message() helper functions
2020-12-20 14:44:08 +09:00
kichikuou
6d1a8f7987
Fix an operator precedence bug in nact_sys3.cpp
2020-12-06 15:39:37 +09:00
kichikuou
f2139440b6
Defer rendering to idle time
...
SDL_RenderCopy / SDL_RenderPresent was called too often, which sometimes
caused screen update to fail on Mac.
2020-11-29 12:06:08 +09:00
kichikuou
4b4053cf1e
Add -fm command line option
2020-11-21 14:01:38 +09:00
kichikuou
9ddbf01d23
Minor refactoring of MAKO
...
- Move select_sound() from NACT to MAKO
- Make cd_track private
2020-10-24 17:53:07 +09:00
kichikuou
5571061ac1
Merge upstream changes: Add wait after opening menu
...
This prevents mis-selection by key repeat etc.
2020-05-23 10:53:34 +09:00
kichikuou
cda1888ebc
Merge upstream changes: Prevent menu selection when cursor is out of window
...
This was introduced in System3-sdl2 71728db only for nact_sys3. TOTO took
this change and expanded for nact_sys1 and nact_sys2 as well.
2020-05-23 10:40:05 +09:00
kichikuou
657057fa64
Merge upstream changes: CRC32 updates
...
- Check CRC32 of both ADISK.DAT (storead as crc32_a) and BDISK.DAT (crc32_b)
- Update the CRC32 database adding more titles
2020-05-22 16:09:55 +09:00
kichikuou
e8d254328a
Merge upstream changes: Merge FILEIO changes
...
FILEIO has been updated to resolve relative paths inside FILEIO::Fopen(),
which has been already done in System3-sdl2.
FILEIO::Fgets() now uses a length param.
Callsites for these functions are also updated to reduce the diff from
upstream.
2020-05-22 12:04:36 +09:00
kichikuou
131707f9d8
Merge upstream changes: Improve error messages for unknown commands
...
Unlike the upstream, we use fatal() because it generates a message box
even if DEBUG_CONSOLE is disabled.
2020-05-22 09:32:04 +09:00
kichikuou
406a7fe106
Merge upstream changes: output_console() takes printf-style arguments
2020-05-21 23:24:54 +09:00
kichikuou
7654f1a671
Fix character encoding in string literals
2020-02-24 19:38:12 +09:00
kichikuou
7a1cc2a483
Convert all Shift_JIS files to UTF-8
2020-02-24 18:06:38 +09:00
kichikuou
7ffa8bc306
Avoid virtual functions in NACT
...
Since NACT functions call asynchronous operations and we use
ASYNCIFY_IGNORE_INDIRECT in emscripten.
2020-02-23 14:23:30 +09:00
kichikuou
20ba438300
Unify executables
...
Instead of building multiple executables using #ifdefs, create a single
executable (still called "system3") that can run all System1-3 games.
2020-02-22 16:15:47 +09:00
kichikuou
387c5febf2
Remove tchar.h shim
2020-02-16 15:57:05 +09:00
kichikuou
6e73c48e68
Report errors using SDL message box
2019-12-27 19:41:55 +09:00
kichikuou
75d328f015
Fix compiler warnings
2019-09-16 11:00:31 +09:00
kichikuou
bde689eaa1
Text hook
2019-09-02 09:03:29 +09:00