Advertisement
LuizFelipe

Jogo de corrida

May 9th, 2015
367
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 15.71 KB | None | 0 0
  1. @echo off
  2. color 0C
  3. mode 20,16
  4. set pos=4
  5. set tempo=0
  6. set op=0
  7. set oc=0
  8. set ov=1
  9. set o=0
  10. set debug=0
  11. setlocal enableextensions enabledelayedexpansion
  12. if not exist "%temp%\draw.exe" call :Arquivohex
  13. set draw=%temp%\draw.exe
  14.  
  15. ::Tela do jogo
  16. %draw% 0 0 02 " Û               Û"
  17. %draw% 0 1 02 " Û               Û"
  18. %draw% 0 2 02 " Û               Û"
  19. %draw% 0 3 02 " Û               Û"
  20. %draw% 0 4 02 " Û               Û"
  21. %draw% 0 5 02 " Û               Û"
  22. %draw% 0 6 02 " Û               Û"
  23. %draw% 0 7 02 " Û               Û"
  24. %draw% 0 8 02 " Û               Û"
  25. %draw% 0 9 02 " Û               Û"
  26. %draw% 0 10 02 " Û               Û"
  27. %draw% 0 11 02 " Û               Û"
  28. %draw% 0 12 02 " Û               Û"
  29. %draw% 0 13 02 " Û               Û"
  30. %draw% 0 14 02 " Û               Û"
  31. call :carro
  32. :i
  33. set /a tempo+=1
  34. if %tempo%==30 set ov=2
  35. if %tempo%==60 set ov=3
  36. if %tempo%==120 set ov=4
  37.  
  38. choice /C "0DA" /T 1 /D "0" /N >nul
  39.  
  40. if %errorlevel%==2 (
  41.     set /a pos+=1
  42.     set tecla=d
  43.     call :carro
  44. )
  45. if %errorlevel%==3 (
  46.     set /a pos-=1
  47.     set tecla=a
  48.     call :carro
  49. )
  50. if "%o%"=="0" (
  51.     set tt=%RANDOM:~-1%
  52.     if /i "%tt%" GTR "6" (
  53.         set o=1
  54.         set oc=1
  55.         set op=%RANDOM:~-1%
  56.     )
  57. ) else (
  58.     set /a oop=%op%+3
  59.     %draw% !oop! %oc% 00 "     "
  60.     set /a oc +=%ov%
  61.     if /i !oc! GTR 15 set oc=15
  62.     %draw% !oop! !oc! C4 "ÛÛÛÛÛ"
  63.     if /i !oc! GEQ 10 (
  64.         set /a ppp=!pos!+2
  65.         if /i !op! LEQ !ppp! (
  66.             if "%debug%"=="1" ( %draw% 0 0 0F "." )
  67.             set oop=!op!
  68.             if !oop!==1 set oop=2
  69.             set /a ppp=!pos!+1 - !oop!/2
  70.             if /i !ppp! LSS 5 ( goto gOver )
  71.         ) else (
  72.             if "%debug%"=="1" ( %draw% 0 0 0C "." )
  73.         )
  74.         %draw% !oop! !oc! 00 "     "
  75.         set oc=0
  76.         set op=0
  77.         set o=0
  78.     )
  79. )
  80. %draw% 1 15 0F "Score: %tempo%"
  81. if "%debug%"=="1" ( %draw% 11 15 0F "%pos%-%op%)%ppp%" )
  82.  
  83. goto i
  84.  
  85. :carro
  86. if /i %pos% GTR 7 set pos=7
  87. if /i %pos% LSS 1 set pos=1
  88. set /a pp=%pos%*2
  89. %draw% %pp% 10 09 "ÛÛÛ"
  90. %draw% %pp% 11 09 " Û "
  91. %draw% %pp% 12 09 "ÛÛÛ"
  92. if "%tecla%"=="a" ( set /a pp+=3 ) else ( set /a pp-=2 )
  93. %draw% %pp% 10 00 "  "
  94. %draw% %pp% 11 00 "  "
  95. %draw% %pp% 12 00 "  "
  96. goto :eof
  97.  
  98.  
  99. :gOver
  100. cls
  101. echo     GAME OVER
  102. echo.
  103. echo.
  104. echo Score: %tempo%
  105. echo.
  106. echo.
  107. echo   R: Recomecar.
  108. echo   S: Sair.
  109. :goverOpt
  110. call :tecla
  111. if "%tecla%"=="r"  call "%0"
  112. if "%tecla%"=="s"  goto :eof
  113. goto goverOpt
  114.  
  115. :tecla
  116. set tecla=
  117. for /f "delims=" %%. In ('xcopy /w "%~f0" "%~f0" 2^>nul') do if not defined tecla set "tecla=%%."
  118. set "tecla=%tecla:~-1%"
  119. goto:eof
  120.  
  121.  
  122. :Arquivohex
  123. pushd "!temp!"
  124. (
  125. echo On Error Resume Next
  126. echo Set ReBin = CreateObject^("Scripting.FileSystemObject"^).OpenTextFile^("draw.exe", 2, True^)
  127. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000504500004C010300F97452550000000000000000E00002010B010B00000C00000008000000000000CE2A0000002000000040000000004000002000000002000004000000000000000400000000000000008000000002000000000000030040850000100000100000000010000010000000000000100000000000000000000000",x,2^)^)^) : Next
  128. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("782A000053000000004000005005000000000000000000000000000000000000006000000C000000402900001C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000080000000000000000000000082000004800000000000000000000002E74657874000000D40A000000200000000C000000020000000000000000000000000000200000602E72737263000000500500000040000000060000000E0000000000000000000000000000400000402E72656C6F6300000C0000000060000000020000001400000000000000000000000000004000004200000000000000000000000000000000",x,2^)^)^) : Next
  129. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("B02A000000000000480000000200050058220000E806000003000000010000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000330030057000000000000000002169A280F00000A281000000A0002179A280F00000A281100000A0002189A16176F1200000A2802000006281300000A0002189A17176F1200000A2802000006281400000A0002199A281500000A00281600000A002A00133002008E0100000100001100160A027201000070281700000A16FE010C082D0400160A00027205000070281700000A16FE010C082D0400170A00027209000070281700000A16FE010C082D",x,2^)^)^) : Next
  130. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("0400180A0002720D000070281700000A16FE010C082D0400190A00027211000070281700000A16FE010C082D04001A0A00027215000070281700000A16FE010C082D04001B0A00027219000070281700000A16FE010C082D04001C0A0002721D000070281700000A16FE010C082D04001D0A00027221000070281700000A16FE010C082D04001E0A00027225000070281700000A16FE010C082D05001F090A00026F1800000A7229000070281700000A16FE010C082D05001F0A0A00026F1800000A722D000070281700000A16FE010C082D05001F0B0A00026F1800000A7231000070281700000A16FE010C082D05001F0C0A00026F1800000A723500007028",x,2^)^)^) : Next
  131. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("1700000A16FE010C082D05001F0D0A00026F1800000A7239000070281700000A16FE010C082D05001F0E0A00026F1800000A723D000070281700000A16FE010C082D05001F0F0A00060B2B00072A1E02281900000A2A000042534A4201000100000000000C00000076342E302E33303331390000000005006C00000020020000237E00008C020000EC02000023537472696E677300000000780500004400000023555300BC050000100000002347554944000000CC0500001C01000023426C6F620000000000000002000001471502000900000000FA2533001600000100000014000000020000000300000002000000190000000C0000000100000001000000",x,2^)^)^) : Next
  132. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("0100000000000A0001000000000006003000290006003C00290006007A0060000600A50093000600BC0093000600D90093000600F800930006001101930006002A0193000600450193000600600193000600980179010600AC0193000600D801C5013B00EC01000006001B02FB0106003B02FB0106005902290006006902290006008E02290000000000010000000000010001000000100013001B00050001000100502000000000960037000A000100B4200000000096004900100002004E22000000008618530016000300000001005900000001005E00190053001A00210053001A00290053001A00310053001A00390053001A00410053001A0049005300",x,2^)^)^) : Next
  133. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("1A00510053001A00590053001A00610053001F00690053001A00710053002400810053002A00890053001600910061022F00990071023400990080023400A1009502390099009F023F009900B3023F009900C70245009900CD024A00A100D8024E00A100E40254000900530016002E000B0060002E001300C6002E001B00D0002E002300D0002E002B00D0002E003300C6002E003B00D6002E004300D0002E005300D0002E006300EA002E006B00F3002E007300FC0058000480000001000000EA1524840000000000001B00000004000000000000000000000001002000000000000000003C4D6F64756C653E00647261772E6578650050726F6772616D0064",x,2^)^)^) : Next
  134. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("726177006D73636F726C69620053797374656D004F626A656374004D61696E00436F6E736F6C65436F6C6F7200636F6E766572746572002E63746F72006172677300630053797374656D2E52756E74696D652E56657273696F6E696E67005461726765744672616D65776F726B4174747269627574650053797374656D2E5265666C656374696F6E00417373656D626C795469746C6541747472696275746500417373656D626C794465736372697074696F6E41747472696275746500417373656D626C79436F6E66696775726174696F6E41747472696275746500417373656D626C79436F6D70616E7941747472696275746500417373656D626C7950726F",x,2^)^)^) : Next
  135. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("6475637441747472696275746500417373656D626C79436F7079726967687441747472696275746500417373656D626C7954726164656D61726B41747472696275746500417373656D626C7943756C747572654174747269627574650053797374656D2E52756E74696D652E496E7465726F70536572766963657300436F6D56697369626C6541747472696275746500417373656D626C7956657273696F6E4174747269627574650053797374656D2E446961676E6F73746963730044656275676761626C6541747472696275746500446562756767696E674D6F6465730053797374656D2E52756E74696D652E436F6D70696C657253657276696365730043",x,2^)^)^) : Next
  136. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("6F6D70696C6174696F6E52656C61786174696F6E734174747269627574650052756E74696D65436F6D7061746962696C69747941747472696275746500436F6E7665727400546F496E74333200436F6E736F6C65007365745F437572736F724C656674007365745F437572736F72546F7000537472696E6700537562737472696E67007365745F4261636B67726F756E64436F6C6F72007365745F466F726567726F756E64436F6C6F72005772697465005265736574436F6C6F72006F705F457175616C69747900546F4C6F77657200000330000003310000033200000333000003340000033500000336000003370000033800000339000003610000036200",x,2^)^)^) : Next
  137. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("00036300000364000003650000036600000000003DC62DB605CF534E8B1D17F1CFBBD5C50008B77A5C561934E089050001011D0E05000111090E03200001042001010E042001010205200101113D0420010108040001080E04000101080520020E0808050001011109040001010E03000001050002020E0E0320000E0707031109110902650100292E4E45544672616D65776F726B2C56657273696F6E3D76342E302C50726F66696C653D436C69656E740100540E144672616D65776F726B446973706C61794E616D651F2E4E4554204672616D65776F726B203420436C69656E742050726F66696C65090100046472617700000501000000001301000E436F",x,2^)^)^) : Next
  138. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("70797269676874203230313500000801000701000000000801000800000000001E01000100540216577261704E6F6E457863657074696F6E5468726F7773010000000000F974525500000000020000001C0100005C2900005C0B000052534453DCB8B49A2E58A6448B54B12E9DE9B8640B000000643A5C55736572735C46656C6970655C446F63756D656E74735C5368617270446576656C6F702050726F6A656374735C647261775C6F626A5C44656275675C647261772E706462000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",x,2^)^)^) : Next
  139. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000A02A00000000000000000000BE2A0000002000000000000000000000000000000000000000000000B02A000000000000000000000000000000005F436F724578654D61696E006D73636F7265652E646C6C0000000000FF25002040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",x,2^)^)^) : Next
  140. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",x,2^)^)^) : Next
  141. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("0000000000000000000000000000020010000000200000801800000038000080000000000000000000000000000001000100000050000080000000000000000000000000000001000100000068000080000000000000000000000000000001000000000080000000000000000000000000000000000001000000000090000000A0400000BC020000000000000000000060430000EA0100000000000000000000BC0234000000560053005F00560045005200530049004F004E005F0049004E0046004F0000000000BD04EFFE00000100000001002484EA15000001002484EA153F00000000000000040000000100000000000000000000000000000044000000",x,2^)^)^) : Next
  142. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("0100560061007200460069006C00650049006E0066006F00000000002400040000005400720061006E0073006C006100740069006F006E00000000000000B0041C020000010053007400720069006E006700460069006C00650049006E0066006F000000F80100000100300030003000300030003400620030000000340005000100460069006C0065004400650073006300720069007000740069006F006E000000000064007200610077000000000040000F000100460069006C006500560065007200730069006F006E000000000031002E0030002E0035003600310030002E00330033003800320038000000000034000900010049006E00740065007200",x,2^)^)^) : Next
  143. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("6E0061006C004E0061006D006500000064007200610077002E006500780065000000000044000F0001004C006500670061006C0043006F007000790072006900670068007400000043006F00700079007200690067006800740020003200300031003500000000003C00090001004F0072006900670069006E0061006C00460069006C0065006E0061006D006500000064007200610077002E00650078006500000000002C0005000100500072006F0064007500630074004E0061006D0065000000000064007200610077000000000044000F000100500072006F006400750063007400560065007200730069006F006E00000031002E0030002E0035003600",x,2^)^)^) : Next
  144. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("310030002E00330033003800320038000000000048000F00010041007300730065006D0062006C0079002000560065007200730069006F006E00000031002E0030002E0035003600310030002E00330033003800320038000000000000000000EFBBBF3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554462D3822207374616E64616C6F6E653D22796573223F3E0D0A3C617373656D626C7920786D6C6E733D2275726E3A736368656D61732D6D6963726F736F66742D636F6D3A61736D2E763122206D616E696665737456657273696F6E3D22312E30223E0D0A20203C617373656D626C794964656E74697479207665727369",x,2^)^)^) : Next
  145. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("6F6E3D22312E302E302E3022206E616D653D224D794170706C69636174696F6E2E617070222F3E0D0A20203C7472757374496E666F20786D6C6E733D2275726E3A736368656D61732D6D6963726F736F66742D636F6D3A61736D2E7632223E0D0A202020203C73656375726974793E0D0A2020202020203C72657175657374656450726976696C6567657320786D6C6E733D2275726E3A736368656D61732D6D6963726F736F66742D636F6D3A61736D2E7633223E0D0A20202020202020203C726571756573746564457865637574696F6E4C6576656C206C6576656C3D226173496E766F6B6572222075694163636573733D2266616C7365222F3E0D0A2020",x,2^)^)^) : Next
  146. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("202020203C2F72657175657374656450726976696C656765733E0D0A202020203C2F73656375726974793E0D0A20203C2F7472757374496E666F3E0D0A3C2F617373656D626C793E0D0A0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",x,2^)^)^) : Next
  147. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("002000000C000000D03A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",x,2^)^)^) : Next
  148. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",x,2^)^)^) : Next
  149. echo For x = 1 To 511 Step 2 : ReBin.Write Chr^(Clng("&H" ^& Mid^("",x,2^)^)^) : Next
  150. echo ReBin.Close
  151. )>"%tmp%\Arquivotemp.vbs"
  152. CScript "%tmp%\Arquivotemp.vbs" //nologo
  153. Del "%tmp%\Arquivotemp.vbs" 2>&1
  154. popd
  155. Exit/b
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement