-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathinput.bat
More file actions
125 lines (122 loc) · 4.4 KB
/
Copy pathinput.bat
File metadata and controls
125 lines (122 loc) · 4.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
REM : Speical thanks to Grub4K for providing this open source code.
REM : Find it here: https://gist.github.com/Grub4K/2d3f5875c488164b44454cbf37deae80
REM : I WAS NOT GIVEN RIGHTS TO USE THIS CODE. IF YOU DO NOT WANT YOUR CODE TO BE USED IN THIS PROJECT, PLEASE CONTACT US.
IF NOT DEFINED VERCODE EXIT
SETLOCAL ENABLEDELAYEDEXPANSION
SET "PROMPT="
SET "SYMBOL="
SET "LENGTH="
SET "ALLOWED="
SET "INVALID==^^^(^)^"*^&?%%^!^|,.^>^</\"
:FLAGS
IF NOT "%~1" == "" (
SET "%~1"
SHIFT
GOTO FLAGS
)
FOR /F %%A IN ('COPY /Z "%COMSPEC%" NUL') DO SET "CR=%%A"
FOR /F %%A IN ('"PROMPT $H&FOR %%B IN (1) DO REM"') DO SET "BS=%%A"
IF NOT DEFINED SYMBOL (
SET "SYMBOL=^!KEY^!"
)
SET "INPUT=."
>CON <NUL SET /P "=.!BS! !BS!!PROMPT!"
:INPUT
SET "KEY="
FOR /F "DELIMS=" %%A IN ('XCOPY /W "!COMSPEC!" "!COMSPEC!" 2^>NUL') DO (
IF NOT DEFINED KEY SET "KEY=%%A^!"
)
IF !KEY:~-1!==^^ (
SET "KEY=^"
) ELSE SET "KEY=!KEY:~-2,1!"
IF !KEY! EQU !BS! (
IF NOT "!INPUT!" == "." (
SET "INPUT=!INPUT:~0,-1!"
<NUL SET /P "=!BS! !BS!" >CON
)
) ELSE IF !KEY! EQU !CR! (
>CON ECHO:
ECHO:!INPUT:~1!
EXIT /B 0
) ELSE (
IF DEFINED LENGTH (
IF "!INPUT:~-%LENGTH%!" NEQ "!INPUT!" (
GOTO INPUT
)
)
FOR %%A IN ("!KEY!") DO (
IF DEFINED ALLOWED (
IF "!ALLOWED:%%~A=!" EQU "!ALLOWED!" (
GOTO INPUT
)
) ELSE (
IF DEFINED INVALID (
IF "!INVALID:%%~A=!" NEQ "!INVALID!" (
GOTO INPUT
)
)
)
SET "INPUT=!INPUT!!KEY!"
>CON <NUL SET /P "=.!BS! !BS!%SYMBOL%"
)
)
REM : The code has been modified from this point and on.
CALL :DETECT-HILIGHT
GOTO INPUT
:DETECT-HILIGHT
IF DEFINED HIGHLIGHT (
>CON <NUL SET /P "=.[u[1D %INPUT:~1%[1;37m [1D"
SET HIGHLIGHT=
)
IF "%INPUT_PART%"=="items" (
IF NOT "%INPUT_TXT%]"=="%INPUT_PART%]" (
>CON <NUL SET /P "=. [13D [1D"
SET INPUT_TXT=%INPUT_PART%
)
IF /I "%INPUT:~1,4%"=="BUY " (
SET "HIGHLIGHT=%RGB.LVL%"
>CON <NUL SET /P "=.[u!HIGHLIGHT!%INPUT:~1,4%%RGB.COIN%%INPUT:~5%[1;37m [1D"
) ELSE IF /I "%INPUT:~1%"=="BUY" CALL :SUPERHIGHTLIGHT %RGB.LVL%
IF /I "%INPUT:~1,5%"=="BOMB " (
SET "HIGHLIGHT=%RGB.LVL%"
>CON <NUL SET /P "=.[u!HIGHLIGHT!%INPUT:~1,5%%RGB.COIN%%INPUT:~6%[1;37m [1D"
) ELSE IF /I "%INPUT:~1%"=="BOMB" CALL :SUPERHIGHTLIGHT %RGB.LVL%
IF /I "%INPUT:~1,5%"=="HEAL " (
SET "HIGHLIGHT=%RGB.LVL%"
>CON <NUL SET /P "=.[u!HIGHLIGHT!%INPUT:~1,5%%RGB.COIN%%INPUT:~6%[1;37m [1D"
) ELSE IF /I "%INPUT:~1%"=="HEAL" CALL :SUPERHIGHTLIGHT %RGB.LVL%
IF /I "%INPUT:~1%"=="SWITCH" CALL :SUPERHIGHTLIGHT %RGB%10;230;235m
IF /I "%INPUT:~1%"=="SKILL" CALL :SUPERHIGHTLIGHT %RGB%10;230;235m
IF /I "%INPUT:~1%"=="CRAFT" CALL :SUPERHIGHTLIGHT %RGB%10;230;235m
IF /I "%INPUT:~1%"=="BACK" CALL :SUPERHIGHTLIGHT %RGB.FALSE%
IF /I "%INPUT:~1%"=="EXIT" CALL :SUPERHIGHTLIGHT %RGB.FALSE%
IF /I "%INPUT:~1%"=="Q" CALL :SUPERHIGHTLIGHT %RGB.FALSE%
) ELSE IF "%INPUT_PART%"=="options" (
IF /I "%INPUT:~1,7%"=="VOLUME " (
SET "HIGHLIGHT=%RGB%187;203;250m"
>CON <NUL SET /P "=.[u!HIGHLIGHT!%INPUT:~1,7%%RGB.COIN%%INPUT:~8%[1;37m [1D"
) ELSE IF /I "%INPUT:~1%"=="VOLUME" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1,4%"=="SFX " (
SET "HIGHLIGHT=%RGB%187;203;250m"
>CON <NUL SET /P "=.[u!HIGHLIGHT!%INPUT:~1,7%%RGB.COIN%%INPUT:~8%[1;37m [1D"
) ELSE IF /I "%INPUT:~1%"=="SFX" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1,6%"=="MUSIC " (
SET "HIGHLIGHT=%RGB%187;203;250m"
>CON <NUL SET /P "=.[u!HIGHLIGHT!%INPUT:~1,6%%RGB.COIN%%INPUT:~7%[1;37m [1D"
) ELSE IF /I "%INPUT:~1%"=="MUSIC" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1%"=="UPDATE" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1%"=="UPDATER" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1%"=="MUSIC" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1%"=="AUDIO" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1%"=="INTRO" CALL :SUPERHIGHTLIGHT %RGB%187;203;250m
IF /I "%INPUT:~1%"=="EXIT" CALL :SUPERHIGHTLIGHT %RGB.FALSE%
IF /I "%INPUT:~1%"=="BACK" CALL :SUPERHIGHTLIGHT %RGB.FALSE%
IF /I "%INPUT:~1%"=="Q" CALL :SUPERHIGHTLIGHT %RGB.FALSE%
IF /I "%INPUT:~1%"=="REFRESH" CALL :SUPERHIGHTLIGHT [1;30m
)
EXIT /B 0
:SUPERHIGHTLIGHT
SET "HIGHLIGHT=%*"
>CON <NUL SET /P "=.[u!HIGHLIGHT!%INPUT:~1%[1;37m%EXTENDED_HIGHLIGHT% [1D"
SET "EXTENDED_HIGHLIGHT="
EXIT /B 0