0x8a146bc9…fa8asent to0x32d4be5e…f436·#16,622,564·view on Etherscan
class Random {
constructor() {
this.useA = !1;
let sfc32 = function (uint128Hex) {
let a = parseInt(uint128Hex.substr(0, 8), 16);
let b = parseInt(uint128Hex.substr(8, 8), 16);
let c = parseInt(uint128Hex.substr(16, 8), 16);
let d = parseInt(uint128Hex.substr(24, 8), 16);
return function () {
a |= 0; b |= 0; c |= 0; d |= 0;
let t = (((a + b) | 0) + d) | 0;
d = (d + 1) | 0;
a = b ^ (b >>> 9);
b = (c + (c << 3)) | 0;
c = (c << 21) | (c >>> 11);
c = (c + t) | 0;
return (t >>> 0) / 4294967296;
};
};
this.prngA = new sfc32(tokenData.hash.substr(2, 32));
this.prngB = new sfc32(tokenData.hash.substr(34, 32));
for (let i = 0; i < 1e6; i += 2) {
this.prngA();
this.prngB();
}
}
r_d() {
this.useA = !this.useA;
return this.useA ? this.prngA() : this.prngB();
}
r_n(a, b) {
return a + (b - a) * this.r_d();
}
r_i(a, b) {
return Math.floor(this.r_n(a, b + 1));
}
r_c(list) {
return list[this.r_i(0, list.length - 1)];
}
}
let hash = tokenData.hash;
let R = new Random()
, seed = 99999999 * R.r_i()
, wP = R.r_i(1,100)
, W = 1e3
, H = 1333
, Xv = []
, Yv = []
, mg = 50
, lS = 40
, m = 1e3
, f = m/2e2;
var cC,m1,m2,m4,m5,m6,m7,m8,m9,m0,palo,mar,cgx,cgc,cgf,ts;
const P = [
{
name: 'Solstice',
b: [[0]],
circ: [[0,10]],
bov: [[60,5]],
fE: [[254,240,217,50]],
},
{
name: 'Selvedge',
b: ['#002962'],
circ: [ [0,41,98,30] ],
bov: ['#00214F', '#002F71'],
fE: [ [196,225,247,50] , [206, 50], [254,240,217,50] ],
},
{
name: 'Gertrud',
b: ['#B40707'],
circ: [[180,7,7,50,10]],
bov: ['#AA0707', '#AE0505'],
fE: [[255,220,217,50] , [230, 50], [254,240,217,50]],
},
{
name: 'Harvest',
b: ['#E0AB00'],
circ: [[224,171,0,50]],
bov: ['#D69C01'],
fE: [[253,221,165,50], [230,50], [254,240,217,50]],
},
];
if (wP >= 71) {
palo = P [0];
} else if (wP < 71 && wP >= 41) {
palo = P [1];
} else if (wP < 41 && wP >= 11) {
palo = P [2];
} else if (wP < 11) {
palo = P [3];
}
let B = R.r_c(palo.b)
, fr = R.r_c(palo.fE)
, cr = R.r_c(palo.circ)
, Bov = R.r_c(palo.bov);
let dim = 1.333, B_ = 0, D_S = 1e3, w_W = window.innerWidth - 2 * B_, w_H = window.innerHeight - 2 * B_, WIDTH = D_S, HEIGHT = WIDTH * dim, i_dim = WIDTH / HEIGHT, v_dim = w_H / w_W, c_h = w_H, c_w = c_h * i_dim, M = c_w / WIDTH;
v_dim > dim && (c_w = w_W, c_h = c_w * dim, M = c_h / HEIGHT);
const bBGc = `body {background: #262729;}`
, BGc = document.createElement("style");
BGc.innerText = bBGc
, document.head.appendChild(BGc);
function setup() {
randomSeed(seed);
createCanvas(c_w,c_h);
cg = createGraphics(W,H);
cgx = createGraphics(W,H);
cgc = createGraphics(W,H);
cgf = createGraphics(W,H);
angleMode(DEGREES);
cg.angleMode(DEGREES);
Mm = R.r_i(0,100) > 50 ? !0 : !1;
Mm == !0 ? mar = R.r_i(m/8, m/6) : mar = mg;
m1 = R.r_n(0.1, 100);
m2 = R.r_n(0.1, 100);
m4 = R.r_n(0.1, 100);
m5 = R.r_n(0.1, 100);
m6 = R.r_n(0.1, 100);
m7 = R.r_n(0.1, 100);
m8 = R.r_n(0.1, 100);
m9 = R.r_n(0.1, 100);
m0 = R.r_n(0.1, 100);
LC = R.r_d();
WiW = R.r_i(0,101);
cC = R.r_d();
RD = R.r_n(W/6.66, W/5);
}
function draw() {
let ms = millis();
c_w > 600 ? ts = c_w/60 : c_w < 301 ? ts = c_w/40 : ts = c_w/50;
background(B);
fill(254,240,217);
textFont('Futura','Helvetica','sans-serif');
textSize(ts);
textAlign(CENTER, CENTER);
if (ms < 1000) {
text("L O A D I N G . . .", width/2, height/2 - ts);
text(`A T E N D E R C O U N T ( I N G )`, width/2, height / 2 + ts*1.5);
} else {
noLoop();
background(B);
push();
teX();
pop();
tD();
rD(mar/2, mar/2, W-mar, H-mar, f);
if (WiW >= 92) {
fMC();
} else if (WiW <=91 && WiW >= 58) {
s_h();
} else if (WiW <= 57 && WiW >= 29) {
sh_h();
} else if (WiW <= 28) {
hvL();
}
cC < 0.4 ? cgc.fill(254,240,217,50) : cgc.fill(cr)
cgc.noStroke();
var [cx,cy] = [R.r_n(0,W),R.r_n(0,H)];
cgc.push();
for (let i = 0; i <= 100; i++) {
cVc(RD+R.r_n(-2, 2), 20, cx+R.r_n(-2, 2), cy+R.r_n(-2, 2));
}
push()
cgc.filter(BLUR, 1);
cgc.pop;
pop();
image(cg, 0, 0, c_w, c_h);
if (WiW < 2) {
push();
blendMode(LIGHTEST);
image(cgx, 0, 0, c_w, c_h);
pop();
}
image(cgc, 0, 0, c_w, c_h);
fR();
uf();
pT();
image(cgf, 0, 0, c_w, c_h);
gr(this, 1, 34);
}
}
function teX() {
let f1 = R.r_i(W/20, W/10), f2 = f1/0.75;
for (let i = 0; i <= W*4; i += W/f1) {
for (let j = 0; j <= H*4; j += H/f2) {
B =='#B40707' ? cg.stroke(255, R.r_n(4,5)) : cg.stroke(255, 3);
cg.strokeWeight(R.r_n(0.00125, 0.125));
cg.drawingContext.setLineDash([m7, m8]);
cg.strokeWeight(R.r_n(0.00125, 0.125));
cg.line(i, 0, i, H);
cg.drawingContext.setLineDash([m1, m2, m4, m4, m5, m6]);
cg.line(0, j, W, j);
cg.strokeWeight(5);
cg.stroke(Bov);
cg.drawingContext.setLineDash([m9,m9, m0]);
cg.line(0, j, W, j);
}
}
}
function tD() {
cg.ellipseMode(CENTER);
let ca = R.r_i(15, 40);
let cas = m/R.r_n(200, 300);
for (let i = 0; i <= W-mg; i+= ca) {
for (let j = 0; j <= H-100; j+= ca) {
let cwi = R.r_n(-1.5, 1.5);
let cwi2 = R.r_n(-1, 1);
cg.noFill();
cg.stroke(255, 100);
cg.strokeWeight(0.25);
cg.ellipse(mg+i, mg+j, cas+cwi2);
B =='#E0AB00' || B =='#B40707' ?
cg.stroke(255, R.r_n(90,255)) : cg.stroke(255, 90);
cg.ellipse(mg+i+cwi, mg+j+cwi, cas+cwi2);
}
}
}
function rD(a,b,c,d,A) {
if (A<=0) {
Rr(a,b,c,d);
hl = R.r_d() > 0.5 ? !0 : !1;
let [Wx, Hx] = [R.r_n(0,c), R.r_n(0,d)];
if (hl == !1) {
for (let i = a; i < (c+a); i+=f) {
bL(i, b, i, b + Hx, !1, 60);
}
} else {
for (let i=b; i < (d+b); i+=f) {
bL(a, i, a + Wx, i, !1, 60);
}
}
} else {
let [I, J] = [R.r_d(), R.r_d()];
J > 0.5 ? rD(a, b, c, d*I, A-1) + rD(a, b+(d*I), c, d*(1-I), A-1) :
rD(a, b, c*I, d, A-1) + rD(a+(c*I), b, c*(1-I), d, A-1);
}
}
function bL(x1, y1, x2, y2, C, div) {
var [i,dC, d4, d3] = [1, [], m*0.04, 0.3];
for (var j = 0; j <= lS; j++) {
var [x,y] = [dC * (x2-x1) + randomGaussian()*d3 + x1, dC * (y2-y1) + randomGaussian()*d3 + y1];
cg.strokeWeight(R.r_n(0.5, 8));
C == !0 ? (cg.stroke(254,240,217,50), cg.vertex(x, y)) : (cg.stroke(254,240,217,50),cg.line(x1, y1, x, y));
var [x1, y1, dC] = [x, y, i/d4--];
}
}
function Rr(x, y, w, h) {
cg.beginShape();
cg.noFill();
bL(x, y, x+w, y, !0, 40);
bL(x+w, y, x+w, y+h, !0, 40);
bL(x+w, y+h, x, y+h, !0, 40);
bL(x, y+h, x, y, !0, 40);
cg.endShape();
}
function fL(x1, y1, x2, y2, div) {
var [i,dC, d6, d3] = [1, [], m*0.07, 0.3];
for (var j = 0; j <= 70; j++) {
var [x,y] = [dC * (x2-x1) + randomGaussian()*d3 + x1, dC * (y2-y1) + randomGaussian()*d3 + y1];
cg.stroke (254,240,217,R.r_n(200, 255));
cg.line(x1, y1, x, y);
var [x1, y1, dC] = [x, y, i/d6--];
}
}
function hvL() {
let Ts = R.r_d();
Ts < 0.5 ? WW = W/2 : WW = H*0.7;
for (let i = 0; i < WW; i+=R.r_n(0.125,14)) {
cg.strokeWeight(R.r_n(0.125, 5));
Ts < 0.5 ? fL(W/4+i, R.r_n(200, 210), W/4+i, H-R.r_n(200, 210), 60) :
fL(R.r_n(mg*5, mg*5+10), H*0.15+i, W-R.r_n(mg*5, mg*5+10), H*0.15+i, 60);
}
}
function fL2(x1, y1, x2, y2, div) {
var [i,dC, d6, d3] = [1, [], m*0.06, 0.3];
for (var j = 0; j <= 60; j++) {
var [x,y] = [dC * (x2-x1) + randomGaussian()*d3 + x1, dC * (y2-y1) + randomGaussian()*d3 + y1];
LC < 0.3 ? cg.stroke (254,240,217,R.r_n(10, 55)) : cg.stroke (fr);
cg.line(x1, y1, x, y);
var [x1, y1, dC] = [x, y, i/d6--];
}
}
function fMC() {
cg.push();
cg.scale(1.3);
cg.translate(R.r_n(0, -200), R.r_n(-350, 50));
fC();
cg.filter(BLUR, 0.5);
cg.pop();
}
function fC() {
cg.scale(0.5);
cg.translate(W*0.1,230);
pL();
cg.translate(W*0.79,0);
pL();
cg.translate(0,H*0.67);
pL();
cg.translate(-W*0.8,0);
pL();
}
function pL() {
for (let i = 0; i <= W/6; i+=R.r_n(0.25,7)) {
cg.strokeWeight(R.r_n(0.25, 7));
fL(W*0.415+i, 0+R.r_n(300, 330), W*0.415+i, H-R.r_n(300, 330), 60);
fL(R.r_n(mg*3.75, mg*4+10), H*0.435+i, W-R.r_n(mg*3.75, mg*4+10), H*0.435+i, 60);
}
}
function sh_h() {
cg.push();
const Sh = [-1,0,5];
sx = R.r_c(Sh);
if (sx == 5) {
cg.shearX(sx);
cg.translate(-sx*10, -sx*4.6);
} else if (sx == -1) {
cg.shearX(sx);
cg.translate(22, -15);
} else {
cg.translate(10,-15);
}
for (let i = 0; i < W*0.7; i+=W/10) {
for (let j = 0; j < H*0.7; j+=W/10 ) {
sB(W/6+i,0+j,W/6+i,W/20+j);
}
}
cg.pop();
}
function s_h() {
let x = R.r_i(10,50);
let y = R.r_i(2,4);
for (let i = 0; i < W; i+=x*y) {
for (let j = 0; j < H; j+=x*y) {
sB2(x+i,0+j,x+i,x+j,x, R.r_n(0.125,10));
}
}
}
function sB2(a,b,c,d,e,f) {
for (let i = 0; i <= e; i+=f) {
cg.strokeWeight(R.r_n(0.25, 5));
fL2(a+i, b+R.r_n(0,10), c+i, d+R.r_n(0,10), 60);
}
}
function sB(a,b,c,d) {
for (let i = 0; i <= W/20; i+=R.r_n(0.125,10)) {
cg.strokeWeight(R.r_n(0.25, 5));
fL(a+i, b+R.r_n(200, 210), c+i, d+R.r_n(200, 210), 60);
}
}
function pT() {
let L = 4.5;
for (let i = 0; i <= W; i += L) {
var [a,b] = [R.r_n(-2, 2),R.r_n(-0.75, 0.75)];
cgf.stroke(0, R.r_n(7,9));
cgf.strokeWeight(R.r_n(0.5, 1.75));
cgf.drawingContext.setLineDash([5+a,3+a,6+a,4+a]);
cgf.line(L+i, 0, L+i, H);
cgf.line(L+i+b, 0, L+i+b, H);
}
}
function fR() {
let pl = 10;
let p0 = 0-pl;
cgf.stroke(255);
cgf.noFill();
cgf.strokeWeight(mg+pl*2);
cgf.rect(p0,p0,W+pl,H+pl);
}
function uf() {
var cS = mg;
var cSh = cS/2;
cgf.fill(fr);
cgf.noStroke();
for (let i = 0; i <= H; i+= 1) {
cgf.circle(mg-cSh + R.r_n(-2, 2), mg-cSh*2 + i, cS);
cgf.circle(W-mg+cSh + R.r_n(-2, 2), mg-cSh + i, cS);
cgf.circle(mg-cSh + i, mg-cSh + R.r_n(-2, 2), cS);
cgf.circle(mg-cSh + i, H-mg+cSh + R.r_n(-2, 2), cS);
}
}
function gr(img, sF, aM) {
img.loadPixels();
let Tr = aM * sqrt(sF);
let S = 4 * (img.width * img.pixelDensity()) * (img.height * img.pixelDensity());
let pix = img.pixels;
for (let i = 0; i < S; i += 4) {
var n = -Tr + R.r_d() * Tr * 2;
pix[i] += n;
pix[i + 1] += n;
pix[i + 2] += n;
}
img.updatePixels();
}
function cVc(RD, Nu, Xc, Yc) {
for (let i = 0; i < Nu; i++) {
Xv[i] = Xc + RD * Math.cos(TWO_PI * i/Nu);
Yv[i] = Yc + RD * Math.sin(TWO_PI * i/Nu);
}
cgc.beginShape();
for(let i = 0; i < Nu; i++) {
cgc.curveVertex(Xv[i] + R.r_n(-8, 8), Yv[i] + R.r_n(-8, 8));
}
cgc.endShape(CLOSE);
}
function keyReleased() {
if (key == 's' || key == 'S') {
save('A Tender Count(ing)-' + hash + '.png');
}
}