+
|
表示する |
一応動作確認はしましたが他の部分で不具合が出るかもしれません。
v1=$0000000aの部分の数字を変えれば他の武器装備必須にもできるはずです。(剣、騎士剣のような2種類は無理だと思います)
addu a0, s2, zero # 00059654:02402021
addu t2, zero, zero # 00059658:00005021
addu v0, s1, t2 # 0005965c:022a1021
lbu a1, $001a(v0) # :9045001a 装備アイテム読み込み
nop # :00000000
andi v1, a1, $00ff # :30a300ff v1に装備アイテム格納
sltiu v0, v1, $0080 # :2c620080 装備アイテム判定
beq v0, zero, $000596c8 # :10400015 装備が武器以外で※6へ
sll v0, v1, 1 # :00031040
addu v0, v0, v1 # :00431021
sll v0, v0, 2 # :00021080
lui at, $8006 # :3c018006 at=$80060000
addu at, at, v0 # :00220821
lbu v0, $fefd(at) # :9022fefd 装備アイテムの種類読み込み
ori v1,zero,000a # :3403000a v1=$0000000a
bne v0, v1, $000596a8 # :14620005 銃で無いなら:※2へ
andi v1, a1, $00ff # :30a300ff
lbu v1, $0184(s1) # :92230184
nop # :00000000
ori v1, v1, $0004 # :34630004
sb v1, $0184(s1) # :a2230184
addiu v0, v0, $fffd # 000596a8:2442fffd ※2
sltiu v0, v0, $0002 # 000596ac:2c420002 剣,騎士剣判定
beq v0, zero, $000596cc # 000596b0:10400006 武器が剣,騎士剣以外で※1へ
andi v1, a1, $00ff # 000596b4:30a300ff
lbu v0, $0184(s1) # 000596b8:92220184
nop # 000596bc:00000000
ori v0, v0, $0008 # 000596c0:34420008
sb v0, $0184(s1) # 000596c4:a2220184
andi v1, a1, $00ff # 000596c8:30a300ff ※6
ori v0, zero, $00ff # 000596cc:340200ff v0=$000000ff ※1
beq v1, v0, $0005985c # 000596d0:10620062 素手なら※7へ
sll v0, v1, 1 # 000596d4:00031040
|