SOURCE / PINNED RELEASE
Made of little things.
Powder Tool V600Billion
- Release
- 142767edcab8…
- Author-recorded commit
- 6d92971effd0…
- License
- LICENSE
- Author’s source reference
- nostr://npub1fllw8kw0thjj55wds0uugcnp5kej2nfxd36eruq39d56wwz8r44q5q78wj/wss%3A%2F%2Fgit.napplet.soy%2F/powder-toy
Archive hash verified: ed7d6a8ea7083197…. The source-to-build association is the author’s claim; it has not been independently rebuilt.
-- title: Thunderstorm
-- icon: ⛈️
-- blurb: Rain and lightning over a village; the church's metal spire draws the strikes.
-- hint: Lightning sets wood on fire. Draw LIGH yourself: the brush size sets its strength.
-- view: 4
-- thumb: 6
-- snap: sim.partCreate(-1, 270, 140, elem.DEFAULT_PT_LIGH, 34)
local WATR, WOOD, PLNT, BRCK = E.DEFAULT_PT_WATR, E.DEFAULT_PT_WOOD, E.DEFAULT_PT_PLNT, E.DEFAULT_PT_BRCK
walls(0, 372, 611, 383)
box(0, 352, 611, 371, E.DEFAULT_PT_STNE)
set(0, 352, 611, 355, "dcolour", 0xFF3F7D2C)
-- Clouds: diamond (nothing burns or breaks it), painted grey
for n = 1, 16 do
disc(math.random(20, 590), math.random(12, 44), math.random(10, 22), E.DEFAULT_PT_DMND)
end
set(0, 0, 611, 70, "dcolour", 0xFF3A3F4A)
-- Village: houses, a church with a metal spire, trees
for _, hx in ipairs({ 40, 110, 400, 470 }) do
box(hx, 322, hx + 40, 351, BRCK)
for k = 0, 12 do line(hx - 4 + k, 321 - k, hx + 44 - k, 321 - k, BRCK) end
set(hx - 4, 309, hx + 44, 321, "dcolour", 0xFF8E3B2E)
end
box(250, 280, 290, 351, BRCK)
box(262, 220, 278, 279, BRCK)
for k = 0, 8 do line(262 + k, 219 - k * 3, 278 - k, 219 - k * 3, BRCK) end
set(262, 195, 278, 219, "dcolour", 0xFF8E3B2E)
box(269, 160, 271, 195, E.DEFAULT_PT_METL)
for _, tx in ipairs({ 190, 215, 330, 352, 540, 570 }) do
box(tx, 318, tx + 3, 351, WOOD)
disc(tx + 1, 310, 11, PLNT)
end
-- Rain, and now and then a bolt
local frame = 0
every(function()
frame = frame + 1
for n = 1, 5 do sim.partCreate(-1, math.random(0, 611), 76, WATR) end
if frame % 150 == 0 then
if math.random() < 0.4 then
sim.partCreate(-1, 270, 140, E.DEFAULT_PT_LIGH, 30)
else
sim.partCreate(-1, math.random(20, 590), 72, E.DEFAULT_PT_LIGH, math.random(26, 38))
end
end
end)
