Invert
why so serious?
Hace poco hablando con @FEL!X por Skype surgio una gran idea, hacer un Getspritepos.
Como muchos ya saben, el comando Getplayerpos almacena en un par de variables la posición del player, ahora, imagino lo que se podría hacer si se pudiera almacenar la posición de otro sprite.
He estado investigando algunas cosas, y comparto lo que llevo ya que no tengo ni idea de muchas cosas xD
No sé si lo estoy haciendo bien o mal.
Pero la estructura de los "npc_state" dice que:
0000000C stay_around: coords16 ?
00000010 to: coords16 ?
00000014 from: coords16 ?
Dan las coordenadas x_y de los sprites.
Esto de las estructuras se me da mal, así que, espero su ayuda. :hmm:
Como muchos ya saben, el comando Getplayerpos almacena en un par de variables la posición del player, ahora, imagino lo que se podría hacer si se pudiera almacenar la posición de otro sprite.
He estado investigando algunas cosas, y comparto lo que llevo ya que no tengo ni idea de muchas cosas xD
Código:
PUSH {R4,R6,LR}
LDR R4, var_8004
ldr r0, saveblock1_mapdata
ldr r0, [r0]
ldrb r0, [r4] @ person/local ID from var 0x8000
ldrb r1, [r0, #5] @ current map
ldrb r2, [r0, #4] @ current bank
ldr r5, npc_id_by_local_id_and_map_ret_success
bl call_via_r5
@@ Get npc_States
ldrb r1, [r0]
lsl r0, r1, #3 @ npc_states + 0x24 * npc_id
add r0, r1
lsl r0, #2
ldr r1, npc_states
add r6, r0, r1
mov r0, r6
@@ Get ncp_pos_x
mov r1, r0
ldr r4, var_8005
ldrh r4, [r4]
LDRH R4, [R0,#0x10] @ npc_to
SUB R4, #7
STRH R4, [R1,#4]
@@ Get ncp_pos_y
ldr r4, var_8006
ldrh r4, [r4]
LDRH R4, [R0,#0x12] @ npc_to
SUB R4, #7
STRH R4, [R1,#6]
MOVS R0, #0
POP {R4,R6}
POP {R0}
var_8004: .word 0x020370C0
var_8005: .word 0x020370C2
var_8006: .word 0x020370C4
saveblock1_mapdata: .word 0x03005008
npc_states: .word 0x02036E38
npc_id_by_local_id_and_map_ret_success: .word 0x0805DF84 + 1
Pero la estructura de los "npc_state" dice que:
0000000C stay_around: coords16 ?
00000010 to: coords16 ?
00000014 from: coords16 ?
Dan las coordenadas x_y de los sprites.
Esto de las estructuras se me da mal, así que, espero su ayuda. :hmm: