Use particlespawners for better performance (sponge particles)

This commit is contained in:
NO11 2021-11-12 14:09:59 +00:00
parent 740f7583ef
commit 2a08f31435

View File

@ -115,16 +115,22 @@ function place_wet_sponge(itemstack, placer, pointed_thing)
if mcl_worlds.pos_to_dimension(pointed_thing.above) == "nether" then if mcl_worlds.pos_to_dimension(pointed_thing.above) == "nether" then
minetest.item_place_node(ItemStack("mcl_sponges:sponge"), placer, pointed_thing) minetest.item_place_node(ItemStack("mcl_sponges:sponge"), placer, pointed_thing)
local pos = pointed_thing.above local pos = pointed_thing.above
for n = 0, 25 do
minetest.add_particle({ for n = 1, 5 do
pos = {x = pos.x + math.random(-1, 1)*math.random()/2, y = pos.y + 0.6, z = pos.z + math.random(-1, 1)*math.random()/2}, minetest.add_particlespawner({
velocity = {x = 0, y = math.random(), z = 0}, amount = 5,
acceleration = {x=0, y=0, z=0}, time = 0.1,
expirationtime = math.random(), minpos = vector.offset(pos, -0.5, 0.6, -0.5),
maxpos = vector.offset(pos, 0.5, 0.6, 0.5),
minvel = vector.new(0, 0.1, 0),
maxvel = vector.new(0, 1, 0),
minexptime = 0.1,
maxexptime = 1,
minsize = 2,
maxsize = 5,
collisiondetection = false, collisiondetection = false,
vertical = false, vertical = false,
size = math.random(2, 5), texture = "mcl_particles_sponge" .. n .. ".png",
texture = "mcl_particles_sponge"..math.random(1, 5)..".png",
}) })
end end
if not minetest.is_creative_enabled(name) then if not minetest.is_creative_enabled(name) then