• 締切済み

JavaScriptでゲーム作成

今JavaScriptを使ってゲームを作っています。 同じ色のブロックを3つ揃えると消えるという感じのゲームなのですが、 タイマーのつけ方がわかりません。 スタートボタンを押すとタイマーが減り、 0になると別画面に飛ばしたいのですがわかりません。 よろしくおねがいします。

みんなの回答

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

ゲームだとアニメーションなども必要になるのではないでしょうか? ご質問の状態だとななんだか、心もとないような… 雰囲気のサンプルです。 専用の関数にすればもう少し短くなりますし、余分な機能を省けば簡単になるかと。 ページ遷移などは、callbackで指定すような仕組みにしています。 サンプルなので解説なしです。(全角空白は半角に) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="ja"> <head><title>sample</title> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <script type="text/javascript"> var Timer = (function(){  var timer = function(id){   this.timerId = null,   this.callback = null,   this.baseTime = 0,   this.time = 0,   this.target = document.getElementById(id);  }  var disp = function(){   var msec = this.time>0? this.time: 0;   this.target.innerHTML = (msec/1000 + 0.5 | 0);  } timer.prototype = {  start : function(time, func){   if(!this.callback){    this.time = (time || 0) * 1000;    this.callback = func || new Function();   }   this.baseTime = +(new Date()) + this.time;   disp.call(this);   var obj = this;   this.timerId = setInterval(function(){    obj.time = obj.baseTime - new Date();    disp.call(obj);    if(obj.time<=0){     var f = obj.callback;     obj.reset();     if(typeof f === "function") f();    }   }, 200);  },  stop : function(){   clearInterval(this.timerId);  },  reset : function(){   this.stop();   this.timerId = null;   this.callback = null;   this.time = 0;   disp.call(this);  } } return function(id){ return new timer(id); } })(); </script> </head> <body> <div id="test" style="font-size:3em;">0</div> <div> <input type="button" value="start" onclick="test.start(20, function(){alert('TIME UP!');})"> <input type="button" value="pause" onclick="test.stop()"> <input type="button" value="reset" onclick="test.reset()"> </div> <script> var test = Timer("test"); </script> </body> </html>

