JavaScript, 680 ไบต์
ฉันได้ทำสิ่งนี้เสร็จแล้วสำหรับการแข่งขันครั้งแรกซึ่งมีการเปลี่ยนแปลงกฎอย่างมาก นี่ไม่ใช่รหัสสั้นที่สุดที่คุณสามารถทำได้ มันถูกออกแบบมาสำหรับการประกวดความนิยมและสร้างพิกเซล favicon ดั้งเดิมทีละพิกเซล มันมีคุณสมบัติเพิ่มเติมอีกด้วย :)
f=c=>{x=(d=document).body.appendChild(d.createElement`canvas`).getContext`2d`;if(c.b)x.scale(4,4);x.fillStyle=c.m?'#2d2d2d':'#62b0df';x.fillRect(0,0,16,16);x.fillStyle='#fff';for(i=0;i<(w=[0,0,1,0,14,0,15,0,0,11,15,11,0,12,1,12,14,12,15,12,0,13,1,13,2,13,3,13,4,13,5,13,6,13,7,13,11,13,12,13,13,13,14,13,15,13,0,14,1,14,2,14,3,14,4,14,5,14,6,14,7,14,10,14,11,14,12,14,13,14,14,14,15,14,0,15,1,15,2,15,3,15,4,15,5,15,6,15,7,15,9,15,10,15,11,15,12,15,13,15,14,15,15,15,1,4,2,4,3,4,7,4,8,4,12,4,13,4,14,4,1,5,4,5,6,5,9,5,11,5,1,6,2,6,3,6,6,6,11,6,13,6,14,6,1,7,6,7,9,7,11,7,14,7,1,8,7,8,8,8,12,8,13,8,]).length;i++)(t=a=>setTimeout(_=>x.fillRect(w[a++],w[a++],1,1),(c.a||0)*i))(i++)}
คุณสามารถเรียกใช้ฟังก์ชันด้วยพารามิเตอร์มากถึงสามพารามิเตอร์:
f({});
f({m:true});
f({b:true});
f({a:50});
f({m:true,b:true,a:50});
m
ไปเมตาและเปลี่ยนสีตาม และถ้าคุณพบว่ามันมีขนาดเล็กใช้งานb
เพื่อ supersize ได้จาก16x16pxเพื่อ64x64px ในที่สุดแอนิเมชั่นa
โลโก้เหมือนมันถูกจารึกไว้ในกระดานสีน้ำเงิน ค่าคือความเร็วสำหรับแต่ละภาพเคลื่อนไหว
Ungolfed
f=c=>{
x=(d=document).body.appendChild(d.createElement`canvas`).getContext`2d`;
if (c.b) x.scale(4,4);
x.fillStyle = c.m?'#2d2d2d':'#62b0df';
x.fillRect(0,0,16,16);
x.fillStyle='#fff';
for(i=0;i<(w=[0,0,1,0,14,0,15,0,0,11,15,11,0,12,1,12,14,12,15,12,0,13,1,13,2,13,3,13,4,13,5,13,6,13,7,13,11,13,12,13,13,13,14,13,15,13,0,14,1,14,2,14,3,14,4,14,5,14,6,14,7,14,10,14,11,14,12,14,13,14,14,14,15,14,0,15,1,15,2,15,3,15,4,15,5,15,6,15,7,15,9,15,10,15,11,15,12,15,13,15,14,15,15,15,1,4,2,4,3,4,7,4,8,4,12,4,13,4,14,4,1,5,4,5,6,5,9,5,11,5,1,6,2,6,3,6,6,6,11,6,13,6,14,6,1,7,6,7,9,7,11,7,14,7,1,8,7,8,8,8,12,8,13,8,]).length;i++)
(t=a=>setTimeout(_=>x.fillRect(w[a++],w[a++],1,1),(c.a||0)*i)
)(i++);
}
เอาท์พุต
ค่าเริ่มต้น
ภาพเคลื่อนไหว