memoscan
← all memos

Memo 0x965bcb48…320697 on Ethereum

function rLev(e,r){G.add(B([gx+border,e,gz+border],[r.x,r.y,r.z],M.dirt));for(let t=0;t<2;t++){let t=2;for(;t<gx;){let o=prand(1,5);for(let n=0;n<2;n++){let a=r.y+1+prng(e-o),d=r.z-(.2+prng(5)/7);G.add(B([o,o,3],[r.x+t,a,d],M.ground,n)),o>1&&prng(1-FL(r.y/10))>1&&palette&&G.add(B([o/2,o/2,3],[r.x+t+o/4,a+o/4,d-.6],prng(2)&&rainbowRocks?mRW(prng(ethpal.length)):M.walls,n))}t+=o+1+prng(6)}}sewers(e,r)}function uLev(e,r){let t=border;G.add(B([gx,gh,gz],[r.x+4,r.y,r.z+4],M.core)),G.add(B([gx+t/2,1,gz+t/2],[r.x+2.5,r.y+1.5,r.z+2.5],M.sidewalk)),G.add(B([gx+t,2,gz+t],[r.x,r.y,r.z],M.dirt)),G.add(B([gx+t,2,gz+t],[r.x,r.y+e-2,r.z],M.dirt)),G.add(B([6+prng(gx/4),e-2,6+prng(gx/4)],[r.x,r.y+1,r.z],M.dirt));let o=5+prng(gx/4);G.add(B([o,e-2,1],[r.x+t+gx-o,r.y+1,r.z],M.dirt)),G.add(B([1,e-2,o],[r.x,r.y+1,r.z+t+gx-o],M.dirt));let n=15+prng(gx/3);train({x:n,y:r.y,z:r.z},0),train({x:r.x,y:r.y,z:n},1),sewers(e,r)}function sewers(e,r){for(let t=0;t<2;t++){let o=r.x+1+prng(gx),n=r.y+3,a=2+prng(4),d=4,i=prng(4);for(let l=0;l<i&&o<gx-a-5;l++)G.add(B([a,e-2,1],[o+2,r.y+1,r.z+1],M.dirt,t)),G.add(B([a+6,e-2,1],[o-1,r.y+1,r.z],M.dirt,t)),G.add(B([a,1,d],[o+2,n+3,r.z-d],M.walls,t)),G.add(B([a+2,1,d],[o+1,n,r.z-d],M.walls,t)),G.add(B([1,3,d],[o+1,n,r.z-d],M.walls,t)),G.add(B([1,3,d],[o+a+2,n,r.z-d],M.walls,t)),G.add(B([a,1,3],[o+2,n+1,r.z-d],M.water,t)),G.add(B([a,302,1],[o+2,n-300,r.z-d-1],M.water,t)),o+=a+4,a=2+prng(4)}}function heli(e){let r=new THREE.Group,t=new THREE.Group,o=new THREE.Group;r.add(B([2,3.5,4],[-1,.5,-2],M.vehicle)),r.add(B([2.2,2,2.5],[-1.1,1.3,-2.1],M.neon)),r.add(B([.5,.8,6],[-.5,2,2],M.vehicle)),t.add(B([12,.3,1],[-6,4,-.5],M.neon).rotateY(PI/6)),t.add(B([1,.3,12],[-.5,4,-6],M.neon).rotateY(PI/6)),r.add(t),o.add(B([3,.3,.7],[-1.5,-.15,-.35],M.neon).rotateZ(PI/2).rotateY(PI/4)),o.add(B([.7,.3,3],[-.35,-.15,-1.5],M.neon).rotateZ(PI/2).rotateY(PI/4)),o.position.set(0,2.5*grid,7*grid),r.add(o),r.add(B([1,.5,5],[-2,0,-2.5],M.vehicle)),r.add(B([1,.5,5],[1,0,-2.5],M.vehicle)),r.position.set(e.x*grid,400,e.z*grid),r.rotateY(prng(4)*PI/2),G.add(r),H={h:r,a:t,ac:o,py:e.y*grid,y:400,v:-16,vg:0,p:0}}function tree(e,r,t){let o=M.tree2.clone();if(randTrees&&o.color.set(COL(prand(40,165),100,prand(40,70))),sakuraTrees){let e=COL(319,80,prand(75,96));o=new THREE.MeshLambertMaterial({color:e,emissive:e,emissiveIntensity:.4})}let n=prng(100)?o:M.tree3,a=sakuraTrees?3:2+prng(4),d=rtrees?prng(3):0;G.add(B([.8,6,.8],[e,r,t],M.tree1)),G.add(B([1,a,1],[e,r+4+d,t],n)),G.add(B([3,a,3],[e-1,r+3+d,t-1],n))}function pond(e,r,t,o){if(G.add(B([e.x,t,e.z],[r.x,r.y,r.z],M.walls)),Math.min(e.x,e.z)>=6){G.add(B([e.x-2,t+.2,e.z-2],[r.x+1,r.y,r.z+1],o)),G.add(B([1,t+.2,e.z-1],[r.x+e.x/2,r.y,r.z-.5],o)),G.add(B([3,t+.2,1],[r.x-.5,r.y,r.z+e.z/2],o));let n=prng(2);pond({x:e.x-3,y:e.y,z:e.z-3},{x:r.x+3*(1-n),y:r.y,z:r.z+3*n},t+2,o)}else if(eth){if(pal>2){let e=B([1,600,1],[r.x+1,r.y,r.z+1],new THREE.MeshPhongMaterial({transparent:!0,opacity:.5,color:10092543,emissive:10092543,emissiveIntensity:2}));G.add(e),lights.push(e)}}else eth=s3D({x:r.x+e.x/2,y:r.y+t+4.2,z:r.z+e.z/2},3,4,2,1.6,new THREE.MeshPhongMaterial({color:ethcol,emissive:ethcol,emissiveIntensity:.2,flatShading:!0})),G.add(eth)}function tenp(e,r){let t=prng(3);for(let o=border;o<e.x-2;o+=2)for(let n,a=border;a<e.z-2;a+=2,n=prng(2))G.add(B([n?2:1,t+1.3,n?1:2],[r.x+o+1.5,r.y,r.z+a+1.5],M.cesped))}function park(e,r){let t=mMz(e.x-border-1,e.z-border-1),o=prng(4);for(let n=border;n<e.x-1;n++)for(let a=border;a<e.z-1;a++)t[n-border][a-border].w&&G.add(B([1,o+1.3,1],[r.x+n+.5,r.y,r.z+a+.5],M.cesped))}function mMz(e,r){let t=new Array(e);for(let e=0;e<t.length;e++){t[e]=new Array(r);for(let o=0;o<r;o++)t[e][o]={w:1,v:0}}mrec(t,e,r,1,1);let o=FL(e/2)+1,n=FL(r/2)+1;return t[0][n].w=0,t[e-1][n].w=0,t[o][0].w=0,t[o][r-1].w=0,t}function mrec(e,r,t,o,n,a=!1){if(o>=0&&n>=0&&o<r&&n<t&&!e[o][n].v){e[o][n].w=0,e[o][n].v=1,a&&(e[o-a[0]][n-a[1]].w=0);let d=[[0,-1],[1,0],[0,1],[-1,0]],i=prng(2);for(let e=0;e<i;e++){let e=prng(3),r=d[e];d[e]=d[e+1],d[e+1]=r}for(let a=0;a<4;a++)mrec(e,r,t,o+2*d[a][0],n+2*d[a][1],d[a])}}function b(e,r,t,o=-1,n=0,a=!0,d=!1){if(n&&G.add(B([e.x+n,n,e.z+n],[r.x-n/2,1+r.y,r.z-n/2],M.walls)),r.y+=n,G.add(B([e.x-2,t+1,e.z-2],[r.x+1,r.y+1,r.z+1],M.core)),-1!=o||prng(rf)?wallP(e,r,t,o):wallR(e,r,t),a&&prng(2)){let o=t<6||!d&&(t<8||prng(2)),n=o?5*prand(1,2):4+prng(4);e.x>e.z?cartel(e.x/(prng(2)&&n<10?1:2),n,[r.x,r.y+t+(o?3:-(n-2)),r.z+(o?.5:-1)],0):cartel(e.z/(prng(2)&&n<10?1:2),n,[r.z,r.y+t+(o?3:-(n-2)),r.x+(o?.5:-1)],1)}!d&&t>10&&prng(2)&&antenna({x:r.x-1,y:r.y+t+3,z:r.z-1},e.z>e.x)}function antenna(e,r){let t=1+prng(4);for(let o=1;o<=t;o++){let t=5+o,n=e.x+2.5*(r?1:o),a=e.z+2.5*(r?o:1);G.add(B([1.5,(1+prng(2))/2,1.5],[n-.5,e.y,a-.5],M.core)),G.add(B([.5,t,.5],[n,e.y,a],M.walls)),G.add(B([.5,1,.5],[n,e.y+t,a],M.neon))}}function cartel(e,r,t,o=0){let n=prng(2)?M.neon:prng(2)?M.neon1:M.neon2;prng(5)||(n=n.clone(),lights.push(n)),G.add(B([e,r,.5],t,M.panel,o)),G.add(B([1,r,1],[t[0]+2,t[1],t[2]+.5],M.panel,o)),G.add(B([1,r,1],[t[0]+e-3,t[1],t[2]+.5],M.panel,o));for(let a=1;a<(e-1)/2;a++)for(let d=1;d<r-1;d++)prng(3)&&(G.add(B([1,1,1],[t[0]+a,t[1]+d,t[2]-.3],n,o)),G.add(B([1,1,1],[t[0]+e-a-1,t[1]+d,t[2]-.3],n,o)))}function wallP(e,r,t,o=-1){let n=M.walls.clone();rainbowWalls&&n.color.set(ethpal[prng(ethpal.length)]);let a=-1==o?pats[prng(pats.length)]:o,d=a[0].length,i=a.length;for(let o=0;o<=t;o++){let t=o||2;for(let l=0;l<e.x/2;l++)a[t%i][l%d]&&(G.add(B([1,1,1],[l+r.x,o+r.y+1,r.z],n)),G.add(B([1,1,1],[r.x+e.x-l-1,o+r.y+1,r.z],n)),l<3&&G.add(B([1,1,1],[l+r.x,o+r.y+1,r.z+e.z-1],n)));for(let l=1;l<e.z/2;l++)a[t%i][l%d]&&(G.add(B([1,1,1],[r.x,o+r.y+1,l+r.z],n)),G.add(B([1,1,1],[r.x,o+r.y+1,r.z+e.z-l-1],n)),l<3&&G.add(B([1,1,1],[r.x+e.x-1,o+r.y+1,l+r.z],n)))}G.add(B([e.x,1,e.z],[r.x,2+r.y+t,r.z],n))}