Differences From
Artifact [4f39d5643f]:
217 217 for _,f in pairs(s.impacts) do if f.subject == t then f.effect:stop() end end
218 218 for _,f in pairs(s.vfx) do
219 219 if f.subject == t then minetest.delete_particlespawner(f.handle) end
220 220 end
221 221 s.subjects[si] = nil
222 222 end
223 223 local interpret_timespec = function(when)
224 + if when == nil then return 0 end
224 225 local t if type(when) == 'number' then
225 226 t = s.duration * when
226 227 else
227 - t = (s.duration * (when.whence or 0)) + when.secs
228 + t = (s.duration * (when.whence or 0)) + (when.secs or 0)
228 229 end
229 230 if t then return math.min(s.duration,math.max(0,t)) end
230 231
231 232 log.err('invalid timespec ' .. dump(when))
232 233 return 0
233 234 end
234 235 s.queue = function(when,fn)