Twenty pieces of a retro desktop: Desktop, DesktopIcon, Taskbar, StartMenu, AppWindow, Calculator, Notepad, Minesweeper, ControlPanel, TrayIcons, ShutdownScreen, BootScreen, Screensaver, Snake, Dock, RunDialog, DiskDefrag, WallpaperPicker, ClipboardPanel and LockScreen. The calculator really adds up and calls division by zero GAME OVER; Minesweeper and Snake are playable, first click always safe; START cascades its submenus without moving the rows already open; windows drag by whole dots; the screensaver's logo changes color at each wall and sparkles in a corner; the defragmenter is oddly soothing. Clocks that step back hold at zero, and typed or copied text never reaches the log. icon.Bomb is the new 12x12 mine.
294 lines
4.7 KiB
Go
294 lines
4.7 KiB
Go
package icon
|
|
|
|
import "git.zacharyzhang.com/ZacharyZhang-NY/8bitMyGoUI/pixel"
|
|
|
|
// Items keep their own colors; '#' still takes the ink.
|
|
var (
|
|
Coin = pixel.MustSprite(`
|
|
............
|
|
...eeeeee...
|
|
..eyyyyyye..
|
|
.eyllyyyyye.
|
|
.eylyyeyyye.
|
|
.eylyyeyyse.
|
|
.eyyyyeyyse.
|
|
.eyyyyeyyse.
|
|
.eyyyyyyyse.
|
|
..essssssse.
|
|
...eeeeeee..
|
|
............`)
|
|
Gem = pixel.MustSprite(`
|
|
............
|
|
....eeee....
|
|
...elllcee..
|
|
..elcccccse.
|
|
.eeeeeeeeee.
|
|
.elcccccsse.
|
|
..elcccsse..
|
|
...elcsse...
|
|
....else....
|
|
.....ee.....
|
|
............
|
|
............`)
|
|
Crystal = pixel.MustSprite(`
|
|
.....ee.....
|
|
....e##e....
|
|
...e#l##e...
|
|
..e#l####e..
|
|
..e#l###se..
|
|
..e#l###se..
|
|
..e#l###se..
|
|
..e#l###se..
|
|
..e#l##sse..
|
|
...e#lsse...
|
|
....e#se....
|
|
.....ee.....`)
|
|
Bomb = pixel.MustSprite(`
|
|
......#.#...
|
|
.......#....
|
|
......e.....
|
|
.....e......
|
|
...eeeee....
|
|
..ekkkkke...
|
|
.ekllkkkke..
|
|
.eklkkkkke..
|
|
.ekkkkkkke..
|
|
..ekkkkke...
|
|
...eeeee....
|
|
............`)
|
|
Potion = pixel.MustSprite(`
|
|
....eeee....
|
|
....eeee....
|
|
....elne....
|
|
....elne....
|
|
...ellnne...
|
|
..elrrrrre..
|
|
.elrrrrrrre.
|
|
.elrrrrrrre.
|
|
.errrrrrrse.
|
|
.errrrrrsse.
|
|
..essssssse.
|
|
...eeeeeee..`)
|
|
Sword = pixel.MustSprite(`
|
|
.........eee
|
|
........elle
|
|
.......elle.
|
|
......elle..
|
|
.....elle...
|
|
.ee.elle....
|
|
.eyelle.....
|
|
..eyle......
|
|
..eyye......
|
|
.eyeeye.....
|
|
eye..e......
|
|
ee..........`)
|
|
Shield = pixel.MustSprite(`
|
|
............
|
|
.eeeeeeeeee.
|
|
.elllaaaase.
|
|
.ellaaaaase.
|
|
.elaaaaaase.
|
|
.elaaaaaase.
|
|
.elaaaaaase.
|
|
..elaaaase..
|
|
..elaaaase..
|
|
...elaase...
|
|
....esse....
|
|
.....ee.....`)
|
|
Chest = pixel.MustSprite(`
|
|
............
|
|
..eeeeeeee..
|
|
.esslsslsse.
|
|
.esssssssse.
|
|
.eeeeyyeeee.
|
|
.essseyesse.
|
|
.essseeesse.
|
|
.esssssssse.
|
|
.esssssssse.
|
|
.eeeeeeeeee.
|
|
............
|
|
............`)
|
|
Crown = pixel.MustSprite(`
|
|
............
|
|
............
|
|
.e...ee...e.
|
|
.ee..ee..ee.
|
|
.eye.ee.eye.
|
|
.eyyeyyeyye.
|
|
.eyyyyyyyye.
|
|
.eylyryylye.
|
|
.eyyyyyyyye.
|
|
.essssssse.e
|
|
..eeeeeeee..
|
|
............`)
|
|
Trophy = pixel.MustSprite(`
|
|
............
|
|
.eeeeeeeeee.
|
|
eyelyyyyyeye
|
|
eyelyyyyyeee
|
|
.eelyyyyyee.
|
|
..elyyyyse..
|
|
...eyyyse...
|
|
....eyye....
|
|
.....ee.....
|
|
....eyyee...
|
|
..eesssssee.
|
|
..eeeeeeee..`)
|
|
Skull = pixel.MustSprite(`
|
|
............
|
|
...eeeeeee..
|
|
..ellllllse.
|
|
.elllllllse.
|
|
.ellkklkkse.
|
|
.ellkklkkse.
|
|
.elllllllse.
|
|
..elleelse..
|
|
...elllse...
|
|
...eleeee...
|
|
....eeee....
|
|
............`)
|
|
Scroll = pixel.MustSprite(`
|
|
............
|
|
.eeeeeeeeee.
|
|
elllllllllle
|
|
.eeeeeeeeeee
|
|
.elllllllle.
|
|
.elseeeslle.
|
|
.elllllllle.
|
|
.elseeeelle.
|
|
.elllllllle.
|
|
.eeeeeeeeeee
|
|
elllllllllle
|
|
.eeeeeeeeee.`)
|
|
Flame = pixel.MustSprite(`
|
|
.....e......
|
|
....ere.....
|
|
....erre....
|
|
...erryre...
|
|
..erryyyre..
|
|
..eryyyyre..
|
|
.erryylyyre.
|
|
.eryylllyre.
|
|
.eryylllyre.
|
|
..eryylyre..
|
|
...eeeeee...
|
|
............`)
|
|
Drop = pixel.MustSprite(`
|
|
.....ee.....
|
|
.....ee.....
|
|
....ecce....
|
|
....ecce....
|
|
...elcccee..
|
|
..elcccccse.
|
|
..elcccccse.
|
|
..eccccccse.
|
|
..ecccccsse.
|
|
...essssse..
|
|
....eeeee...
|
|
............`)
|
|
Leaf = pixel.MustSprite(`
|
|
............
|
|
.......eeee.
|
|
.....eegggge
|
|
....egglggge
|
|
...egglgggse
|
|
..egglgggse.
|
|
..eglgggse..
|
|
.eglgggse...
|
|
.eggggsee...
|
|
.eeeeee.....
|
|
.e..........
|
|
e...........`)
|
|
Flower = pixel.MustSprite(`
|
|
.....ee.....
|
|
....emme....
|
|
..eemmmmee..
|
|
.emmeeeemme.
|
|
emmmeyyemmme
|
|
emmmeyyemmme
|
|
.emmeeeemme.
|
|
..eemmmmee..
|
|
....emme....
|
|
....ege.....
|
|
....egge....
|
|
....eee.....`)
|
|
Sun = pixel.MustSprite(`
|
|
.....ee.....
|
|
.e...ee...e.
|
|
..e......e..
|
|
....eeee....
|
|
...eyyyye...
|
|
eeeyylyyyeee
|
|
eeeylyyyyeee
|
|
...eyyyye...
|
|
....eeee....
|
|
..e......e..
|
|
.e...ee...e.
|
|
.....ee.....`)
|
|
Moon = pixel.MustSprite(`
|
|
............
|
|
....eeee....
|
|
...eyyye....
|
|
..eyyee.....
|
|
.eyye.......
|
|
.eyye.......
|
|
.eyye.......
|
|
.eyyye......
|
|
..eyyyeeee..
|
|
...eyyyyye..
|
|
....eeeee...
|
|
............`)
|
|
Cloud = pixel.MustSprite(`
|
|
............
|
|
............
|
|
....eeee....
|
|
...elllle...
|
|
.eeellllee..
|
|
ellllllllle.
|
|
elllllllllse
|
|
ellllllllsse
|
|
.esssssssse.
|
|
..eeeeeeee..
|
|
............
|
|
............`)
|
|
Snowflake = pixel.MustSprite(`
|
|
.....ee.....
|
|
..e.ecce.e..
|
|
.eceecceece.
|
|
..ececcece..
|
|
.eeecccceee.
|
|
ecccclccccce
|
|
eccccclcccce
|
|
.eeecccceee.
|
|
..ececcece..
|
|
.eceecceece.
|
|
..e.ecce.e..
|
|
.....ee.....`)
|
|
Bolt = pixel.MustSprite(`
|
|
......eeee..
|
|
.....eyyye..
|
|
....eyyye...
|
|
...eyyye....
|
|
..eyyyyeeee.
|
|
..eeeyyyyye.
|
|
....eyyyye..
|
|
...eyyyee...
|
|
..eyyee.....
|
|
..eye.......
|
|
.eee........
|
|
............`)
|
|
Palette = pixel.MustSprite(`
|
|
............
|
|
...eeeeee...
|
|
..elllllle..
|
|
.elreleglle.
|
|
.ellllllclle
|
|
.elmelleelle
|
|
.ellllleeele
|
|
.ellyelle.e.
|
|
..elllle....
|
|
...eeee.....
|
|
............
|
|
............`)
|
|
)
|