當前位置:首頁 » 操作系統 » js迷宮源碼

js迷宮源碼

發布時間: 2022-03-04 03:21:04

㈠ 迷宮問題的求解源代碼

typedef struct{

int Col,Row;//迷宮的大小

int arr[Rangle][Rangle]; //0表示障礙,1表示是可走的通道,-1表示外界的圍牆

}MazeType;

void InitMaze(MazeType
&M,int col,int row)

{

//按照用戶的輸入的行數row和列數col列的二維數組(元素值為1或0)

//設置迷宮的初值,加上邊緣的一圈的值

}

void PrintMaze(MazeType M)

{

//根據已經進行二維數組的標記值來輸出迷宮(或者其通路)

}

bool Pass(MazeType M,PosType pos)

{//求解迷宮M中,從Start到end的一條路徑

//若存在則返回true,否則返回false

Stack S;

InitStack(S);

PosType curpos=start;//設置當前坐標為入口位置;

int curstep=1;
//當前的步數

bool Find=false;
//是否找到出口

ElemType e;

do{

if(Pass(M,curpos))

{

FootPrint(M,curpos);//在當前位置標記為2

e.step=1;

e.seat=curpos;

e.di=1;//初始化為向右邊位置移動

Push(S,e);

if(curpos.c==end.c&&curpos.r==end.r)//如果找到了出口則終止,並返回true

{

Find=true;

return Find;

}

else{

curpos=NextPos(curpos,1);

curstep++;

}

}

else{//當前位置不能通過

if(!StackEmpty(S)){

Pop(S,e);//將已經走過的最近位置彈出,數據保存在e中

while(e.di==4&&!(StackEmpty(S))){

MarkPrint(M,e.seat);//留下不能通過的標記

Pop(S,e);

curstep--;

}//while

if(e.di<4)//不能通過則改變方向

{

e.di++;//方向順時針改變一下

Push(S,e);

curpos = NextPos(e.seat,e.di); //求下一個節點

}

}

}

}while(!StackEmpty(S)&&!Find);

//(!StackEmpty(S)&&!Find);//當棧不為空且沒有找到出口

return
false;//沒有找到出口則返回false

㈡ 用JS編寫迷宮類小游戲

你知道這個啥級別么?
看看google的pacman吧,吃豆子,跟迷宮相差不是非常大吧,人家設計師可是世界頂級的JS程序員

㈢ 一個數據結構的迷宮的源代碼問題

很簡單,這是一個回溯的搜索,

if(maze[x+move[i].x][y+move[i].y]==0)
if(path(maze,move,x+move[i].x,y+move[i].y,step))
這兩句的意思是說如果迷宮的maze[x+move[i].x][y+move[i].y]這個位置可以走,那麼下一次就從這個位置開始。
step--;
maze[x][y]=0;
這兩句是在選擇的路徑是死路的時候用來撤銷標記,返回出發點的語句

㈣ JS做迷宮,方塊移動不了,求找出問題

<!DOCTYPEHTML>
<html>
<head>
<metacharset=UTF-8/>
<title>YuGiOh</title>
<styletype="text/css">
#wrap{
margin:auto;
position:relative;
width:80%;
}
</style>
<scripttype="text/javascript">
onload=function()
{
vara=newArray([
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
]);
varrandX=Math.floor(Math.random()*a.length),randY=Math.floor(Math.random()*a[randX].length);
a[randX][randY]=0;
for(vari=0;i<a.length;i++)
{
vararray=[];
for(varj=0;j<a[i].length;j++)
{
varaa=document.createElement("div");
aa.style.position="absolute";
aa.style.border='1pxsolidblack';
aa.style.width=W+"px";
aa.style.height=H+"px";
aa.style.left=j*W+"px";
aa.style.top=i*H+"px";
if(a[i][j]==0)
{
aa.style.backgroundColor='#ff0000';
X=i;
Y=j;
}
else
{
aa.style.backgroundColor='green';
}
wrap.appendChild(aa);
array.push(aa);
}
SITE.push(array);
}
}

varexchange=function(dir)
{
vartx=X,ty=Y,d;
if(dir==37)
{
if(Y<1)
{
return;
}
else
{
ty--;
d='left';
}
}
elseif(dir==38)
{
if(X<1)
{
return;
}
else
{
tx--;
d='top';
}
}
elseif(dir==39)
{
if(Y>SITE[X].length-2)
{
return;
}
else
{
ty++;
d='left';
}
}
elseif(dir==40)
{
if(X>SITE.length-2)
{
return;
}
else
{
tx++;
d='top';
}
}
varthat=SITE[tx][ty];
varme=SITE[X][Y];
varsd=that.style[d];
that.style[d]=me.style[d];
me.style[d]=sd;
vartmp=SITE[tx][ty];
SITE[tx][ty]=SITE[X][Y];
SITE[X][Y]=tmp;
X=tx;
Y=ty;
}

varW=50,H=50,X=-1,Y=-1,SITE=[];
document.onkeydown=function(e)
{
e=e||window.event;
varkeyCode=e.keyCode;
if(!/^(37|38|39|40)$/.test(keyCode))
{
returnfalse;
}
exchange(keyCode);
};

document.ondragstart=document.onselectstart=document.oncontextmenu=function()
{
returnfalse;
}
</script>
</head>
<body>
<divid="wrap"></div>
</body>
</html>

㈤ 求一個Java的迷宮游戲代碼!!!!

Java走迷宮的源代碼,能運行就行已經上傳附件樓主可以在附件下載

手機是看不到附件的可以電腦直接下載。

如果尤文記得採納哦!!!

㈥ 求編程高手給個JS迷宮的代碼。

