GetNowCount()で取得した数値を時分秒で表示したい

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

GetNowCount()で取得した数値を時分秒で表示したい

#1

投稿記事 by ミルキー » 3年前

タイトルのまんまなんですが、
ゲームスタートから時間をはかり、
クリアまでにかかった時間を
最後にプレイヤーに教えるために時分秒に直して
画面に表示したいのです。

GetNowCount();の中身は
1000分の1秒で数値がどんどん追加されてくるんですよね?

で、ゲームクリアした瞬間に、
下記の処理を施したので問題ないでしょうか?
教えて下さい。

second=GetNowCount()/1000;
minute=second/60;
second%=60;
hour=minute/60;
minute%=60;

で、hour、minute、second
それぞれの中身をDrawで描画

どっか間違ってますか?

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

Re: GetNowCount()で取得した数値を時分秒で表示したい

#2

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

このGetNowCount()がDXライブラリの関数であれば、間違っています。
このDXライブラリのGetNowCount()はWindows起動時からの時間を返すので、
ゲームスタートからの時間にするためにはクリアの時のGetNowCount()の値からゲームスタートの時のGetNowCount()の値を引かないといけません。
また、second、minute、hourの型がわからないので、このコードが適切かもわかりません。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
keito94
記事: 264
登録日時: 3年前
連絡を取る:

Re: GetNowCount()で取得した数値を時分秒で表示したい

#3

投稿記事 by keito94 » 3年前

hourは時間、minuteは分、secondは秒だと思います。
追記:しまった、そういうことではないのか…。
デバッグは投げ捨てるものではない。
今までの質問でこれは学んだこと。
質問する時は、必ずちゃんと調べた上に問題をもとにした仕様書を作ってから質問すること。
仕様書の大切さを改めて思い知った…。

アバター
keito94
記事: 264
登録日時: 3年前
連絡を取る:

Re: GetNowCount()で取得した数値を時分秒で表示したい

#4

投稿記事 by keito94 » 3年前

ごめんなさい、質問の意味を間違えてしまいました。
hour,minute,secondは、int型だと思います…。
オフトピック
へにっくすさん、ご指摘ありがとうございます…。
デバッグは投げ捨てるものではない。
今までの質問でこれは学んだこと。
質問する時は、必ずちゃんと調べた上に問題をもとにした仕様書を作ってから質問すること。
仕様書の大切さを改めて思い知った…。

ミルキー

Re: GetNowCount()で取得した数値を時分秒で表示したい

#5

投稿記事 by ミルキー » 3年前

みけCATさん
あ、そうでした。間違ってますね。
というわけで、ゲーム開始時にはまず
int StartTime=GetNowCount();//スタートまでの数値を確保
しておき、
int second、minute、hour;
ゲーム中のみの時間を出すために、StartTime分を引いて考える、って感じにします。
second=(GetNowCount()-StartTime)/1000;
minute=second/60;
second%=60;
hour=minute/60;
minute%=60;

で、hour、minute、second
それぞれの中身をDrawで描画

これでどうですか??

アバター
keito94
記事: 264
登録日時: 3年前
連絡を取る:

Re: GetNowCount()で取得した数値を時分秒で表示したい

#6

投稿記事 by keito94 » 3年前

そうそう、そういう感じです!!
オフトピック
ゲームづくりの参考にしよう、…っと。
デバッグは投げ捨てるものではない。
今までの質問でこれは学んだこと。
質問する時は、必ずちゃんと調べた上に問題をもとにした仕様書を作ってから質問すること。
仕様書の大切さを改めて思い知った…。

naohiro19
記事: 256
登録日時: 9年前
住所: 愛知県

Re: GetNowCount()で取得した数値を時分秒で表示したい

#7

投稿記事 by naohiro19 » 3年前

変数名にマウスカーソルで当てると「型名 変数名」というように表示してくれます。

返信

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