明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

asp編程案例:用ASP完成網(wǎng)上“5子棋”大賽

[摘要]“五子棋”是大家都非常熟悉的一種益智類游戲,相關(guān)的游戲軟件也非常多,在此我向大家隆重推出一款新的純“網(wǎng)絡(luò)版”的五子棋,它利用ASP做為開發(fā)環(huán)境,因此在Internet上對(duì)戰(zhàn)的時(shí)候無需下載客戶端軟件,只要你有一個(gè)瀏覽器就可以了。你也可以在局域網(wǎng)上進(jìn)行這個(gè)游戲。對(duì)于ASP,我不想做過多的說明,在以前的...

“五子棋”是大家都非常熟悉的一種益智類游戲,相關(guān)的游戲軟件也非常多,在此我向大家隆重推出一款新的純“網(wǎng)絡(luò)版”的五子棋,它利用ASP做為開發(fā)環(huán)境,因此在Internet上對(duì)戰(zhàn)的時(shí)候無需下載客戶端軟件,只要你有一個(gè)瀏覽器就可以了。你也可以在局域網(wǎng)上進(jìn)行這個(gè)游戲。
對(duì)于ASP,我不想做過多的說明,在以前的文章中,我已經(jīng)說過很多。
游戲的過程是這樣的,我們首先登錄,然后可以選擇戰(zhàn)場(chǎng),有“金星”、“木星”、“水星”、“火星”、“土星”等五個(gè)戰(zhàn)場(chǎng),如果你自認(rèn)為是一個(gè)高手,可以選擇金星,否則可以依次選擇其它幾個(gè)星球做為戰(zhàn)場(chǎng)。如果這個(gè)星球上沒有擂主,你就應(yīng)該以擂主的身份進(jìn)入,然后別人就可以和你進(jìn)行對(duì)戰(zhàn)了。當(dāng)然,如果所有的星球上都已經(jīng)開始了戰(zhàn)爭(zhēng),那么你就只能等一會(huì)兒了。
如果你是以擂主身份進(jìn)入的,你可以等待別人來和你對(duì)戰(zhàn),如果你是以攻擂手的身份登錄,你可以很快的和擂主展開戰(zhàn)斗。開始戰(zhàn)斗后,由擂主執(zhí)黑先行,然后由攻擂手出招,如此這般。當(dāng)最后決出勝負(fù)的時(shí)候,會(huì)有相應(yīng)的提示。
該站點(diǎn)有幾個(gè)主要的文件是:
Index.asp 登錄文件:
Index0.asp中間文件:
Match.asp 比賽文件:
http://www.it.com.cn/f/edu/0511/26/back0.jpg white0.jpg black0.jpg 中間用到的圖形文件,分別指的棋盤,白子和黑子,如下圖:
在程序的初始化的時(shí)候,將棋盤上分成若干的表格,將背景圖片放入其中,形成一個(gè)棋盤,然后在放上一個(gè)棋子后,再將圖片換上相應(yīng)的白子或黑子就可以了。
先看看登錄文件:
<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<title>星球大戰(zhàn)之“五子連珠”大賽。/title>
</HEAD>
<BODY>
 
<p align=center><font size=6>星球大戰(zhàn)</font></P>
<table border=1 width=80% align=center>
<tr><td>星球</td><td>擂主</td><td>大戰(zhàn)</td><td>攻擂</td></tr>
<tr>
<td>金星</td>
<td>
<%
if application("first1")="" then
%>
<form action=index0.asp?flag=First1 method=post>
<INPUT id=text1 name=txtFirst1 size=10><INPUT id=submit1 name=submit1
type=submit value=進(jìn)入>
</form>
<%
else
response.write application("first1")
end if
%>
</td>
<td>大戰(zhàn)</td>
<td>
<%
if application("second1")="" then
%>
 
<form action=index0.asp?flag=second1 method=post>
<INPUT id=text1 name=txtSecond1 size=10><INPUT id=submit1
name=submit1 type=submit value=進(jìn)入>
</form>
<%
else
response.write application("Second1")
end if
%>
</td>
</tr>
 
<tr>
<td>木星</td>
<td>
<%
if application("first2")="" then
%>
<form action=index0.asp?flag=First2 method=post>
<INPUT id=text1 name=txtFirst2 size=10><INPUT id=submit1 name=submit1
type=submit value=進(jìn)入>
</form>
<%
else
response.write application("first2")
end if
%>
</td>
<td>大戰(zhàn)</td>
<td>
<%
if application("second2")="" then
%>
 
<form action=index0.asp?flag=second2 method=post>
<INPUT id=text1 name=txtSecond2 size=10><INPUT id=submit1
name=submit1 type=submit value=進(jìn)入>
</form>
<%
else
response.write application("Second2")
end if
%>
</td>
</tr>
 
