Fire-Colored particle system
Posted: 07 May 2019 22:07
Hello everyone,
Here is a particle system! they change colors as they rise. Not much to be impressed about, just a fun visual. Enjoy!
Here is a particle system! they change colors as they rise. Not much to be impressed about, just a fun visual. Enjoy!

Code: Select all
@echo off & setlocal enableDelayedExpansion
( for /f %%a in ('echo prompt $E^| cmd') do set "esc=%%a" ) & echo !esc![?25l
set "temperature[0]=[38;2;7;7;7mÛ[0m"
set "temperature[1]=[38;2;31;7;7mÛ[0m"
set "temperature[2]=[38;2;47;15;7mÛ[0m"
set "temperature[3]=[38;2;71;15;7mÛ[0m"
set "temperature[4]=[38;2;87;23;7mÛ[0m"
set "temperature[5]=[38;2;103;31;7mÛ[0m"
set "temperature[6]=[38;2;119;31;7mÛ[0m"
set "temperature[7]=[38;2;143;39;7mÛ[0m"
set "temperature[8]=[38;2;159;47;7mÛ[0m"
set "temperature[9]=[38;2;175;63;7mÛ[0m"
set "temperature[10]=[38;2;191;71;7mÛ[0m"
set "temperature[11]=[38;2;199;71;7mÛ[0m"
set "temperature[12]=[38;2;223;79;7mÛ[0m"
set "temperature[13]=[38;2;223;87;7mÛ[0m"
set "temperature[14]=[38;2;223;87;7mÛ[0m"
set "temperature[15]=[38;2;215;95;7mÛ[0m"
set "temperature[16]=[38;2;215;95;7mÛ[0m"
set "temperature[17]=[38;2;215;103;15mÛ[0m"
set "temperature[18]=[38;2;207;111;15mÛ[0m"
set "temperature[19]=[38;2;207;119;15mÛ[0m"
set "temperature[20]=[38;2;207;127;15mÛ[0m"
set "temperature[21]=[38;2;207;135;23mÛ[0m"
set "temperature[22]=[38;2;199;135;23mÛ[0m"
set "temperature[23]=[38;2;199;143;23mÛ[0m"
set "temperature[24]=[38;2;199;151;31mÛ[0m"
set "temperature[25]=[38;2;191;159;31mÛ[0m"
set "temperature[26]=[38;2;191;159;31mÛ[0m"
set "temperature[27]=[38;2;191;167;39mÛ[0m"
set "temperature[28]=[38;2;191;167;39mÛ[0m"
set "temperature[29]=[38;2;191;175;47mÛ[0m"
set "temperature[30]=[38;2;183;175;47mÛ[0m"
set "temperature[31]=[38;2;183;183;47mÛ[0m"
set "temperature[32]=[38;2;183;183;55mÛ[0m"
set "temperature[33]=[38;2;207;207;111mÛ[0m"
set "temperature[34]=[38;2;223;223;159mÛ[0m"
set "temperature[35]=[38;2;239;239;199mÛ[0m"
set "temperature[36]=[38;2;255;255;255mÛ[0m"
set /a "max=36", "mag=4"
set /a "hei=wid=max", "objects=max * mag"
mode %wid%,%hei%
for /l %%a in (1,1,%objects%) do set /a "y[%%a]=!random! %% hei + hei","x[%%a]=%%a / mag","ys[%%a]=!random! %% mag + 1"
for /l %%# in () do (
for /l %%a in (1,1,%objects%) do (
if !y[%%a]! lss 0 ( set /a "y[%%a]=hei" ) else set /a "ly=y[%%a]","y[%%a]-=ys[%%a]"
for %%y in (!y[%%a]!) do set "screen=!screen!%esc%[!ly!;!x[%%a]!H %esc%[!y[%%a]!;!x[%%a]!H!temperature[%%y]!"
)
<nul set /p "=!screen!" & set "screen="
)