ひろひろの生活日記(LIFE Of HIROHIRO)

パソコン講習とソフト開発をしています。自作小説も掲載しています。ネット情報発信基地(上野博隆)Hirotaka Ueno

カーゲーム(ラップタイムの表示)

2022年01月01日 15時19分24秒 | ゲーム開発(Game development)

ラップタイムの表示

function time_str(val){
   sec  = parseInt(val);
   ms = parseInt((val- sec)*100);
   mi   = parseInt(sec/60);
   return(""+ mi + "'" +  ( '00' + sec%60 ).slice(-2) + "." + ( '00' + ms ).slice(-2));
}

var fnt_s = "40px 'MS Pゴシック'";
var fnt_m = "50px 'MS Pゴシック'";
var fnt_l = "120px 'MS Pゴシック'";
var moj_s = 40;
var moj_m = 50;
var moj_l = 120;

これば、moj_x だけで描画できます。

function draw_text(text, x, y, col, fnt, moj){
    ctx.font = fnt;
    wx = x - text.length*20/2;
    wy = y - moj/2;
    ctx.fillStyle = "block";
    ctx.fillText(text, x + 2, y + 2);
    ctx.fillStyle = col;
    ctx.fillText(text, x, y);
 
}

 道路の描画のループの外(draw_car(…)の場所にidxで置き換えています。)

        if(idx === 0){
           ctx.drawImage(img_title, 120, 120);
           draw_text("[A] start game",400, 320, WHITE, fnt_m, moj_m);
           move_car(0)
           if(keyw2 != 0){
               init_car()
               idx = 1;
               tmr = 0;
               laps = 0;
               rec = 0;
               recbk = 0;
               for(i=0; i < LAPS; i++){
                 laptime[i] = "0'00.00";
               }
           }
        }
        if(idx === 1){
           n = 3 - parseInt(tmr/60);
           draw_text("" + n,400, 240, YELLOW, fnt_l, moj_l);
           if(tmr >= 179){
              idx = 2;
              tmr = 0;
           }
        }
        if(idx === 2){
           if(tmr < 60){
              draw_text("Go!", 400, 240, RAD, fnt_l, moj_l);
           }
           rec = rec + 1/60;
           drive_car(keyw, keyw2);
           move_car(1);
        }
        if(idx === 3){
           if(tmr === 1){
              z = 1;
           }
           if(tmr === 30){
              z = 1;
           }
           draw_text("GOAL!", 400, 240, RAD, fnt_l, moj_l);
           car_spd[0] =  car_spd[0]*0.96;
           car_y[0] = car_y[0] + car_spd[0]/100;
           move_car(1);
           if(tmr > 60*8){
              idx = 0;
           }
           
        }

 

 

カーゲーム(ラップタイムの表示)

 

 


コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« カーゲーム(スタート、ゴー... | トップ | 4日から祈りに入ります。 »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

ゲーム開発(Game development)」カテゴリの最新記事