以下是我作的迷宮:
我作的只有九格的,不過你可以自己改製成任意多格的迷宮.前提是一定要是用我的6個css樣式來布局迷宮.否則會出錯.核心的javascript我已經測試過了.沒有問題
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>無標題文檔</title>
<style>
.rb{
border-style:double;
border-width:0px;
border-color:#000000;
border-left-width:1px;
border-top-width:1px;
}
.rt{
border-style:double;
border-width:0px;
border-color:#000000;
border-left-width:1px;
border-bottom-width:1px;
}
.lb{
border-style:double;
border-width:0px;
border-color:#000000;
border-right-width:1px;
border-top-width:1px;
}
.lt
{
border-style:double;
border-width:0px;
border-color:#000000;
border-right-width:1px;
border-bottom-width:1px;
}
.lr{
border-style:double;
border-width:0px;
border-color:#000000;
border-top-width:1px;
border-bottom-width:1px;
}
.tb
{
border-style:double;
border-width:0px;
border-color:#000000;
border-left-width:1px;
border-right-width:1px;
}
</style>
</head>

<body>
<div id="layer1" style="position:absolute; left:15px; top:21px; width:27px; height:29px; z-index:1; background-color: #FF0000; layer-background-color: #FF0000; border: 1px none #000000;"></div>
<table width="120" height="120" border="0" cellpadding="0" cellspacing="0" style="border-color:#000000; border-width:1px; border-style:solid; ">
<tr>
<td class="rb"></td>
<td class="rb"></td>
<td class="lb"></td>
</tr>
<tr>
<td class="tb"></td>
<td class="rt"></td>
<td class="lb"></td>
</tr>
<tr>
<td class="rt"></td>
<td class="lr"></td>
<td class="lt"></td>
</tr>
</table>
<script language="javascript">
//得用css來布局迷宮,迷宮的多少行多少列,只要改下面的數據就可以了.不過表格的單元格一定要是40*40
var col=3;//列數
var row=3;//行數
var i=0;//位置數
var player=document.getElementById("layer1");
var td=document.getElementsByTagName("table")[0].getElementsByTagName("td");
document.onkeydown=function (e)
{
e=window.event||e;
if(e.keyCode==37)//向下運動
{
if(i%col!=0)//不在最左邊
{
if((td[i].className=="lb"||td[i].className=="lt"||td[i].className=="lr")&&(td[i-1].className=="rb"||td[i-1].className=="rt"||td[i-1].className=="lr"))//可以通過
{
player.style.left=parseInt(player.style.left)-40+"px";
i=i-1;
}
}
}//向左運動
else if(e.keyCode==38)//向上運動
{
if(i>=col)//不在最上邊
{
if((td[i].className=="lt"||td[i].className=="rt"||td[i].className=="tb")&&(td[i-col].className=="tb"||td[i-col].className=="rb"||td[i-col].className=="lb"))//可以通過
{
player.style.top=parseInt(player.style.top)-40+"px";
i=i-col;
}
}
}//向上運動
else if(e.keyCode==39)//向右運動
{
if((i%col)!=(col-1))//不在最右邊
{
if((td[i].className=="lr"||td[i].className=="rt"||td[i].className=="rb")&&(td[i+1].className=="lb"||td[i+1].className=="lt"||td[i+1].className=="lr"))//可以通過
{
player.style.left=parseInt(player.style.left)+40+"px";
i=i+1;
}
}
}//向右運動
else if(e.keyCode==40)//向下運動
{
if(i<=col*(row-1))//不在最下邊
{
if((td[i].className=="lb"||td[i].className=="rb"||td[i].className=="tb")&&(td[i+col].className=="tb"||td[i+col].className=="rt"||td[i+col].className=="lt"))//可以通過
{
player.style.top=parseInt(player.style.top)+40+"px";
i=i+col;
}
}
}//向下運動
}
</script>
</body></html>

㈦ js源碼在哪裡看

javascript的源碼 被嵌入到瀏覽器中一般是看不到的
如果是javascript語言寫的代碼,可以在頁面上右鍵--》 查看源碼,在head部分找到引入的javascript文件的路徑,然後再瀏覽器當前頁面的網址 加上該文件的路徑,就可以查看了

㈧ C++課程設計迷宮旅行游戲源碼,拜託了!大神們!救急啊!!!

http://blog.csdn.net/qq844352155/article/details/25209133
給你個參考

㈨ 求個迷宮游戲源代碼,要帶解釋的,希望帶上如何執行,怎樣用java來實現

你有個100分的懸賞我會考慮下。。。
而且你說的這個,真的不會太難。。。

㈩ 怎麼看原生js函數的實現源代碼

JS和Java一樣,不是某一個公司的語言,而是有一個規范,任何公司和組織按規范來就行,每個瀏覽器都可以實現自己的JS引擎。
firefox是開源的,去看firefox的實現吧。
Java也有JS引擎。

熱點內容
編譯原理斷言有哪幾種 發布:2024-11-15 14:25:29 瀏覽:200
資料庫數據重復 發布:2024-11-15 14:23:17 瀏覽:781
安卓端開發用什麼IDE 發布:2024-11-15 14:13:51 瀏覽:554
阿里雲查看訪問ip 發布:2024-11-15 14:08:58 瀏覽:544
隨機字元串php 發布:2024-11-15 14:03:46 瀏覽:122
怎樣用資料庫搭建伺服器 發布:2024-11-15 13:58:39 瀏覽:478
android編碼設置 發布:2024-11-15 13:50:02 瀏覽:907
androidstringchar 發布:2024-11-15 13:45:00 瀏覽:965
obs配置怎麼弄 發布:2024-11-15 13:43:30 瀏覽:868
特斯拉買哪個配置的 發布:2024-11-15 13:42:36 瀏覽:557