rocksndiamonds.git
2 years agoadded message request if local score tape not found
Holger Schemel [Sat, 16 Apr 2022 23:10:01 +0000 (01:10 +0200)]
added message request if local score tape not found

2 years agoadded functions for accessing score tapes in cache directory (not used yet)
Holger Schemel [Sat, 16 Apr 2022 23:04:36 +0000 (01:04 +0200)]
added functions for accessing score tapes in cache directory (not used yet)

2 years agoadded auto-playing next level when touching scores screen on Android
Holger Schemel [Sat, 16 Apr 2022 23:01:04 +0000 (01:01 +0200)]
added auto-playing next level when touching scores screen on Android

2 years agofixed stopping auto-playing next level on input on scores screen
Holger Schemel [Sat, 16 Apr 2022 22:54:43 +0000 (00:54 +0200)]
fixed stopping auto-playing next level on input on scores screen

2 years agoadded fading settings for score info page
Holger Schemel [Sat, 16 Apr 2022 22:31:19 +0000 (00:31 +0200)]
added fading settings for score info page

2 years agofixed crash with "autotest" due to clearing undefined bitmap rectangle
Holger Schemel [Sat, 16 Apr 2022 13:58:30 +0000 (15:58 +0200)]
fixed crash with "autotest" due to clearing undefined bitmap rectangle

2 years agofixed checking artwork set for compatibility code for new score screens
Holger Schemel [Fri, 15 Apr 2022 10:20:22 +0000 (12:20 +0200)]
fixed checking artwork set for compatibility code for new score screens

2 years agoadded initially setting artwork identifier
Holger Schemel [Fri, 15 Apr 2022 10:13:13 +0000 (12:13 +0200)]
added initially setting artwork identifier

2 years agorenamed function
Holger Schemel [Fri, 15 Apr 2022 10:05:25 +0000 (12:05 +0200)]
renamed function

2 years agoadded using left and right spacing on score info page
Holger Schemel [Thu, 14 Apr 2022 23:19:40 +0000 (01:19 +0200)]
added using left and right spacing on score info page

2 years agoadded warning only once per file when using fallback artwork
Holger Schemel [Thu, 14 Apr 2022 22:57:49 +0000 (00:57 +0200)]
added warning only once per file when using fallback artwork

2 years agoadded support for playing tape on score info page using key shortcut
Holger Schemel [Thu, 14 Apr 2022 22:46:41 +0000 (00:46 +0200)]
added support for playing tape on score info page using key shortcut

2 years agofixed calculating screen gadgets on score info page
Holger Schemel [Wed, 13 Apr 2022 22:53:00 +0000 (00:53 +0200)]
fixed calculating screen gadgets on score info page

2 years agofixed and added some comments
Holger Schemel [Wed, 13 Apr 2022 22:42:29 +0000 (00:42 +0200)]
fixed and added some comments

2 years agoadded compatibility code for new score screens for new "Jue" graphics
Holger Schemel [Wed, 13 Apr 2022 19:16:15 +0000 (21:16 +0200)]
added compatibility code for new score screens for new "Jue" graphics

2 years agoadded compatibility code for new score screens for old "Jue" graphics
Holger Schemel [Wed, 13 Apr 2022 18:26:45 +0000 (20:26 +0200)]
added compatibility code for new score screens for old "Jue" graphics

2 years agoadded compatibility code for new score screens for "Snake Bite" graphics
Holger Schemel [Wed, 13 Apr 2022 18:14:25 +0000 (20:14 +0200)]
added compatibility code for new score screens for "Snake Bite" graphics

2 years agofixed background image on score info page after playing score tape
Holger Schemel [Tue, 12 Apr 2022 21:45:38 +0000 (23:45 +0200)]
fixed background image on score info page after playing score tape

2 years agomoved code to determine global game status to separate function
Holger Schemel [Tue, 12 Apr 2022 21:16:32 +0000 (23:16 +0200)]
moved code to determine global game status to separate function

