mirror of
https://github.com/thornAvery/kep-hack.git
synced 2026-02-20 06:08:57 +13:00
Gen 5 Repel system
Also used in PureRGB. Gives the player the option to use another Repel after the last one runs out. I had to remove some debug features in order to fit it in, but it won't have an effect on the regular game. Hopefully.
This commit is contained in:
parent
2d24f19ba6
commit
f675c1ad9b
8 changed files with 68 additions and 14 deletions
|
|
@ -16,3 +16,23 @@ GetQuantityOfItemInBag:
|
|||
.notInBag
|
||||
ld b, 0
|
||||
ret
|
||||
|
||||
GetIndexOfItemInBag:
|
||||
; In: b = item ID
|
||||
; Out: b = index of item in bag (FF if not)
|
||||
call GetPredefRegisters
|
||||
ld hl, wBagItems - 1
|
||||
ld c, -1
|
||||
.loop
|
||||
inc c
|
||||
inc hl
|
||||
ld a, [hli]
|
||||
cp $ff
|
||||
jr z, .notInBag
|
||||
cp b
|
||||
jr nz, .loop
|
||||
ld b, c
|
||||
ret
|
||||
.notInBag
|
||||
ld b, a
|
||||
ret
|
||||
|
|
|
|||
41
engine/overworld/use_another_repel.asm
Normal file
41
engine/overworld/use_another_repel.asm
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
UseAnotherRepel::
|
||||
ld b, REPEL
|
||||
push bc
|
||||
call IsItemInBag
|
||||
pop bc
|
||||
jr nz, .checkUse
|
||||
ld b, SUPER_REPEL
|
||||
push bc
|
||||
call IsItemInBag
|
||||
pop bc
|
||||
jr nz, .checkUse
|
||||
ld b, MAX_REPEL
|
||||
push bc
|
||||
call IsItemInBag
|
||||
pop bc
|
||||
jr nz, .checkUse
|
||||
jr .done
|
||||
.checkUse
|
||||
push bc
|
||||
ld hl, RepelUseAnotherText
|
||||
call PrintText
|
||||
call YesNoChoice
|
||||
pop bc
|
||||
ld a, [wCurrentMenuItem]
|
||||
and a
|
||||
jr nz, .done
|
||||
ld a, b
|
||||
ld [wcf91], a ;load item to be used
|
||||
ld [wd11e], a ;load item so its name can be grabbed
|
||||
predef GetIndexOfItemInBag
|
||||
ld a, b
|
||||
ld [wWhichPokemon], a ; load item index to be deleted when used
|
||||
call GetItemName ;get the item name into de register
|
||||
call CopyToStringBuffer ; copy name from de to wcf4b so it shows up in text
|
||||
call UseItem ;use the item
|
||||
.done
|
||||
ret
|
||||
|
||||
RepelUseAnotherText:
|
||||
text_far _RepelUseAnotherText
|
||||
text_end
|
||||
Loading…
Add table
Add a link
Reference in a new issue