rocksndiamonds.git
3 months agoimproved opening/closing color picker gadget
Holger Schemel [Sat, 5 Oct 2024 09:54:33 +0000 (11:54 +0200)]
improved opening/closing color picker gadget

3 months agofixed restoring last color type in editor
Holger Schemel [Sat, 5 Oct 2024 09:42:16 +0000 (11:42 +0200)]
fixed restoring last color type in editor

3 months agoadded support for "escape" and "return" keys for color picker
Holger Schemel [Thu, 3 Oct 2024 18:25:15 +0000 (20:25 +0200)]
added support for "escape" and "return" keys for color picker

3 months agoremoved checking for special colors in BD style color template images
Holger Schemel [Thu, 3 Oct 2024 17:09:47 +0000 (19:09 +0200)]
removed checking for special colors in BD style color template images

This removes the restriction that only image files with RGB values of
either 0 or 255 are allowed to be used as BD style color templates.

3 months agoremoved obsolete code for old BD style color template support
Holger Schemel [Thu, 3 Oct 2024 15:33:43 +0000 (17:33 +0200)]
removed obsolete code for old BD style color template support

3 months agochanged BD style color template support to cover all images sizes
Holger Schemel [Thu, 3 Oct 2024 14:20:32 +0000 (16:20 +0200)]
changed BD style color template support to cover all images sizes

The new method uses the newly added ".color_template" parameter in the
"graphicsinfo.conf" config file to mark an image as "color template".
In the level editor, all color changes are immediately applied to the
game elements selection list.

3 months agoadded updating BD cave colors when redrawing editor screen
Holger Schemel [Thu, 3 Oct 2024 14:02:16 +0000 (16:02 +0200)]
added updating BD cave colors when redrawing editor screen

3 months agoadded preparations for changed color template support (not used yet)
Holger Schemel [Thu, 3 Oct 2024 08:56:15 +0000 (10:56 +0200)]
added preparations for changed color template support (not used yet)

3 months agoadded new graphics config parameter ".color_template" (not used yet)
Holger Schemel [Thu, 3 Oct 2024 08:50:39 +0000 (10:50 +0200)]
added new graphics config parameter ".color_template" (not used yet)

3 months agochanged redrawing screen in editor (to prepare for further changes)
Holger Schemel [Thu, 3 Oct 2024 08:33:57 +0000 (10:33 +0200)]
changed redrawing screen in editor (to prepare for further changes)

This change prepares for following changes (regarding BD style level
colors) that require redrawing the game element selection buttons.

4 months agoadded new game element "light rock" to native BD game engine
Holger Schemel [Sun, 29 Sep 2024 11:36:03 +0000 (13:36 +0200)]
added new game element "light rock" to native BD game engine

4 months agorenamed BD style mega rock to heavy rock
Holger Schemel [Sat, 28 Sep 2024 13:31:25 +0000 (15:31 +0200)]
renamed BD style mega rock to heavy rock

4 months agochanged not allowing negative number of gems in non-BD engines
Holger Schemel [Sat, 28 Sep 2024 11:17:15 +0000 (13:17 +0200)]
changed not allowing negative number of gems in non-BD engines

4 months agochanged allowing negative number of gems needed in level editor
Holger Schemel [Sat, 28 Sep 2024 11:02:05 +0000 (13:02 +0200)]
changed allowing negative number of gems needed in level editor

4 months agochanged 16-bit level micro chunk value type from unsigned to signed
Holger Schemel [Sat, 28 Sep 2024 10:55:24 +0000 (12:55 +0200)]
changed 16-bit level micro chunk value type from unsigned to signed

This change allows for saving and loading negative 16-bit values in
level files (like negatiove values for "gems needed", for example).

As a result, 16-bit and 32-bit micro chunk values are always signed
now, while 8-bit micro chunk values are still always unsigned bytes.

