FS#10291 - Use lib highscore.h to save highscore and add new high score table

Attached to Project: Rockbox
Opened by Johannes Schwarz (Ubuntuxer) - Sunday, 07 June 2009, 08:55 GMT
Last edited by Johannes Schwarz (Ubuntuxer) - Saturday, 04 July 2009, 23:05 GMT
Task Type Patches
Category Plugins
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version Version 3.2
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


The following patch use the lib highscore.h to save highscore and add new high score table.
If you achieved an new highscore your rank in the list is highlighted.
This task depends upon

Closed by  Johannes Schwarz (Ubuntuxer)
Saturday, 04 July 2009, 23:05 GMT
Reason for closing:  Accepted
Comment by Teruaki Kawashima (teru) - Sunday, 07 June 2009, 17:12 GMT
your patch seems to contain issue and a bit weird for me.
*level of the highest score is NOT always equal to the highest level beaten.
*"Highest" should be "highest". but why don't you just reuse "highscores" in struct game_context?
*your patch contains some tabs.
*is there any reason to remove bubbles_callback?
*i don't see the reason for renaming NUM_SCORES and SCORE_FILE.

i divided it to two patchs.
*first patch is to make bubbles to use lib/highscore.c for highscores.
*second patch changes the way to display high scores. second patch depends on first one.
small change: draw line under score for non-colour targets in stead of highlighting.
Comment by Johannes Schwarz (Ubuntuxer) - Tuesday, 09 June 2009, 17:39 GMT
Thank you for your review of my patch. I would change still the following things:
- set NUM_SCORES to 5 because a relative big font or a small display size comes to sysfont, which is very tiny and hard to read
- remove useless messages like "rb->splash(0, "Loading...");"
- just display "New High Score" not the position and a ugly "#"
- the menu enty should be renamed from "Display High Scores" to "High Scores";, because on a small display size the text have to horizontally scrolled
- underline last score doesn't works, the line is covered by the letters in next row
Apart from that your patch works very well for me. Thank You.
Comment by Johannes Schwarz (Ubuntuxer) - Saturday, 20 June 2009, 13:13 GMT
I included the things, which I would change and fix the bug with underline last score.
If you accept it, I will commit the patch.
Comment by Teruaki Kawashima (teru) - Sunday, 21 June 2009, 04:53 GMT
If you tested it and thought it's ok, i don't object.
To be honest, I do not like the new highscore displaying as it can use sysfont or it possibly displays agly table depending on font and screen size.
Comment by Johannes Schwarz (Ubuntuxer) - Sunday, 21 June 2009, 08:21 GMT
For that reason I changed NUM_SCORES to 5, so that sysfont is used less often and just on very small screen size.

I detected your task  FS#10350 , which change the behaviour of lib/highscore.h, expecially update_highscore() fundamental.
Your patch seems to work fine for me. But the patch "bubbles_highscore2.diff" just works with the old lib/highscore.h, so I will review your patch on  FS#10350  and I will adapt my bubbles patch to it.
Comment by Johannes Schwarz (Ubuntuxer) - Saturday, 04 July 2009, 22:35 GMT
I synced the patch to the current svn; no functional changes.