2 years agofixed viewport properties for score info page
Holger Schemel [Tue, 12 Apr 2022 21:13:10 +0000 (23:13 +0200)]
fixed viewport properties for score info page

2 years agofixed global border for score info page
Holger Schemel [Tue, 12 Apr 2022 21:10:04 +0000 (23:10 +0200)]
fixed global border for score info page

2 years agofixed setting background image on score info page
Holger Schemel [Tue, 12 Apr 2022 21:06:37 +0000 (23:06 +0200)]
fixed setting background image on score info page

2 years agofixed compatibility handling for redefined old graphic "global.door"
Holger Schemel [Tue, 12 Apr 2022 20:48:54 +0000 (22:48 +0200)]
fixed compatibility handling for redefined old graphic "global.door"

If old graphic "global.door" is redefined, all individual definitions
accessing the same image file are changed to use the redefined image.

However, this did not work correctly for graphic definitions which are
cloned from other graphic definitions which are itself redefined and
do not use the same graphic as "global.door" anymore. In this case, do
not change these cloned graphics to use the redefined "global.door".

2 years agoadded support for playing local score tape from score info page
Holger Schemel [Tue, 12 Apr 2022 06:15:39 +0000 (08:15 +0200)]
added support for playing local score tape from score info page

2 years agofixed (not) resuming game from hall of fame after playing
Holger Schemel [Sun, 10 Apr 2022 11:52:34 +0000 (13:52 +0200)]
fixed (not) resuming game from hall of fame after playing

2 years agoadded "levelinfo.conf" options to rename levels with title "nameless level"
Holger Schemel [Sat, 9 Apr 2022 18:04:36 +0000 (20:04 +0200)]
added "levelinfo.conf" options to rename levels with title "nameless level"

2 years agoadded hiding info screen sub-menus marked with '.hide'
Holger Schemel [Sat, 9 Apr 2022 17:15:12 +0000 (19:15 +0200)]
added hiding info screen sub-menus marked with '.hide'

2 years agoadded definition for persistent directory name for Emscripten platform
Holger Schemel [Sat, 9 Apr 2022 10:09:07 +0000 (12:09 +0200)]
added definition for persistent directory name for Emscripten platform

2 years agofixed using individual program data path for Emscripten platform
Holger Schemel [Sat, 9 Apr 2022 09:53:33 +0000 (11:53 +0200)]
fixed using individual program data path for Emscripten platform

Before, the Emscripten platform was treated as "Unix platform", which
should use ".rocksndiamonds" (or ".<program name>") as the data path.
As there is no "program name" on Emscripten platform, it is set to
"this" by the Emscripten environment, resulting in using ".this" for
all R'n'D based programs under the same domain in the IndexedDB store
of the browser, so there is no separation of individual program data
for different R'n'D based custom games, leading to shared data like
player name, setup settings and everything else, which is not desired.

This commit fixed this problem by using the program title instead of
the program's executable name (just like it is already done for the
Windows and Mac platforms.)

2 years agoadded support for opening URLs for global animation event actions
Holger Schemel [Sat, 9 Apr 2022 09:10:19 +0000 (11:10 +0200)]
added support for opening URLs for global animation event actions

2 years agoadded function to check if string is URL (not used yet)
Holger Schemel [Sat, 9 Apr 2022 09:06:46 +0000 (11:06 +0200)]
added function to check if string is URL (not used yet)

2 years agoadded functions to open URLs (not used yet)
Holger Schemel [Sat, 9 Apr 2022 09:05:52 +0000 (11:05 +0200)]
added functions to open URLs (not used yet)

2 years agofixed graphical bug when player enters exit using ultra-fast speed
Holger Schemel [Thu, 7 Apr 2022 15:31:52 +0000 (17:31 +0200)]
fixed graphical bug when player enters exit using ultra-fast speed

This fixes the player graphic getting stuck when entering the exit
under certain circumstances while using ultra-fast player speed.

This bug is described in the following forum topic:

https://www.artsoft.org/forum/viewtopic.php?t=3328

