a) try to find the highlevel from the high scores is not correct. it's
my mistake to remove that code though, there is no need to do so...
Didn't bubbles always do that though?
no. bubbles.score contained two data, one is highlevel and the other is
the high socres. which is the reason type of highlevel was struct highscore.
c) removing file causes disk access even though the file doesn't exist.
I agree that my change is not so good and better solution is needed.
same thing would be applied to other plugins like brickmania and jewels.
I think my solution wasn't bad afterall. Bubbles always accessed the
disk at resuming, so that's not really an argument. But, you removed a
(imo) very useful feature, to play bubbles without messing up the saved
game.
IMO, bubbles is impoved to not access disk when resume game.
I got one idea. how about check whether file is exists before try to
remove it when resume?
e.g.
case 0: /* resume game */
...
if(rb->file_exists(SAVE_FILE))
rb->remove(SAVE_FILE);
break;
will this work?
d) to match behavior with other plugins which use highscore.
We don't need two quit items then, if both cause disk access, IMO.
but it doesn't always cause disk access as highscores are saved only if
they are changed.