diff options
author | libjet <libj3t@gmail.com> | 2020-05-21 15:36:09 +0100 |
---|---|---|
committer | libjet <libj3t@gmail.com> | 2020-05-21 15:36:09 +0100 |
commit | 92529391d8948f43c4f16e35a6024e9fa996a644 (patch) | |
tree | 9c599ef8d46ff385c440a4fd61b36e9bed641069 /engine | |
parent | 0de5cf5629714c8781db58472b077b5fe58920be (diff) |
Add engine/events/sacred_ash.asm
Diffstat (limited to 'engine')
-rwxr-xr-x | engine/events/sacred_ash.asm | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/engine/events/sacred_ash.asm b/engine/events/sacred_ash.asm new file mode 100755 index 00000000..d105b2fb --- /dev/null +++ b/engine/events/sacred_ash.asm @@ -0,0 +1,68 @@ +_SacredAsh: + ld a, $0 + ld [wItemEffectSucceeded], a + call CheckAnyFaintedMon + ret nc + + ld hl, SacredAshScript + call QueueScript + ld a, $1 + ld [wItemEffectSucceeded], a + ret + +CheckAnyFaintedMon: + ld de, PARTYMON_STRUCT_LENGTH + ld bc, wPartySpecies + ld hl, wPartyMon1HP + ld a, [wPartyCount] + and a + ret z + +.loop + push af + push hl + ld a, [bc] + inc bc + cp EGG + jr z, .next + + ld a, [hli] + or [hl] + jr z, .done + +.next + pop hl + add hl, de + pop af + dec a + jr nz, .loop + xor a + ret + +.done + pop hl + pop af + scf + ret + +SacredAshScript: + special HealParty + reloadmappart + playsound SFX_WARP_TO + special FadeOutPalettes + special FadeInPalettes + special FadeOutPalettes + special FadeInPalettes + special FadeOutPalettes + special FadeInPalettes + waitsfx + writetext .UseSacredAshText + playsound SFX_CAUGHT_MON + waitsfx + waitbutton + closetext + end + +.UseSacredAshText: + text_far _UseSacredAshText + text_end |