Загрузить файлы в «windows/bat/flappybird»
This commit is contained in:
@@ -0,0 +1,261 @@
|
||||
@echo off
|
||||
setlocal EnableDelayedExpansion
|
||||
chcp 65001> nul
|
||||
|
||||
:beep
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_beep )
|
||||
echo BA | choice /c A> nul
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_beep
|
||||
|
||||
:pause
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_pause )
|
||||
pause> nul
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_pause
|
||||
|
||||
:choice
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_choice )
|
||||
choice /c %~1> nul
|
||||
set /a "%~2=!ERRORLEVEL!-1"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_choice
|
||||
|
||||
:read_key
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_read_key )
|
||||
if not exist "%temp%\readkey.exe" (
|
||||
set "nf_path=%windir%\Microsoft.NET\Framework"
|
||||
for /f %%i in ('dir /b /a:d /o:-n "!nf_path!"') do (
|
||||
set "nf_ver=%%i"
|
||||
goto got_nf_ver
|
||||
)
|
||||
:got_nf_ver
|
||||
set "csc=!nf_path!\!nf_ver!\csc.exe"
|
||||
echo using System;namespace _{class _{public static void Main^(string[] args^){if^(args[0]^^!="0"^){System.Threading.Tasks.Task.Run^(^(^)=^>{System.Threading.Thread.Sleep^(int.Parse^(args[0]^)^);Console.Write^(args[1]^);Environment.Exit^(0^);}^);};Console.Write^(Console.ReadKey^(true^).Key.ToString^(^)^);}}}> "%temp%\readkey.cs"
|
||||
"!csc!" /nologo "/out:%temp%\readkey.exe" "%temp%\readkey.cs"
|
||||
)
|
||||
for /f "tokens=*" %%i in ('"%temp%\readkey.exe" %~1 %~2') do set "%~3=%%i"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_read_key
|
||||
|
||||
:set_size
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_set_size )
|
||||
mode con cols=%~1 lines=%~2
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_set_size
|
||||
|
||||
:set_title
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_set_title )
|
||||
title %~1
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_set_title
|
||||
|
||||
:echo
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_echo )
|
||||
echo;%~1
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_echo
|
||||
|
||||
:printf
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_printf )
|
||||
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_printf
|
||||
|
||||
:delay
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_delay )
|
||||
if not exist "%temp%\del.js" (
|
||||
echo WScript.Sleep^(WScript.Arguments^(0^)^);> "%temp%\del.js"
|
||||
)
|
||||
cscript //nologo "%temp%\del.js" %~1
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_delay
|
||||
|
||||
:pow
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_pow )
|
||||
set "str=%~1"
|
||||
for /l %%i in (2,1,%~2) do (
|
||||
set "str=!str! * %~1"
|
||||
)
|
||||
set /a "%~3=!str!"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_pow
|
||||
|
||||
:random
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_random )
|
||||
set /a "%~3=%~1 + %random% %% (%~2 - %~1)"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_random
|
||||
|
||||
:is_number_prime
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_is_number_prime )
|
||||
if %~1 leq 1 (
|
||||
set "%~2=-1"
|
||||
goto :eof
|
||||
)
|
||||
|
||||
if %~1==2 (
|
||||
set "%~2=0"
|
||||
goto :eof
|
||||
)
|
||||
|
||||
set /a _PfhRdksThgGU7SB6uCE4=%~1-1
|
||||
for /l %%i in (2,1,!_PfhRdksThgGU7SB6uCE4!) do (
|
||||
set /a res=%~1 %% %%i
|
||||
if !res!==0 (
|
||||
set "%~2=0"
|
||||
goto :eof
|
||||
)
|
||||
)
|
||||
|
||||
set "%~2=1"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_is_number_prime
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
:get_cell
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_get_cell )
|
||||
set "%~3=!map[%~2][%~1]!"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_get_cell
|
||||
|
||||
:set_cell
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_set_cell )
|
||||
set "map[%~2][%~1]=%~3"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_set_cell
|
||||
|
||||
rem function draw_map()
|
||||
set /a _BjCMVGGvFMZyNXeDn7SU=15-1
|
||||
rem for /l %%i in (0,1,!_BjCMVGGvFMZyNXeDn7SU!) do (
|
||||
rem set "txt="
|
||||
set /a _ii5NEXWfGzLLFgUpdU6W=50-1
|
||||
rem for /l %%j in (0,1,!_ii5NEXWfGzLLFgUpdU6W!) do (
|
||||
rem set "txt=!txt!!map[%%i][%%j]!"
|
||||
rem )
|
||||
rem echo.!txt!
|
||||
rem )
|
||||
rem end function
|
||||
|
||||
:draw_map
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_draw_map )
|
||||
set i=0
|
||||
set j=0
|
||||
set /a mh=15-1
|
||||
set /a mw=50-1
|
||||
|
||||
:_dm_loop_y
|
||||
set "txt="
|
||||
:_dm_loop_x
|
||||
pause>nul
|
||||
call set txt=%txt%%%map[%i%][%j%]%%
|
||||
set /a j+=1
|
||||
if %j% lss %mw% goto _dm_loop_x
|
||||
title %j% %i%
|
||||
set /a i+=1
|
||||
if %i% lss %mh% goto _dm_loop_y
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_draw_map
|
||||
|
||||
:move_cell
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_move_cell )
|
||||
call :get_cell iKPv4R2cuLsTyHv6OKbV %~1 %~2 _cell_val
|
||||
call :set_cell iKPv4R2cuLsTyHv6OKbV %~1 %~2 " "
|
||||
call :set_cell iKPv4R2cuLsTyHv6OKbV %~3 %~4 %_cell_val%
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_move_cell
|
||||
|
||||
:draw_player
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_draw_player )
|
||||
call :set_cell iKPv4R2cuLsTyHv6OKbV !player_x! !player_y! "●"
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_draw_player
|
||||
|
||||
:create_pipe
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_create_pipe )
|
||||
set /a _d7OVHSGjy7TxuuWcoyH7=%~2-3
|
||||
for /l %%i in (0,1,!_d7OVHSGjy7TxuuWcoyH7!) do (
|
||||
set /a _ukpQANtqDykSB50kUjGw=15-1-%%i
|
||||
call :set_cell iKPv4R2cuLsTyHv6OKbV %~1 !_ukpQANtqDykSB50kUjGw! "%~3"
|
||||
)
|
||||
set /a _RwrIfYaUK1AoM8l2S8V3=15-%~2-3
|
||||
for /l %%i in (0,1,!_RwrIfYaUK1AoM8l2S8V3!) do (
|
||||
call :set_cell iKPv4R2cuLsTyHv6OKbV %~1 %%i "%~3"
|
||||
)
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_create_pipe
|
||||
|
||||
:create_pipes
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_create_pipes )
|
||||
for /l %%i in (1,1,4) do (
|
||||
set /a _iZg9XAvy4vIFsVq83hul=15-3
|
||||
call :random iKPv4R2cuLsTyHv6OKbV 0 !_iZg9XAvy4vIFsVq83hul! pipe%%i_val
|
||||
)
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_create_pipes
|
||||
|
||||
:move_pipes
|
||||
if "%~1"=="iKPv4R2cuLsTyHv6OKbV" ( shift /1 ) else ( goto _GAy9L3CwYDa531In9pst_end_move_pipes )
|
||||
for /l %%i in (1,1,4) do (
|
||||
set /a _wYfLy6FDU7SWOMN1Prue=10*%%i-!pipe_offset!
|
||||
call :create_pipe iKPv4R2cuLsTyHv6OKbV !_wYfLy6FDU7SWOMN1Prue! !pipe%%i_val! " "
|
||||
set /a _nmaZs561Sn9vNtGJ3ULb=10*%%i-!pipe_offset!-%~1
|
||||
call :create_pipe iKPv4R2cuLsTyHv6OKbV !_nmaZs561Sn9vNtGJ3ULb! !pipe%%i_val! "█"
|
||||
)
|
||||
set /a pipe_offset+=%~1
|
||||
goto :eof
|
||||
:_GAy9L3CwYDa531In9pst_end_move_pipes
|
||||
|
||||
title Flappy Bird
|
||||
|
||||
set /a _5re6cw0fHysLwP8K8Gd2=15+2
|
||||
call :set_size iKPv4R2cuLsTyHv6OKbV 50 !_5re6cw0fHysLwP8K8Gd2!
|
||||
|
||||
for /l %%i in (0,1,15) do (
|
||||
for /l %%j in (0,1,50) do (
|
||||
set "map[%%i][%%j]= "
|
||||
)
|
||||
)
|
||||
|
||||
set player_x=2
|
||||
set player_y=7
|
||||
set pipe_offset=0
|
||||
|
||||
call :create_pipes iKPv4R2cuLsTyHv6OKbV
|
||||
|
||||
:game_loop
|
||||
rem read key
|
||||
rem read_key(3, "no_key", out key)
|
||||
rem if(%key% == Spacebar)
|
||||
rem rem jump
|
||||
rem set_cell(%player_x%, %player_y%, " ")
|
||||
rem set /a player_y-=2
|
||||
rem draw_player()
|
||||
rem end if
|
||||
|
||||
rem gravity
|
||||
set /a _9Ovq7hIfFD84gTj5He66=%player_y%+1
|
||||
call :get_cell iKPv4R2cuLsTyHv6OKbV %player_x% !_9Ovq7hIfFD84gTj5He66! pc_val
|
||||
set /a _Faud5y98v6Lx1Tbr6y85=15-1
|
||||
if "%pc_val%" equ " " if %player_y% lss !_Faud5y98v6Lx1Tbr6y85! (
|
||||
call :set_cell iKPv4R2cuLsTyHv6OKbV %player_x% %player_y% " "
|
||||
set /a player_y+=1
|
||||
)
|
||||
call :draw_player iKPv4R2cuLsTyHv6OKbV
|
||||
|
||||
for /l %%i in (1,1,4) do (
|
||||
set /a _oVaD0xpcpCCeJgxjeRuJ=10*%%i-!pipe_offset!
|
||||
call :create_pipe iKPv4R2cuLsTyHv6OKbV !_oVaD0xpcpCCeJgxjeRuJ! !pipe%%i_val! " "
|
||||
set /a _iJtJ2KDN229TfBStAqnI=10*%%i-!pipe_offset!-1
|
||||
call :create_pipe iKPv4R2cuLsTyHv6OKbV !_iJtJ2KDN229TfBStAqnI! !pipe%%i_val! "█"
|
||||
)
|
||||
set /a pipe_offset+=1
|
||||
|
||||
rem redraw map
|
||||
cls
|
||||
call :draw_map iKPv4R2cuLsTyHv6OKbV
|
||||
goto game_loop
|
||||
Reference in New Issue
Block a user