# wave collapse function 2022/4/10 # by ValKmjolnir use std.os; srand(); var table=[ # c ,w,a,s,d ["═",0,1,0,1], ["═",0,1,0,1], ["═",0,1,0,1], ["║",1,0,1,0], ["╔",0,0,1,1], ["╗",0,1,1,0], ["╚",1,0,0,1], ["╝",1,1,0,0], # ["╠",1,0,1,1], # ["╣",1,1,1,0], # ["╦",0,1,1,1], # ["╩",1,1,0,1], # ["╬",1,1,1,1], [" ",0,0,0,0], [" ",0,0,0,0], [" ",0,0,0,0], [" ",0,0,0,0], [" ",0,0,0,0], [" ",0,0,0,0] ]; var map = func() { var (vec,x,s)=(nil,nil,size(table)); var generator = func() { var tmp=[]; foreach(var elem;table) if (elem[1]==vec[0][0][3] and elem[2]==0) append(tmp,elem); vec[1][0]=tmp[rand()*size(tmp)]; for(var j=1;j0.5) { vec[1][j]=table[-1]; continue; } tmp=[]; foreach(var elem;table) if (elem[2]==vec[1][j-1][4] and elem[1]==vec[0][j][3]) { if ((j==x-1 and elem[4]==0) or j