CMM@ New Game - Heli-Blaster
Author | Message | ||||
PeteCotton Guru Joined: 13/08/2020 Location: CanadaPosts: 347 |
Thank you! I don't know what would cause this. The actual resolution 640x480 (I'm using 640x400 and I believe the CMM2 adds an extra 40 lines top and bottom to make it the standard VGA resolution). Yes, if I made it too easy, where would be the fun in that Of course, you can always spend some of your hard earned cash on reducing the hover time (from the menu)...... That would be awesome. I do not, however the original file is form here: https://modarchive.org/index.php?request=view_by_moduleid&query=177387 I do have some lying around somewhere, but to be honest I've already moved on to my next game If somebody else wants to add it, feel free! There is a single routine for handling the keyboard entry, so it should just slot in there. Sort of (pun intended). It stores 100 high scores. The player starts with a cursor at #100. Every scan, the program compares the players current score with the high score under the cursor i.e. HighScore(100). If the player score is greater than the highscore at the cursor, then the cursor is decremented by 1. So next scan it compares the player score to HighScore(99) and so forth. This is the fundamentals for a bubble sort, but everything in the high score array is already sorted, I'm just finding the insert point for the players score. When the game finishes, the program moves everything after the highscore cursor down one (so score HighScore(99) is put in to HighScore(100)) and then inserts the player score at the cursor position in the array (and then saves the array to disk). The trap to watch out for here is that when you are moving the scores "down one" in the array you have to start at element 100 and work back up to the cursor (rather than working from the cursor down to 100). If we had a table #98 = 3000 #99 = 2000 #100 = 1000 and you were inserting at 98. If you go from 98 to 100 you get the following logic HighScore(99)=HighScore(98) (#99 is now 3000) HighScore(100)=HighScore(99) (#100 is now also 3000) and you end up with #98=3000 #99=3000 #100=3000 If you do the logic from #100 counting down to #98 you don't get this problem. Feel free to take my highscore code and use it if you want. Thanks. I always welcome constructive criticism. Funnily enough, that's where they were originally (where the little keyboard reminders are just now at the bottom right of the screen). But it became very difficult to keep your eyes on the action and check how much fuel/armour/ammo and boost you had. I agree that having beside the chopper also isn't a great solution. It definitely could do with some tweaking (another pun intended) if you are up for it! Edited 2020-10-18 02:58 by PeteCotton |
||||