@ECHO OFF
cls

set Parameters=-console -novid


echo      Welcome to Aperture Laboratiores
echo.	  
Echo.
Echo.

:Game

echo Are you Testing By your Self or with a friend today?
echo.
echo     	1. By myself
echo.
echo     	2. With a Friend (Co-Op)
echo.
echo		Q. Quit	
echo.
set /p Mode=Enter a option:

if %Mode% == 1 goto StartPortal
if %Mode% == 2 goto SelectMode
if %Mode% == Q goto exit
if %Mode% == q goto exit

Echo.
Echo.
Echo.
echo   ERROR: Invalid input, choose 1, 2, or Q
echo.
goto Game


:StartPortal
"C:\Program Files (x86)\Valve\Portal 2\portal2.exe"
goto Exit

:SelectMode
cls
echo.
echo.
echo.
echo What do you wish to do?
echo.
echo     1. Join Game
echo     2. Host Game
echo.
set /p Mode=Enter a option: 

if %Mode% == 1 goto DoJoin
if %Mode% == 2 goto Chapters

echo   ERROR: Invalid input, choose between 1 and 2
echo.
goto SelectMode

:DoJoin
cls
echo.
set /p IP=Enter the host you wish to join (Host:Port): 

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +connect %IP%

goto exit2

:CHAPTERS
cls
echo.
echo.
echo.
echo Please have your friend go to the join screen and enter your IP address
Echo WAIT for them to join after you have selected your chapter & level on the next screen
Echo.
Echo.
Echo.
@echo off
IPCONFIG |FIND "IP" > %temp%\TEMPIP.txt
FOR /F "tokens=2 delims=:" %%a in (%temp%\TEMPIP.txt) do set IP=%%a
del %temp%\TEMPIP.txt
set IP=%IP:~1%
echo %IP% >%temp%\ip.txt
echo Your IP Address is "%IP%"
del %temp%\ip.txt
echo.
echo.
echo.
echo.
pause
cls
echo Please select a Chapter!
echo.				
Echo	CHAPTER 1	CHAPTER 2
ECHO.
ECHO	CHAPTER 3	CHAPTER 4
ECHO.
ECHO	CHAPTER 5	Q - QUIT
ECHO.
ECHO.

echo.				
set /p Mode=Enter a option: 

if %mode% == 1 goto chapter1
if %mode% == 2 goto chapter2
if %mode% == 3 goto chapter3
if %mode% == 4 goto chapter4
if %mode% == 5 goto chapter5
if %mode% == Q goto :game
if %mode% == q goto :game


echo   ERROR: Invalid input, choose between 1 and 5
echo.
goto CHAPTERS

:CHAPTER1
cls
ECHO.
ECHO.
ECHO.
ECHO.
echo Please Select a level 
ECHO.
ECHO.
echo	1. start
echo	2. lobby 2
echo	3. doors
echo	4. race 2
echo	5. laser 2
echo	6. rat maze
echo	7. laser crusher
echo	8. teambts
echo.
echo	Q.  Startover
echo.
echo.
set /p Mode=Enter a option: 

if %mode% == 1 goto level1
if %mode% == 2 goto level2
if %mode% == 3 goto level3
if %mode% == 4 goto level4
if %mode% == 5 goto level5
if %mode% == 6 goto level6
if %mode% == 7 goto level7
if %mode% == 8 goto level8
if %mode% == Q goto chapters
if %mode% == q goto chapters
echo   ERROR: Invalid input, choose between 1 and 8
echo.
goto chapter1

:CHAPTER2
cls
ECHO.
ECHO.
ECHO.
ECHO.
echo Please Select a level 
ECHO.
ECHO.
echo	9. fling 3
echo	10. infinifling train
echo	11. come along
echo	12. fling 1
echo	13. catapult 1
echo	14. multifling 1
echo	15. fling crushers
echo	16. fan
echo.
echo	Q.  Startover
echo.
echo.
set /p Mode=Enter a option: 

if %mode% == 9 goto level9
if %mode% == 10 goto level10
if %mode% == 11	goto level11
if %mode% == 12	goto level12
if %mode% == 13	goto level13
if %mode% == 14	goto level14
if %mode% == 15	goto level15
if %mode% == 16	goto level16
if %mode% == Q goto chapters
if %mode% == q goto chapters

echo   ERROR: Invalid input, choose between 9 and 16
echo.
goto chapter2


:CHAPTER3
cls
ECHO.
ECHO.
ECHO.
ECHO.
echo Please Select a level 
ECHO.
ECHO.
echo	17. wall intro
echo	18. wall 2
echo	19. catapult wall intro
echo	20. wall block
echo	21. catapult 2
echo	22. turret walls
echo	23. turret ball
echo	24. wall 5
echo.
echo	Q.  Startover
echo.
echo.
set /p Mode=Enter a option: 