<tr>
<td>金星</td>
<td>
<%
if application("first3")="" then
%>
<form action=index0.asp?flag=First3 method=post>
<INPUT id=text1 name=txtFirst3 size=10><INPUT id=submit1 name=submit1
type=submit value=進(jìn)入>
</form>
<%
else
response.write application("first3")
end if
%>
</td>
<td>大戰(zhàn)</td>
<td>
<%
if application("second3")="" then
%>
 
<form action=index0.asp?flag=second3 method=post>
<INPUT id=text1 name=txtSecond3 size=10><INPUT id=submit1
name=submit1 type=submit value=進(jìn)入>
</form>
<%
else
response.write application("Second3")
end if
%>
</td>
</tr>
 
<tr>
<td>金星</td>
<td>
<%
if application("first4")="" then
%>
<form action=index0.asp?flag=First4 method=post>
<INPUT id=text1 name=txtFirst4 size=10><INPUT id=submit1 name=submit1
type=submit value=進(jìn)入>
</form>
<%
else
response.write application("first4")
end if
%>
</td>
<td>大戰(zhàn)</td>
<td>
<%
if application("second4")="" then
%>
 
<form action=index0.asp?flag=second4 method=post>
<INPUT id=text1 name=txtSecond4 size=10><INPUT id=submit1
name=submit1 type=submit value=進(jìn)入>
</form>
<%
else
response.write application("Second4")
end if
%>
</td>
</tr>
 
<tr>
<td>金星</td>
<td>
<%
if application("first5")="" then
%>
<form action=index0.asp?flag=First5 method=post>
<INPUT id=text1 name=txtFirst5 size=10><INPUT id=submit1 name=submit1
type=submit value=進(jìn)入>
</form>
<%
else
response.write application("first5")
end if
%>
</td>
<td>大戰(zhàn)</td>
<td>
<%
if application("second5")="" then
%>
 
<form action=index0.asp?flag=second5 method=post>
<INPUT id=text1 name=txtSecond5 size=10><INPUT id=submit1
name=submit1 type=submit value=進(jìn)入>
</form>
<%
else
response.write application("Second5")
end if
%>
</td>
</tr> 
</table>
</BODY>
</HTML>
這個(gè)文件不用做過多的說明,就是一個(gè)大的表格,大家可以從那里進(jìn)入,如果某個(gè)位置已經(jīng)被使用,則它會(huì)變成該大 俠的名字,不允許重復(fù)登錄。在登錄后進(jìn)入
index0.asp,這是一個(gè)中間交換文件,在里面進(jìn)行一些變量的處理及賦值,然后再進(jìn)入match.asp,進(jìn)行正式的比賽。我們來看一下index0.asp的內(nèi)容:
<%@ Language=VBScript %>
<%
if Request.Form("txt" & request.querystring("flag"))<>"" then
'response.write "in!" & ""
session("nice")=Request.Form("txt" & request.querystring("flag"))
'response.write session("nice") & ""
'response.write application(request.querystring("flag"))
if application(request.querystring("flag"))="" then
application(request.querystring("flag"))=session("nice")
session("class")=right(request.querystring("flag"),1)
if left(request.querystring("flag"),1)="f" then
application(session("nice"))=false
elseif left(request.querystring("flag"),1)="s" then
application(session("nice"))=false
application(application("first" & session("class")))=true
end if
Response.Redirect "match.asp"
end if
 
 
end if
 
%>
<HTML>
</HTML>
該程序中,用session(“nice”)來記錄您登錄的大名,以后的處理中,很多都要用到它,用它來區(qū)分很多的用戶。如果您是從擂主的位置進(jìn)入,則您的權(quán)利是
first,否則是second,用session("class")來記錄位于哪個(gè)戰(zhàn)場(chǎng)場(chǎng),“金”“木”
“水”“火”“土”分別表示為1、2、3、4、5,因?yàn)橛卸鄠(gè)戰(zhàn)場(chǎng)可能同時(shí)開戰(zhàn),如果不能正確地區(qū)分開,則可能導(dǎo)致一片混亂。application(session("nice"))是一個(gè)邏輯型變量,用真假來表示您是否可以出棋,如果是假,您要等待一個(gè),如果是真,您就可以下棋了。只有一個(gè)戰(zhàn)場(chǎng)上的兩個(gè)人都進(jìn)入了以后,擂主方可以下棋,而且只有當(dāng)擂主出子以后,攻擂手才可以下棋。準(zhǔn)備好以后,下面就進(jìn)入賽場(chǎng),請(qǐng)看文件match.asp

[1] [2]  下一頁