Blah
Free supporter
- 1,924
- Posts
- 11
- Years
- Unknown Island
- Seen Dec 23, 2023
Pokemon Item Checker + Silent Evolution Combination as an item effect
This is my personal request that canbe a general feature.
I wanted in my hack to make Mewtwo evolves into Armoured Mewtwo with "Legendary Armour"
but this is not the same in others, It will evolve Mewtwo using Metal Vessel if it is holding Legendary Armour but in a silent mode.
You would use the party checker routine to check if Mewtwo is holding the item. Then, depending on the return you would call silent evolution. It's just simply combining two routines I've already done.
Thanks.If you would read some of the older posts, Fbi Agent said he wasnt gonna do this cause daniilS has done it but hes working on it some more. aSk him is you would want to use it.
Get Pokemon Type
Recently, someone commented on the limitations of my special 0x12b edit. Honestly speaking it is very limited, and only really has a use for checking if you have a certain type of Pokemon. If you had multiple pokemon of the same type it would only return the first one..ect.ect. Well I decided to customize it a little more. It's less powerful now, but more useful (hopefully). All it does is return the type of a Pokemon in a certain slot.
How to insert:
Compile and insert into free space the following routine:
Spoiler:
Code:
.text
.align 2
.thumb
.thumb_func
main:
push {r0-r2, lr}
ldr r1, =(0x20370B8) @var 0x8000 is slot (0x0 to 0x5)
ldrb r1, [r1]
mov r0, #0x64
mul r1, r1, r0 @slot to check
ldr r0, =(0x2024284)
add r0, r0, r1
mov r1, #0xB
ldr r2, =(0x803FBE8 +1)
bl linker
lsl r0, r0, #0x10
lsr r0, r0, #0x10
lsl r1, r0, #0x3
sub r1, r1, r0
lsl r1, r1, #0x2
ldr r2, =(0x8254784)
add r1, r1, r2
ldrb r0, [r1, #0x6]
ldr r1, =(0x20370B8)
strb r0, [r1]
pop {r0-r2, pc}
linker:
bx r2
.align 2
Sorry, too lazy to fetch compiled version :D
Usage:
setvar 0x8000 0x[pokemon slot from 0 to 5]
callasm 0x[routine +1]
It will store the Pokemon's type in variable 0x8000 in the form of an integer. The values in decimal follow this table (it will be stored in hex of course):
Code:
0x0 - Normal
0x1 - Fighting
0x2 - Flying
0x3 - Poison
0x4 - Ground
0x5 - Rock
0x6 - Bug
0x7 - Ghost
0x8 - Steel
0x9 - ???
0xA - Fire
0xB - Water
0xC - Grass
0xD - Electric
0xE - Psychic
0xF - Ice
0x10 - Dragon
0x11 - Dark