if %mode% == 17	goto level17
if %mode% == 18	goto level18
if %mode% == 19	goto level19
if %mode% == 20	goto level20
if %mode% == 21	goto level21
if %mode% == 22	goto level22
if %mode% == 23	goto level23
if %mode% == 24	goto level24
if %mode% == Q goto chapters
if %mode% == q goto chapters

echo   ERROR: Invalid input, choose between 17 and 24
echo.
goto chapter3

:CHAPTER4
cls
ECHO.
ECHO.
ECHO.
ECHO.
echo Please Select a level 
ECHO.
ECHO.
echo	25. tbeam redirect
echo	26. tbeam drill
echo	27. tbeam catch grind 1
echo	28. tbeam laser 1
echo	29. tbeam polarity
echo	30. tbeam polarity2
echo	31. tbeam polarity3
echo	32. tbeam maze
echo	33. tbeam end
echo.
echo	Q.  Startover
echo.
echo.
set /p Mode=Enter a option: 

if %mode% == 25	goto level25
if %mode% == 26	goto level26
if %mode% == 27	goto level27
if %mode% == 28	goto level28
if %mode% == 29	goto level29
if %mode% == 30	goto level30
if %mode% == 31	goto level31
if %mode% == 32	goto level32
if %mode% == 33	goto level33
if %mode% == Q goto chapters
if %mode% == q goto chapters

echo   ERROR: Invalid input, choose between 25 and 23
echo.
goto chapter4

:CHAPTER5
cls
ECHO.
ECHO.
ECHO.
ECHO.
echo Please Select a level 
ECHO.
ECHO.
echo	34. paint come along
echo	35. paint redirect
echo	36. paint bridge
echo	37. paint walljumps
echo	38. paint speed fling
echo	39. paint red racer
echo	40. paint speed catch
echo	41. paint longjump intro
echo	42. credits
echo.
echo	Q.  Startover
echo.
echo.
set /p Mode=Enter a option: 

if %mode% == 34	goto level34
if %mode% == 35	goto level35
if %mode% == 36	goto level36
if %mode% == 37	goto level37
if %mode% == 38	goto level38
if %mode% == 39	goto level39
if %mode% == 40	goto level40
if %mode% == 41	goto level41
if %mode% == 42	goto level42
if %mode% == Q goto chapters
if %mode% == q goto chapters

echo   ERROR: Invalid input, choose between 34 and 42
echo.
goto chapter5

:Level1

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_start

goto exit2

:Level2

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_lobby_2

goto exit2

:Level3

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_doors

goto exit2

:Level4

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_race_2

goto exit2

:Level5

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_laser_2

goto exit2

:Level6

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_rat_maze

goto exit2

:Level7

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_laser_crusher

goto exit2

:Level8

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_teambts

goto exit2

:Level9

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_fling_3

goto exit2

:Level10

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_infinifling_train

goto exit2

:Level11

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_come_along

goto exit2

:Level12

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_fling_1

goto exit2

:Level13

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_catapult_1

goto exit2

:Level14

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_multifling_1

goto exit2

:Level15

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_fling_crushers

goto exit2

:Level16

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_fan

goto exit2

:Level17

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_wall_intro

goto exit2

:Level18

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_wall_2

goto exit2

:Level19

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_catapult_wall_intro

goto exit2

:Level20

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_wall_block

goto exit2

:Level21

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_catapult_2

goto exit2

:Level22

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_turret_walls

goto exit2

:Level23

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_turret_ball

goto exit2

:Level24

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_wall_5

goto exit2

:Level25

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_redirect

goto exit2

:Level26

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_drill

goto exit2

:Level27

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_catch_grind_1

goto exit2

:Level28

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_laser_1

goto exit2

:Level29

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_polarity

goto exit2

:Level30

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_polarity2

goto exit2

:Level31

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_polarity3

goto exit2

:Level32

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_maze

goto exit2

:Level33

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_tbeam_end

goto exit2

:Level34

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_come_along

goto exit2

:Level35

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_redirect

goto exit2

:Level36

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_bridge

goto exit2

:Level37

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_walljumps

goto exit2

:Level38

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_speed_fling

goto exit2

:Level39

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_red_racer

goto exit2

:Level40

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_speed_catch

goto exit2

:Level41

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_paint_longjump_intro

goto exit2

:Level42

echo.
set Lan=1

echo.
echo Starting 'portal2.exe' ...

portal2.exe %Parameters% +sv_lan %Lan% +mp_wait_for_other_player_notconnecting_timeout 240 +map mp_coop_credits

goto exit2


:Exit
exit
:Exit2
cls
goto game