Holger Schemel [Fri, 20 Sep 2024 19:06:31 +0000 (21:06 +0200)]
added buttons to editor to select colors for BD engine (yet to come)
The color picker itself still has to be implemented.
Holger Schemel [Thu, 19 Sep 2024 18:22:43 +0000 (20:22 +0200)]
minor changes (mainly comments and code formatting)
Holger Schemel [Wed, 18 Sep 2024 19:38:05 +0000 (21:38 +0200)]
changed BD engine to match new GDash code (cave speed)
Holger Schemel [Tue, 17 Sep 2024 17:58:03 +0000 (19:58 +0200)]
minor changes
Holger Schemel [Tue, 17 Sep 2024 17:42:41 +0000 (19:42 +0200)]
renamed variable
Holger Schemel [Tue, 17 Sep 2024 17:37:28 +0000 (19:37 +0200)]
renamed variable
Holger Schemel [Tue, 17 Sep 2024 17:29:15 +0000 (19:29 +0200)]
renamed functions
Holger Schemel [Tue, 17 Sep 2024 17:27:41 +0000 (19:27 +0200)]
moved function
Holger Schemel [Tue, 17 Sep 2024 17:23:34 +0000 (19:23 +0200)]
changed BD engine to match new GDash code (cave setup)
Holger Schemel [Tue, 17 Sep 2024 17:01:47 +0000 (19:01 +0200)]
changed BD engine to match new GDash code (count diamonds)
Holger Schemel [Mon, 16 Sep 2024 20:02:10 +0000 (22:02 +0200)]
changed some comments
Holger Schemel [Mon, 16 Sep 2024 19:44:29 +0000 (21:44 +0200)]
changed BD engine to match new GDash code (cave start)
Holger Schemel [Mon, 16 Sep 2024 19:38:03 +0000 (21:38 +0200)]
minor changes
Holger Schemel [Mon, 16 Sep 2024 19:08:58 +0000 (21:08 +0200)]
changed some comments
Holger Schemel [Mon, 16 Sep 2024 19:00:53 +0000 (21:00 +0200)]
added support for explosion stage 3 target element to BD engine
Holger Schemel [Mon, 16 Sep 2024 18:19:06 +0000 (20:19 +0200)]
changed BD engine to match new GDash code (player birth)
Holger Schemel [Mon, 16 Sep 2024 18:15:01 +0000 (20:15 +0200)]
minor changes
Holger Schemel [Mon, 16 Sep 2024 17:55:18 +0000 (19:55 +0200)]
changed BD engine to match new GDash code (conveyor belts)
Holger Schemel [Mon, 16 Sep 2024 17:51:22 +0000 (19:51 +0200)]
changed BD engine to match new GDash code (falling walls)
Holger Schemel [Sun, 15 Sep 2024 23:47:48 +0000 (01:47 +0200)]
changed BD engine to match new GDash code (slime)
Holger Schemel [Sun, 15 Sep 2024 22:33:32 +0000 (00:33 +0200)]
changed BD engine to match new GDash code (expanding walls)
Holger Schemel [Sun, 15 Sep 2024 22:28:12 +0000 (00:28 +0200)]
minor changes
Holger Schemel [Sun, 15 Sep 2024 22:14:28 +0000 (00:14 +0200)]
minor changes
Holger Schemel [Sun, 15 Sep 2024 21:51:47 +0000 (23:51 +0200)]
renamed variables
Holger Schemel [Sun, 15 Sep 2024 19:39:14 +0000 (21:39 +0200)]
minor changes
Holger Schemel [Sun, 15 Sep 2024 19:34:24 +0000 (21:34 +0200)]
changed BD engine to match new GDash code (pneumatic hammer sound)
Holger Schemel [Sun, 15 Sep 2024 18:40:30 +0000 (20:40 +0200)]
minor changes
Holger Schemel [Sun, 15 Sep 2024 18:11:00 +0000 (20:11 +0200)]
changed BD engine to match new GDash code (player pushing)
Holger Schemel [Sun, 15 Sep 2024 18:02:00 +0000 (20:02 +0200)]
minor changes
Holger Schemel [Sun, 15 Sep 2024 17:52:39 +0000 (19:52 +0200)]
white space changes
Holger Schemel [Sun, 15 Sep 2024 17:31:29 +0000 (19:31 +0200)]
moved function
Holger Schemel [Sun, 15 Sep 2024 14:18:09 +0000 (16:18 +0200)]
added tape patch mode to set property bit to use the old BD engine
Holger Schemel [Sun, 15 Sep 2024 13:51:38 +0000 (15:51 +0200)]
added tape property bit for tapes using the old BD game engine
This tape property bit is either set when loading old BD replays that
are explicitly tagged to use the old BD game engine, or can manually
be set for existing tape files by using the "patch tapes" command (by
using the patch command from the following commit).
Holger Schemel [Sun, 15 Sep 2024 12:13:06 +0000 (14:13 +0200)]
changed tape flag for solved level to tape property bit
This change has the advantage that some more property bits can be
stored in tape files.
It has the disadvantage that previous program versions may treat a
tape as a solution tape when it really isn't (but instead has other
property bits set). As this is only used for the "dump tape" command
on the command line, this potential problem can safely be ignored.
Holger Schemel [Fri, 13 Sep 2024 15:52:36 +0000 (17:52 +0200)]
changed code to match new GDash code (player snapping/moving)
Holger Schemel [Thu, 12 Sep 2024 23:57:23 +0000 (01:57 +0200)]
moved redundant code to function
Holger Schemel [Thu, 12 Sep 2024 23:54:11 +0000 (01:54 +0200)]
added parameter to function
Holger Schemel [Thu, 12 Sep 2024 23:10:43 +0000 (01:10 +0200)]
minor changes
Holger Schemel [Thu, 12 Sep 2024 23:07:32 +0000 (01:07 +0200)]
renamed variable
Holger Schemel [Thu, 12 Sep 2024 22:35:46 +0000 (00:35 +0200)]
renamed functions
Holger Schemel [Thu, 12 Sep 2024 22:32:10 +0000 (00:32 +0200)]
minor changes
Holger Schemel [Thu, 12 Sep 2024 22:22:27 +0000 (00:22 +0200)]
renamed variable
Holger Schemel [Thu, 12 Sep 2024 22:18:17 +0000 (00:18 +0200)]
removed function (as elements are always stored as scanned)
Holger Schemel [Thu, 12 Sep 2024 22:12:54 +0000 (00:12 +0200)]
added comment
Holger Schemel [Thu, 12 Sep 2024 22:06:34 +0000 (00:06 +0200)]
removed function (as there is no scanned bladder in BD engine)
Holger Schemel [Thu, 12 Sep 2024 21:59:50 +0000 (23:59 +0200)]
removed unneeded function call
Holger Schemel [Thu, 12 Sep 2024 21:55:55 +0000 (23:55 +0200)]
added function
Holger Schemel [Thu, 12 Sep 2024 21:47:56 +0000 (23:47 +0200)]
renamed functions
Holger Schemel [Thu, 12 Sep 2024 19:38:35 +0000 (21:38 +0200)]
added array to double a direction in BD game engine
Holger Schemel [Thu, 12 Sep 2024 19:27:17 +0000 (21:27 +0200)]
white space changes
Holger Schemel [Thu, 12 Sep 2024 19:13:07 +0000 (21:13 +0200)]
renamed functions
Holger Schemel [Thu, 12 Sep 2024 19:03:57 +0000 (21:03 +0200)]
white space changes
Holger Schemel [Wed, 11 Sep 2024 16:56:54 +0000 (18:56 +0200)]
fixed showing game actions after game end when request door opens/closes
This fixes a bug in commit
90028d7d. It occurs when "ask on game over"
is disabled, the player has died in a game and a key to restart the
game is pressed (like "restart game", "replay & pause before end" or
"quick load game"), which causes the newly started game to immediately
freeze (although it can still be stopped with the "space" or "escape"
key).
Holger Schemel [Mon, 9 Sep 2024 22:29:08 +0000 (00:29 +0200)]
removed end marker of artwork config token list (not really needed)
Holger Schemel [Mon, 9 Sep 2024 22:25:10 +0000 (00:25 +0200)]
code formatting changes
Holger Schemel [Mon, 9 Sep 2024 22:17:36 +0000 (00:17 +0200)]
removed list of levelset config token names (not really needed)
Holger Schemel [Mon, 9 Sep 2024 21:45:42 +0000 (23:45 +0200)]
added levelset config flag to force using old game engine for BD replays
Holger Schemel [Mon, 9 Sep 2024 21:31:06 +0000 (23:31 +0200)]
removed setup options and variables not used anymore
These setup options and variables have been obsoleted by commit
a3ac3523.
Holger Schemel [Mon, 9 Sep 2024 21:20:37 +0000 (23:20 +0200)]
fixed new, 3-state setup option to allow skipping levels (yes/no/ask)
This fixes commit
a3ac3523.
Holger Schemel [Mon, 9 Sep 2024 21:16:50 +0000 (23:16 +0200)]
fixed alternative suffixes .old/.new for graphics_set.ecs/.aga
This fixes commit
869cd97d.
Holger Schemel [Thu, 5 Sep 2024 21:40:52 +0000 (23:40 +0200)]
added comments
Holger Schemel [Wed, 4 Sep 2024 22:19:41 +0000 (00:19 +0200)]
improved output for failed tapes of automated tape tests
Failed tapes in automated tape tests (like "autotest <level set>") are
now separated into the following three cases:
- "BROKEN" for newer tapes with "solution tape flag" set
- "UNSOLVABLE" for newer tapes with "solution tape flag" NOT set
- "FAILED" for older tapes that do not have a "solution tape flag"
That way, it is easier to see if a failed tape is broken or unsolvable
"by design" (or too old to tell).
Holger Schemel [Tue, 3 Sep 2024 20:00:44 +0000 (22:00 +0200)]
changed code for handling replicators and conveyor belts in BD engine
This change should not break any tapes.
Holger Schemel [Tue, 3 Sep 2024 19:40:26 +0000 (21:40 +0200)]
added comments
Holger Schemel [Tue, 3 Sep 2024 19:28:26 +0000 (21:28 +0200)]
removed code which has no effect anymore
Holger Schemel [Mon, 2 Sep 2024 23:54:30 +0000 (01:54 +0200)]
changed how the native BD game engine handles scanned game elements
After scanning (processing) game elements on the playfield using the
native BD game engine, game elements are marked as "scanned" to
prevent processing them again (for example, newly created elements in
the next row that are just about to be scanned). Previously, elements
were marked by setting a "scanned" bit. Now, elements are marked by
using special "scanned" variants for the already processed element.
There is another change that breaks old cave replays (BD style tapes):
When checking game element properties, the old engine always checked
the non-scanned elements, while the new engine checks the element just
as it is (that is, either scanned or non-scanned), which causes some
game elements (like the amoeba) to behave slightly differently.
This is handled by a special flag to choose the old or new behaviour,
which is currently still set to use the old behaviour.
Holger Schemel [Mon, 2 Sep 2024 22:27:18 +0000 (00:27 +0200)]
added functions to check if a BD engine element has a certain property
Holger Schemel [Sun, 1 Sep 2024 15:33:43 +0000 (17:33 +0200)]
added missing default case in switch statement
Holger Schemel [Sat, 31 Aug 2024 19:21:48 +0000 (21:21 +0200)]
changed using non-scanned elements when reading C64 cave files
Holger Schemel [Sat, 31 Aug 2024 19:19:26 +0000 (21:19 +0200)]
changed using non-scanned effect elements when reading BDCFF files
Holger Schemel [Sat, 31 Aug 2024 19:03:24 +0000 (21:03 +0200)]
fixed bug with restarting game after playing unsuccessful tape
When losing a game, pressing "space" or "enter" key before being asked
to play again restarts the game. When replaying a tape, a new game was
started instead of returning to the main menu. This commit fixes this
bug.
Holger Schemel [Wed, 28 Aug 2024 22:11:05 +0000 (00:11 +0200)]
cleanup of BD engine game elements palette in editor
Holger Schemel [Wed, 28 Aug 2024 21:06:14 +0000 (23:06 +0200)]
added game element palette section for scanned BD elements in editor
Holger Schemel [Tue, 27 Aug 2024 21:56:03 +0000 (23:56 +0200)]
added using special editor graphics for scanned BD elements
If additional editor graphics are defined for certain BD elements,
also use these graphics for scanned BD elements in the level editor
(which always use the graphics of their non-scanned counterparts).
Holger Schemel [Tue, 27 Aug 2024 21:29:33 +0000 (23:29 +0200)]
added support for scanned BD elements in editor (but not in game yet)
This change still converts all scanned BD elements to their unscanned
counterparts when playing a game using the BD engine, but now supports
handling of scanned elements in the level editior.
Holger Schemel [Tue, 27 Aug 2024 21:24:09 +0000 (23:24 +0200)]
added using non-scanned element graphics for scanned BD elements
Holger Schemel [Tue, 27 Aug 2024 21:16:45 +0000 (23:16 +0200)]
added exported function to get non-scanned BD element (not used yet)
Holger Schemel [Tue, 27 Aug 2024 21:12:51 +0000 (23:12 +0200)]
added mapping of scanned BD elements to R'n'D elements (not used yet)
Holger Schemel [Tue, 27 Aug 2024 20:58:32 +0000 (22:58 +0200)]
added R'n'D element definitions for scanned BD elements (not used yet)
Holger Schemel [Mon, 26 Aug 2024 19:53:42 +0000 (21:53 +0200)]
fixed smooth animations for snapping in BD engine for non-black space
Holger Schemel [Thu, 22 Aug 2024 22:01:39 +0000 (00:01 +0200)]
fixed bugs with enabling/disabling sound/music in setup menu
Holger Schemel [Thu, 22 Aug 2024 21:22:32 +0000 (23:22 +0200)]
fixed bug with fading music after disabling in setup menu
Holger Schemel [Thu, 22 Aug 2024 21:16:19 +0000 (23:16 +0200)]
fixed bugs with starting/stopping sound/music in main menu
Holger Schemel [Thu, 22 Aug 2024 18:23:54 +0000 (20:23 +0200)]
moved code in BD engine (should not change engine functionality)
Holger Schemel [Thu, 22 Aug 2024 18:12:14 +0000 (20:12 +0200)]
added more support for reading scanned BD elements from cave files
Holger Schemel [Thu, 22 Aug 2024 17:50:55 +0000 (19:50 +0200)]
removed unneeded variable
Holger Schemel [Thu, 22 Aug 2024 17:42:54 +0000 (19:42 +0200)]
changed to more generic approach to use only unscanned BD elements
While the previous approach only worked when reading caves from BDCFF
files, the new solution works for all cave file formats, as it changes
the internal cave structure after loading.
Holger Schemel [Thu, 22 Aug 2024 17:33:36 +0000 (19:33 +0200)]
added function to set all elements in BD cave to unscanned (not used yet)
Holger Schemel [Thu, 22 Aug 2024 17:28:28 +0000 (19:28 +0200)]
added functions for scanned/non-scanned BD elements (not used yet)
Holger Schemel [Sun, 18 Aug 2024 11:25:56 +0000 (13:25 +0200)]
added separate buffer for playfield (un)covering in BD engine
Holger Schemel [Sat, 17 Aug 2024 23:38:04 +0000 (01:38 +0200)]
code formatting changes
Holger Schemel [Sat, 17 Aug 2024 17:13:44 +0000 (19:13 +0200)]
added support for BDCFF token "AddBackward"
Holger Schemel [Thu, 15 Aug 2024 22:36:39 +0000 (00:36 +0200)]
added mapping of normal to runtime BD elements (not used yet)
Holger Schemel [Thu, 15 Aug 2024 22:26:08 +0000 (00:26 +0200)]
improved reading BD runtime elements from BDCFF files
Holger Schemel [Thu, 15 Aug 2024 22:06:48 +0000 (00:06 +0200)]
minor change of BD element properties array check
Holger Schemel [Thu, 15 Aug 2024 21:57:47 +0000 (23:57 +0200)]
fixed some BD element descriptions
Holger Schemel [Thu, 15 Aug 2024 18:51:21 +0000 (20:51 +0200)]
removed support for unused BDCFF tokens
Holger Schemel [Thu, 15 Aug 2024 18:27:45 +0000 (20:27 +0200)]
changed order of checks and initialization of cave structures
This change ensures that the element properties array is checked for
consistency (in function "gd_cave_db_init()") before its values are
used (in function "gd_cave_init()").
Holger Schemel [Wed, 14 Aug 2024 19:32:50 +0000 (21:32 +0200)]
added field to BD element properties (not used yet)
Holger Schemel [Mon, 12 Aug 2024 16:51:17 +0000 (18:51 +0200)]
renamed variables