関連するQ&A

  • JavaScriptでゲームを作っています。

    今作っているゲームにタイマーをつけたいと思っています。 イメージでは スタートボタンを押すとゲームが始まり、タイマーが減っていく。 (減っているタイマーを表示したい) ↓ 時間内にゲームをクリアできないと、 ゲームオーバーの別ページに飛ぶ、またはメッセージが出る。 ↓ ゲームをクリアするとクリアの別画面に飛ぶ。 このようなのを作りたいのですが、 うまくいきません。 かなり急いでいるので よろしくお願いします。

  • Javascriptでタイマーを作成したい

    お世話になります。 Javascriptでタイマーみたいなことを作成したいのですができますか? つまり、ホームページに開始ボタンと停止ボタンを作成して 開始ボタンを押したら0:00:00を時間がアップしていく感じです。1秒から順に 停止を押したらタイマーがストップするみたいなのです。 簡単にJavascriptでできないか探しているのですが見つかりません。 教えてください。 JavascriptでできないのであればCGIでもできればと思っています。 よろしくお願いします。

  • Javascriptのゲームを…

    Javascriptでオンラインゲームを作ってみたいのですが、まだJavascriptでのゲームをあまり見たことがありません。何か『Javascriptで こんなにすごいのが作れるんだぞ~』って感じのゲーム・オンラインゲームはありますか。

  • 100点でクリアする簡単なモグラ叩きゲームを作りたい

    Flash8を使用して簡単なゲームを制作しているFlash初心者です。 今仕事でオバケ叩きゲームを作っています。 黒いオバケを叩いて10点、黄色いオバケを叩くとマイナス10点という感じのもので、 時間制限(30秒)をつけています。 で、わからない箇所があります。 叩いた点数の合計が100点になると、 1ステージクリアにしたいのですが、なかなかうまくいきません。。 流れとしては、 ローディング画面 ↓ スタートボタン画面 ↓ ゲーム画面 (出てくるオバケのムービークリップ6つ、制限時間のタイマー、  得点が入るダイナミックテキスト<変数名:score>) ↓ クリア画面 or タイムオーバー画面 という感じのシーンになっています。 これがそれです。 http://www.edit-site.com/obake.html どういうふうにすれば出来るでしょうか? お答えよろしくお願いします。

    • ベストアンサー
    • Flash
  • JavaScriptで可能かどうか分かりますでしょうか?

    初めて質問させて頂きます。よろしくお願いします。 今、社内LANで外部公開していないHPがあります。社内サーバーで管理しています。 その中で複数人のメンバーが、そのHP内の特定サイト(例えば今日の周知など)にアクセスして、それぞれの人がそのページを開いたかどうかの確認をできないかと考えています。 例えは、特定サイト内で【確認】のボタンを作って、そのボタンを押した人は、そのボタンがなくなるとか、閲覧済みと画面に表示されたりとか。また、特定サイトに入る前にログインしてから、【確認】ボタンをクリックをするとか。 CGIを使えばできそうと教えて頂いたのですが、なんとか工夫をしてJavaScriptで出来ないものかなと思っています。 JavaScriptで無理なら無理とはっきり言ってもらえれば、別の方法を探そうと思いますので、JavaScriptの詳しい方がおられましたら、何卒よろしくお願い致します。

  • ゲームができない!!

    ゲームソフトをインストールしたが画面よりはみ出てスタートボタンが押せない(--;)

  • オンラインゲーム

    オンラインゲームをやろうとして ゲームのスタートボタンを押して 画面が出てくるのまではいいんですが 出てきて3秒くらいするとすぐゲームが切れてしまって ゲームができません;; どうしてなんですかぁ?

  • VBかjavascriptで作成したのですがどうもうまくいきません。

    作りたい物は、何時になったらイベントを発生させるという物なのですが、動くんですが違和感?みたな感じがします。 例 現在時刻7:00→メッセージボックスで『朝です!』 現在時刻12:00→メッセージボックスで『お昼です!』 現在時刻19:00→メッセージボックスで『夜です!』 のような感じでつくりたいです。 javascriptでは作ったのですが、同じスクリプトをイベントごと記入したので、とてもごみごみしてしまいました。あと、window.alertを使って表示させたのですが、他の作業をしているときはalertに全く気付きません。 alertを最上位に出すほうほうありませんでしょうか? しかし、javascriptだとごみごみしがちなので、VBで作ろうかという感じなのですが、少しかじった程度なので、タイマーとか基礎の部分しか知りません。 よかったらVBで作ってくださいww よろしくお願いします☆

  • javascriptでクイズ

    HP上で簡単なクイズのページを作りたいのですが、 私はjavascript初心者なのでさっぱり分かりません。。。 --内容としてはこんな感じです----------- 3択クイズでラジオボタンをつける。 全部で5問くらいを5つの枠にわけ1ページに表示 「回答する」ボタンで判定 全問正解なら別ページにリンク。 不正解の場合はその箇所の背景の色を変える。 ----------------------------------------- ちょっと分かりにくくてすみません・・・ ご回答いただけると、とっても助かります! よろしくお願いいたします。

  • 3Dゲームプレイ中におかしな現象

    前まではなかったのですが、最近になって3Dゲームを立ち上げてプレイを始めて数分すると画面がおかしな状態に陥ります。フリーズするわけでもないのですが、画面が緑色のブロック状ものが見えるようになります。動きのはやいところでは画面全体が緑色のブロックノイズのような感じになります。これはハードウェア的な問題なんでしょうか。パソコン自体は今年の1月に組み立てました。 検索してもなかったので質問しました。 まともにゲームが出来ないです。