You are not logged in.
I have changed the stats screen so that it shows the pokemon's current happiness, e.g. 70/255. It works. But the number displays with the game's "¥" money symbol in front. Its not game-breaking but I'd rather it not be there.
The script I have for displaying happiness in engine/battle/stats_screen.asm is:
ld de, HappinessString
hlcoord 1, 9
ld de, wTempMonHappiness
ld de, HappinessTextString
; now for caught location
ld de, MetAtMapString
hlcoord 1, 11
Is there a simple way to fix it?
Last edited by nightbringer (2022-01-07 17:52:43)
Put "lb bc, 1, 3" before "call PrintNum". The comment in engine/math/print_num.asm explains why:
; Print c digits of the b-byte value from de to hl. ; Allows 2 to 7 digits. For 1-digit numbers, add ; the value to char "0" instead of calling PrintNum. ; The high nybble of the c register specifies how many of the total amount of ; digits will be in front of the decimal point. ; Some extra flags can be given in bits 5-7 of b. ; Bit 5: money if set (unless left-aligned without leading zeros) ; Bit 6: left-aligned if set ; Bit 7: print leading zeros if set
Rangi, you hero.
I was reading that text in engine/math/print_num.asm and figured that was something to do with it but I couldn't figure what exactly to do. Glad to know I was on the right track - just needed a little helping hand!
Btw, BOOST15673, it sounds like something might be up with your RGBDS installation? Maybe you didn't get all the packages you needed when you installed it?
Doesn't sound like there's anything wrong with the ROM code or with the emulators so it sounds like there's a problem with the software that's building the game from the code.
Last edited by nightbringer (2022-01-08 12:36:33)