22、サイコロゲーム


プログラムを覚えるには、ゲームを作ると良いと思う。
最初に、ゲームでよく使われるサイコロを作ってみよう。
サイコロをマウスでクリックすると、乱数表からランダムに数を拾って その数のサイコロに入れ替える部分を作ることにする。

1、サイコロのイメーファイルを用意する。



立体置場「sai」にファイル名を格納する。

sai=new Array("sai0.gif","sai1.gif","sai2.gif","sai3.gif","sai4.gif", "sai5.gif","sai6.gif");

2、サイコロを一つ表示する <img src="sai1.gif" name="saikoro" width=200 height=200> NAMEオプションを使って、イメージに名前を付けておく。



2、サイコロをクリックしたら入れ替える命令を呼び出すようにする
<a href="JavaScript:chg()"> <img src="sai1.gif" name="saikoro" width=200 height=200> </a> サイコロをクリックしたら、Javascriptの命令が呼び出せるようにするには <A>タグを使います。
HREF=”の後に
HTTP:と付ければウエブ上のホームページを呼び出すのはご存知の通りですが
Javascripr:と書いた場合はJavascriptの命令が呼び出します。

IEとNN6以降は<A>タグを使わなくても<IMG>タグ内に
onClick="chg()"
のように書いても機能するようです。

5、乱数表でサイコロの目を入れ替える命令を作る

サイコロを入れ替えるJavaScriptは次のようなものです。
function chg(){  r=Math.random()*6; //乱数表で0〜5.9999を発生させる  rr=Math.floor(r)+1;   //切り捨てて0〜5の整数にし+1する  document.saikoro.src=sai[rr]; //サイコロを立体置場から入れ替える } Math.random()は、0〜0.9999999、を無作為に発生させます。
これを6倍すれば、0〜5.999999、になります。
Math.floor()、を使うと、切り捨てて、0,1,2,3,4,5、のいずれかになり、
1を加えれば、サイコロの種類の一つになります。
サイコロを最初に書いたときに付けた名前を使って立体置場から入れ替えます。

6、体験してみよう

サイコロをクリックしてください


ソース

<html> <head> <title>javascript入門no22</title> <script language="javascript"> <!-- //サイコロファイルを立体置場に// sai=new Array("sai0.gif","sai1.gif","sai2.gif","sai3.gif","sai4.gif","sai5.gif","sai6.gif"); //サイコロ入れ替え// function chg(){ r=Math.random()*6; //乱数表 rr=Math.floor(r)+1;   //切り捨てて+1する document.saikoro.src=sai[rr]; //サイコロを入れ替える } //--> </script> </head> <body> <center> サイコロをクリックしてください<br> <table border=1 bgcolor=#eeeeee><tr><td> <a href="JavaScript:chg()"> <img src="sai1.gif" name="saikoro" width=200 height=200 border=0> </a> </td></tr></table> </center> </body> </html>