主人公の移動について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
atci98
記事: 17
登録日時: 10年前

主人公の移動について

#1

投稿記事 by atci98 » 10年前

龍神録の9章までしてみて章には関係の無い事ですが、主人公の画像は止まってる時も動いてる時画像が常に動いていますよね。
その画像を、自分なりに作ってみまして、7章のプログラムをいじり、止まっている時と動いている時の画像を作ってみました。
そのことに関して、7章のmain.cppにある「calc.ch();」をそれぞれ別の速さで動かしたく、止まっている時(画像は5枚)は

void calc_ch(){
img_ch,ch.cnt++,ch.img=(ch.cnt%50)/10;
}

で動かし、走る(画像は6枚)と
void calc_ch(){
img_ch,ch.cnt++,ch.img=(ch.cnt%36)/6;
}
で動かしたいのですが、全くうまくいきません。

10章にある、「敵の動きを制御する」の中にあるプログラムを使えば出来そうですが、主人公の動きなのでなるたけ9章までのプログラムをいじって出来ませんでしょうか?

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: 主人公の移動について

#2

投稿記事 by みけCAT » 10年前

twiin さんが書きました:止まっている時(画像は5枚)は

void calc_ch(){
img_ch,ch.cnt++,ch.img=(ch.cnt%50)/10;
}

で動かし、走る(画像は6枚)と
void calc_ch(){
img_ch,ch.cnt++,ch.img=(ch.cnt%36)/6;
}
で動かしたいのですが、全くうまくいきません。
このコードでいうところの50,36(剰余を取るときに割る数)と5,6(剰余を取った後に割る数)をそれぞれch_tのメンバにし、
ch_move関数で移動しているかどうかに応じてこのメンバを変化させる、というのはどうでしょうか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

atci98
記事: 17
登録日時: 10年前

Re: 主人公の移動について

#3

投稿記事 by atci98 » 10年前

それぞれch_tのメンバにする、というのは分かりますが、
ch_move関数で移動しているかどうかに応じてこのメンバを変化させる、というやり方をさらに詳しく、プログラムを書けとは言いませんがさらに詳しく教えていただけませんでしょうか?

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: 主人公の移動について

#4

投稿記事 by みけCAT » 10年前

twiin さんが書きました:ch_move関数で移動しているかどうかに応じてこのメンバを変化させる、というやり方をさらに詳しく、プログラムを書けとは言いませんがさらに詳しく教えていただけませんでしょうか?
例えばch_tに画像の枚数img_numと画像の切り替え周期anim_intervalを追加したとします。
このとき、calc_chを

コード:

void calc_ch(){
        ch.cnt++;
        ch.img=ch.anim_interval==0?0:(ch.cnt%(ch.anim_interval*ch.img_num)/ch.anim_interval;
}
として、9章のch_moveの

コード:

        if(sayu_flag==1 && joge_flag==1)//左右、上下両方の入力があれば斜めだと言う事
                naname=sqrt(2.0);//移動スピードを1/ルート2に
の後に

コード:

        if(sayu_flag==1 || joge_flag==1)//左右、上下どちらかの移動があった
                {ch.img_num=6;ch.anim_interval=6;}
        else//移動していない
                {ch.img_num=5;ch.anim_interval=10;}
という処理を追加すれば切り替えることはできるはずです。(テストはしていません)

ただし、切り換え時につながりが不自然になるかもしれないので、その対策としてch.cntを調整する必要があるかもしれません。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

atci98
記事: 17
登録日時: 10年前

Re: 主人公の移動について

#5

投稿記事 by atci98 » 10年前

なんとかなりそうです。
どうもありがとうございました^^

閉鎖

“C言語何でも質問掲示板” へ戻る