2 years agofixed different viewport properties after playing score tape
Holger Schemel [Thu, 7 Apr 2022 11:42:23 +0000 (13:42 +0200)]
fixed different viewport properties after playing score tape

2 years agoadded using busy animation on non-loading screens
Holger Schemel [Wed, 6 Apr 2022 21:46:25 +0000 (23:46 +0200)]
added using busy animation on non-loading screens

2 years agoadded support for busy animation on non-loading screens
Holger Schemel [Wed, 6 Apr 2022 17:26:10 +0000 (19:26 +0200)]
added support for busy animation on non-loading screens

2 years agofixed position of initial busy animation
Holger Schemel [Wed, 6 Apr 2022 17:20:06 +0000 (19:20 +0200)]
fixed position of initial busy animation

This fixes a bug introduced with commit b1734380.

2 years agoadded playing score tape from score info page
Holger Schemel [Wed, 6 Apr 2022 13:01:24 +0000 (15:01 +0200)]
added playing score tape from score info page

2 years agomoved code for buttons to stop game or tape to separate functions
Holger Schemel [Wed, 6 Apr 2022 12:13:06 +0000 (14:13 +0200)]
moved code for buttons to stop game or tape to separate functions

2 years agoupdated door graphic
Holger Schemel [Wed, 6 Apr 2022 09:40:19 +0000 (11:40 +0200)]
updated door graphic

2 years agoadded function to load score tape (not used yet)
Holger Schemel [Tue, 5 Apr 2022 06:38:07 +0000 (08:38 +0200)]
added function to load score tape (not used yet)

2 years agoadded API functions to get score tape from score server
Holger Schemel [Tue, 5 Apr 2022 06:36:14 +0000 (08:36 +0200)]
added API functions to get score tape from score server

2 years agofixed button to play tape on score info page (not used yet)
Holger Schemel [Tue, 5 Apr 2022 04:22:22 +0000 (06:22 +0200)]
fixed button to play tape on score info page (not used yet)

If there is no tape to play, do not show the "play tape" button.

2 years agofixed handling deactivated gadget state
Holger Schemel [Tue, 5 Apr 2022 04:14:54 +0000 (06:14 +0200)]
fixed handling deactivated gadget state

Off-screen gadgets are set to state "deactivated", but could never be
re-activated again, which is fixed now.

2 years agomoved API functions to separate source file
Holger Schemel [Thu, 31 Mar 2022 14:49:54 +0000 (16:49 +0200)]
moved API functions to separate source file

2 years agoadded button to play tape to score info page (not used yet)
Holger Schemel [Thu, 31 Mar 2022 13:40:43 +0000 (15:40 +0200)]
added button to play tape to score info page (not used yet)

2 years agochanged handling graphics for pressed screen menu buttons
Holger Schemel [Thu, 31 Mar 2022 13:23:07 +0000 (15:23 +0200)]
changed handling graphics for pressed screen menu buttons

2 years agorenamed function and parameters
Holger Schemel [Thu, 31 Mar 2022 12:56:16 +0000 (14:56 +0200)]
renamed function and parameters

2 years agoadded support for separate busy animation for initial loading screen
Holger Schemel [Wed, 30 Mar 2022 21:46:58 +0000 (23:46 +0200)]
added support for separate busy animation for initial loading screen

2 years agoimproved using text for next page or info menu
Holger Schemel [Tue, 29 Mar 2022 22:16:56 +0000 (00:16 +0200)]
improved using text for next page or info menu

2 years agoadded reading program info from files
Holger Schemel [Tue, 29 Mar 2022 21:55:28 +0000 (23:55 +0200)]
added reading program info from files

2 years agoadded functions to get program info filename (not used yet)
Holger Schemel [Tue, 29 Mar 2022 21:54:51 +0000 (23:54 +0200)]
added functions to get program info filename (not used yet)

2 years agochanged some credits files from UTF-8 to ISO 8859-1 (Latin-1) encoding
Holger Schemel [Tue, 29 Mar 2022 21:22:00 +0000 (23:22 +0200)]
changed some credits files from UTF-8 to ISO 8859-1 (Latin-1) encoding