4 months agofixed bug with handling player birth game elements before hatching
Holger Schemel [Thu, 26 Sep 2024 21:47:40 +0000 (23:47 +0200)]
fixed bug with handling player birth game elements before hatching

If player not hatched from inbox yet, do not handle (continue) player
birth (effect) elements. Instead, wait for hatching. This correction
is needed to be able to solve level 015 of "Super Boulder Dash 1".

4 months agofixed showing number of BD diamonds needed if determined at run-time
Holger Schemel [Thu, 26 Sep 2024 21:12:17 +0000 (23:12 +0200)]
fixed showing number of BD diamonds needed if determined at run-time

4 months agoadded using new method to convert slime permeability for new BD engine
Holger Schemel [Tue, 24 Sep 2024 21:49:04 +0000 (23:49 +0200)]
added using new method to convert slime permeability for new BD engine

4 months agominor formatting changes
Holger Schemel [Tue, 24 Sep 2024 21:32:39 +0000 (23:32 +0200)]
minor formatting changes

4 months agochanged some BD game engine defaults depending on scheduling type
Holger Schemel [Tue, 24 Sep 2024 17:14:23 +0000 (19:14 +0200)]
changed some BD game engine defaults depending on scheduling type

4 months agominor changes (mainly variable name changes)
Holger Schemel [Tue, 24 Sep 2024 16:55:36 +0000 (18:55 +0200)]
minor changes (mainly variable name changes)

4 months agofixed smooth movement for player pushing bladder in BD enginen
Holger Schemel [Tue, 24 Sep 2024 00:12:36 +0000 (02:12 +0200)]
fixed smooth movement for player pushing bladder in BD enginen

4 months agofixed smooth movement for elements passing through slime in BD engine
Holger Schemel [Tue, 24 Sep 2024 00:10:00 +0000 (02:10 +0200)]
fixed smooth movement for elements passing through slime in BD engine

4 months agochanged BD engine to use two-step directions with smooth movement
Holger Schemel [Tue, 24 Sep 2024 00:06:26 +0000 (02:06 +0200)]
changed BD engine to use two-step directions with smooth movement

4 months agofixed use of smooth movement when elements are moving diagonally
Holger Schemel [Mon, 23 Sep 2024 23:45:25 +0000 (01:45 +0200)]
fixed use of smooth movement when elements are moving diagonally

4 months agoadded support for smooth movement using two-step directions
Holger Schemel [Mon, 23 Sep 2024 23:41:31 +0000 (01:41 +0200)]
added support for smooth movement using two-step directions

4 months agofixed bug with drawing diagonal player movement in BD engine
Holger Schemel [Mon, 23 Sep 2024 18:28:57 +0000 (20:28 +0200)]
fixed bug with drawing diagonal player movement in BD engine

This fixes drawing a game element moving into the tile just left by
the diagonally moving player (as described in the last commit).

4 months agofixed code for drawing diagonal player movement in BD engine
Holger Schemel [Mon, 23 Sep 2024 18:12:19 +0000 (20:12 +0200)]
fixed code for drawing diagonal player movement in BD engine

When drawing diagonal player movement, do not use smooth movement for
the player, and do not draw the source tile (but only draw the target
tile, as the player "jump-moves" to the next tile in this case).

So far, the source tile was not drawn at all due to not correctly
detecting diagonal movement, causing smooth movement being disabled
for this tile, so the player was not drawn at the source tile anyway
(which causes another bug yet to be fixed: not drawing tiles entering
the tile left by the player at the same time using smooth movement).

This change fixes (not) drawing the source tile for diagonal player
movement.

4 months agofixed graphical bug with snapping player drawn as moving into explosion
Holger Schemel [Mon, 23 Sep 2024 17:37:08 +0000 (19:37 +0200)]
fixed graphical bug with snapping player drawn as moving into explosion

