Я думал, что сценарий lua (начатый Конки ) будет хорошим инструментом для этой работы. В интернете есть множество хитрых примеров (например, здесь и здесь ), которые можно использовать для того, чтобы снег на вашем рабочем столе появлялся, например, только когда на улице идет снег.
Я видел на форуме, что какой-то парень опубликовал несколько видеоуроков о том, как написать сценарий lua для фейерверков и снега, но, к сожалению, он забрал их с YouTube ...
Однако есть некоторый оставшийся код, который можно использовать в качестве шаблона, но, к сожалению, он не работает изолированно.
Если бы у меня было время и желание изучить Луа и исправить это самостоятельно, вот что я бы сделал:
- Установить конки. Mint, вероятно, имеет его в своем менеджере пакетов.
- Сохраните этот фрагмент снегопада где-нибудь (например, ~ / .conky / lua / snowfall.lua)
Добавьте следующие строки в ~ / .conkyrc
lua_load /path/to/home/.conky/lua/snowfall.lua
lua_draw_hook_pre snowday
Беги conky
. Ищите ошибки и отлаживайте / комментируйте строки / добавляйте функции, где это необходимо ...
Это основа snowday
функции, которую можно использовать conky
. Я хотел бы увидеть эту работу на самом деле!
Чего не хватает? В timer
и Vector
классы, по крайней мере ..
function conky_snowday()
timer.Stop("fuller")
local emt2 = ParticleEmitter(Vector(0,0,400))
timer.Create("fuller", 0.1, 0, function()
for i=1, 1000 do
local snowparty = emt2:Add("particle/snow",LocalPlayer():GetPos() + Vector(0,0,1000))
snowparty:SetVelocity(Vector(math.random(-700,700),math.random(-700,700),math.random(-300,-100)))
snowparty:SetDieTime(4)
snowparty:SetStartAlpha(0)
snowparty:SetEndAlpha(255)
snowparty:SetStartSize(5)
snowparty:SetEndSize(math.random(0,3))
snowparty:SetColor(255,255,255)
snowparty:SetRoll(math.random(0,360))
end
end)
emt2:Finish()
end
make
make clean
make install