Board logo

标题: [游戏娱乐] 批处理梭哈游戏 [打印本页]

作者: 小竹    时间: 2008-1-7 21:05     标题: 批处理梭哈游戏

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  4. ::以下是片头
  5. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  6. title "梭哈测试版 E-mail : [email=bizhuang0917@126.com]bizhuang0917@126.com[/email]"
  7. echo 程序载入中,请稍后……
  8. for /l %%i in (1,1,25) do set/p a=^><nul&ping /n 0 127.1>nul
  9. cls
  10. mode con lines=13
  11. color f8
  12. echo.
  13. echo.
  14. echo.
  15. echo.
  16. echo.
  17. echo 本程序仅用于学习交流,不得用于商业用途
  18. ping -n 2 127.1>nul
  19. cls
  20. echo.
  21. echo.
  22. echo.
  23. echo.
  24. echo **************************************************************
  25. echo * 欢迎使用梭哈测试版 *
  26. echo **************************************************************
  27. ping -n 2 127.1>nul
  28. cls
  29. echo.
  30. echo.
  31. echo.
  32. echo.
  33. echo.
  34. echo 作者: 小竹英雄
  35. ping -n 2 127.1>nul
  36. cls
  37. echo.
  38. echo.
  39. echo.
  40. echo.
  41. echo.
  42. echo 英雄软件工作室
  43. ping -n 2 127.1>nul
  44. cls
  45. echo.
  46. echo.
  47. echo.
  48. echo.
  49. echo.
  50. echo 版权所有,盗版或究
  51. ping -n 2 127.1>nul
  52. cls
  53. color E2
  54. echo.
  55. echo.
  56. echo.
  57. echo 
  58. echo 按任意键进入游戏……
  59. pause>nul
  60. mode con lines=25
  61. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  62. ::以下为投注
  63. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  64. :start
  65. set mymoney=1000
  66. set oncemoney=100
  67. :begin
  68. cls
  69. echo 赌神先生,您有赌资!mymoney!元
  70. echo 请投注
  71. set/p oncemoney=
  72. if !oncemoney! gtr !mymoney! echo 投注错误!&pause&goto begin
  73. if !oncemoney! leq 0 echo 投注错误!&pause&goto begin
  74. set /a mymoney=!mymoney!-!oncemoney!
  75. cls
  76. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  77. ::以下发10张牌,其中有5张是用于交换牌时备用的。
  78. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  79. for /l %%i in (1,1,52) do set a%%i=%%i
  80. set total=52
  81. set count=10
  82. ::发10张牌,其中有5张是备用的
  83. :1
  84. if %count% equ 0 goto 2
  85. set/a temp=%random%%%%total%+1
  86. set puke%count%=!a%temp%!
  87. set/a a%temp%=!a%total%!
  88. set/a total=%total%-1
  89. set/a count=%count%-1
  90. goto 1
  91. :2
  92. for /l %%i in (1,1,10) do (
  93. set/a tt=!puke%%i!-1
  94. set/a flag%%i=!tt!/13
  95. set/a puke%%i=!puke%%i!%%13+1
  96. set left%%i=!flag%%i!
  97. set right%%i=!puke%%i!
  98. if !puke%%i! equ 13 set puke%%i=A
  99. if !puke%%i! equ 12 set puke%%i=K
  100. if !puke%%i! equ 11 set puke%%i=Q
  101. if !puke%%i! equ 10 set puke%%i=J
  102. if !puke%%i! equ 9 set puke%%i=T
  103. if !puke%%i! equ 8 set puke%%i=9
  104. if !puke%%i! equ 7 set puke%%i=8
  105. if !puke%%i! equ 6 set puke%%i=7
  106. if !puke%%i! equ 5 set puke%%i=6
  107. if !puke%%i! equ 4 set puke%%i=5
  108. if !puke%%i! equ 3 set puke%%i=4
  109. if !puke%%i! equ 2 set puke%%i=3
  110. if !puke%%i! equ 1 set puke%%i=2
  111. if !flag%%i! equ 3 set puke%%i=黑桃:!puke%%i!
  112. if !flag%%i! equ 2 set puke%%i=红桃:!puke%%i!
  113. if !flag%%i! equ 1 set puke%%i=方块:!puke%%i!
  114. if !flag%%i! equ 0 set puke%%i=草花:!puke%%i!
  115. )
  116. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  117. ::显示并让用户选择要交换的牌
  118. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  119. echo 同花大顺×500 大顺×300 同花顺×100
  120. echo 顺子×50 同花×30 四条×20
  121. echo 葫芦×15 三条×10 两对×5
  122. echo ┏━━━━┓ ┏━━━━┓┏━━━━┓┏━━━━┓┏━━━━┓
  123. echo ┃!puke1! ┃ ┃!puke2! ┃┃!puke3! ┃┃!puke4! ┃┃!puke5! ┃
  124. echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
  125. echo ┃ Super ┃ ┃ Super ┃┃ Super ┃┃ Super ┃┃ Super ┃
  126. echo ┃ Hero ┃ ┃ Hero ┃┃ Hero ┃┃ Hero ┃┃ Hero ┃
  127. echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
  128. echo ┃ !puke1!┃ ┃ !puke2!┃┃ !puke3!┃┃ !puke4!┃┃ !puke5!┃
  129. echo ┗━━━━┛ ┗━━━━┛┗━━━━┛┗━━━━┛┗━━━━┛
  130. echo 1 2 3 4 5
  131. echo 请选择要交换的牌(用12345表示)
  132. set slt=
  133. for /l %%i in (1,1,5) do (
  134. set slt%%i=
  135. )
  136. set/p slt=
  137. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  138. ::实现换牌
  139. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  140. for /l %%i in (0,1,4) do (
  141. set/a k=%%i+1
  142. set slt!k!=!slt:~%%i,1!
  143. if not defined slt!k! goto 3
  144. )
  145. :3
  146. for /l %%i in (6,1,10) do (
  147. set/a vv=%%i-5
  148. set tleft!vv!=!left%%i!
  149. set tright!vv!=!right%%i!
  150. set tpuke!vv!=!puke%%i!
  151. )
  152. for /l %%j in (1,1,5) do (
  153. set left!slt%%j!=!tleft%%j!
  154. set right!slt%%j!=!tright%%j!
  155. set puke!slt%%j!=!tpuke%%j!
  156. )
  157. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  158. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  159. echo ┏━━━━┓ ┏━━━━┓┏━━━━┓┏━━━━┓┏━━━━┓
  160. echo ┃!puke1! ┃ ┃!puke2! ┃┃!puke3! ┃┃!puke4! ┃┃!puke5! ┃
  161. echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
  162. echo ┃ Super ┃ ┃ Super ┃┃ Super ┃┃ Super ┃┃ Super ┃
  163. echo ┃ Hero ┃ ┃ Hero ┃┃ Hero ┃┃ Hero ┃┃ Hero ┃
  164. echo ┃ ┃ ┃ ┃┃ ┃┃ ┃┃ ┃
  165. echo ┃ !puke1!┃ ┃ !puke2!┃┃ !puke3!┃┃ !puke4!┃┃ !puke5!┃
  166. echo ┗━━━━┛ ┗━━━━┛┗━━━━┛┗━━━━┛┗━━━━┛
  167. for /l %%i in (1,1,25) do set/p a=^><nul&ping /n 0 127.1>nul
  168. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  169. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  170. set samecolor=0
  171. set bigline=0
  172. set samecolor=0
  173. set sameline=0
  174. set samefour=0
  175. set hulu=0
  176. set samethree=0
  177. set twocouples=0
  178. set str=
  179. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  180. ::以下判断是否同花
  181. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  182. if %left1% equ !left2! if !left2! equ !left3! if !left3! equ !left4! if !left4! equ !left5! set samecolor=1
  183. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  184. ::以下判断是否为顺子
  185. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  186. for /l %%i in (1,1,4) do (
  187. set/a w=%%i+1
  188. for /l %%j in (!w!,1,5) do (
  189. if !right%%i! lss !right%%j! (
  190. set/a tt=!right%%i!
  191. set/a right%%i=!right%%j!
  192. set/a right%%j=!tt! ) ) )
  193. ::以上为排序
  194. set/a t1=%right5%+1
  195. set/a t2=%right4%+1
  196. set/a t3=%right3%+1
  197. set/a t4=%right2%+1
  198. if %right4% equ %t1% if %right3% equ %t2% if %right2% equ %t3% if %right1% equ %t4% set sameline=1
  199. if !sameline! equ 1 if !right1! equ 13 set bigline=1
  200. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  201. ::以下是判断是否为两对,三条,四条,葫芦
  202. ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  203. for /l %%i in (1,1,5) do (
  204. if !right%%i! equ 13 set right%%i=A
  205. if !right%%i! equ 12 set right%%i=K
  206. if !right%%i! equ 11 set right%%i=Q
  207. if !right%%i! equ 10 set right%%i=J
  208. if !right%%i! equ 9 set right%%i=T
  209. if !right%%i! equ 8 set right%%i=9
  210. if !right%%i! equ 7 set right%%i=8
  211. if !right%%i! equ 6 set right%%i=7
  212. if !right%%i! equ 5 set right%%i=6
  213. if !right%%i! equ 4 set right%%i=5
  214. if !right%%i! equ 3 set right%%i=4
  215. if !right%%i! equ 2 set right%%i=3
  216. if !right%%i! equ 1 set right%%i=2
  217. set str=!str!!right%%i!
  218. )
  219. for /l %%i in (1,1,4) do (
  220. set/a w=%%i+1
  221. for /l %%j in (!w!,1,5) do (
  222. if !right%%i! equ !right%%j! (
  223. set e1=!right%%i!
  224. set e2=!right%%j!
  225. goto 4
  226. )
  227. )
  228. )
  229. goto 5
  230. :4
  231. set str=!str:%e1%=0!
  232. set h1=!str:~0,1!
  233. set h2=!str:~1,1!
  234. set h3=!str:~2,1!
  235. set h4=!str:~3,1!
  236. set h5=!str:~4,1!
  237. set box=0
  238. for /l %%i in (1,1,5) do (
  239. if !h%%i! equ 0 set/a box+=1
  240. )
  241. if !box! equ 4 set samefour=1&goto 5
  242. if !box! equ 3 (
  243. set str=!str:0=!
  244. set m=!str:~0,1!
  245. )
  246. ::此时m就有值了,否则m的值不正确!
  247. if !box! equ 3 (
  248. set str=!str:%m%=0!
  249. if !str! equ 00 set hulu=1&goto 5
  250. set samethree=1&goto 5
  251. )
  252. set str=!str:0=!
  253. set g1=!str:~0,1!
  254. set g2=!str:~1,1!
  255. set g3=!str:~2,1!
  256. if !g1! equ !g2! if !g2! equ !g3! set hulu=1&goto 5
  257. for /l %%i in (1,1,2) do (
  258. set/a w=%%i+1
  259. for /l %%j in (!w!,1,3) do (
  260. if !g%%i! equ !g%%j! (
  261. set twocouples=1&goto 5
  262. )
  263. )
  264. )
  265. goto 5
  266. :5
  267. set increase=0
  268. if !samecolor! equ 1 if !bigline! equ 1 set increase=501&goto 6
  269. if !bigline! equ 1 set increase=301&goto 6
  270. if !samecolor! equ 1 if !sameline! equ 1 set increase=101&goto 6
  271. if !sameline! equ 1 set increase=51&goto 6
  272. if !samecolor! equ 1 set increase=31&goto 6
  273. if !samefour! equ 1 set increase=21&goto 6
  274. if !hulu! equ 1 set increase=16&goto 6
  275. if !samethree! equ 1 set increase=11&goto 6
  276. if !twocouples! equ 1 set increase=6&goto 6
  277. :6
  278. if !increase! equ 501 echo 恭喜你,同花大顺!
  279. if !increase! equ 301 echo 恭喜你,大顺!
  280. if !increase! equ 101 echo 恭喜你,同花顺!
  281. if !increase! equ 51 echo 恭喜你,顺子!
  282. if !increase! equ 31 echo 恭喜你,同花!
  283. if !increase! equ 21 echo 恭喜你,四条!
  284. if !increase! equ 16 echo 恭喜你,葫芦!
  285. if !increase! equ 11 echo 恭喜你,三条!
  286. if !increase! equ 6 echo 恭喜你,两对!
  287. if !increase! equ 0 echo 对不起,什么都不是!
  288. pause
  289. set /a mymoney=!mymoney!+(!increase!*!oncemoney!)
  290. if !mymoney! leq 0 echo 输光了吧!还赌神呢,整个一白痴!&pause>nul&goto end
  291. if !mymoney! geq 10000 echo 赌神果然名不虚传,您赢了!&pause>nul&goto end
  292. cls
  293. goto begin
  294. :end
  295. cls
  296. echo 重玩一次?(是/y,否/n)
  297. set/p select=
  298. if !select! equ y goto start
  299. if !select! equ Y goto start
  300. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  301. ::以下是片尾
  302. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  303. mode con lines=13
  304. color 0f
  305. echo.
  306. echo.
  307. echo.
  308. echo.
  309. echo 谢谢使用……
  310. ping -n 2 127.0.0.1>nul
  311. cls
  312. echo.
  313. echo.
  314. echo.
  315. echo.
  316. echo 再见!
  317. ping -n 2 127.0.0.1>nul
  318. exit
  319. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
复制代码

作者: 随风    时间: 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