求一javascript小游戏代码。【注:不要叫我去下载,你直接给我复制过来就可以了】。thank!!
代码比较长 没有注释
脚本说明:
把如下代码加入body区域中
style
.bigcell {
background-color:#aa9966;
border:4px solid #aa9966;
text-align:center;
}
.cell {
width:40px;
height:40px;
font-family:Verdana, Arial;
font-size:10pt;
font-weight:bold;
background-color:#996633;
color:#ffff33;
border-top:2px solid #aa9966;
border-left:2px solid #aa9966;
border-right:2px solid #663300;
border-bottom:2px solid #663300;
text-align:center;
}
.hole {
width:40px;
height:40px;
background-color:#aa9966;
text-align:center;
}
body,h1,h2,h3,.msg,capt1,capt2 {font-family:Verdana,Comic Sans MS,Arial;}
body {margin:0px;}
h1 {font-size:28pt; font-weight:bold; margin-bottom:0px;}
h2 {font-size:16pt; margin:0px; font-weight:bold;}
h3 {font-size:8pt; margin:0px; font-weight:bold;}
.msg {font-size:8pt; font-weight:bold;}
.tab {cursor:hand;}
.capt1 {font-size:10pt; font-weight:bold;}
.capt2 {font-size:9pt; font-weight:bold;}
.capt3 {font-size:14pt; font-weight:bold; color:yellow;}
.capt4 {font-size:10pt; font-weight:bold; color:yellow;}
.but {font-size:9pt; font-weight:bold; height:30px;background-color:#aaaa99;}
/style
BODY onLoad="loadBoard(4)"
script
var gsize, ghrow, ghcol, gtime, gmoves, gintervalid=-1, gshuffling;
function toggleHelp()
{
if (butHelp.value == "Hide Help")
{
help.style.display = "none";
butHelp.value = "Show Help";
}
else
{
help.style.display = "";
butHelp.value = "Hide Help";
}
}
//random number between low and hi
function r(low,hi)
{
return Math.floor((hi-low)*Math.random()+low);
}
//random number between 1 and hi
function r1(hi)
{
return Math.floor((hi-1)*Math.random()+1);
}
//random number between 0 and hi
function r0(hi)
{
return Math.floor((hi)*Math.random());
}
function startGame()
{
shuffle();
gtime = 0;
gmoves = 0;
tickTime();
gintervalid = setInterval("tickTime()",1000);
}
function stopGame()
{
if (gintervalid==-1) return;
clearInterval(gintervalid);
fldStatus.innerHTML = "";
gintervalid=-1;
}
function tickTime()
{
showStatus();
gtime++;
}
function checkWin()
{
var i, j, s;
if (gintervalid==-1) return; //game not started!
if (!isHole(gsize-1,gsize-1)) return;
for (i=0;igsize;i++)
for (j=0;jgsize;j++)
{
if (!(i==gsize-1 j==gsize-1)) //ignore last block (ideally a hole)
{
if (getValue(i,j)!=(i*gsize+j+1).toString()) return;
}
}
stopGame();
s = "table cellpadding=4";
s += "trtd align=center class=capt3!! CONGRATS !!/td/tr";
s += "tr class=capt4td align=centerYou have done it in " + gtime + " secs ";
s += "with " + gmoves + " moves!/td/tr";
s += "trtd align=center class=capt4Your speed is " + Math.round(1000*gmoves/gtime)/1000 + " moves/sec/td/tr";
s += "/table";
fldStatus.innerHTML = s;
// shuffle();
}
function showStatus()
{
fldStatus.innerHTML = "Time: " + gtime + " secs Moves: " + gmoves
}
function showTable()
{
var i, j, s;
stopGame();
s = "table border=3 cellpadding=0 cellspacing=0 bgcolor='#666655'trtd class=bigcell";
s = s + "table border=0 cellpadding=0 cellspacing=0";
for (i=0; igsize; i++)
{
s = s + "tr";
for (j=0; jgsize; j++)
{
s = s + "td id=a_" + i + "_" + j + " onclick='move(this)' class=cell" + (i*gsize+j+1) + "/td";
}
s = s + "/tr";
}
s = s + "/table";
s = s + "/td/tr/table";
return s;
}
function getCell(row, col)
{
return eval("a_" + row + "_" + col);
}
function setValue(row,col,val)
{
var v = getCell(row, col);
v.innerHTML = val;
v.className = "cell";
}
function getValue(row,col)
{
// alert(row + "," + col);
var v = getCell(row, col);
return v.innerHTML;
}
function setHole(row,col)
{
var v = getCell(row, col);
v.innerHTML = "";
v.className = "hole";
ghrow = row;
ghcol = col;
}
function getRow(obj)
{
var a = obj.id.split("_");
return a[1];
}
function getCol(obj)
{
var a = obj.id.split("_");
return a[2];
}
function isHole(row, col)
{
return (row==ghrow col==ghcol) ? true : false;
}
function getHoleInRow(row)
{
var i;
return (row==ghrow) ? ghcol : -1;
}
function getHoleInCol(col)
{
var i;
return (col==ghcol) ? ghrow : -1;
}
function shiftHoleRow(src,dest,row)
{
var i;
//conversion to integer needed in some cases!
src = parseInt(src);
dest = parseInt(dest);
if (src dest)
{
for (i=src;idest;i++)
{
setValue(row,i,getValue(row,i+1));
setHole(row,i+1);
}
}
if (dest src)
{
for (i=src;idest;i--)
{
setValue(row,i,getValue(row,i-1));
setHole(row,i-1);
}
}
}
function shiftHoleCol(src,dest,col)
{
var i;
//conversion to integer needed in some cases!
src = parseInt(src);
dest = parseInt(dest);
if (src dest)
{//alert("src=" + src +" dest=" + dest + " col=" + col);
for (i=src;idest;i++)
{//alert(parseInt(i)+1);
setValue(i,col,getValue(i+1,col));
setHole(i+1,col);
}
}
if (dest src)
{
for (i=src;idest;i--)
{
setValue(i,col,getValue(i-1,col));
setHole(i-1,col);
}
}
}
function move(obj)
{
var r, c, hr, hc;
if (gintervalid==-1 !gshuffling)
{
alert('请点击"开始游戏"按钮')
return;
}
r = getRow(obj);
c = getCol(obj);
if (isHole(r,c)) return;
hc = getHoleInRow(r);
if (hc != -1)
{
shiftHoleRow(hc,c,r);
gmoves++;
checkWin();
return;
}
hr = getHoleInCol(c);
if (hr != -1)
{
shiftHoleCol(hr,r,c);
gmoves++;
checkWin();
return;
}
}
function shuffle()
{
var t,i,j,s,frac;
gshuffling = true;
frac = 100.0/(gsize*(gsize+10));
s = "% ";
for (i=0;igsize;i++)
{
s += "|";
for (j=0;jgsize+10;j++)
{
window.status = "Loading " + Math.round((i*(gsize+10) + j)*frac) + s
if (j%2==0)
{
t = r0(gsize);
while (t == ghrow) t = r0(gsize); //skip holes
getCell(t,ghcol).click();
}
else
{
t = r0(gsize);
while (t == ghcol) t = r0(gsize); //skip holes
getCell(ghrow,t).click();
}
}
}
window.status = "";
gshuffling = false;
}
function loadBoard(size)
{
gsize = size;
board.innerHTML = showTable(gsize);
setHole(gsize-1,gsize-1);
//shuffle();
}
/script
div id=test/div
table cellpadding=4
trtd align=center
b请选择难度: /B
select id=level onchange="loadBoard(parseInt(level.value))"
option value='3'3/option
option value='4' selected4/option
script
for (var i=5;i=10;i++)
{
document.write("option value='" + i + "'" + i + "/option");
}
/script
/select
/td/tr
trtd align=center
input type=button class=but value="开始游戏" onclick="startGame();"
trtd align=center id=fldStatus class=capt2
/td/tr
/table
div id=board/div
如何快速开发一个小游戏
你好,下面这个站点的小游戏比较新,种类也比较多,要什么都有哦。
h5小游戏怎么制作?
H5的小游戏其实就是用基于HTML5技术制作的小游戏,常见的HTML5游戏制作,如果不考虑游戏策划,如果你关心的更多的是制作的话,
那么按照制作方式可以分为两种:
1、原生开发
就是自己写HTML5代码(HTML/CSS/Javascript),或者使用第三方引擎,例如国内常见的白鹭、Cocos2d-Js,以及国外的,这个极力推荐,虽然国内用的人不多。
2、第三工具
另外就是通过一些第三方工具来实现游戏的生成与定制。
这里也可以分为两类
A 套模版
有简单的直接套模版,替换素材,游戏音乐音效即可直接完成的,例如我们做的24好玩平台即是其中之一,类似的还有极点互动、微播盈趣、凡科互动等等。
B 工具编辑器
也有一些高级的工具类似于H5互动编辑器MAKA,我知道的有国外的Construct,如果你想学,不想从0开始学代码,这个是一个略微高级的学法。
南京未墨广告有限公司,拥有10技术开发经验,价格低,速度快
h5小游戏开发是怎么做的?简单吗?
H5 小游戏开发很难,从开始的立项、执行、写代码,到后来的上线、测试、运营维护都需要很大的成本,小伙伴们的公司之前在年会时选择自己开发小游戏,可是后来成本太大,做到一半就停止了。
后来就寻找各种小游戏定制平台,最终选择tomgame专业的团队来定制自己的H5小游戏,只管提出需求,其他的 都不用管,非常不错的。
怎样制作网页游戏
很多人想投身游戏行业,成为真正的游戏制作人。但是他们对游戏的制作过程,和各个职位的职能都是比较陌生的。对网页游戏开发也不够了解,游戏到底是怎么制作出来的呢?\x0d\x0a\x0d\x0a网页游戏开发的程序构成分为三大部分:第一是数据流程。第二是美术。第三是程序。\x0d\x0a1、数据流程\x0d\x0a数据流程其中,数据流程包括了功能。也只有在功能中才能体现数据流程。\x0d\x0a比如最简单的卖买产品。要实现这个功能,那么需要有产品基础表、产品详细表、商店表、背包表。如果扩展性更强,相应的双表是少不不了的。\x0d\x0a表的问题都简单了,关键是这个物品有什么用,这样物品的来源,一大堆数据,物品的走向,又是一大堆数据。最后,这些数据得绕成一个圈。绕圈是一件困难的事情,特别是功能和道具多了起来的时候。难度是2的n次方。\x0d\x0a2、美术\x0d\x0aUI:简洁漂亮的界面总会有好处。\x0d\x0a小图标:道具,地图,装备,一类至少10个吧?大体上百把个是需要的。\x0d\x0a3、程序分5个部分\x0d\x0a数据库:一大堆基础数据表和详细数据表。基础数据表:比如等级1到等级100的用户的属性初始值。详细数据表:每个用户的具体属性。\x0d\x0a功能页面、功能函数。主要就是数据存取,判断,数据走向。\x0d\x0aajax函数:(可选)某些需要伪即时的功能要用到。\x0d\x0ajavascript函数:(可选)模拟客户端的数据计算。也就是webgame的与时间相关的数据。分为两部分。一部分是真实数据,是由服务器端的定时器计算的。另一部分是只有初始值,客户端显示用的。不需要即时同步,仅仅需要模拟同步就行。\x0d\x0a服务器定时器:(C语言或自己设定服务器)定时循环执行某一段代码。而这段代码主要是根据数据库的数据进行更新。这个可以找个C语言程序员来做。对于C语言程序员来讲,这个功能是相当的简单。当然,具体的处理数据的判断和操作数据库,需要你自己写。让C语言程序员给你段标准代码就行了。完全支持sql语句的。\x0d\x0a当然在网页游戏开发前,还要组织相关的专业人才,制作一款网络游戏需要的最核心人才是原画、2D、3D、程序设计、策划等这些方面的人才是必不可少的,因此,要开发一个网页游戏除了要程序员以外,千万不要忘了准备以上人才。
javascript源码移植到微信小游戏?
微信小程序是运行在自身内置浏览器的一种程序语言,它对正常的html、css、js做了以下要求:
1、html在小程序里后缀已经改成了wxml,html中的div、p、a基本上所有的html标签都去除或者做了改动,如div可以用view,img改成了image,所以前端html标签你需要替换成wxml内置的标签
2、其次css也变成了wxss,样式定义跟原来到倒是完全以后,改下后缀即可
3、js也就是小程序的逻辑层,需要按照小程序的规定去写,具体的可以参照网页链接给的官方文档去操作
4、总体来说换了一种格式去写,移植过去也不是太复杂