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