|
|
楼主 |
发表于 2014-11-15 22:44:49
|
显示全部楼层
@echo off
title made by 523066680
setlocal enabledelayedexpansion
mode con cols=66 lines=35
for /l %%a in (1,1,60) do (set space= !space!)
for /l %%a in (1,1,30) do (set L%%a=%space%)
set /a line=15,col=29,i=0,long=9
:loop
:::::控制蛇长,判断是否建立食物部分(set /a i+=1)
if %i% lss %long% (set /a i+=1) else (set i=1)
if defined cut%i% (
if not defined dot (call :dot)
!cut%i%:"=!
set "L%a%=!L%a%:~0,%b%! !L%a%:~%c%!"
set "%a%_%b%="
)
:pausego
:::::显示
cls
echo, %space: =_%__
for /l %%a in (1,1,30) do echo,│!L%%a!│
echo, %space: =-%--
echo,- 分数:%fen%00 %echo%
for /l %%a in (1,1,1) do (ping -n 1 127.0>nul)
::::::句2描点,3记录点坐标并加以编号,4定义该点是存在的,5判断吃到食物否.
set /a C2=col+1
set "L%line%=!L%line%:~0,%col%!*!L%line%:~%C2%!"
set cut%i%="set /a a=%line%,b=%col%,c=%C2%"
set "%line%_%col%=exist"
if "%line%_%col%"=="%dotl%_%dotc%" (set /a long+=3,fen+=1 &set dot=)
goto :loop
::::::建立食物O的调用部分
:dot
set /a dotl=%random%%%28+2,dotc=%random%%%58+1
if defined %dotl%_%dotc% (goto :dot)
set dot=%dotl%_%dotc%
set /a dotc2=dotc+1
set "L%dotl%=!L%dotl%:~0,%dotc%!0!L%dotl%:~%dotc2%!"
goto :eof
:loop
set /a linenext=%random%%%30+1,colnext=%random%%%60
for %%a in (line col) do (
if !%%a! lss !%%anext! (set %%aadd=+) else (set %%aadd=-)
)
:loop-1
::控制蛇身的长度
if %i% lss 8 (set /a i+=1) else (set i=1)
if defined cut%i% (
!cut%i%:"=!
::!回收收*号!
set "L%a%=!L%a%:~0,%b%! !L%a%:~%c%!"
)
set /a C2=col+1
set "L%line%=!L%line%:~0,%col%!*!L%line%:~%C2%!"
set cut%i%="set /a a=%line%,b=%col%,c=%C2%"
cls
for /l %%a in (1,1,30) do echo,!L%%a!
::*号走一步的速度
for /l %%a in (1,1,200) do (echo,>nul)
if %line% neq %linenext% (
set /a line%lineadd%=1
) else (
set /a col%coladd%=1
)
if %col% neq %colnext% (goto :loop-1)
goto :loop
大神呢 来来 帮忙 怎么吃一个就不出现第二个了 还有分数怎么也不增加啊??? |
|