0x4666fd1f…6b59sent to0x62e37f66…923b·#13,759,694·view on Etherscan
1200,.1);a=S()>.5?e.reverse():e}if("v-streams"===P.shape)for(let e=.1*width;e<width;e+=.2*width){const t=y(e,0,e,height,400);a=[...a,...t]}if("h-streams"===P.shape)for(let e=.1*height;e<height;e+=.2*height){const t=y(0,e,width,e,400);a=[...a,...t]}if("unity"===P.shape){const e=M(360),t=x(.5*width,.33*height,400,400,.3*width,e),h=x(.5*width,.66*height,400,400,.3*width,e);a=S()>.95?G([...t,...h]):[...t,...h]}if("structure"===P.shape){for(let e=.2*width;e<width;e+=.2*width){const t=y(e,.1*height,e,.9*height,400);a=[...a,...t]}for(let e=.2*height;e<height;e+=.2*height){const t=y(.1*width,e,.9*width,e,400);a=[...a,...t]}}if("grass"===P.shape){for(let e=.05*-width;e<1.1*width;e+=.2*width){const t=y(e,height*M(.1,.7),e,height,200);a=[...a,...t]}for(let e=.15*-width;e<1.1*width;e+=.2*width){const t=y(e,height*M(.1,.7),e,height,200);d=[...d,...t]}a=G(a),d=G(d)}if("tree"===P.shape){const e=x(width/2,height/3.5,400,400,.2*width,90);a=[...a,...e]}let f=P.divider,l=P.angle;const{lerpColors:c,backColors:b,backColors2:k}=P;L.background(255);const m=_(k),C=M(.2,.8),F=M(.05,.15);"grass"===P.shape?(L.push(),L.noStroke(),u(L,width*M(.1,.9),height*M(.1,.3),width/2,[0,C-F,C,C+F,1],[_(k),m,m,m,_(k)]),L.rect(0,0,width,height),L.pop()):"spiral"===P.shape?(L.push(),L.noStroke(),u(L,.5*width,.5*height,width/2,[0,1],[_(k),_(k)]),L.rect(0,0,width,height),L.pop()):"structure"===P.shape?L.background(_(k)):(L.push(),L.noStroke(),p(L,width/2,0,width/2,height,[0,C-F,C,C+F,1],[_(k),m,m,m,_(k)]),L.rect(0,0,width,height),L.pop());const W=_(c),R=_(c);L.push(),L.noFill(),L.strokeWeight(20*B),L.stroke(W),L.rect(0,0,width,height),L.pop(),L.push(),L.noFill(),L.strokeWeight(2*B),L.stroke(R),L.rect(5*B,5*B,width-10*B,height-10*B),L.pop();for(let e=0;e<a.length;e+=1){const t=r,h=r,i=Math.max(t,h);let n=map(cos(e*P.waveR),-1,1,0,P.size),s,o;"tree"===P.shape?(s=$(a[e].x,a[e].y,n,t,l,width,0,1.1*height,1.1*height),o=$(a[e].x,a[e].y,n,h,l,1.1*width,.1*-width,height,.1*-height)):"grass"===P.shape?(s=$(a[e].x,a[e].y,n,t,l,width,0,1.1*height,1.1*height),o=$(d[e].x,d[e].y,n,h,l,width,0,1.1*height,1.1*height)):"structure"===P.shape?(s=$(a[e].x,a[e].y,n,t,l,width,0,height,0),o=$(a[e].x,a[e].y,n,h,l,width,0,height,0)):(s=$(a[e].x,a[e].y,n,t,l,1.1*width,.1*-width,1.1*height,P.roots?1.1*height:0),o=$(a[e].x,a[e].y,n,h,l,1.1*width,.1*-width,height,.1*-height));for(let t=0;t<i-20;t+=1)e%f==0?(L.push(),L.beginShape(),L.fill(c[t%c.length]),P.noFill&&L.noFill(),L.strokeWeight(.5*B),L.stroke(c[(t+Math.round(.1*c.length))%c.length]),P.blackStroke&&L.stroke(0),L.vertex(s[t%s.length].x,s[t%s.length].y),L.bezierVertex(s[t%s.length].x,s[t%s.length].y,s[(t+E(10))%s.length].x,s[(t+E(10))%s.length].y,s[(t+20)%s.length].x,s[(t+20)%s.length].y),L.vertex(s[t%s.length].x,s[(t+1)%s.length].y),L.vertex(s[t%s.length].x,s[(t+2)%s.length].y),L.endShape(CLOSE),e%10==0&&(L.push(),L.strokeWeight(.5*B),L.stroke(b[0]),s[t%o.length].y>0&&s[t%o.length].y<height&&L.stroke(b[Math.round(map(s[t%s.length].y,height,0,0,b.length-1))]),L.fill(b[Math.round(map(sin(5*t),-1,1,0,b.length-1))]),L.circle(s[t%s.length].x,s[t%s.length].y,M(1,5)*B),L.pop()),L.pop()):(L.push(),L.beginShape(),L.fill(b[t%b.length]),L.fill(b[Math.round(map(sin(5*t),-1,1,0,b.length-1))]),L.strokeWeight(.5*B),L.stroke(b[(t+Math.round(.1*b.length))%b.length]),L.stroke(b[0]),o[t%o.length].y>0&&o[t%o.length].y<height&&L.stroke(b[Math.round(map(o[t%o.length].y,0,height,0,b.length-1))]),"tree"!==P.shape&&"structure"!==P.shape||L.stroke(b[(t+Math.round(.1*b.length))%b.length]),L.strokeWeight(S()*B),P.bigStroke&&(L.strokeWeight(5*B),L.stroke(b[(t+Math.round(.1*b.length))%b.length])),L.vertex(o[t%o.length].x,o[t%o.length].y),L.vertex(o[(t+1)%o.length].x,o[(t+1)%o.length].y),L.vertex(o[(t+2)%o.length].x,o[(t+2)%o.length].y),L.endShape(CLOSE),L.pop()),e%10==0&&(L.push(),L.strokeWeight(.5*B),L.stroke(c[(t+Math.round(.1*c.length))%c.length]),L.fill(b[t%b.length]),"wall"===P.shape?L.circle(s[t%s.length].x,s[t%s.length].y,map(sin(10*t),-1,1,1,n/2)):L.circle(s[t%s.length].x,s[t%s.length].y,M(B,n)),L.pop())}L.push(),L.noFill(),L.strokeWeight(2*B),L.stroke(R),L.rect(5*B,5*B,width-10*B,height-10*B),L.pop(),push(),shader(A),A.setUniform("p",L),A.setUniform("rr",random()),A.setUniform("resolution",[width,height]),A.setUniform("pd",pixelDensity()),quad(-1,-1,1,-1,1,1,-1,1),pop()},R()}function H(){const e=void 0,t=z.canvas.style;let h,i;.75*window.innerHeight>=window.innerWidth?(h=window.innerWidth,i=window.innerWidth/.75):(i=window.innerHeight,h=.75*window.innerHeight),t.position="absolute",t.display="block",t.top=t.left=t.right=t.structure="0",t.width=`${h}px`,t.height=`${i}px`}function windowResized(){H()}.75*window.innerHeight>=window.innerWidth?(D=window.innerWidth,N=window.innerWidth/.75):(N=window.innerHeight,D=.75*window.innerHeight);const U=()=>{console.log("click")};window.addEventListener("click",U),window.addEventListener("touchstart",U);const I=[1,2,3,4,5,6,7,8,9];window.addEventListener("keydown",(e=>{I.includes(Number(e.key))&&(L.pixelDensity(Number(e.key)),pixelDensity(Number(e.key)),R()),"s"===e.key&&saveCanvas(tokenData.structure,"png")}));const $=(e,t,h,i,n,s,r,o,a)=>{const d=[];let f={x:e,y:t},l=0;for(let e=0;e<i;e+=1){let t;t=q(f,e%2==0?h:h*P.weeds,l,s,r,o,a),f=t,d.push(t),l+=n}return d},q=(e,t,h,i,n,s,r)=>{const o={};return e.x+t>i?o.x=e.x-t:e.x-t<n?o.x=e.x+t:o.x=e.x+_([t*cos(h),t*sin(h)]),e.y+t>s?o.y=e.y-t:e.y-t<r?o.y=e.y+t:o.y=e.y+_([t*cos(h),t*sin(h)]),o},O=(e,t,h,i,n,s)=>{const r=[];let o=0,a=s;for(let d=0;d<n;d+=1)r.push({x:e+h*L.cos(o)*a,y:t+h*L.sin(o)*a}),o+=i/n,a+=s;return r},Y=(e,t,h,i,n,s)=>{const r=[];let o=0;for(let a=0;a<n;a+=1)r.push({x:e+h*L.sin(o)*L.cos(o),y:t+h*L.cos(o*s)}),o+=i/n;return r},Q=(e,t,h,i,n)=>{const s=[];let r=0;for(let o=0;o<n;o+=1)s.push({x:e+h*L.cos(r),y:t+h*L.sin(r)*L.cos(r)}),r+=i/n;return s},V=(e,t,h,i,n,s)=>{const r=[];let o=0;for(let a=0;a<n;a+=1)r.push({x:e+h*L.sin(o*s)*L.cos(o*s),y:t+h*L.cos(o)}),o+=i/n;return r};