|File Name:||Set Counters to X Value|
|Type:||Level, Game Mode|
|Description:||This will let you set various RAM addresses to whatever you want upon entering the level or sublevel - right now it lets you set the number of coins, the number of . |
It'll also let you get rid of Yoshi upon entering the level, but unfortunately he stays on screen for a frame before the INIT code runs and it looks kind of goofy.
-If you enter level with yoshi, and uberASM is set to kill yoshi, it kills yoshi, but yoshi drums still persist
-I don't know if "!inplay" option (changes player in level) is necessary, especially since it can lead to some glitches (for example entering level with mario and dying/completing level by luigi causes mario to disappear on OW, and luigi appear at his (luigi's) starting position in 1-player game).
-What bugs me the most is it doesn't allow user to disable/enable filters. If user want's do disable coin counter filter or power-up filter and etc. they have to remove lines related with that. It's not very user friendly. You can use if statements and option variables for that.
-In speaking of if statements, the code could've been optimized by using them. If user want's to set value to zero, instead of using LDA : STA you can use STZ, like this
If not(!coinnumber) STZ !coin else LDA #!coinnumber STA !coin endif
for yoshi destruction
LDA !noYoshi STA !YoshiRAM BEQ Return
If !noYoshi ;destruction loop code endif RTL