龍神録プログラミングの館で「stage」,「stage_count」,「stage_title_count」,「stage_title.appear_cnt」という変数が出てきますが、それらの違いが分からないので教えてください。
あわせて、GV.hにある「フラグ・ステータス変数」と「設定用変数」の意味も教えてください。
初歩的な質問ですみません・・。
カウンタについて
Re:カウンタについて
あらゆる物体が時間と共に変化するにはカウンタが必要です。
今、エフェクトが登録されたとします。例えばそのエフェクトが1秒かかって「キラン」とするとします。
そのためには60FPSなら60回カウントする必要があります。
そのカウンタによって画像を変えたり音を出したりするわけです。
60を超えるとフラグをオフにし、そのエフェクトを消します。
このようにあらゆるものにはカウンタが必要なのです。
stageは現在のステージ数、stege_countはそのステージ内でのカウント数、
stage_title_countは全てのステージのタイトルをいつの時刻(カウンタ数)で出現させるかの設定用カウンタ数、
stage_title.appear_cntはその各ステージのタイトルがいつ表示されるかというカウンタ数です。
stage_title_countには1面なら200,2面なら300,という風に全て予め入っています。
この辺は後からキレイに書き換えます。
stage_title.という構造体はその面のタイトルについての構造体なので、中身はそのステージごとにかわります。
中身のカウンタ数はstage_title_countを受け継ぎます。
ですから、カウンタと設定用変数では、実際にカウントを計算する変数か、時刻(カウント数)をいれておく変数かという違いがあります。
今、エフェクトが登録されたとします。例えばそのエフェクトが1秒かかって「キラン」とするとします。
そのためには60FPSなら60回カウントする必要があります。
そのカウンタによって画像を変えたり音を出したりするわけです。
60を超えるとフラグをオフにし、そのエフェクトを消します。
このようにあらゆるものにはカウンタが必要なのです。
stageは現在のステージ数、stege_countはそのステージ内でのカウント数、
stage_title_countは全てのステージのタイトルをいつの時刻(カウンタ数)で出現させるかの設定用カウンタ数、
stage_title.appear_cntはその各ステージのタイトルがいつ表示されるかというカウンタ数です。
stage_title_countには1面なら200,2面なら300,という風に全て予め入っています。
この辺は後からキレイに書き換えます。
stage_title.という構造体はその面のタイトルについての構造体なので、中身はそのステージごとにかわります。
中身のカウンタ数はstage_title_countを受け継ぎます。
ですから、カウンタと設定用変数では、実際にカウントを計算する変数か、時刻(カウント数)をいれておく変数かという違いがあります。
Re:カウンタについて
丁寧な説明ありがとうございます。
それぞれのカウンタの意味するものは分かりました。
さらに2つ質問させていただきます。
GV.hに
//フラグ・ステータス変数
GLOBAL int func_state,stage_count,count,stage; //関数制御用変数
とありますが、
関数制御用変数という言葉の意味がわかりません。
これらの変数の使われ方にはどういった共通点があるのですか?
(答えにくい質問の仕方でごめんなさい。)
あと、もう1点。
GV.hで
GLOBAL int stage_title_count[STAGE_NUM];
と書いてあるのに、
ini.cppで
stage_title_count[stage];
と書いていいのですか?
STAGE_NUMとは全ステージの数のことで、
stageとは現在のステージのことですよね?
stage_title_countのあとの[/url]の中身が違うものになっていますが良いのですか?
それぞれのカウンタの意味するものは分かりました。
さらに2つ質問させていただきます。
GV.hに
//フラグ・ステータス変数
GLOBAL int func_state,stage_count,count,stage; //関数制御用変数
とありますが、
関数制御用変数という言葉の意味がわかりません。
これらの変数の使われ方にはどういった共通点があるのですか?
(答えにくい質問の仕方でごめんなさい。)
あと、もう1点。
GV.hで
GLOBAL int stage_title_count[STAGE_NUM];
と書いてあるのに、
ini.cppで
stage_title_count[stage];
と書いていいのですか?
STAGE_NUMとは全ステージの数のことで、
stageとは現在のステージのことですよね?
stage_title_countのあとの[/url]の中身が違うものになっていますが良いのですか?
Re:カウンタについて
それは最初
//フラグ・ステータス変数
GLOBAL int func_state; //関数制御用変数
だったんですが、後から変数を付け足して
//フラグ・ステータス変数
GLOBAL int func_state,stage_count,count,stage; //関数制御用変数
こうなりました。なので、関数制御用変数はfunc_stateです。解りにくくてごめんなさい。
1章から順番に読んでもらったら具体的な意味が解ると思います。
func_sateはメイン関数のメインループで使用しているものです。
どの関数を呼ぶか制御している変数です。
>stage_title_count[stage]; と書いていいのですか?
どこか変ですか?
普通にstage_title_count配列に入っているstage番目の要素を指定しているだけです。
ちなみにSTAGE_NUM個配列要素を用意した時、STAGE_NUM番の要素は存在しません。
int a[5];
で配列を用意した時、a[0]~a[4]が用意されますが、a[5]はありませんよね。
stageは現在0なので、0番の要素が指定されているはずです。
配列要素番号の指定は[0]でも[1]でも[2]でも0以上STAGE_NUM未満の整数なら何番でもいいはずです。
//フラグ・ステータス変数
GLOBAL int func_state; //関数制御用変数
だったんですが、後から変数を付け足して
//フラグ・ステータス変数
GLOBAL int func_state,stage_count,count,stage; //関数制御用変数
こうなりました。なので、関数制御用変数はfunc_stateです。解りにくくてごめんなさい。
1章から順番に読んでもらったら具体的な意味が解ると思います。
func_sateはメイン関数のメインループで使用しているものです。
どの関数を呼ぶか制御している変数です。
>stage_title_count[stage]; と書いていいのですか?
どこか変ですか?
普通にstage_title_count配列に入っているstage番目の要素を指定しているだけです。
ちなみにSTAGE_NUM個配列要素を用意した時、STAGE_NUM番の要素は存在しません。
int a[5];
で配列を用意した時、a[0]~a[4]が用意されますが、a[5]はありませんよね。
stageは現在0なので、0番の要素が指定されているはずです。
配列要素番号の指定は[0]でも[1]でも[2]でも0以上STAGE_NUM未満の整数なら何番でもいいはずです。