25952-\[Investigacion-GBC]Tutor_de_movimientos_para_G\\S
#3
Chamber4315♪ 26330
He aqui la documentacion de DataCrystal:

SpecialsPointers: ; c029, Tabla de pointers del comando "special"

Function4925b: ; 4925b, rutina del "special 0x83" - tutor de movimientos
call FadeToMenu; funciones de pantalla
call WhiteBGMap; funciones de pantalla
call Functionfdb; funciones de pantalla
call DelayFrame; funciones de pantalla
ld b, $14; funciones de pantalla
call GetSGBLayout; funciones de pantalla
xor a; exclusion logica que pone a en $0
ld [$d142], a
call Function492a5; determina el movimiento (Flamethrower, Thunderbolt o Ice Beam)
ld [$d265], a; carga el index del movimiento
ld [$d262], a
call GetMoveName ; carga el nombre a StringBuffer1 y...
call CopyName1 ; lo copia al StringBuffer2
callba Function2c7fb; copia el contenido de StringBuffer2 a $d066
jr c, .asm_4929c; si presionas B termina.
jr .asm_49291

.asm_49289
callba Function2c80a
jr c, .asm_4929c

.asm_49291
call Function492b9; abre el menu de la party
jr nc, .asm_49289
xor a
ld [ScriptVar], a
jr .asm_492a1

.asm_4929c
ld a, $ff
ld [ScriptVar], a

.asm_492a1
call Function2b3c
ret
; 492a5

Function492a5: ; 492a5
ld a, [ScriptVar]
cp $1
jr z, .asm_492b3
cp $2
jr z, .asm_492b6
ld a, $3a
ret

.asm_492b3
ld a, $35
ret

.asm_492b6
ld a, $55
ret
; 492b9

Esto nos puede dar una idea de como combinar ASM con los scripts.