龍の館12章moif(t%60==00)ってなんですか?

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
こめかみ

龍の館12章moif(t%60==00)ってなんですか?

#1

投稿記事 by こめかみ » 17年前

if(t%60==0)
じゃダメなんでしょうか。

こめかみ

Re:龍の館12章moif(t%60==00)ってなんですか?

#2

投稿記事 by こめかみ » 17年前

タイトル間違えましたすいません。

こめかみ

Re:龍の館12章moif(t%60==00)ってなんですか?

#3

投稿記事 by こめかみ » 17年前

ちょっと間違えて投稿しました今質問を整理してます。
ご迷惑おかけします。

こめかみ

Re:龍の館12章moif(t%60==00)ってなんですか?

#4

投稿記事 by こめかみ » 17年前

enemy_act_pattern.cppの中の関数 enemy_pattern10に出て来る
if(t%60==00)というのはなんでしょうか。
またこういう微妙な記号の表現を検索する方法などございましたらご教授よろしくお願いします。

管理人

Re:龍の館12章moif(t%60==00)ってなんですか?

#5

投稿記事 by 管理人 » 17年前

すみません、タイプミスです。
「0」でいいです。

御津凪

Re:龍の館12章moif(t%60==00)ってなんですか?

#6

投稿記事 by 御津凪 » 17年前

先頭の0は、8進数を表してますよね。
式としては合っているわけですが。

こめかみ

Re:龍の館12章moif(t%60==00)ってなんですか?

#7

投稿記事 by こめかみ » 17年前

12章のミスの報告です。
//移動パターン1
//下がってきて停滞して左下に行く
void enemy_pattern1(int i){
    int t=enemy.cnt;
    if(t==0)
        enemy.vy=3;//下がってくる
    if(t==40)
        enemy.vy=0;//止まる
    if(t==40+enemy.wait){//登録された停滞時間だけして
        enemy.vx=-1;//止まる
        enemy.vy=2;//上がっていく
        enemy.muki=0;//左向きセット
    }
}

二つ目の"止まる"は"左へ"では?
おなじく、
//移動パターン2
//下がってきて停滞して右下に行く
void enemy_pattern2(int i){
    int t=enemy.cnt;
    if(t==0)
        enemy.vy=3;//下がってくる
    if(t==40)
        enemy.vy=0;//止まる
    if(t==40+enemy[i].wait){//登録された停滞時間だけして
        enemy[i].vx=1;//上がっていく
        enemy[i].vy=2;//止まる
        enemy[i].muki=2;//右向きセット
    }
}

二つ目の"止まる"は"下がってくる"で、
"上がっていくの"止まる"は"右へ"です。

そして、移動パターン1~3,移動パターン7~9
の、
"//登録された停滞時間だけして"
は、"//登録された時間だけ停滞して"です。

enemy_enter関数が以前の前章のようにずれています。

"enemy[i].wait =enemy_order[t].wait;//色"
これも例の如く
enemy[i].wait =enemy_order[t].wait;//停滞時間ですよね。

enemy_act関数内のコメントが例の如く
" //敵が画面外に外れたら消す"
危険が危ないですね。

以上です。

こめかみ

Re:龍の館12章moif(t%60==00)ってなんですか?

#8

投稿記事 by こめかみ » 17年前

ミスだったんですかw
コンパイルは成功したので意味があるのかと思いました。
教科書には無かったですけどね。

管理人

Re:龍の館12章moif(t%60==00)ってなんですか?

#9

投稿記事 by 管理人 » 17年前

ご報告ありがとうございます。

>コンパイルは成功したので

御津凪さんが仰ったとおり、意味が変わりますが、
そういう表記があるのです。
0x00という表記をご覧になったことがあるかもしれませんが、
それの8進数版です。

こめかみ

Re:龍の館12章moif(t%60==00)ってなんですか?

#10

投稿記事 by こめかみ » 17年前

お礼言い忘れました。
管理人さん、御津凪さんありがとうがざいました。

こめかみ

Re:龍の館12章moif(t%60==00)ってなんですか?

#11

投稿記事 by こめかみ » 17年前

8進数教科書に載ってますね。
索引に00が無かっただけでした。<!--1

ぬっち

セーブデータについて

#12

投稿記事 by ぬっち » 17年前

また質問させていただきます。
今回は、セーブデータの作成・書き込み・読み込みの方法についてです。
セーブデータ無しでは、ゲームとして何か物足りないものがあったので、作り始めたのはいいのですが、思うように先に進めません。

具体的には
・白紙のスコアデータには、問題なく書き込みが出来る。
・書き込みしたものを読み込む時に、エラーが出て強制終了されてしまう。
ということです。

プログラム自体が間違っている可能性があるので、UPしておきます。

<スコア読み込み>
fp=fopen("score.txt", "r");
if(fp){
	fscanf(fp,"%d",spell_history[0]);
	fscanf(fp,"%d",spell_history_max[0]);
	fclose(fp);
}
  

<スコア書き込み>
fp=fopen("score.txt", "w");
if(fp){
	fprintf(fp,"%d\n",spell_history[0]);
	fprintf(fp,"%d\n",spell_history_max[0]);
	fclose(fp);
}
 
 

もちろんこれを使っている時には、FILE *fpを加えてあります。
ポインタをよく理解していないためか、苦戦しています;;
ぜひ、アドバイスをよろしくお願いします。

tk-xleader

Re:セーブデータについて

#13

投稿記事 by tk-xleader » 17年前

fscanfはscanfのファイル読み込み版なので、%dのときはアドレスを渡す必要があります。
fp=fopen("score.txt", "r");
if(fp){
         fscanf(fp,"%d",&spell_history[0]);//こっちと
         fscanf(fp,"%d",spell_history_max);//こっちのどちらか。
         //でも分かりやすさの面で上を使ったほうがいいと思います。
         fclose(fp);
}

tk-xleader

Re:セーブデータについて

#14

投稿記事 by tk-xleader » 17年前

後、データが改行で区切られているので、1つのfscanfにまとめてしまうことも出来ます。
fp=fopen("score.txt", "r");
if(fp){
         fscanf(fp,"%d%d",&spell_history[0],&spell_history_max[0]);
         fclose(fp);
}

ぬっち

Re:セーブデータについて

#15

投稿記事 by ぬっち » 17年前

tkmakwins15さん回答ありがとうございます。

おかげで、うまくいくようになりました^^
ありがとうございます。

閉鎖

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