[Batch Game] The Pair Game - by SmartGenius

Iniciado por SmartGenius, 1 Agosto 2010, 01:00 AM

0 Miembros y 1 Visitante están viendo este tema.

SmartGenius

Batch Game - The Pair Game - by SmartGenius


Descargar -->> http://smart.code-makers.net/BatchGames/ThePairGameBySmartgenius.zip

Este es un pequeño Juego Batch que he diseñado, usando el comando COLOUS de Bolivianito, y cuyo objetivo es hacer parejas de objetos, es un juego clasico ya conocido, interactuan con el mouse dando click en a ficha a descubrir, te da 10 puntos por acierto en una pareja y quita 5 puntos al desacertar.

@Echo Off
@Title The Pair Game
@Mode Con Cols=30 Lines=12

Setlocal Enabledelayedexpansion
Color 0a
Colous Cursoroff

::Batch Game - The Pair Game
::Coded by SmartGenius
::Using COLOUS command from Bolivianito
::SmartGenius, Corp. 2010

:Load
Call :GenSymbols
Call :InitVars

:Init
Cls
Echo.
Echo. ÚÄÂÄÂÄÂÄÂÄÂÄ¿
Echo. ³°³°³°³°³°³°³ Puntaje:%Points%
Echo. ÃÄÅÄÅÄÅÄÅÄÅÄ´
Echo. ³°³°³°³°³°³°³
Echo. ÃÄÅÄÅÄÅÄÅÄÅÄ´
Echo. ³°³°³°³°³°³°³
Echo. ÃÄÅÄÅÄÅÄÅÄÅÄ´
Echo. ³°³°³°³°³°³°³
Echo. ÀÄÁÄÁÄÁÄÁÄÁÄÙ
Echo.

:Coord
Set /a "R+=1"
For /f "tokens=*" %%a in ('Colous Mouse') do (Call :Check %%a)
Colous 14 8 24,3 "!Points!  "
If "%Pairs%"=="12" (
Colous 14 8 16,6 "You Win, press"
Colous 14 8 16,7 "  any key to"
Colous 14 8 16,8 " restart game"
Pause >nul
Goto :Load
)
Goto :Coord

:Check
For /l %%X in (3,2,13) do (
For /l %%Y in (3,2,9) do (
If Defined O_%~2_%~3 (Goto :Eof)
If "%~2 %~3"=="%%X %%Y" (
Colous 12 8 %2,%3 !V_%~2_%~3!
If Not Defined Sel_1 (
Set "Sel_1=!V_%~2_%~3!"
Set "Pos_1=%~2,%~3"
Goto :Eof
)
If Not Defined Sel_2 (
Set "Sel_2=!V_%~2_%~3!"
Set "Pos_2=%~2,%~3"
)
If Not "!Sel_1!"=="!Sel_2!" (
Set /a "Points-=5"
Ping -n 2 localhost >nul
Colous 10 8 !Pos_1! $176
Colous 10 8 !Pos_2! $176
Set "Sel_1="
Set "Sel_2="
Goto :Eof
) else (
Set /a "Points+=10"
Set /a "Pairs+=1"
Ping -n 2 localhost >nul
Colous 0 8 !Pos_1! $219
Colous 0 8 !Pos_2! $219
Set "Sel_1="
Set "Sel_2="
Call :Def !Pos_1! !Pos_2!
Goto :Eof
))))
Goto :Eof

:Def
If "%~1"=="" Goto :Eof
Set "O_%~1_%~2=Nul"
Shift&Shift
Goto :Def

:GenSymbols
Set "Symbols=$001,$002,$003,$004,$005,$006,$011,$012,$014,$015,$020,$021"
For %%S in (%Symbols%) do (
Set /a "S+=1"
Set "Symbol_!S!=%%S"
)
Goto :Eof

:InitVars
For /l %%X in (3,2,13) do (
For /l %%Y in (3,2,9) do (
Call :Generate "%%X" "%%Y"
Set "O_%%X_%%Y="
))
Set /a "Points=0","Pairs=0"
Goto :Eof

:Generate
Set /a "RX=(!Random! %% 12)+1"
If Defined Sym_%RX% (Goto :Generate)
If Not Defined S1_%RX% (
Set "V_%~1_%~2=!Symbol_%RX%!"
Set "S1_%RX%=Nul"
Goto :Eof
)
If Not Defined S2_%RX% (
Set "V_%~1_%~2=!Symbol_%RX%!"
Set "S2_%RX%=Nul"
Goto :Eof
)
Set "Sym_%RX%=Nul"
Goto :Generate


Espero sea de su agrado, y cualquier duda o comentario favor hacerlos !

Saludos. :D


FerJGS

A cascala!!! este tampoco me funciona, tengo un ordenador de *****...jejej

ApOkAlizE

No me funciona, me dice no se que de que el comando interno "Colouse" no lo reconoce.
Los virus informaticos son como las personas, hacen lo posible para destruir y hacen lo impossible para no ser destruidos... - ApOkAlizE

criskapunk

Cita de: ApOkAlizE en  5 Agosto 2010, 02:28 AM
No me funciona, me dice no se que de que el comando interno "Colouse" no lo reconoce.

Hay que descargar el zip que puso SmartGenius en el post, que viene con el comando colous.exe. Una vez que esten los dos en el mismo directorio lo vas a poder ejecutar sin problemas.

Respecto al juego, la verdad excelente Smart, muy bueno! ;-)

Un saludo ;)

fary

Buena aplicacion, va a dar de si el comando de BOlivianito :D

salu2!
Un byte a la izquierda.

DA KILLER

Tiene un bug XD



Si hacen repetidos clicks sobre una figura el programa interpreta que se formó un par

Y otro error es que al terminar (creo que por el uso del colous) el script no detecta el pause >nul y por ende no va a "load"

Por todo lo demás me quito el sombrero  ;-) ;-) ;-) ;-) ;-)

SaluDOS
.: DA KILLER :.