论坛风格切换
  • 1152阅读
  • 13回复

上班闲来蛋疼在办公室里自己写的一个JS游戏程序=_,=||| [复制链接]

上一主题 下一主题
离线mKoori
 
发帖
509
重量
2012
香味
62
好感度
200
200
只看楼主 倒序阅读 使用道具 0F 发表于: 2010-12-02
dango.html (10 K) 下载次数:9

我承认我真的很蛋疼……=_,=|||

以下是本程序的源码,看完其简单程度之后你直接抓墙或者挠头都可以,嘛=_,=|||

<html>
<head>
<title>团子星上的大赌场</title>

<script language=\"JavaScript\">

var recFace = 0; //0:Spade; 1:Heart; 2iamond; 3:Club
var recNum = 0; //0~12:A~K
var arrFace = [\"♠\",\"♡\",\"◇\",\"♧\"]; //[\"黑桃♠\",\"红桃♡\",\"方片♢\",\"梅花♧\"]
var arrNum = [\"?\",\"A\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"J\",\"Q\",\"K\"];

var Drawed = new Array();
var Turn= 0;
var AIPoint = 0;
var myPoint = 0;
var tmpFace = 0;
var tmpNum = 0;
var Reward = 0;
var GPoint = 0;
var Doubled = false;
var myFund = 4950;





function chkName() //检查输入姓名
{
if(frmMain.iUsrName.value==\"\" || frmMain.iUsrName.value==null)
{
alert(\"你连个名字都懒得写么?…=_=…\");
}else{
if(frmMain.iUsrName.value==\"克里\"){alert(\"请不要拿庄家的名字开玩笑...\");}else{
alert(\"OKAY,注册完毕,请收好你换出来的筹码~\");
frmMain.btnAdd50 .disabled = false;
frmMain.btnDraw.disabled = false;
frmMain.btnReg .disabled = true;
frmMain.iUsrName .disabled = true;
frmMain.iFund.value -= 50;
frmMain.imsg.value = \"*赌徒【\" + frmMain.iUsrName.value + \"】来到了团子星的大赌场...\n\";
}
}
}






function AddFund() //加注,一次50
{

frmMain.btnExit .disabled = true;

if(myPayment < 1)
{
frmMain.btnDraw .disabled = true;
}else{
frmMain.btnDraw .disabled = false;
}

var myPayment = parseInt(frmMain.iPay.value);

if(myFund < 50)
{
alert(\"钱呢?没钱怎么玩?\");
frmMain.btnAdd50 .disabled = true;
}else{
myFund -= 50;
frmMain.iFund.value = myFund;

myPayment += 50;
frmMain.iPay.value = myPayment;
frmMain.imsg.value += \"*\" + frmMain.iUsrName.value + \"为自己的赌局加注50元...\n\";
}
}







function Draw() //抓牌
{

frmMain.btnAdd50 .disabled = true;
frmMain.btnDouble.disabled = false;
frmMain.btnStop .disabled = false;
frmMain.btnExit .disabled = true;

if(Turn == 0)
{
var getiPay = parseInt(frmMain.iPay.value);
Reward = getiPay * 2;
frmMain.imsg.value = \"*\" + frmMain.iUsrName.value + \"为这一局下注¥\" + frmMain.iPay.value + \"元,如果赢了,将得到¥\" + Reward + \"元,双倍将赢得¥\" + Reward*2 + \"元。输了将失去下注金额的一倍(¥\" + Reward/2 + \"元),双倍将会输掉¥\" + Reward*2 + \"元\n\";

}

if(Turn <=4)
{
DrawCard(Turn);
Turn ++;
frmMain.imsg.value += \"*庄家给\" + frmMain.iUsrName.value + \"发的第\" + Turn + \"张牌是【\" + arrFace[tmpFace]+ arrNum[tmpNum] + \"】……\n\";
}else{
alert(\"已经抓满五张牌了,不能再抓了~\");
frmMain.btnDraw.disabled = true;
}

if(Turn >= 4)
{
frmMain.btnDouble.disabled = true;
}

//alert(myPoint);

}







function EndofThisTurn() //停止抓牌
{

frmMain.btnAdd50 .disabled = false;
frmMain.btnDouble.disabled = true;
frmMain.btnStop .disabled = true;
frmMain.btnDraw .disabled = true;
frmMain.btnExit .disabled = false;

Turn = 0;
frmMain.imsg.value += \"*\" + frmMain.iUsrName.value + \"叫停,开始拼点数↓\n\";
AIDrawCard();
frmMain.imsg.value += \"*庄家开始抓牌……\n\";
AIPoint = AIPoint%10;
frmMain.imsg.value += \"*庄家共抓到\" + AIPoint + \"点\n\";
myPoint = myPoint%10;
frmMain.imsg.value += \"*\" + frmMain.iUsrName.value + \"的点数为\" + myPoint + \"点\n\";

if(myPoint > AIPoint){
if(Doubled == false){
alert(\"你赢了¥\" + Reward + \"元钱!\");
myFund += Reward;
}else{
alert(\"你赢了¥\" + Reward*2 + \"元钱!\");
myFund += Reward*2;
}
}else{
if(Doubled == false){
alert(\"你输了¥\" + Reward/2 + \"元钱!\");
myFund -= Reward/2;
}else{
alert(\"你输了¥\" + Reward*2 + \"元钱!\");
myFund -= Reward*2;
}
}

AIPoint = 0;
myPoint = 0;
Doubled = false;
frmMain.iPay.value=0;
frmMain.iFund.value = myFund;

if(myFund < 50)
{
alert(\"没钱了,再负债……就只能卖身了……\");
frmMain.btnAdd50 .disabled = true;
Coments();
}

}






function AIDrawCard() //电脑庄家抓牌
{
AIPoint = parseInt(Math.random()*65);
}









function DrawCard(DrawTimes) //抓牌基程序
{
var isOK = false;
while(isOK==false)
{
tmpFace = parseInt(Math.random()*4);
tmpNum = parseInt(Math.random()*13+1);
if(DrawTimes<1)
{
Drawed[DrawTimes] = [tmpFace,tmpNum];
isOK = true;
}else
{
for(i=0;i<DrawTimes;i++)
{
if(Drawed[1] != tmpNum)
{
Drawed[DrawTimes] = [tmpFace,tmpNum];
isOK = true;
}else{
if(Drawed[0] != tmpFace)
{
Drawed[DrawTimes] = [tmpFace,tmpNum];
isOK = true;
}else{
isOK = false;
}
}
}
}
}
myPoint += Drawed[DrawTimes][1];
}






function DrawDouble() //双倍基程序
{
frmMain.btnDouble.disabled = true;
frmMain.imsg.value += \"*\" + frmMain.iUsrName.value + \"要赌双倍……\n\";
Doubled = true;
Draw();
EndofThisTurn();
}


function Coments() //赌博能力综合评价
{
var i = 0;
frmMain.btnAdd50 .disabled = true;
frmMain.btnExit .disabled = true;
frmMain.imsg.value = \"☆☆☆☆☆赌博能力综合评价☆☆☆☆☆\n\";
frmMain.imsg.value += \"☆剩余赌资:\" + myFund + \"\n☆评定:\n=================================\n\";

if(myFund < 100){i=0;}
else{
if(myFund < 1000){i=1;}
else{
if(myFund < 5000){i=2;}
else{
if(myFund < 5000){i=3;}
else{
if(myFund < 50000){i=4;}
else{
if(myFund < 100000){i=5;}
else{
if(myFund < 1000000){i=6;}
}}}}}}
var arrComs = new Array();
arrComs[0] = \"你这样的还想去赌场?我看还是算了吧……\n\";
arrComs[1] = \"你是标准的赌徒,十赌九骗就是这个道理,所以记得以后不要去赌博哦!\n\";
arrComs[2] = \"赌场就是如此,十赌九输,只是你有他人没有的过人的幸运,所以你赔的不多……\n\";
arrComs[3] = \"好吧,就算你赢了点钱,可你也就是这种程度了,你只是这次幸运,但以后呢?……\n\";
arrComs[4] = \"果然遇到了!莫非阁下就是传说中的【赌博帝】?!你这种程度的能力可以去传授赌博技巧了……\n\";
arrComs[5] = \"给我签个名吧!赌圣……不……【赌神】!给我签个名吧!!!~~~~\n\";
arrComs[6] = \"你纵横赌海20几年,练就了一身本领,在赌场上基本遇不到对手……结果1年前你的一个大意,被人发现你居然是靠出老千赢的钱,从此你的名号就传了出去……你也因为出千作弊被砍手砍脚最终沦为一根人棍……你这件事情之后,赌场中流传了这样一句话:“赌博赌的是钱,出老千赌的是命。如果你赌钱,大不了就穷了,如果你赌命,那么\" + frmMain.iUsrName.value + \"的下场就是你的下场……”\n\";




frmMain.imsg.value += arrComs;
}

</script>









<style type=\"text/css\">
body{
color:#0f0;
margin-top:0;
margin-left:0;
}
</style>

</head>

<body bgcolor=\"#333\">
<center>
<form id=\"frmMain\">
<h1>~欢迎光临家缤纷 - 团子星上的大赌场~</h1>
<table border=\"1\">
<tr>
<td>赌徒姓名:<input type=\"text\" id=\"iUsrName\" size=\"7\"> <input type=\"button\" id=\"btnReg\" value=\"注册\" onClick=\"chkName();\"></td>
<td>所持赌资:¥<input type=\"text\" id=\"iFund\" value=\"5000\" size=\"6\" readonly>元</td>
</tr>
<tr>
<td colspan=\"2\" align=\"right\">
<input type=\"button\" value=\"加注\" disabled=\"true\" id=\"btnAdd50\" onClick=\"AddFund();\">
<input type=\"button\" value=\"抓牌\" disabled=\"true\" id=\"btnDraw\" onClick=\"Draw();\">
<input type=\"button\" value=\"停手\" disabled=\"true\" id=\"btnStop\" onClick=\"EndofThisTurn();\">
<input type=\"button\" value=\"双倍\" disabled=\"true\" id=\"btnDouble\" onClick=\"DrawDouble();\">
<input type=\"button\" value=\"赌博能力评定\" disabled=\"true\" id=\"btnExit\" OnClick=\"Coments();\">
已押注¥<input type=\"text\" id=\"iPay\" value=\"50\" size=\"6\" readonly>元
</td>
</tr>
<tr>
<td colspan=\"2\"><TEXTAREA id=\"imsg\" cols=\"52\" rows=\"20\" readonly>欢迎进入团子星上的大赌场!你做好准备了么?</TEXTAREA></td></tr>
<tr>
<td>


</td>
</tr>
</table>
</form>
</center>

【特别提示】<br />
  本游戏仅为工作之余消遣作乐来用,请优先完成手头工作再玩也不迟。另外,这只是模拟赌博,请不要对事情太过认真。<br />
【游戏方法】<br />
*用IE的首先要在打开页面之后点击黄色写有“为帮助保护您的安全,Internet Explorer 已经限制此文件显示……”然后选择“允许”。<br />
*名字请一定要写一个,但不要用我(作者)的名字……<br />
【相关功能】<br />
*点“加注”可以给自己的新一局多押¥50的赌资;<br />
*点“抓牌”即可开始赌局;<br />
*点“赌博能力评定”可以结束游戏,查看自己的结局。<br />
【规则】<br />
*A~9分别得是1~9点,10、J、Q、K分别是0、1、2、3点;<br />
*每局最多可抓5张牌,可以中途点“停牌”向庄家说不要再派牌给你;<br />
*将所有发到手中的牌点数相加后保留个位数的数值(例如:你得到♡J、♧2、♧3、♢3,点数相加是11+2+3+3=19点,那么你的点数就是9点),之后和庄家拼点数如果你的点数大于庄家的点数,你赢。<br />
*“双倍”的用途是当你觉得你再抓一张牌能赢得时候,点击“双倍”,庄家会直接发给你牌并和你拼点数。

</body>
</html>

Storage部分完成
离线mKoori
发帖
509
重量
2012
香味
62
好感度
200
200
只看该作者 1F 发表于: 2010-12-02
其实我评定部分想用Switch+case来的,不过总出评定错误(我真忘了多条件下用case语法了……)OTL
所以就用if代替了=_,=|||

以上就是我所有的JS能力……OTL

Storage部分完成
离线mKoori
发帖
509
重量
2012
香味
62
好感度
200
200
只看该作者 2F 发表于: 2010-12-02
另外再补充一句:这个游戏是我用记事本编的……因为办公室里没有IDE……=_,=|||

Storage部分完成
离线蓝月狼
发帖
769
重量
2275
香味
1608
好感度
200
200
只看该作者 3F 发表于: 2010-12-03
= = 表示看起来好麻烦啊。。。
我是百孔千疮死去活来的日向…
离线mKoori
发帖
509
重量
2012
香味
62
好感度
200
200
只看该作者 4F 发表于: 2010-12-03
你直接下载附件去玩就好了=_,=|||

Storage部分完成
离线小演
发帖
3533
重量
2202
香味
6944
好感度
200
200
只看该作者 5F 发表于: 2010-12-03
蛋疼遊戲~~
离线Exocet
发帖
1912
重量
2085
香味
1388
好感度
200
200
只看该作者 6F 发表于: 2010-12-03
挺好殺時間的
离线mKoori
发帖
509
重量
2012
香味
62
好感度
200
200
只看该作者 7F 发表于: 2010-12-03
= =|||
所以才是闲来蛋疼写的游戏啊=_,=|||

Storage部分完成
离线暗羽苍穹
发帖
1895
重量
569
香味
2918
好感度
200
201
只看该作者 8F 发表于: 2010-12-03
果然克里猫是闲的蛋疼啊~~~~~~~~~~~~
离线未知の名
发帖
142
重量
2002
香味
1161
好感度
200
200
只看该作者 9F 发表于: 2010-12-03
=w=
离线Exocet
发帖
1912
重量
2085
香味
1388
好感度
200
200
只看该作者 10F 发表于: 2010-12-03
這是BUG
离线蓝月狼
发帖
769
重量
2275
香味
1608
好感度
200
200
只看该作者 11F 发表于: 2010-12-04
= = 稍微改点逻辑就可以了。。
我是百孔千疮死去活来的日向…
离线mKoori
发帖
509
重量
2012
香味
62
好感度
200
200
只看该作者 12F 发表于: 2010-12-04
=_=...

Storage部分完成
离线Exocet
发帖
1912
重量
2085
香味
1388
好感度
200
200
只看该作者 13F 发表于: 2010-12-04
最大的BUG現身了
1条评分
小演  +1 不多說甚麼......... 2010-12-05
快速回复
限100 字节
克里喵子:注意回帖时随时存档,随时使用草稿功能才是上策!
 
上一个 下一个