This fixes a graphical bug with smooth movement animation in the BD
engine: When the player is snapping a tile that immediately after is
replaced by an explosion next to the player, the player was drawn as
moving into that explosion (without actually moving at all, as he was
only snapping). This change fixes this bug by checking if the player
actually moved.

4 months agoimproved checking for smooth movement animation in BD engine
Holger Schemel [Mon, 23 Sep 2024 17:33:35 +0000 (19:33 +0200)]
improved checking for smooth movement animation in BD engine

4 months agofixed broken BD player pushing animation when pushing an element
Holger Schemel [Sun, 22 Sep 2024 19:23:25 +0000 (21:23 +0200)]
fixed broken BD player pushing animation when pushing an element

4 months agofixed using BD player pushing animation when moving to pushable tile
Holger Schemel [Sun, 22 Sep 2024 18:55:29 +0000 (20:55 +0200)]
fixed using BD player pushing animation when moving to pushable tile

4 months agofixed using BD player pushing animation while stirring the pot
Holger Schemel [Sun, 22 Sep 2024 18:31:57 +0000 (20:31 +0200)]
fixed using BD player pushing animation while stirring the pot

4 months agomoved code to separate function
Holger Schemel [Sun, 22 Sep 2024 14:11:18 +0000 (16:11 +0200)]
moved code to separate function

4 months agoadded color picker for selecting BD engine colors
Holger Schemel [Sat, 21 Sep 2024 20:35:06 +0000 (22:35 +0200)]
added color picker for selecting BD engine colors

4 months agoadded using color picker gadget prototype in level editor
Holger Schemel [Fri, 20 Sep 2024 19:58:29 +0000 (21:58 +0200)]
added using color picker gadget prototype in level editor

4 months agoadded new gadget prototype for adding color picker later
Holger Schemel [Fri, 20 Sep 2024 19:56:12 +0000 (21:56 +0200)]
added new gadget prototype for adding color picker later

4 months agoadded buttons to editor to select colors for BD engine (yet to come)
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.

4 months agominor changes (mainly comments and code formatting)
Holger Schemel [Thu, 19 Sep 2024 18:22:43 +0000 (20:22 +0200)]
minor changes (mainly comments and code formatting)

4 months agochanged BD engine to match new GDash code (cave speed)
Holger Schemel [Wed, 18 Sep 2024 19:38:05 +0000 (21:38 +0200)]
changed BD engine to match new GDash code (cave speed)

4 months agominor changes
Holger Schemel [Tue, 17 Sep 2024 17:58:03 +0000 (19:58 +0200)]
minor changes

4 months agorenamed variable
Holger Schemel [Tue, 17 Sep 2024 17:42:41 +0000 (19:42 +0200)]
renamed variable

4 months agorenamed variable
Holger Schemel [Tue, 17 Sep 2024 17:37:28 +0000 (19:37 +0200)]
renamed variable

4 months agorenamed functions
Holger Schemel [Tue, 17 Sep 2024 17:29:15 +0000 (19:29 +0200)]
renamed functions

4 months agomoved function
Holger Schemel [Tue, 17 Sep 2024 17:27:41 +0000 (19:27 +0200)]
moved function

4 months agochanged BD engine to match new GDash code (cave setup)
Holger Schemel [Tue, 17 Sep 2024 17:23:34 +0000 (19:23 +0200)]
changed BD engine to match new GDash code (cave setup)

4 months agochanged BD engine to match new GDash code (count diamonds)
Holger Schemel [Tue, 17 Sep 2024 17:01:47 +0000 (19:01 +0200)]
changed BD engine to match new GDash code (count diamonds)

4 months agochanged some comments
Holger Schemel [Mon, 16 Sep 2024 20:02:10 +0000 (22:02 +0200)]
changed some comments

4 months agochanged BD engine to match new GDash code (cave start)
Holger Schemel [Mon, 16 Sep 2024 19:44:29 +0000 (21:44 +0200)]
changed BD engine to match new GDash code (cave start)

