diff options
Diffstat (limited to 'engine/overworld/emotion_bubbles.asm')
-rw-r--r-- | engine/overworld/emotion_bubbles.asm | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/engine/overworld/emotion_bubbles.asm b/engine/overworld/emotion_bubbles.asm index 5a41c226..3ad714e9 100644 --- a/engine/overworld/emotion_bubbles.asm +++ b/engine/overworld/emotion_bubbles.asm @@ -1,13 +1,16 @@ EmotionBubble: ld a, [wWhichEmotionBubble] + and $f + swap a ld c, a ld b, 0 - ld hl, EmotionBubblesPointerTable + ld hl, EmotionBubbles + add hl, bc ; each emotion bubble is 16 bytes, so calculate the offset directly instead of with a pointer table add hl, bc add hl, bc - ld e, [hl] - inc hl - ld d, [hl] + add hl, bc + ld e, l + ld d, h ld hl, vChars1 tile $78 lb bc, BANK(EmotionBubbles), 4 call CopyVideoData @@ -59,13 +62,9 @@ EmotionBubble: pop af ld [wUpdateSpritesEnabled], a call DelayFrame - jp UpdateSprites + call UpdateSprites + ret -EmotionBubblesPointerTable: -; entries correspond to *_BUBBLE constants - dw ShockEmote - dw QuestionEmote - dw HappyEmote EmotionBubblesOAM: dbsprite 0, -1, 0, 0, $f9, 0 @@ -75,3 +74,8 @@ EmotionBubbles: ShockEmote: INCBIN "gfx/emotes/shock.2bpp" QuestionEmote: INCBIN "gfx/emotes/question.2bpp" HappyEmote: INCBIN "gfx/emotes/happy.2bpp" +SkullEmote: INCBIN "gfx/emotes/skull.2bpp" +HeartEmote: INCBIN "gfx/emotes/heart.2bpp" +BoltEmote: INCBIN "gfx/emotes/bolt.2bpp" +ZzzEmote: INCBIN "gfx/emotes/zzz.2bpp" +FishEmote: INCBIN "gfx/emotes/fish.2bpp" |