2 years agoadded converting certain text files from UTF-8 to internal text format
Holger Schemel [Tue, 29 Mar 2022 21:12:22 +0000 (23:12 +0200)]
added converting certain text files from UTF-8 to internal text format

When reading text files with title screen messages, credits, level set
information or element descriptions, text in UTF-8 character encoding
will be converted on-the-fly to the internally used ISO-Latin-1 format.

2 years agoadded reading credits info (global or level set specific) from files
Holger Schemel [Mon, 28 Mar 2022 18:08:37 +0000 (20:08 +0200)]
added reading credits info (global or level set specific) from files

2 years agoadded functions to get credits filename (not used yet)
Holger Schemel [Mon, 28 Mar 2022 17:42:42 +0000 (19:42 +0200)]
added functions to get credits filename (not used yet)

2 years agoadded definition for string constant
Holger Schemel [Mon, 28 Mar 2022 17:36:32 +0000 (19:36 +0200)]
added definition for string constant

2 years agoadded cursor key navigation to title info screens
Holger Schemel [Sun, 27 Mar 2022 13:12:42 +0000 (15:12 +0200)]
added cursor key navigation to title info screens

2 years agoadded cursor key navigation to elements info screens
Holger Schemel [Sun, 27 Mar 2022 13:04:57 +0000 (15:04 +0200)]
added cursor key navigation to elements info screens

2 years agoadded cursor key navigation to music info screens
Holger Schemel [Sun, 27 Mar 2022 12:54:40 +0000 (14:54 +0200)]
added cursor key navigation to music info screens

2 years agoadded cursor key navigation to credits info screens
Holger Schemel [Sun, 27 Mar 2022 11:57:10 +0000 (13:57 +0200)]
added cursor key navigation to credits info screens

2 years agocode cleanup
Holger Schemel [Sun, 27 Mar 2022 11:43:12 +0000 (13:43 +0200)]
code cleanup

2 years agoadded new screen definition for global animations in the hall of fame
Holger Schemel [Sun, 27 Mar 2022 11:19:46 +0000 (13:19 +0200)]
added new screen definition for global animations in the hall of fame

This adds a new screen suffix ".SCORESONLY" for global animations,
which can be used to display animations only on the main screen of
the hall of fame, but not on the score details page (which can be
defined using ".SCOREINFO"), while using ".SCORES" shows animations
on both the main scores screen and the score details pages, as before.

2 years agore-added text to main menu back link list entry in hall of fame
Holger Schemel [Sun, 20 Mar 2022 20:08:41 +0000 (21:08 +0100)]
re-added text to main menu back link list entry in hall of fame

2 years agochanged high score list layout in hall of fame for backward compatibility
Holger Schemel [Sat, 19 Mar 2022 23:53:10 +0000 (00:53 +0100)]
changed high score list layout in hall of fame for backward compatibility

2 years agoadded some missing definitions for loading and score screens
Holger Schemel [Sat, 19 Mar 2022 10:07:40 +0000 (11:07 +0100)]
added some missing definitions for loading and score screens

2 years agofixed using same background music for hall of fame and score info page
Holger Schemel [Sat, 19 Mar 2022 09:42:27 +0000 (10:42 +0100)]
fixed using same background music for hall of fame and score info page

2 years agochanged using always the same width for high score list in hall of fame
Holger Schemel [Sat, 19 Mar 2022 09:26:11 +0000 (10:26 +0100)]
changed using always the same width for high score list in hall of fame

2 years agolimited filling high score list with empty score entries to "top ten" list
Holger Schemel [Thu, 17 Mar 2022 20:27:54 +0000 (21:27 +0100)]
limited filling high score list with empty score entries to "top ten" list

2 years agoremoved text from main menu back link list entry in hall of fame
Holger Schemel [Thu, 17 Mar 2022 20:15:11 +0000 (21:15 +0100)]
removed text from main menu back link list entry in hall of fame