4 months agominor changes
Holger Schemel [Mon, 16 Sep 2024 19:38:03 +0000 (21:38 +0200)]
minor changes

4 months agochanged some comments
Holger Schemel [Mon, 16 Sep 2024 19:08:58 +0000 (21:08 +0200)]
changed some comments

4 months agoadded support for explosion stage 3 target element to BD engine
Holger Schemel [Mon, 16 Sep 2024 19:00:53 +0000 (21:00 +0200)]
added support for explosion stage 3 target element to BD engine

4 months agochanged BD engine to match new GDash code (player birth)
Holger Schemel [Mon, 16 Sep 2024 18:19:06 +0000 (20:19 +0200)]
changed BD engine to match new GDash code (player birth)

4 months agominor changes
Holger Schemel [Mon, 16 Sep 2024 18:15:01 +0000 (20:15 +0200)]
minor changes

4 months agochanged BD engine to match new GDash code (conveyor belts)
Holger Schemel [Mon, 16 Sep 2024 17:55:18 +0000 (19:55 +0200)]
changed BD engine to match new GDash code (conveyor belts)

4 months agochanged BD engine to match new GDash code (falling walls)
Holger Schemel [Mon, 16 Sep 2024 17:51:22 +0000 (19:51 +0200)]
changed BD engine to match new GDash code (falling walls)

4 months agochanged BD engine to match new GDash code (slime)
Holger Schemel [Sun, 15 Sep 2024 23:47:48 +0000 (01:47 +0200)]
changed BD engine to match new GDash code (slime)

4 months agochanged BD engine to match new GDash code (expanding walls)
Holger Schemel [Sun, 15 Sep 2024 22:33:32 +0000 (00:33 +0200)]
changed BD engine to match new GDash code (expanding walls)

4 months agominor changes
Holger Schemel [Sun, 15 Sep 2024 22:28:12 +0000 (00:28 +0200)]
minor changes

4 months agominor changes
Holger Schemel [Sun, 15 Sep 2024 22:14:28 +0000 (00:14 +0200)]
minor changes

4 months agorenamed variables
Holger Schemel [Sun, 15 Sep 2024 21:51:47 +0000 (23:51 +0200)]
renamed variables

4 months agominor changes
Holger Schemel [Sun, 15 Sep 2024 19:39:14 +0000 (21:39 +0200)]
minor changes

4 months agochanged BD engine to match new GDash code (pneumatic hammer sound)
Holger Schemel [Sun, 15 Sep 2024 19:34:24 +0000 (21:34 +0200)]
changed BD engine to match new GDash code (pneumatic hammer sound)

4 months agominor changes
Holger Schemel [Sun, 15 Sep 2024 18:40:30 +0000 (20:40 +0200)]
minor changes

4 months agochanged BD engine to match new GDash code (player pushing)
Holger Schemel [Sun, 15 Sep 2024 18:11:00 +0000 (20:11 +0200)]
changed BD engine to match new GDash code (player pushing)

4 months agominor changes
Holger Schemel [Sun, 15 Sep 2024 18:02:00 +0000 (20:02 +0200)]
minor changes

4 months agowhite space changes
Holger Schemel [Sun, 15 Sep 2024 17:52:39 +0000 (19:52 +0200)]
white space changes

4 months agomoved function
Holger Schemel [Sun, 15 Sep 2024 17:31:29 +0000 (19:31 +0200)]
moved function

4 months agoadded tape patch mode to set property bit to use the old BD engine
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

4 months agoadded tape property bit for tapes using the old BD game 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).

4 months agochanged tape flag for solved level to tape property bit
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.

4 months agochanged code to match new GDash code (player snapping/moving)
Holger Schemel [Fri, 13 Sep 2024 15:52:36 +0000 (17:52 +0200)]
changed code to match new GDash code (player snapping/moving)

4 months agomoved redundant code to function
Holger Schemel [Thu, 12 Sep 2024 23:57:23 +0000 (01:57 +0200)]
moved redundant code to function

