pineapple.lua 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. local S = farming.intllib
  2. -- pineapple top
  3. minetest.register_craftitem("farming:pineapple_top", {
  4. description = S("Pineapple Top"),
  5. inventory_image = "farming_pineapple_top.png",
  6. groups = {seed = 2, flammable = 2},
  7. on_place = function(itemstack, placer, pointed_thing)
  8. return farming.place_seed(itemstack, placer, pointed_thing, "farming:pineapple_1")
  9. end,
  10. })
  11. -- pineapple
  12. minetest.register_node("farming:pineapple", {
  13. description = S("Pineapple"),
  14. drawtype = "plantlike",
  15. tiles = {"farming_pineapple.png"},
  16. inventory_image = "farming_pineapple.png",
  17. wield_image = "farming_pineapple.png",
  18. paramtype = "light",
  19. sunlight_propagates = true,
  20. walkable = false,
  21. selection_box = {
  22. type = "fixed",
  23. fixed = {-0.27, -0.37, -0.27, 0.27, 0.44, 0.27}
  24. },
  25. groups = {food_pineapple = 1, fleshy = 3, dig_immediate = 3, flammable = 2},
  26. })
  27. -- pineapple
  28. minetest.register_craftitem("farming:pineapple_ring", {
  29. description = S("Pineapple Ring"),
  30. inventory_image = "farming_pineapple_ring.png",
  31. groups = {food_pineapple_ring = 1, flammable = 2},
  32. on_use = minetest.item_eat(1),
  33. })
  34. minetest.register_craft( {
  35. output = "farming:pineapple_ring 5",
  36. type = "shapeless",
  37. recipe = {"group:food_pineapple"},
  38. replacements = {{"farming:pineapple", "farming:pineapple_top"}}
  39. })
  40. -- crop definition
  41. local crop_def = {
  42. drawtype = "plantlike",
  43. visual_scale = 1.5,
  44. tiles = {"farming_pineapple_1.png"},
  45. paramtype = "light",
  46. sunlight_propagates = true,
  47. walkable = false,
  48. buildable_to = true,
  49. drop = "",
  50. selection_box = farming.select,
  51. groups = {
  52. snappy = 3, flammable = 2, plant = 1, attached_node = 1,
  53. not_in_creative_inventory = 1, growing = 1
  54. },
  55. sounds = default.node_sound_leaves_defaults()
  56. }
  57. -- stage 1
  58. minetest.register_node("farming:pineapple_1", table.copy(crop_def))
  59. -- stage 2
  60. crop_def.tiles = {"farming_pineapple_2.png"}
  61. minetest.register_node("farming:pineapple_2", table.copy(crop_def))
  62. -- stage 3
  63. crop_def.tiles = {"farming_pineapple_3.png"}
  64. minetest.register_node("farming:pineapple_3", table.copy(crop_def))
  65. -- stage 4
  66. crop_def.tiles = {"farming_pineapple_4.png"}
  67. minetest.register_node("farming:pineapple_4", table.copy(crop_def))
  68. -- stage 5
  69. crop_def.tiles = {"farming_pineapple_5.png"}
  70. minetest.register_node("farming:pineapple_5", table.copy(crop_def))
  71. -- stage 6
  72. crop_def.tiles = {"farming_pineapple_6.png"}
  73. minetest.register_node("farming:pineapple_6", table.copy(crop_def))
  74. -- stage 7
  75. crop_def.tiles = {"farming_pineapple_7.png"}
  76. minetest.register_node("farming:pineapple_7", table.copy(crop_def))
  77. -- stage 8 (final)
  78. crop_def.tiles = {"farming_pineapple_8.png"}
  79. crop_def.groups.growing = 0
  80. crop_def.drop = {
  81. items = {
  82. {items = {"farming:pineapple"}, rarity = 1},
  83. {items = {"farming:pineapple"}, rarity = 15},
  84. }
  85. }
  86. minetest.register_node("farming:pineapple_8", table.copy(crop_def))
  87. -- add to registered_plants
  88. farming.registered_plants["farming:pineapple"] = {
  89. crop = "farming:pineapple",
  90. seed = "farming:pineapple_top",
  91. minlight = 13,
  92. maxlight = 15,
  93. steps = 8
  94. }