【口袋妖怪改版教程】用ASM添加新的皮肤特性

 时间:2024-10-29 22:50:40

1、新建一个ASM文件粘贴代码

2、代码如下:.text.thumb_func.global pmmain: lsl r0, r1, #0x1 add r0, r1 lsl r0, #0x2 add r0, r2 ldrb r0, [r0, #0x2] push {r4} mov r4, r0 bl get_ability cmp r0, #NN(天空皮肤) bne no_aerilate cmp r4, #0x0 bne return mov r0, #0x2 b returnno_aerilate: cmp r0, #NN(普通皮肤) bne no_normalize mov r0, #0x0 b returnno_normalize: cmp r0, #NN(冰冻皮肤) bne no_refrigerate cmp r4, #0x0 bne return mov r0, #0xf b returnno_refrigerate: cmp r0, #0xNN(妖精皮肤) bne return cmp r4, #0x0 bne return mov r0, #0x仙属性编号 b returnreturn: pop {r4} mov r8, r0 ldr r0, exit bx r0 get_ability: ldr r0, battle_participants mov r1, #0x58 ldr r2, battle_attacker ldrb r2, [r2] mul r1, r2 mov r2, #0x20 add r1, r2 add r0, r1 ldrb r0, [r0].align 2exit: .word 0x08047079battle_participants: .word 0x02024084battle_attacker: .word 0x0202420B

3、把里面的NN改成你要的新特性编号,保存编译。

4、把弄好的bin文件粘贴到rom里

5、将0804706C处改成00 48 00 47 xx xx xx 08,xx xx xx 08是你的数据地址+1

6、代码解析:代码如下:.text.thumb_func.global pmmain: lsl r0, r1, #0x1 a颊俄岿髭dd r0, r1 lsl r0, #0x2 add r0, r2 ldrb r0, [r0, #0x2] push {r4} mov r4, r0//前面基本无视 bl get_ability//跳转到取得战斗中宠物的特性编号,并存入寄存器r0返回 cmp r0, #NN(天空皮肤)//对比 bne no_aerilate//不是则跳转下一个特性判断 cmp r4, #0x0//r4=使用技能的属性,判断是否为普通系 bne return //不是则跳走 mov r0, #0x2//属性改变 b return//下同no_aerilate: cmp r0, #NN(普通皮肤) bne no_normalize mov r0, #0x0 b returnno_normalize: cmp r0, #NN(冰冻皮肤) bne no_refrigerate cmp r4, #0x0 bne return mov r0, #0xf b returnno_refrigerate: cmp r0, #0xNN(妖精皮肤) bne return cmp r4, #0x0 bne return mov r0, #0x仙属性编号 b returnreturn: pop {r4} mov r8, r0 ldr r0, exit bx r0 get_ability: ldr r0, battle_participants mov r1, #0x58 ldr r2, battle_attacker ldrb r2, [r2] mul r1, r2 mov r2, #0x20 add r1, r2 add r0, r1 ldrb r0, [r0].align 2exit: .word 0x08047079battle_participants: .word 0x02024084battle_attacker: .word 0x0202420B

  • 坎公骑冠剑6-2寻找妖精怎么变胖子
  • 口袋妖怪火红如何打代码#校园分享#
  • 具甲武者性格推荐
  • 爱吾游戏宝盒如何清除缓存的
  • 赛尔号启灵元神怎么刷
  • 热门搜索
    手抄报中秋 关于卫生的手抄报 中秋节手抄报。 关于地震的手抄报图片 足球手抄报图片 文学手抄报内容 六一儿童节手抄报简单 绿色生活手抄报 五年级手抄报图片大全 致敬抗美援朝争做时代新人手抄报