ユーザ用ツール

サイト用ツール


サイドバー

guide:ステータス画面の身長の伸ばし方

ステータス画面で、一部のキャラは身長が低くなってしまうので、身長の底上げ処理がされています。

身長の底上げ処理をしているのは、0x8005b28関数です。
この関数に、r0 で 顔IDが入り、身長を伸ばすならば return 1、身長を伸ばさないならば return 0 を返します。

0x8005b28関数は、switch文などがあり、大変読みづらいのです。
身長を伸ばすキャラを個別にIF文などで書き直したほうが早いでしょう。

@thumb
@org	$08005b28
push	{lr}

cmp r0,#0x21 ;ユアン 顔ID
beq nobasu
 
cmp r0,#0x26 ;ミルラ 顔ID
beq nobasu

...

mov	r0, #0 ; 背を伸ばさない
b end

nobasu
mov	r0, #1 ; 背を伸ばす

end
pop	{r1}
bx	r1

;;コードが 005ba4 を超えたらだめ。

身長が低いキャラがものすごくたくさんいれば別ですが、10人ぐらい底上げしたとしても、関数終端の0x08005ba4 を超えないです。
switch文があるために、無駄なジャンプテーブルとかが作られているので、容量はたくさんあります。

guide/ステータス画面の身長の伸ばし方.txt · 最終更新: 2018/09/09 00:42 (外部編集)