#!/usr/bin/env perl my @g = 232..255; my $falloff = 6; my $offset = 3.2; my $lines = (); while (my $line = ) { chomp $line; my @c = split(//, $line); push @$lines, \@c; } sub t { my $v = shift; (($v)/$falloff)**2 + 0.4; } for my $i (0..46) { for my $j (0..92) { my $v = t($i-23) + t($j/2-23); $v = $v > 0? 21/$v : 23; $v = $v > 23? 23 : $v; $v = $g[$v]; #print "\e[38;5;${v}m█\e[0m"; print "\e[38;5;${v}m"; print $lines->[$i]->[$j]; print "\e[0m"; } print "\n"; } __DATA__ ###################### .....................# ####################.# #.# #.# #.# #.########################### #...........................# ###########################.# #.# #.# #.# #.# #.# #.# #.# #.# #.# #.# #.# #.# #.# #.# #@# #.# #.# #.# ########################.###################### #....................$&...&$..................# #.....................d&.&T...................# #......................B&D....................# #.......................*.....................# #.............................................# #.............................................# #.............................................# #.............................................# #.............................................# #.............................................# #.............................................# ###############################################