2 years agofixed setting active score entry in hall of fame when changing levels
Holger Schemel [Wed, 16 Mar 2022 16:46:27 +0000 (17:46 +0100)]
fixed setting active score entry in hall of fame when changing levels

2 years agoadded filling visible high score list with empty score entries, if needed
Holger Schemel [Wed, 16 Mar 2022 16:22:43 +0000 (17:22 +0100)]
added filling visible high score list with empty score entries, if needed

2 years agoadded support for background image for initial loading screen
Holger Schemel [Tue, 15 Mar 2022 23:52:49 +0000 (00:52 +0100)]
added support for background image for initial loading screen

2 years agoadded support for background image for loading screen
Holger Schemel [Mon, 14 Mar 2022 00:53:55 +0000 (01:53 +0100)]
added support for background image for loading screen

2 years agoadded support for more than one initial image to initial busy animation
Holger Schemel [Sun, 13 Mar 2022 19:06:25 +0000 (20:06 +0100)]
added support for more than one initial image to initial busy animation

2 years agoremoved reloading artwork set for changed level set if not required (again)
Holger Schemel [Sun, 13 Mar 2022 10:53:02 +0000 (11:53 +0100)]
removed reloading artwork set for changed level set if not required (again)

The code that was changed here did the following: Trigger reloading
artwork set after a different level set was selected if either the
previous or the current level set has custom artwork configured in
the file "levelinfo.conf", or if either the previous or the current
level set contains a custom artwork sub-directory. But this caused an
attempt to reload new artwork even if both the previous and current
artwork in file "levelinfo.conf" are identical (but without custom
artwork sub-directories contained inside the level sets), which should
not happen.

Now it is only checked if overriding artwork has changed, or if the
identifiers of the previous and current artwork have changed, or if
either the previous or current level set contains a custom artwork
sub-directory, which then causes the artwork to be reloaded.

This was handled incorrectly by (reverted) commit 4ca952cb before.

2 years agoreverted commit 4ca952cbcd991a3e351b6292b37e47361b8f04d3
Holger Schemel [Sun, 13 Mar 2022 10:21:23 +0000 (11:21 +0100)]
reverted commit 4ca952cbcd991a3e351b6292b37e47361b8f04d3

It turned out that the removed code did not only check for configured
artwork set in file "levelinfo.conf", but also for existing artwork
sub-directories in the previous and current level set when changing
level sets, causing such artwork to be ignored instead of activated.

This has to be handled differently to still work in such cases.

2 years agoadded stopping screen fading if "Escape" key event is pending
Holger Schemel [Sun, 13 Mar 2022 10:17:55 +0000 (11:17 +0100)]
added stopping screen fading if "Escape" key event is pending

2 years agofixed setting default tile size for early busy animation to work again
Holger Schemel [Sat, 12 Mar 2022 16:04:16 +0000 (17:04 +0100)]
fixed setting default tile size for early busy animation to work again

2 years agoadded reading settings for busy animation from custom artwork config
Holger Schemel [Sat, 12 Mar 2022 16:01:26 +0000 (17:01 +0100)]
added reading settings for busy animation from custom artwork config

2 years agomoved initializing menu design settings from hash to separate function
Holger Schemel [Sat, 12 Mar 2022 15:56:57 +0000 (16:56 +0100)]
moved initializing menu design settings from hash to separate function

2 years agofixed cursor position on high score screen after leaving score info page
Holger Schemel [Sat, 12 Mar 2022 11:41:13 +0000 (12:41 +0100)]
fixed cursor position on high score screen after leaving score info page

2 years agoadded using score selection buttons for score info page
Holger Schemel [Fri, 11 Mar 2022 13:03:26 +0000 (14:03 +0100)]
added using score selection buttons for score info page

2 years agochanged order of entries on score info page
Holger Schemel [Fri, 11 Mar 2022 12:57:23 +0000 (13:57 +0100)]
changed order of entries on score info page

