知识大全 用ASP实现网上“五子棋”大赛
Posted 文件
篇首语:盛年不重来,一日难再晨。及时当勉励,岁月不待人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用ASP实现网上“五子棋”大赛相关的知识,希望对你有一定的参考价值。
用ASP实现网上“五子棋”大赛 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
“五子棋”是大家都非常熟悉的一种益智类游戏 相关的游戏软件也非常多 在此我向大家隆重推出一款新的纯“网络版”的五子棋 它利用ASP做为开发环境 因此在Internet上对战的时候无需下载客户端软件 只要你有一个浏览器就可以了 你也可以在局域网上进行这个游戏
对于ASP 我不想做过多的说明 在以前的文章中 我已经说过很多
游戏的过程是这样的 我们首先登录 然后可以选择战场 有“金星” “木星” “水星” “火星” “土星”等五个战场 如果你自认为是一个高手 可以选择金星 否则可以依次选择其它几个星球做为战场 如果这个星球上没有擂主 你就应该以擂主的身份进入 然后别人就可以和你进行对战了 当然 如果所有的星球上都已经开始了战争 那么你就只能等一会儿了
如果你是以擂主身份进入的 你可以等待别人来和你对战 如果你是以攻擂手的身份登录 你可以很快的和擂主展开战斗 开始战斗后 由擂主执黑先行 然后由攻擂手出招 如此这般 当最后决出胜负的时候 会有相应的提示
该站点有几个主要的文件是
Index asp 登录文件
Index asp中间文件
Match asp 比赛文件
Back jpg white jpg black jpg 中间用到的图形文件 分别指的棋盘 白子和黑子 如下图
在程序的初始化的时候 将棋盘上分成若干的表格 将背景图片放入其中 形成一个棋盘 然后在放上一个棋子后 再将图片换上相应的白子或黑子就可以了
先看看登录文件
<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio ">
<title>星球大战之“五子连珠”大赛!</title>
</HEAD>
<BODY>
<p align=center><font size= >星球大战</font></P>
<table border= width= % align=center>
<tr><td>星球</td><td>擂主</td><td>大战</td><td>攻擂</td></tr>
<tr>
<td>金星</td>
<td>
<%
if application("first ")="" then
%>
<form action=index asp?flag=First method=post>
<INPUT id=text name=txtFirst size= ><INPUT id=submit name=submit
type=submit value=进入>
</form>
<%
else
response write application("first ")
end if
%>
</td>
<td>大战</td>
<td>
<%
if application("second ")="" then
%>
<form action=index asp?flag=second method=post>
<INPUT id=text name=txtSecond size= ><INPUT id=submit
name=submit type=submit value=进入>
</form>
<%
else
response write application("Second ")
end if
%>
</td>
</tr>
<tr>
<td>木星</td>
<td>
<%
if application("first ")="" then
%>
<form action=index asp?flag=First method=post>
<INPUT id=text name=txtFirst size= ><INPUT id=submit name=submit
type=submit value=进入>
</form>
<%
else
response write application("first ")
end if
%>
</td>
<td>大战</td>
<td>
<%
if application("second ")="" then
%>
<form action=index asp?flag=second method=post>
<INPUT id=text name=txtSecond size= ><INPUT id=submit
name=submit type=submit value=进入>
</form>
<%
else
response write application("Second ")
end if
%>
</td>
</tr>
<tr>
<td>金星</td>
<td>
<%
if application("first ")="" then
%>
<form action=index asp?flag=First method=post>
<INPUT id=text name=txtFirst size= ><INPUT id=submit name=submit
type=submit value=进入>
</form>
<%
else
response write application("first ")
end if
%>
</td>
<td>大战</td>
<td>
<%
if application("second ")="" then
%>
<form action=index asp?flag=second method=post>
<INPUT id=text name=txtSecond size= ><INPUT id=submit
name=submit type=submit value=进入>
</form>
<%
else
response write application("Second ")
end if
%>
</td>
</tr>
<tr>
<td>金星</td>
<td>
<%
if application("first ")="" then
%>
<form action=index asp?flag=First method=post>
<INPUT id=text name=txtFirst size= ><INPUT id=submit name=submit
type=submit value=进入>
</form>
<%
else
response write application("first ")
end if
%>
</td>
<td>大战</td>
<td>
<%
if application("second ")="" then
%>
<form action=index asp?flag=second method=post>
<INPUT id=text name=txtSecond size= ><INPUT id=submit
name=submit type=submit value=进入>
</form>
<%
else
response write application("Second ")
end if
%>
</td>
</tr>
<tr>
<td>金星</td>
<td>
<%
if application("first ")="" then
%>
<form action=index asp?flag=First method=post>
<INPUT id=text name=txtFirst size= ><INPUT id=submit name=submit
type=submit value=进入>
</form>
<%
else
response write application("first ")
end if
%>
</td>
<td>大战</td>
<td>
<%
if application("second ")="" then
%>
<form action=index asp?flag=second method=post>
<INPUT id=text name=txtSecond size= ><INPUT id=submit
name=submit type=submit value=进入>
</form>
<%
else
response write application("Second ")
end if
%>
</td>
</tr>
</table>
</BODY>
</HTML>
这个文件不用做过多的说明 就是一个大的表格 大家可以从那里进入 如果某个位置已经被使用 则它会变成该大 侠的名字 不允许重复登录 在登录后进入
index asp 这是一个中间交换文件 在里面进行一些变量的处理及赋值 然后再进入match asp 进行正式的比赛 我们来看一下index asp的内容
<%@ 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") )
if left(request querystring("flag") )="f" then
application(session("nice"))=false
elseif left(request querystring("flag") )="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”)来记录您登录的大名 以后的处理中 很多都要用到它 用它来区分很多的用户 如果您是从擂主的位置进入 则您的权利是
first 否则是second 用session("class")来记录位于哪个战场场 “金”“木”
“水”“火”“土”分别表示为 因为有多个战场可能同时开战 如果不能正确地区分开 则可能导致一片混乱 application(session("nice"))是一个逻辑型变量 用真假来表示您是否可以出棋 如果是假 您要等待一个 如果是真 您就可以下棋了 只有一个战场上的两个人都进入了以后 擂主方可以下棋 而且只有当擂主出子以后 攻擂手才可以下棋 准备好以后 下面就进入赛场 请看文件match asp
<>
<head>
<meta equiv="Content Type" content="text/; charset=gb ">
<meta name=GENERATOR content="Microsoft FrontPage ">
<meta name=ProgId content="FrontPage Editor Document">
<META equiv=refresh content= >
<title>连珠大赛 </title>
</head>
<%
Response Write "擂主:" & application("first" & session("class"))
& " 攻擂 " & application("second" & session
("class"))
if Request QueryString("pos")<>"" then
application("pos" & session("class") & Request QueryString("pos"))
=true
end if
%>
<body>
<%
Response Write application("aaa")
if application("first" & session("class"))=session("nice") then
color="black"
if Request QueryString("pos")<>"" then
if session("last")="" then session("last")="abc"
if session("last")<> Request QueryString("pos") then
application(application("first" & session("class")))=false
if application("second" & session("class"))<>"" then application
(application("second" & session("class")))=true
session("last")=Request QueryString("pos")
END IF
end if
else
if application("second" & session("class"))=session("nice") then
color="white"
if Request QueryString("pos")<>"" then
if session("last")="" then session("last")="abc"
if session("last")<> Request QueryString("pos") then
application(application("first" & session("class")))=true
application(application("second" & session("class")))=false
session("last")=Request QueryString("pos")
END IF
end if
else
if application("second" & session("class"))="" then
application("second" & session("class"))=session("nice")
color="white"
if Request QueryString("pos")<>"" then
if session("last")="" then session("last")="abc"
if session("last")<> Request QueryString("pos") then
application(application("first" & session("class")))=true
application(application("second" & session("class")))=false
session("last")=Request QueryString("pos")
END IF
end if
else
color=""
end if
end if
end if
Response Write "<table width= height= border= cellspacing=
cellpadding= >"
for i= to
Response Write "<tr>"
for j= to
if application("pos" & session("class") & cstr(i) & "_" & cstr(j))=""
then
application("color" & session("class") & "_" & Request QueryString
("pos"))=color
Response Write "<td width= height= >"
response write application(application("first" & session("class")))
if application(session("nice"))=true then
response write "<a href=match asp?pos=" & cstr(i) & "_" & cstr(j)
& "><img border= src=back jpg width= height= ></a>"
else
response write "<img border= src=back jpg width= height= >"
end if
response write "</td>"
else
Response Write "<td width= height= ><img border= src=" &
application("color" & session("class") & "_" & cstr(i) & "_" & cstr
(j)) & " jpg width= height= ></td>" & chr( )
end if
next
Response Write "</tr>"
next
Response Write "</table>"
判断输赢
if application("first" & session("class"))=session("nice") then
m="black"
h="white"
else
h="black"
m="white"
end if
横向判断" "
for i= to
win=false
loss=false
five_me=
five_he=
for j= to
if application("color" & session("class") & "_" & cstr(i) & "_" & cstr
(j))=m then
five_me=five_me+
five_he=
elseif application("color" & session("class") & "_" & cstr(i) & "_" &
cstr(j))=h then
five_me=
five_he=five_he+
else
five_me=
five_he=
end if
if five_me= then
win=true
loss=false
exit for
elseif five_he= then
win=false
loss=true
exit for
end if
next
if win or loss then exit for
next
if win then
response write "你赢了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
if loss then
response write "对不起 你输了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
列向判断"|"
for j= to
win=false
loss=false
five_me=
five_he=
for i= to
if application("color" & session("class") & "_" & cstr(i) & "_" & cstr
(j))=m then
five_me=five_me+
five_he=
elseif application("color" & session("class") & "_" & cstr(i) & "_" &
cstr(j))=h then
five_me=
five_he=five_he+
else
five_me=
five_he=
end if
if five_me= then
win=true
loss=false
exit for
elseif five_he= then
win=false
loss=true
exit for
end if
next
if win or loss then exit for
next
if win then
response write "你赢了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
if loss then
response write "对不起 你输了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
斜向判断"/"
for i= to
win=false
loss=false
five_me=
five_he=
for j=i+ to step
if application("color" & session("class") & "_" & cstr(j) & "_" & cstr
(i+ j))=m then
five_me=five_me+
five_he=
elseif application("color" & session("class") & "_" & cstr(j) & "_" &
cstr(i+ j))=h then
five_me=
five_he=five_he+
else
five_me=
five_he=
end if
if five_me= then
win=true
loss=false
exit for
elseif five_he= then
win=false
loss=true
exit for
end if
next
if win or loss then exit for
next
if win then
response write "你赢了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
if loss then
response write "对不起 你输了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
斜向判断""
for i= to
win=false
loss=false
five_me=
five_he=
for j= i to
if application("color" & session("class") & "_" & cstr( i j) & "_"
& cstr(j))=m then
five_me=five_me+
five_he=
elseif application("color" & session("class") & "_" & cstr( i j)
& "_" & cstr(j))=h then
five_me=
five_he=five_he+
else
five_me=
five_he=
end if
if five_me= then
win=true
loss=false
exit for
elseif five_he= then
win=false
loss=true
exit for
end if
next
if win or loss then exit for
next
if win then
response write "你赢了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
if loss then
response write "对不起 你输了!"
application(application("first" & session("class")))=false
application(application("second" & session("class")))=false
end if
%>
</body>
</>
如果某点没有棋子 则加上一个超连接 根据擂主与攻擂手的区别放上一个不同颜色的棋子 最后的一段是用来判断输与赢 分为横 列和两个斜线方向 具体内容看一下就可以明白
最后要说的一点就是global asa 这是站点上的一个核心文件 为了在退出棋局后 将位置留给别人 需要在sesison_onend中加入代码进行处理 如下
<script language=vbscript runat = server>
sub application_onstart
session timeout=
end sub
sub session_onstart
if application("num")="" then
application("num")=
end if
application("num")=application("num")+
end sub
</script>
<script language=vbscript runat = server>
sub session_onend
if application("num")="" then
application("num")=
end if
application("num")=application("num")
if application("first ")=session("nice") then
application("first ")=""
elseif application("second ")=session("nice") then
application("second ")=""
elseif application("first ")=session("nice") then
application("first ")=""
elseif application("second ")=session("nice") then
application("second ")=""
elseif application("first ")=session("nice") then
application("first ")=""
elseif application("second ")=session("nice") then
application("second ")=""
elseif application("first ")=session("nice") then
application("first ")=""
elseif application("second ")=session("nice") then
application("second ")=""
elseif application("first ")=session("nice") then
application("first ")=""
elseif application("second ")=session("nice") then
application("second ")=""
end if
for i= to
for j= to
application("color" & session("class") & "_" & cstr(i) & "_" & cstr
(J))=""
application("pos" & session("class") & cstr(i) & "_" & cstr(j))=""
next
next
application(session("nice"))=""
end sub
</script>
以上就是几个主要的文件 大家可以一试 什么 想做围棋?把棋盘改一下就可以了
cha138/Article/program/net/201311/14337相关参考
VB.NET实现五子棋的人工智能-1 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 人工智能也就
主持大赛选手自我介绍:我是号选手***。我来自***。我喜欢旅行,更喜欢阅读。喜欢英国作家罗素,罗素用诗的语言讲述了支撑他人生意义的三种东西:知识、爱和悲悯。我没有罗素一样深沉的阅历,但我发现能够支撑
知识大全 Javascript和HTML5利用canvas构建Web五子棋游戏实现算法
Javascript和HTML5利用canvas构建Web五子棋游戏实现算法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让
利用ASP.NET构建网上考试系统 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 随着计算机网络
知识大全 用asp.net还原与恢复sqlserver数据库
上次做了个项目涉及到数据库的还原和恢复到网上找了一下是利用SQLDMO实现的只要添加SQLDMO引用就好了然后利用下边的类的方法就可以实现了 我把原作者的类扩充了一下可以自动识别nfig里的数据
中国老年保健协会、北京德善伟业科贸有限公司举办的首后“参花杯”书画大赛,4月25日举行颁奖仪式。共有300名参赛选手参与了此次活动,卫生部原部长钱信忠、中国老年保健协会会长李深到场表示祝贺。96岁高龄
学校给办了个承重大赛,试问那种结构更结实呢?关于这方面的问题,请教高手给点建议!万分感谢!折板请问高手关于微机的问题,万分感谢暂存器可以临时储存资料并对资料进行处理,它有储存的功能,但不能完全算是储存
这两天遇到一个需求就是在一个页面中浮动一张图片兼容浏览器那是默认需求鼠标悬停那也算是默认需求本来认为没什么麻烦的网上那么多随便搜一个再改吧改吧就哦了可是后来发现没有想象的那么简单 问题一网上DE
知识大全 就是那种竖着手指玩的 看那些世界大赛都有很多人懂 我也想学会 下周我就要表演了急
怎么横着玩悠悠球就是那种竖着手指玩的看那些世界大赛都有很多人懂我也想学会下周我就要表演了急!横技不是一两个星期就能熟练掌握得!世界赛那些人练了很久得!你如果下周就要表演得话劝你别练这个比较好只是怕你在
8岁的小学生黄某代表学校参加中外少儿书画大赛,获得了一等奖,奖金5000元,则这5000元应归黄某的父母所有
8岁的小学生黄某代表学校参加中外少儿书画大赛,获得了一等奖,奖金5000元,则这5000元应归黄某的父母所有。_____答案:错误解析:《最高人民法院关于贯彻执行〈民法通则〉若干问题的意见》中规定无民