After all I decided to make it myself, so
Please give me some advice on what to write the code !!
First Of All, I Was Able To Make A Splash Woman Appear On The Screen, But How Can I Reproduce Her Movement?
Mega Man 9 - Splash Woman
If you have any questions on how to write asm, I suggest you post them here. Also, it's a good idea to look up some instructions and the necessary RAM maps on your own.
I'm Japanese, so if I'm not speaking well, sorry!
がんばがんばがんば
まぁ自分もウッドマンを作ろうとしてたら上達したから
あさたく氏もできる!!
あとasmは日本語のとこで学習したからそっち行ってみるのもよし
このアカウントは無効になりました
まぁ自分もウッドマンを作ろうとしてたら上達したから
あさたく氏もできる!!
あとasmは日本語のとこで学習したからそっち行ってみるのもよし
このアカウントは無効になりました
日本語なら、ここがおすすめ。
I'm Japanese, so if I'm not speaking well, sorry!
アニメーションさせるのはExAnimation
スプライトを配布するなら、ExAnimationのデータを入れたテストレベル(.mwl)を含めるか、設定をreadmeに書いとくと安心。
asmで直接指定してアニメーションさせる方法もある。
その場合はここの「グラフィックの設定」項目を参照(日本語です)。
スプライトを配布するなら、ExAnimationのデータを入れたテストレベル(.mwl)を含めるか、設定をreadmeに書いとくと安心。
asmで直接指定してアニメーションさせる方法もある。
その場合はここの「グラフィックの設定」項目を参照(日本語です)。
I'm Japanese, so if I'm not speaking well, sorry!
Originally posted by Francium
アニメーションさせるのはExAnimation
スプライトを配布するなら、ExAnimationのデータを入れたテストレベル(.mwl)を含めるか、設定をreadmeに書いとくと安心。
asmで直接指定してアニメーションさせる方法もある。
その場合はここの「グラフィックの設定」項目を参照(日本語です)。
スプライトを配布するなら、ExAnimationのデータを入れたテストレベル(.mwl)を含めるか、設定をreadmeに書いとくと安心。
asmで直接指定してアニメーションさせる方法もある。
その場合はここの「グラフィックの設定」項目を参照(日本語です)。
DyzenでASMファイルを今抽出し直したのですけど。
ここのコードをどう言ったコードに書き変えたら上手く行きますか?
Code
print "MAIN ",pc PHB PHK PLB JSR SpriteCode PLB RTL ;>Routine: SpriteCode ;>Description: This routine excecute the logic of the sprite ;>RoutineLength: Short Return: RTS SpriteCode: JSR GraphicRoutine ;Calls the graphic routine and updates sprite graphics ;Here you can put code that will be excecuted each frame even if the sprite is locked LDA !SpriteStatus,x CMP #$08 ;if sprite dead return BNE Return LDA !LockAnimationFlag BNE Return ;if locked animation return. %SubOffScreen() LDA !sprite_status,x CMP #$08 BNE return LDA !state,x JSL $0086DF|!BankB dw wait,posing,hpbar,swim,sing,holdtrident,lasertrident,swoop wait: LDA !sprite_x_high,x CMP $95 BNE + LDA $77 AND #$04 BEQ + LDA #$0D STA $71 JSL $01802A|!BankB LDA !sprite_blocked_status,x AND #$04 BEQ + LDA #$00 STA !pose,x LDA #$30 STA !timer,x INC !state,x + return: RTS posing: LDA !SpriteIndex,x JSR ChangeAnimationFromStart_Intro2 LDA #$01 STA !AnimationIndex,x JMP ChangeAnimationFromStart LDA !timer,x BEQ ++ CMP #$18 BCS + LSR LSR LSR AND #$03 TAY STA !pose,x + RTS ++ STZ $00 STZ $01 STZ $02 STZ $03 LDA !BossLifeBarMM9 DEC A SEC %SpawnExtended() LDA #$00 STA !sprite_y_low,y LDA #$E0 STA !sprite_x_low,y LDA #$04 STA !timer,x INC !state,x RTS hpbar: LDA !timer,x BNE + LDA !C2,x CMP #$30 BEQ ++ INC A STA !C2,x LDA #$01 STA $1DFC|!Base2 LDA #$02 STA !timer,x + RTS ++ STZ $71 INC !state,x LDA !SpriteIndex,x JSR ChangeAnimationFromStart_Swim1 LDA #$02 STA !AnimationIndex,x JMP ChangeAnimationFromStart RTS jump_table: db $C0,$B0,$A0 pose_table: db $01,$01,$01,$01,$05,$06 swim: LDA !SpriteIndex,x JSR ChangeAnimationFromStart_Swim2 LDA #$03 STA !AnimationIndex,x JMP ChangeAnimationFromStart RTS sing: LDA !SpriteIndex,x JSR ChangeAnimationFromStart_Sing LDA #$04 STA !AnimationIndex,x JMP ChangeAnimationFromStart RTS holdtrident: LDA !SpriteIndex,x JSR ChangeAnimationFromStart_Swim2 LDA #$03 STA !AnimationIndex,x JMP ChangeAnimationFromStart RTS LDA !SpriteIndex,x JSR ChangeAnimationFromStart_HoldTrident LDA #$05 STA !AnimationIndex,x JMP ChangeAnimationFromStart RTS lasertrident: JSR ChangeAnimationFromStart_LaserTrident LDA #$06 STA !AnimationIndex,x JMP ChangeAnimationFromStart RTS swoop: LDA !SpriteIndex,x JSR ChangeAnimationFromStart_Swoop LDA #$07 STA !AnimationIndex,x JMP ChangeAnimationFromStart RTS JSR InteractMarioSprite ;After this routine, if the sprite interact with mario, Carry is Set. ;Here you can write your sprite code routine ;This will be excecuted once per frame excepts when ;the animation is locked or when sprite status is not #$08 JSR AnimationRoutine ;Calls animation routine and decides the next frame to draw RTS
こりゃasmで書くよりExAnimation使った方が楽だね・・・
登場シーンは個別にアニメーションさせるつもりかな?だったらレベルにアニメーションをtrigger : customで設定しておいて、asm内の処理で手動でトリガーをオンにできるようにすればいいと思う。(customトリガーのオンオフはRAM mapでアドレスを検索すれば見つかる)
てか、Returnラベルが2つあったり、アキュムレータのビット幅の指定をすればバイト数・サイクル数共に節約できるところあったりいろいろ問題ありそうだから少し手直しした方がよさそうだね
流石にツールじゃ完璧なasmは作れんわ・・・
まあスプライトはあまり詳しく無いからこのくらいしかアドバイスできない、すまん。
登場シーンは個別にアニメーションさせるつもりかな?だったらレベルにアニメーションをtrigger : customで設定しておいて、asm内の処理で手動でトリガーをオンにできるようにすればいいと思う。(customトリガーのオンオフはRAM mapでアドレスを検索すれば見つかる)
てか、Returnラベルが2つあったり、アキュムレータのビット幅の指定をすればバイト数・サイクル数共に節約できるところあったりいろいろ問題ありそうだから少し手直しした方がよさそうだね
流石にツールじゃ完璧なasmは作れんわ・・・
まあスプライトはあまり詳しく無いからこのくらいしかアドバイスできない、すまん。
I'm Japanese, so if I'm not speaking well, sorry!
他に誰か助けてくれる人は居ませんか?
Is there anyone else who can help me?
Is there anyone else who can help me?
ここはリクエストする場所であって
助けを求めるなら他のスレ行って、どうぞ
このアカウントは無効になりました
助けを求めるなら他のスレ行って、どうぞ
このアカウントは無効になりました
このスレッドは閉鎖する事にしました。
なので、このページでアドバイスをお願いします。
なので、このページでアドバイスをお願いします。