2 years agoadded score selection buttons for score info page (not used yet)
Holger Schemel [Fri, 11 Mar 2022 12:46:51 +0000 (13:46 +0100)]
added score selection buttons for score info page (not used yet)

2 years agochanged function for score text to get score size from parameter
Holger Schemel [Fri, 11 Mar 2022 12:13:13 +0000 (13:13 +0100)]
changed function for score text to get score size from parameter

2 years agochanged function for rank text to also include trailing dot
Holger Schemel [Fri, 11 Mar 2022 12:10:38 +0000 (13:10 +0100)]
changed function for rank text to also include trailing dot

2 years agoremoved reloading artwork set for changed level set if not required
Holger Schemel [Fri, 11 Mar 2022 11:35:27 +0000 (12:35 +0100)]
removed reloading artwork set for changed level set if not required

The code that was removed here did the following: Trigger reloading
artwork set after a different level set was selected if either the
previous or the current level set has custom artwork configured in
the file "levelinfo.conf". But this caused an attempt to reload new
artwork even if both the previous and current artwork are identical.

Now it is only checked if overriding artwork has changed, or if the
identifiers of the previous and current artwork have changed.

2 years agowhitespace changes
Holger Schemel [Thu, 10 Mar 2022 17:02:48 +0000 (18:02 +0100)]
whitespace changes

2 years agoadded wrapper function to draw graphic at level playfield position
Holger Schemel [Thu, 10 Mar 2022 16:52:13 +0000 (17:52 +0100)]
added wrapper function to draw graphic at level playfield position

2 years agofixed transparency for some game elements over empty space elements
Holger Schemel [Thu, 10 Mar 2022 16:32:27 +0000 (17:32 +0100)]
fixed transparency for some game elements over empty space elements

When using non-black empty space elements, there were still some game
elements that did not support transparency (growing/shrinking amoeba,
growing walls, dragon fire and explosions for custom elements that are
"walkable under"), which is fixed now.

2 years agochanged text on score info page
Holger Schemel [Sun, 6 Mar 2022 23:59:13 +0000 (00:59 +0100)]
changed text on score info page

2 years agoadded support for long text values on score info page
Holger Schemel [Sun, 6 Mar 2022 23:53:56 +0000 (00:53 +0100)]
added support for long text values on score info page

2 years agoadded loading level when changing level in hall of fame
Holger Schemel [Sun, 6 Mar 2022 23:52:12 +0000 (00:52 +0100)]
added loading level when changing level in hall of fame

2 years agoadded wrapper function to draw text buffer at default field position
Holger Schemel [Sun, 6 Mar 2022 23:49:31 +0000 (00:49 +0100)]
added wrapper function to draw text buffer at default field position

2 years agofixed setting score info to defaults
Holger Schemel [Sun, 6 Mar 2022 23:47:41 +0000 (00:47 +0100)]
fixed setting score info to defaults

2 years agoadded some more automatically generated files to be ignored by Git
Holger Schemel [Fri, 4 Mar 2022 14:48:19 +0000 (15:48 +0100)]
added some more automatically generated files to be ignored by Git

2 years agoprevented mapping undo/redo snapshot buttons on main menu screen
Holger Schemel [Wed, 2 Mar 2022 22:47:44 +0000 (23:47 +0100)]
prevented mapping undo/redo snapshot buttons on main menu screen

2 years agofixed crash bug for some graphics configurations with global border
Holger Schemel [Tue, 1 Mar 2022 17:18:07 +0000 (18:18 +0100)]
fixed crash bug for some graphics configurations with global border

This crash may happen if parts of a global screen border graphic are
configured to be drawn (like "border.draw_masked.DOOR: true") while
the global screen border graphic itself is configured to be undefined
(like "global.border.MAIN: [NONE]"), which causes an attempt to blit
from a bitmap that is NULL, resulting in a segmentation fault.

This commit adds a check to prevent this.

2 years agoadded additional score information from score server to score info page
Holger Schemel [Tue, 1 Mar 2022 17:07:11 +0000 (18:07 +0100)]
added additional score information from score server to score info page