标题: [游戏娱乐] 批处理梭哈游戏 [打印本页]
作者: 小竹 时间: 2008-1-7 21:05 标题: 批处理梭哈游戏
- @echo off
- setlocal enabledelayedexpansion
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::以下是片头
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- title "梭哈测试版 E-mail : [email=bizhuang0917@126.com]bizhuang0917@126.com[/email]"
- echo 程序载入中,请稍后……
- for /l %%i in (1,1,25) do set/p a=^><nul&ping /n 0 127.1>nul
- cls
- mode con lines=13
- color f8
- echo.
- echo.
- echo.
- echo.
- echo.
- echo 本程序仅用于学习交流,不得用于商业用途
- ping -n 2 127.1>nul
- cls
- echo.
- echo.
- echo.
- echo.
- echo **************************************************************
- echo * 欢迎使用梭哈测试版 *
- echo **************************************************************
- ping -n 2 127.1>nul
- cls
- echo.
- echo.
- echo.
- echo.
- echo.
- echo 作者: 小竹英雄
- ping -n 2 127.1>nul
- cls
- echo.
- echo.
- echo.
- echo.
- echo.
- echo 英雄软件工作室
- ping -n 2 127.1>nul
- cls
- echo.
- echo.
- echo.
- echo.
- echo.
- echo 版权所有,盗版或究
- ping -n 2 127.1>nul
- cls
- color E2
- echo.
- echo.
- echo.
- echo
- echo 按任意键进入游戏……
- pause>nul
- mode con lines=25
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::以下为投注
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- :start
- set mymoney=1000
- set oncemoney=100
- :begin
- cls
- echo 赌神先生,您有赌资!mymoney!元
- echo 请投注
- set/p oncemoney=
- if !oncemoney! gtr !mymoney! echo 投注错误!&pause&goto begin
- if !oncemoney! leq 0 echo 投注错误!&pause&goto begin
- set /a mymoney=!mymoney!-!oncemoney!
- cls
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::以下发10张牌,其中有5张是用于交换牌时备用的。
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- for /l %%i in (1,1,52) do set a%%i=%%i
- set total=52
- set count=10
- ::发10张牌,其中有5张是备用的
- :1
- if %count% equ 0 goto 2
- set/a temp=%random%%%%total%+1
- set puke%count%=!a%temp%!
- set/a a%temp%=!a%total%!
- set/a total=%total%-1
- set/a count=%count%-1
- goto 1
- :2
- for /l %%i in (1,1,10) do (
- set/a tt=!puke%%i!-1
- set/a flag%%i=!tt!/13
- set/a puke%%i=!puke%%i!%%13+1
- set left%%i=!flag%%i!
- set right%%i=!puke%%i!
- if !puke%%i! equ 13 set puke%%i=A
- if !puke%%i! equ 12 set puke%%i=K
- if !puke%%i! equ 11 set puke%%i=Q
- if !puke%%i! equ 10 set puke%%i=J
- if !puke%%i! equ 9 set puke%%i=T
- if !puke%%i! equ 8 set puke%%i=9
- if !puke%%i! equ 7 set puke%%i=8
- if !puke%%i! equ 6 set puke%%i=7
- if !puke%%i! equ 5 set puke%%i=6
- if !puke%%i! equ 4 set puke%%i=5
- if !puke%%i! equ 3 set puke%%i=4
- if !puke%%i! equ 2 set puke%%i=3
- if !puke%%i! equ 1 set puke%%i=2
- if !flag%%i! equ 3 set puke%%i=黑桃:!puke%%i!
- if !flag%%i! equ 2 set puke%%i=红桃:!puke%%i!
- if !flag%%i! equ 1 set puke%%i=方块:!puke%%i!
- if !flag%%i! equ 0 set puke%%i=草花:!puke%%i!
- )
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::显示并让用户选择要交换的牌
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- echo 同花大顺×500 大顺×300 同花顺×100
- echo 顺子×50 同花×30 四条×20
- echo 葫芦×15 三条×10 两对×5
- echo ┏━━━━┓ ┏━━━━┓┏━━━━┓┏━━━━┓┏━━━━┓
- echo ┃!puke1! ┃ ┃!puke2! ┃┃!puke3! ┃┃!puke4! ┃┃!puke5! ┃
- echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
- echo ┃ Super ┃ ┃ Super ┃┃ Super ┃┃ Super ┃┃ Super ┃
- echo ┃ Hero ┃ ┃ Hero ┃┃ Hero ┃┃ Hero ┃┃ Hero ┃
- echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
- echo ┃ !puke1!┃ ┃ !puke2!┃┃ !puke3!┃┃ !puke4!┃┃ !puke5!┃
- echo ┗━━━━┛ ┗━━━━┛┗━━━━┛┗━━━━┛┗━━━━┛
- echo 1 2 3 4 5
- echo 请选择要交换的牌(用12345表示)
- set slt=
- for /l %%i in (1,1,5) do (
- set slt%%i=
- )
- set/p slt=
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::实现换牌
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- for /l %%i in (0,1,4) do (
- set/a k=%%i+1
- set slt!k!=!slt:~%%i,1!
- if not defined slt!k! goto 3
- )
- :3
- for /l %%i in (6,1,10) do (
- set/a vv=%%i-5
- set tleft!vv!=!left%%i!
- set tright!vv!=!right%%i!
- set tpuke!vv!=!puke%%i!
- )
- for /l %%j in (1,1,5) do (
- set left!slt%%j!=!tleft%%j!
- set right!slt%%j!=!tright%%j!
- set puke!slt%%j!=!tpuke%%j!
- )
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- echo ┏━━━━┓ ┏━━━━┓┏━━━━┓┏━━━━┓┏━━━━┓
- echo ┃!puke1! ┃ ┃!puke2! ┃┃!puke3! ┃┃!puke4! ┃┃!puke5! ┃
- echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
- echo ┃ Super ┃ ┃ Super ┃┃ Super ┃┃ Super ┃┃ Super ┃
- echo ┃ Hero ┃ ┃ Hero ┃┃ Hero ┃┃ Hero ┃┃ Hero ┃
- echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
- echo ┃ !puke1!┃ ┃ !puke2!┃┃ !puke3!┃┃ !puke4!┃┃ !puke5!┃
- echo ┗━━━━┛ ┗━━━━┛┗━━━━┛┗━━━━┛┗━━━━┛
- for /l %%i in (1,1,25) do set/p a=^><nul&ping /n 0 127.1>nul
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- set samecolor=0
- set bigline=0
- set samecolor=0
- set sameline=0
- set samefour=0
- set hulu=0
- set samethree=0
- set twocouples=0
- set str=
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::以下判断是否同花
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- if %left1% equ !left2! if !left2! equ !left3! if !left3! equ !left4! if !left4! equ !left5! set samecolor=1
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::以下判断是否为顺子
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- for /l %%i in (1,1,4) do (
- set/a w=%%i+1
- for /l %%j in (!w!,1,5) do (
- if !right%%i! lss !right%%j! (
- set/a tt=!right%%i!
- set/a right%%i=!right%%j!
- set/a right%%j=!tt! ) ) )
- ::以上为排序
- set/a t1=%right5%+1
- set/a t2=%right4%+1
- set/a t3=%right3%+1
- set/a t4=%right2%+1
- if %right4% equ %t1% if %right3% equ %t2% if %right2% equ %t3% if %right1% equ %t4% set sameline=1
- if !sameline! equ 1 if !right1! equ 13 set bigline=1
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::以下是判断是否为两对,三条,四条,葫芦
- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- for /l %%i in (1,1,5) do (
- if !right%%i! equ 13 set right%%i=A
- if !right%%i! equ 12 set right%%i=K
- if !right%%i! equ 11 set right%%i=Q
- if !right%%i! equ 10 set right%%i=J
- if !right%%i! equ 9 set right%%i=T
- if !right%%i! equ 8 set right%%i=9
- if !right%%i! equ 7 set right%%i=8
- if !right%%i! equ 6 set right%%i=7
- if !right%%i! equ 5 set right%%i=6
- if !right%%i! equ 4 set right%%i=5
- if !right%%i! equ 3 set right%%i=4
- if !right%%i! equ 2 set right%%i=3
- if !right%%i! equ 1 set right%%i=2
- set str=!str!!right%%i!
- )
-
- for /l %%i in (1,1,4) do (
- set/a w=%%i+1
- for /l %%j in (!w!,1,5) do (
- if !right%%i! equ !right%%j! (
- set e1=!right%%i!
- set e2=!right%%j!
- goto 4
- )
- )
- )
- goto 5
- :4
- set str=!str:%e1%=0!
- set h1=!str:~0,1!
- set h2=!str:~1,1!
- set h3=!str:~2,1!
- set h4=!str:~3,1!
- set h5=!str:~4,1!
- set box=0
- for /l %%i in (1,1,5) do (
- if !h%%i! equ 0 set/a box+=1
- )
- if !box! equ 4 set samefour=1&goto 5
- if !box! equ 3 (
- set str=!str:0=!
- set m=!str:~0,1!
- )
- ::此时m就有值了,否则m的值不正确!
- if !box! equ 3 (
- set str=!str:%m%=0!
- if !str! equ 00 set hulu=1&goto 5
- set samethree=1&goto 5
- )
- set str=!str:0=!
- set g1=!str:~0,1!
- set g2=!str:~1,1!
- set g3=!str:~2,1!
- if !g1! equ !g2! if !g2! equ !g3! set hulu=1&goto 5
- for /l %%i in (1,1,2) do (
- set/a w=%%i+1
- for /l %%j in (!w!,1,3) do (
- if !g%%i! equ !g%%j! (
- set twocouples=1&goto 5
- )
- )
- )
- goto 5
-
-
- :5
- set increase=0
- if !samecolor! equ 1 if !bigline! equ 1 set increase=501&goto 6
- if !bigline! equ 1 set increase=301&goto 6
- if !samecolor! equ 1 if !sameline! equ 1 set increase=101&goto 6
- if !sameline! equ 1 set increase=51&goto 6
- if !samecolor! equ 1 set increase=31&goto 6
- if !samefour! equ 1 set increase=21&goto 6
- if !hulu! equ 1 set increase=16&goto 6
- if !samethree! equ 1 set increase=11&goto 6
- if !twocouples! equ 1 set increase=6&goto 6
-
- :6
- if !increase! equ 501 echo 恭喜你,同花大顺!
- if !increase! equ 301 echo 恭喜你,大顺!
- if !increase! equ 101 echo 恭喜你,同花顺!
- if !increase! equ 51 echo 恭喜你,顺子!
- if !increase! equ 31 echo 恭喜你,同花!
- if !increase! equ 21 echo 恭喜你,四条!
- if !increase! equ 16 echo 恭喜你,葫芦!
- if !increase! equ 11 echo 恭喜你,三条!
- if !increase! equ 6 echo 恭喜你,两对!
- if !increase! equ 0 echo 对不起,什么都不是!
- pause
- set /a mymoney=!mymoney!+(!increase!*!oncemoney!)
- if !mymoney! leq 0 echo 输光了吧!还赌神呢,整个一白痴!&pause>nul&goto end
- if !mymoney! geq 10000 echo 赌神果然名不虚传,您赢了!&pause>nul&goto end
- cls
- goto begin
- :end
- cls
- echo 重玩一次?(是/y,否/n)
- set/p select=
- if !select! equ y goto start
- if !select! equ Y goto start
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- ::以下是片尾
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
- mode con lines=13
- color 0f
- echo.
- echo.
- echo.
- echo.
- echo 谢谢使用……
- ping -n 2 127.0.0.1>nul
- cls
- echo.
- echo.
- echo.
- echo.
- echo 再见!
- ping -n 2 127.0.0.1>nul
- exit
- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
复制代码
作者: 随风 时间: 2008-1-7 21:18
呵呵,这些代码在“非常批处理”论坛都见过,那些也是你发的吗?
还是别人抄袭你的?
作者: 小竹 时间: 2008-1-7 21:35 标题: 回复 2# 的帖子
小楼果然好眼力!不好意思的说,小竹和英雄是同一个人。
[ 本帖最后由 小竹 于 2008-1-7 21:36 编辑 ]
作者: 随风 时间: 2008-1-7 21:41
非常批处理 的“英雄” ?
进步神速,又有耐心,确实是个人才,居然也来到了我们论坛,欢迎,可喜!
论坛正需要对批处理狂热爱好的人。
作者: 小竹 时间: 2008-1-7 21:42 标题: 回复 4# 的帖子
过奖过奖,还有好多东西要向小楼兄学习!!
作者: pusofalse 时间: 2008-9-7 17:31 标题: 回复六楼的帖子
不认同,也请不要诋毁,何不把你的赛马、梭哈、21点、十挑一、骨子一同发上来一起分享。想知道不垃圾的批处理游戏到底多么完美。
作者: Batcher 时间: 2008-9-7 18:22 标题: 回复 6楼 的帖子
请不要侮辱他人或者他人的代码
作者: batman 时间: 2008-9-7 19:14
个人感觉这段n长的代码有巨大的压缩空间。。。。
作者: simplemen 时间: 2008-9-7 20:21
把它转到自己的地盘慢慢学习ing
作者: cmd_writer 时间: 2008-9-11 12:43
[ 本帖最后由 cmd_writer 于 2008-9-11 12:54 编辑 ]
作者: cmd_writer 时间: 2008-9-11 12:44
游戏规则
玩法:
先发给各家一张底牌,底牌要到决胜负时才可翻开。从发第二张牌开始,每发一张牌,以牌面发展较佳者为优先,进行下注。
有人下注,想继续玩下去的人,要按「跟注」键,跟注后会下注到和上家相同的筹码,或可选择加注(加注筹码分别为1、5、10、50、100、500),第一轮可以下注到上游五张的1/4,第二轮可以下注到上游五张的1/2,之后就可以上游五张,上游五张是会加入桌面允许的最大下注。
各家如果觉得自己的牌况不妙,不想继续,可以按「放弃」键放弃下注,认赔等待牌局结束,先前跟过的筹码,亦无法取回。
第四次下注是比赛的决胜关键,有部分玩家已经「放弃」,所以,更增添比赛的刺激性。等到下注的人都跟进了后,便掀开底牌一决胜负。这时,牌面最大的人可赢得桌面所有的筹码。当三家放弃,已经下的注不能收回,并且赢家的底牌不掀开。 纸牌种类:
上游五张游戏用的是扑克牌,取各门花色的牌中的「8、9、10、J、Q、K、A 」,共28张牌。
比较大小:
牌型比较:同花顺>铁支>葫芦>同花>顺子>三条>二对>对子>散牌。
数字比较:A>K>Q>J>10>9>8
花式比较:黑桃>红桃>草花>方片
异常处理:
若是某个玩家在六十秒内没有任何响应,游戏程序将替他叫放弃。
游戏进行中不正常离局者,除了会断线次数加1次外,还会被扣桌面上所有人的下注。
注意:
如果用户的筹码少于100将不能再玩上游五张游戏,必须说明的是:严禁利用上游上游五张赌博,一旦发现,一切责任玩家自己负责。
牌型说明范例
牌 型 说 明
同花顺 拥有五张连续性同花色的顺子。以A为首的同花顺最大。但8和之间不算顺子
铁支 四张相同数字的牌,外加一单张。比数字大小,「A」铁支最大
葫芦 由「三条」加一个「对子」所组成的牌,若别家也有此牌型,则比三条数字大小
同花 不构成顺子的五张同花色的牌。先比数字最大的单张,如相同再比第二支、依此类推
顺子 五张连续数字的牌组。以为首的顺子最大,如果大家都是顺子,比最大的一张牌,如果大小还一样就比这张牌的花式
三条 牌型由三张相同的牌组成,以为首的三条最大
二对 牌型中五张牌由两组两张同数字的牌所组成。若遇相同则先比这副牌中最大的一对,如又相同再比第二对,如果还是一样,比大对子中的最大花式
对子 牌型由两张相同的牌加上三张单张所组成。如果大家都是对子,比对子的大小,如果对子也一样,比这个对子中的最大花色
散牌 单一型态的五张散牌所组成,不成对(二对),不成三条,不成顺(同花顺),不成同花,不成葫芦,不成铁支。先比最大一张牌的大小,如果大小一样,比这张牌的花色
[ 本帖最后由 cmd_writer 于 2008-9-11 12:49 编辑 ]
作者: pusofalse 时间: 2008-9-11 16:04 标题: 回复 12楼 的帖子
看过了,没啥感觉。硬让我说出感想的话。。。我只是觉得批处理本不适合做游戏,它的长处在于系统维护和文件类操作,应该挖掘它的长处。别人的游戏不好,并不说明他们是你所说的所谓垃圾,只是各自的研究方向不同而已。
告诉你一句话:“我是没有兴趣,而你则是没有才能”。
当然,“我”不是真我。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |