added smoke and mesecons support
15
README.txt
|
@ -28,7 +28,9 @@ Modders Guide
|
|||
----------------------------------
|
||||
|
||||
|
||||
If you want particles in your mod then simply add this line:
|
||||
Dig Particles:
|
||||
|
||||
Add this line to your mod:
|
||||
|
||||
particles.register_dig_particle(node,texture,[params])
|
||||
- node = the name of the node (your_mod:your_node)
|
||||
|
@ -40,6 +42,17 @@ create particles of wood after digging a bookshelf:
|
|||
particles.register_dig_particle("default:bookshelf","default_wood")
|
||||
|
||||
|
||||
Smoke Particles and Signal Bubbles:
|
||||
|
||||
Add smokes=1 or signalbubbles=1 to the groups in the node definition.
|
||||
|
||||
EG:
|
||||
minetest.register_node("your_mod:your_item", {
|
||||
description = "Your Item",
|
||||
groups = {smokes=1},
|
||||
})
|
||||
|
||||
|
||||
|
||||
----------------------------------
|
||||
License
|
||||
|
|
99
init.lua
|
@ -13,48 +13,73 @@ MAIN LOADER
|
|||
-- load api
|
||||
dofile(minetest.get_modpath("particles").."/api.lua")
|
||||
|
||||
-- register dig particles for default nodes
|
||||
particles.register_dig_particle("default:bookshelf","default_wood")
|
||||
particles.register_dig_particle("default:brick","default_brick")
|
||||
particles.register_dig_particle("default:cactus","default_cactus")
|
||||
particles.register_dig_particle("default:chest","default_wood")
|
||||
particles.register_dig_particle("default:chest_locked","default_wood")
|
||||
particles.register_dig_particle("default:clay","default_clay")
|
||||
particles.register_dig_particle("default:cobble","default_cobble")
|
||||
particles.register_dig_particle("default:desert_sand","default_desert_sand")
|
||||
particles.register_dig_particle("default:desert_stone","default_desert_stone")
|
||||
particles.register_dig_particle("default:dirt","default_dirt")
|
||||
particles.register_dig_particle("default:dirt_with_grass","default_dirt")
|
||||
particles.register_dig_particle("default:dirt_with_grass_footsteps","default_dirt")
|
||||
particles.register_dig_particle("default:dry_shrub","default_dirt")
|
||||
particles.register_dig_particle("default:fence_wood","default_wood")
|
||||
particles.register_dig_particle("default:furnace","default_cobble")
|
||||
particles.register_dig_particle("default:glass","default_glass")
|
||||
particles.register_dig_particle("default:gravel","default_gravel")
|
||||
particles.register_dig_particle("default:junglegrass","default_dirt")
|
||||
particles.register_dig_particle("default:jungletree","default_jungletree")
|
||||
particles.register_dig_particle("default:ladder","default_wood")
|
||||
particles.register_dig_particle("default:leaves","default_leaves")
|
||||
particles.register_dig_particle("default:mese","default_mese")
|
||||
particles.register_dig_particle("default:mossycobble","default_mossycobble")
|
||||
particles.register_dig_particle("default:papyrus","default_papyrus")
|
||||
particles.register_dig_particle("default:rail","default_rail")
|
||||
particles.register_dig_particle("default:sand","default_sand")
|
||||
particles.register_dig_particle("default:sandstone","default_sandstone")
|
||||
particles.register_dig_particle("default:sapling","default_dirt")
|
||||
particles.register_dig_particle("default:sign_wall","default_wood")
|
||||
particles.register_dig_particle("default:steelblock","default_steelblock")
|
||||
particles.register_dig_particle("default:stone","default_stone")
|
||||
particles.register_dig_particle("default:stone_with_coal","default_stone")
|
||||
particles.register_dig_particle("default:stone_with_iron","default_stone")
|
||||
particles.register_dig_particle("default:torch","default_wood")
|
||||
particles.register_dig_particle("default:tree","default_tree")
|
||||
particles.register_dig_particle("default:wood","default_wood")
|
||||
-- register register files for mods
|
||||
dofile(minetest.get_modpath("particles").."/mod_default.lua")
|
||||
if minetest.get_modpath("mesecons") ~= nil then
|
||||
dofile(minetest.get_modpath("particles").."/mod_mesecons.lua")
|
||||
end
|
||||
|
||||
-- register_on_dignode
|
||||
minetest.register_on_dignode(function(pos, oldnode, digger)
|
||||
particles.on_dignode(pos, oldnode, digger)
|
||||
end)
|
||||
|
||||
-- register smoke particle
|
||||
minetest.register_entity("particles:smoke", {
|
||||
physical = true,
|
||||
visual_size = {x=0.25, y=0.25},
|
||||
collisionbox = {-0.01,-0.01,-0.01,0.01,0.01,0.01},
|
||||
visual = "sprite",
|
||||
textures = {"smoke_puff.png"},
|
||||
on_step = function(self, dtime)
|
||||
self.object:setacceleration({x=0, y=0.5, z=0})
|
||||
self.timer = self.timer + dtime
|
||||
if self.timer > 3 then
|
||||
self.object:remove()
|
||||
end
|
||||
end,
|
||||
timer = 0,
|
||||
})
|
||||
|
||||
-- register smoke abm
|
||||
minetest.register_abm({
|
||||
nodenames = {"group:smokes","default:torch"},
|
||||
interval = 5,
|
||||
chance = 5,
|
||||
action = function(pos)
|
||||
minetest.env:add_entity({x=pos.x+math.random()*0.5,y=pos.y+0.75,z=pos.z+math.random()*0.5}, "particles:smoke")
|
||||
end,
|
||||
})
|
||||
|
||||
-- register signalbubble
|
||||
minetest.register_entity("particles:signalbubble", {
|
||||
physical = true,
|
||||
visual_size = {x=0.10, y=0.10},
|
||||
collisionbox = {-0.01,-0.01,-0.01,0.01,0.01,0.01},
|
||||
visual = "sprite",
|
||||
textures = {"particles_signalbubble.png"},
|
||||
timer = 0,
|
||||
lifetime = 4,
|
||||
on_step = function(self, dtime)
|
||||
self.timer = self.timer + dtime
|
||||
if self.timer > self.lifetime then
|
||||
self.object:remove()
|
||||
end
|
||||
end,
|
||||
on_activate = function(self, staticdata)
|
||||
self.object:setacceleration({x=0, y=0.05, z=0})
|
||||
end,
|
||||
})
|
||||
|
||||
-- register signalbubble abm
|
||||
minetest.register_abm({
|
||||
nodenames = {"group:signalbubbles","mesecons:mesecon_on","mesecons:wall_lever_on","mesecons:mesecon_torch_on"},
|
||||
interval = 1,
|
||||
chance = 5,
|
||||
action = function(pos)
|
||||
minetest.env:add_entity({x=pos.x,y=pos.y,z=pos.z}, "particles:signalbubble")
|
||||
end,
|
||||
})
|
||||
|
||||
-- log that we started
|
||||
minetest.log("action", "[MOD]"..minetest.get_current_modname().." -- loaded from "..minetest.get_modpath(minetest.get_current_modname()))
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
--[[
|
||||
|
||||
Particles for Minetest
|
||||
|
||||
Copyright (c) 2012 cornernote, Brett O'Donnell <cornernote@gmail.com>
|
||||
Source Code: https://github.com/cornernote/minetest-particles
|
||||
License: GPLv3
|
||||
|
||||
DEFAULT MOD
|
||||
|
||||
]]--
|
||||
|
||||
-- register dig particles for default nodes
|
||||
particles.register_dig_particle("default:bookshelf","default_wood")
|
||||
particles.register_dig_particle("default:brick","default_brick")
|
||||
particles.register_dig_particle("default:cactus","default_cactus")
|
||||
particles.register_dig_particle("default:chest","default_wood")
|
||||
particles.register_dig_particle("default:chest_locked","default_wood")
|
||||
particles.register_dig_particle("default:clay","default_clay")
|
||||
particles.register_dig_particle("default:cobble","default_cobble")
|
||||
particles.register_dig_particle("default:desert_sand","default_desert_sand")
|
||||
particles.register_dig_particle("default:desert_stone","default_desert_stone")
|
||||
particles.register_dig_particle("default:dirt","default_dirt")
|
||||
particles.register_dig_particle("default:dirt_with_grass","default_dirt")
|
||||
particles.register_dig_particle("default:dirt_with_grass_footsteps","default_dirt")
|
||||
particles.register_dig_particle("default:dry_shrub","default_dirt")
|
||||
particles.register_dig_particle("default:fence_wood","default_wood")
|
||||
particles.register_dig_particle("default:furnace","default_cobble")
|
||||
particles.register_dig_particle("default:glass","default_glass")
|
||||
particles.register_dig_particle("default:gravel","default_gravel")
|
||||
particles.register_dig_particle("default:junglegrass","default_dirt")
|
||||
particles.register_dig_particle("default:jungletree","default_jungletree")
|
||||
particles.register_dig_particle("default:ladder","default_wood")
|
||||
particles.register_dig_particle("default:leaves","default_leaves")
|
||||
particles.register_dig_particle("default:mese","default_mese")
|
||||
particles.register_dig_particle("default:mossycobble","default_mossycobble")
|
||||
particles.register_dig_particle("default:papyrus","default_papyrus")
|
||||
particles.register_dig_particle("default:rail","default_rail")
|
||||
particles.register_dig_particle("default:sand","default_sand")
|
||||
particles.register_dig_particle("default:sandstone","default_sandstone")
|
||||
particles.register_dig_particle("default:sapling","default_dirt")
|
||||
particles.register_dig_particle("default:sign_wall","default_wood")
|
||||
particles.register_dig_particle("default:steelblock","default_steelblock")
|
||||
particles.register_dig_particle("default:stone","default_stone")
|
||||
particles.register_dig_particle("default:stone_with_coal","default_stone")
|
||||
particles.register_dig_particle("default:stone_with_iron","default_stone")
|
||||
particles.register_dig_particle("default:torch","default_wood")
|
||||
particles.register_dig_particle("default:tree","default_tree")
|
||||
particles.register_dig_particle("default:wood","default_wood")
|
|
@ -0,0 +1,51 @@
|
|||
--[[
|
||||
|
||||
Particles for Minetest
|
||||
|
||||
Copyright (c) 2012 cornernote, Brett O'Donnell <cornernote@gmail.com>
|
||||
Source Code: https://github.com/cornernote/minetest-particles
|
||||
License: GPLv3
|
||||
|
||||
MESECONS MOD
|
||||
|
||||
]]--
|
||||
|
||||
|
||||
-- register dig particles for mesecons nodes
|
||||
particles.register_dig_particle("mesecons_powerplant:power_plant","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_random:removestone","particles_gray")
|
||||
particles.register_dig_particle("mesecons_lamp:lamp_off","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_lamp:lamp_on","particles_yellow")
|
||||
particles.register_dig_particle("mesecons:mesecon_off","particles_yellow")
|
||||
particles.register_dig_particle("mesecons:mesecon_on","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_detector:object_detector_off","particles_lightgray")
|
||||
particles.register_dig_particle("mesecons_detector:object_detector_on","particles_lightgray")
|
||||
particles.register_dig_particle("mesecons_wireless:wireless_inverter_on","particles_brown")
|
||||
particles.register_dig_particle("mesecons_wireless:wireless_inverter_off","particles_brown")
|
||||
particles.register_dig_particle("mesecons_wireless:wireless_receiver_on","particles_brown")
|
||||
particles.register_dig_particle("mesecons_wireless:wireless_receiver_off","particles_brown")
|
||||
particles.register_dig_particle("mesecons_wireless:wireless_transmitter_on","particles_brown")
|
||||
particles.register_dig_particle("mesecons_wireless:wireless_transmitter_off","particles_brown")
|
||||
particles.register_dig_particle("mesecons_switch:mesecon_switch_off","particles_gray")
|
||||
particles.register_dig_particle("mesecons_switch:mesecon_switch_off","particles_gray")
|
||||
particles.register_dig_particle("mesecons_button:button_on","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_button:button_off","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_pistons:piston_normal","particles_brown")
|
||||
particles.register_dig_particle("mesecons_pistons:piston_sticky","particles_brown")
|
||||
particles.register_dig_particle("mesecons_blinkyplant:blinky_plant_off","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_blinkyplant:blinky_plant_on","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_torch:mesecon_torch_off","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_torch:mesecon_torch_on","particles_yellow")
|
||||
particles.register_dig_particle("mesecons_hydroturbine:hydro_turbine_off","particles_gray")
|
||||
particles.register_dig_particle("mesecons_hydroturbine:hydro_turbine_on","particles_gray")
|
||||
particles.register_dig_particle("mesecons_pressureplates:pressure_plate_stone_off","particles_gray")
|
||||
particles.register_dig_particle("mesecons_pressureplates:pressure_plate_stone_on","particles_gray")
|
||||
particles.register_dig_particle("mesecons_pressureplates:pressure_plate_wood_off","particles_brown")
|
||||
particles.register_dig_particle("mesecons_pressureplates:pressure_plate_wood_on","particles_brown")
|
||||
particles.register_dig_particle("mesecons_temperest:mesecon_socket_off","particles_gray")
|
||||
particles.register_dig_particle("mesecons_temperest:mesecon_socket_on","particles_red")
|
||||
particles.register_dig_particle("mesecons_temperest:mesecon_inverter_off","particles_gray")
|
||||
particles.register_dig_particle("mesecons_temperest:mesecon_inverter_on","particles_red")
|
||||
particles.register_dig_particle("mesecons_temperest:mesecon_plug","particles_black")
|
||||
particles.register_dig_particle("mesecons_movestones:movestone","particles_gray")
|
||||
particles.register_dig_particle("mesecons_movestones:sticky_movestone","particles_gray")
|
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |
After Width: | Height: | Size: 200 B |