Advertisement
Guest User

Untitled

a guest
Dec 22nd, 2012
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. oldnode = {}
  2. minetest.register_globalstep(function(dtime)
  3. for _,player in ipairs(minetest.get_connected_players()) do
  4. local pos = player:getpos()
  5. pos.y = pos.y + 0.2
  6. local newnode = minetest.env:get_node(pos).name
  7. if oldnode ~= nil then
  8. if newnode == "default:water_flowing" and oldnode[player:get_player_name()] == "air" or newnode == "default:water_source" and oldnode[player:get_player_name()] == "air" then
  9. for i = 1,math.random(7,20) do
  10. minetest.env:add_entity(pos, "testing:bubble")
  11. end
  12. minetest.sound_play("splash",
  13. {
  14. to_player = player:get_player_name(),
  15. gain = 1.0,
  16. })
  17. end
  18. end
  19. oldnode[player:get_player_name()] = newnode
  20. end
  21. end)
  22.  
  23. bubble = {
  24. physical = false,
  25. collisionbox = {0,0,0,0,0,0},
  26. visual = "sprite",
  27. textures = {"bubble.png"},
  28. timer = 0,
  29. visual_size = {x=0.2, y=0.2}
  30. }
  31. bubble.on_activate = function(self)
  32. local y = math.random()
  33. local z = math.random(-1,1) * math.random()
  34. local x = math.random(-1,1) * math.random()
  35. self.object:setvelocity({x=x,y=y,z=z})
  36. end
  37. bubble.on_step = function(self)
  38. self.timer = self.timer + 0.01
  39. if self.timer > math.random() then
  40. self.object:remove()
  41. end
  42. end
  43. minetest.register_entity("testing:bubble", bubble)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement