-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathRGB-Kaleidoscope-Blended-Pixel-fake.bat
119 lines (91 loc) · 5 KB
/
RGB-Kaleidoscope-Blended-Pixel-fake.bat
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
@echo off
cmdwiz setfont 6 & cls & cmdwiz showcursor 0 & title Kaleidoscope
:: disable maximize button, disable resizing of window
cmdwiz setwindowstyle clear standard 0x00010000L
cmdwiz setwindowstyle clear standard 0x00040000L
if defined __ goto :START
set __=.
start cmd /c %0 BKGWIN
if "%~1"=="BKGWIN" goto :START
cmdgfx_input.exe knW13xR | call %0 %* | cmdgfx_RGB "" Sfa:0,0,660,110,130,72Et4
set __=
cls
cmdwiz setfont 6 & cmdwiz showcursor 1 & mode 80,50
cmdwiz setwindowstyle set standard 0x00010000L
cmdwiz setwindowstyle set standard 0x00040000L
goto :eof
:START
setlocal ENABLEDELAYEDEXPANSION
set /a W=65*2, H=36*2
set /a F6W=W/2, F6H=H/2
mode %F6W%,%F6H%
for /F "Tokens=1 delims==" %%v in ('set') do if not %%v==H if not %%v==W set "%%v="
call centerwindow.bat 0 -16
set /a WW=W*2, WWW=W*3
set /a OW=W*4,OH=H*6
if "%~1"=="BKGWIN" cmdgfx_RGB "image img/6hld.bmp 0 0 db -1 0,0 0 0 !OW!,!OH!" fa:0,0,!OW!,!OH!K & goto :eof
cmdwiz setwindowtransparency 39
title
set /a XMID=W/2, YMID=H/2, DIST=2100, TRIDIST=7000, DRAWMODE=0, MODE=0, XMID2=WW+XMID
set /a CRX=0,CRY=0,CRZ=0
set ASPECT=0.6665
set /a S1=66, S2=12, S3=30, TRINUM=0
set FN0=objects\tri%TRINUM%.obj
set FN1=objects\tri-FS-%TRINUM%.obj
set FN2=objects\tri-FS2-%TRINUM%.obj
set FN=%FN0%
set /a A1=155, A2=0, A3=0, CNT=0
set /a TRANSP=0, TV=-1
set /a MONO=0 & set MONS=
set /a LIGHT=0, LTIME=990
set /a MODE=0, TV=0, TRANSP=1, CUPOS=35, CUPOS2=CUPOS+WW
set /a CS=0,CCNT=0,C0=8,C1=7,CDIV=6,CW=0 & set /a CEND=2*!CDIV! & set C2=f&set C3=f&set C4=f
set /a SHOWHELP=1
set HELPMSG=text 7 0 0 SPACE\-ENTER\-x\-p\-h 1,108
if !SHOWHELP!==1 set MSG=%HELPMSG%
echo "cmdgfx: image img/6hld.bmp 0 0 db -1 !WW!,0 0 0 !W!,!H!"
set CONV16=color16 0 \g20.-+jR 3000
set /a C16=0 & set XF=skip& if !C16!==1 set XF=
cmdwiz delay 200
cmdwiz showwindow top
set STOP=
:LOOP
for /L %%_ in (1,1,300) do if not defined STOP (
set /a A1+=1, A2+=2, A3-=1, TRZ=!CRZ!
if !MODE!==0 set OUTP="fbox 0 0 db 0,0,!W!,!H! & 3d objects\cube-t-RGB.obj 5,!TV! !A1!,!A2!,!A3! 0,0,0 810,810,810,0,0,0 0,0,0,10 !CUPOS!,!CUPOS!,!DIST!,%ASPECT% 0 0 db"
if !MODE!==1 set OUTP="fbox 0 0 db 0,0,!W!,!H! & 3d objects\cube-t-RGB2.obj 5,-1 !A1!,!A2!,!A3! 0,0,0 810,810,810,0,0,0 1,0,0,10 !CUPOS!,!CUPOS!,!DIST!,%ASPECT% 0 0 db"
if !MODE!==2 set OUTP="fbox 0 0 db 0,0,!W!,!H! & 3d objects\cube-t-RGB2.obj 5,-1 !A1!,!A2!,!A3! 0,0,0 810,810,810,0,0,0 1,0,0,10 !CUPOS!,!CUPOS!,!DIST!,%ASPECT% 0 0 db 1 0 db 9 0 db 2 0 db a 0 db 3 0 db b 0 db 4 0 db c 0 db 5 0 db d 0 db 6 0 db e 0 db"
set OUTP="!OUTP:~1,-1! & 3d objects\cube-t-RGB2.obj 5,-1 !A1!,!A2!,!A3! 0,0,0 810,810,810,0,0,0 1,0,0,10 !CUPOS2!,!CUPOS2!,!DIST!,%ASPECT% 0 0 db"
for /L %%1 in (1,1,%S2%) do set OUTP="!OUTP:~1,-1! & 3d !FN! %DRAWMODE%,-1 0,0,!TRZ! 0,0,0 20,20,20,0,0,0 0,0,0,10 !XMID!,!YMID!,!TRIDIST!,%ASPECT% 0 0 db"&set /A TRZ+=%S3%*4
echo "cmdgfx: !OUTP:~1,-1! & !MONS! & !FADE! & !XF! %CONV16% & skip text 7 0 0 [FRAMECOUNT] 103,108 & !MSG!" fa:0,0,!WWW!,!H!,!W!,!H!
set OUTP=
set /p INPUT=
for /f "tokens=1,2,4,6, 8,10,12,14,16,18,20,22, 24,26,28" %%A in ("!INPUT!") do ( set EV_BASE=%%A & set /a K_EVENT=%%B, K_DOWN=%%C, KEY=%%D, RESIZED=%%M, SCRW=%%N, SCRH=%%O 2>nul )
if "!RESIZED!"=="1" set /a "W=SCRW*2*4+2, H=SCRH*2*6+2, WWW=W*3, WW=W*2, XMID=W/2, XMID2=WW+XMID, YMID=H/2, HLPY=H-4, DIST=4000-(W-222)*7, TRIDIST=7000-(W-222)*17, CUPOS=35+(W-222)/7+3, CUPOS2=CUPOS+WW" & set FN=%FN0%& (if !W! gtr 300 set FN=%FN1%)& (if !W! gtr 400 set FN=%FN2%) & echo "cmdgfx: image img/6hld.bmp 0 0 db -1 !WW!,0 0 0 !W!,!H!" f0:0,0,!WWW!,!H!,!W!,!H! & cmdwiz showcursor 0 & set HELPMSG=text 7 0 0 SPACE\-ENTER\-x\-p\-h 1,!HLPY! & if !SHOWHELP!==1 set MSG=!HELPMSG!
set /a CRZ+=3, CNT+=1
if !CS! gtr 0 (
set /a CP=!CCNT!/%CDIV%,CCP=!CCNT!/%CDIV%+2 & for %%a in (!CP!) do for %%b in (!CCP!) do set FADE=block 0 0,0,%W%,%H% 0,0 -1 0 0 ????=!C%%b!!C%%a!??
if !CS!==2 set /a CCNT-=1&if !CCNT! lss 0 set /a CS=0&set FADE=
if !CS!==1 set /a CCNT+=1&if !CCNT! gtr %CEND% set /a CCNT=%CEND%,CW+=1
if !CW! gtr 35 set /a CW=0,CS=2,KEY=32
)
if !LIGHT! == 1 for /F "tokens=1-8 delims=:.," %%a in ("!t1!:!time: =0!") do set /a "a=((((1%%e-1%%a)*60)+1%%f-1%%b)*6000+1%%g%%h-1%%c%%d)*10,a+=(a>>31)&8640000" & if !a! geq %LTIME% set /a KEY=109 & set t1=!time: =0!
if !KEY! == 115 set /A LIGHT=1-!LIGHT! & if !LIGHT! == 1 set /a KEY=109 & set t1=!time: =0!
if !CNT! gtr 1307 set /a A3+=1
if !CNT! gtr 1400 set /a CNT=0
if !KEY! == 112 cmdwiz getch & set /a CKEY=!errorlevel! & if !CKEY! == 115 echo "cmdgfx: " c:0,0,%W%,%H%
if !KEY! == 104 set /A SHOWHELP=1-!SHOWHELP!&(if !SHOWHELP!==0 set MSG=)&if !SHOWHELP!==1 set MSG=!HELPMSG!
if !KEY! == 100 set /A DIST+=50
if !KEY! == 68 set /A DIST-=50
if !KEY! == 13 set /A TRANSP=1-!TRANSP!&(if !TRANSP!==1 set /a TV=20)&(if !TRANSP!==0 set /a TV=-1)
if !KEY! == 32 set /A MODE+=1&if !MODE! gtr 2 set MODE=0
if !KEY! == 27 set STOP=1
if !KEY! == 120 set /a C16=1-C16 & set XF=skip& if !C16!==1 set XF=
set /a KEY=0
)
if not defined STOP goto LOOP
endlocal
cmdwiz delay 100
echo "cmdgfx: quit"
title input:Q
cmdwiz showwindow close /w:Kaleidoscope