4 months agoadded parameter to function
Holger Schemel [Thu, 12 Sep 2024 23:54:11 +0000 (01:54 +0200)]
added parameter to function

4 months agominor changes
Holger Schemel [Thu, 12 Sep 2024 23:10:43 +0000 (01:10 +0200)]
minor changes

4 months agorenamed variable
Holger Schemel [Thu, 12 Sep 2024 23:07:32 +0000 (01:07 +0200)]
renamed variable

4 months agorenamed functions
Holger Schemel [Thu, 12 Sep 2024 22:35:46 +0000 (00:35 +0200)]
renamed functions

4 months agominor changes
Holger Schemel [Thu, 12 Sep 2024 22:32:10 +0000 (00:32 +0200)]
minor changes

4 months agorenamed variable
Holger Schemel [Thu, 12 Sep 2024 22:22:27 +0000 (00:22 +0200)]
renamed variable

4 months agoremoved function (as elements are always stored as scanned)
Holger Schemel [Thu, 12 Sep 2024 22:18:17 +0000 (00:18 +0200)]
removed function (as elements are always stored as scanned)

4 months agoadded comment
Holger Schemel [Thu, 12 Sep 2024 22:12:54 +0000 (00:12 +0200)]
added comment

4 months agoremoved function (as there is no scanned bladder in BD engine)
Holger Schemel [Thu, 12 Sep 2024 22:06:34 +0000 (00:06 +0200)]
removed function (as there is no scanned bladder in BD engine)

4 months agoremoved unneeded function call
Holger Schemel [Thu, 12 Sep 2024 21:59:50 +0000 (23:59 +0200)]
removed unneeded function call

4 months agoadded function
Holger Schemel [Thu, 12 Sep 2024 21:55:55 +0000 (23:55 +0200)]
added function

4 months agorenamed functions
Holger Schemel [Thu, 12 Sep 2024 21:47:56 +0000 (23:47 +0200)]
renamed functions

4 months agoadded array to double a direction in BD game engine
Holger Schemel [Thu, 12 Sep 2024 19:38:35 +0000 (21:38 +0200)]
added array to double a direction in BD game engine

4 months agowhite space changes
Holger Schemel [Thu, 12 Sep 2024 19:27:17 +0000 (21:27 +0200)]
white space changes

4 months agorenamed functions
Holger Schemel [Thu, 12 Sep 2024 19:13:07 +0000 (21:13 +0200)]
renamed functions

4 months agowhite space changes
Holger Schemel [Thu, 12 Sep 2024 19:03:57 +0000 (21:03 +0200)]
white space changes

4 months agofixed showing game actions after game end when request door opens/closes
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).

4 months agoremoved end marker of artwork config token list (not really needed)
Holger Schemel [Mon, 9 Sep 2024 22:29:08 +0000 (00:29 +0200)]
removed end marker of artwork config token list (not really needed)

4 months agocode formatting changes
Holger Schemel [Mon, 9 Sep 2024 22:25:10 +0000 (00:25 +0200)]
code formatting changes

4 months agoremoved list of levelset config token names (not really needed)
Holger Schemel [Mon, 9 Sep 2024 22:17:36 +0000 (00:17 +0200)]
removed list of levelset config token names (not really needed)

4 months agoadded levelset config flag to force using old game engine for BD replays
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

4 months agoremoved setup options and variables not used anymore
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.

4 months agofixed new, 3-state setup option to allow skipping levels (yes/no/ask)
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.

4 months agofixed alternative suffixes .old/.new for graphics_set.ecs/.aga
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.

4 months agoadded comments
Holger Schemel [Thu, 5 Sep 2024 21:40:52 +0000 (23:40 +0200)]
added comments

4 months agoimproved output for failed tapes of automated tape tests
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).

4 months agochanged code for handling replicators and conveyor belts in BD engine
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.