new file: beer/barrel.lua
new file: beer/init.lua new file: beer/sounds/drink_a_beer.ogg new file: beer/sounds/empty_barrel.ogg new file: beer/sounds/filled_barrel.ogg new file: beer/sounds/have_a_beer.ogg new file: beer/textures/beer_barrel.png new file: beer/textures/beer_barrel_face.png new file: beer/textures/beer_beer_tankart.png new file: beer/textures/beer_cone.png new file: beer/textures/beer_crude_mix.png new file: beer/textures/beer_empty_tankart.png new file: beer/textures/beer_fine_mix.png new file: beer/textures/farming_hops.png new file: beer/textures/farming_hops_1.png new file: beer/textures/farming_hops_2.png new file: beer/textures/farming_hops_seed.pngmaster
|
@ -0,0 +1,65 @@
|
|||
|
||||
|
||||
minetest.register_node("beer:beer_barrel", {
|
||||
description = "Beer barrel",
|
||||
tiles = {"beer_barrel.png", "beer_barrel.png", "beer_barrel.png^[transformR90",
|
||||
"beer_barrel.png^[transformR90", "beer_barrel_face.png", "beer_barrel_face.png"},
|
||||
paramtype2 = "facedir",
|
||||
groups = {snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
|
||||
|
||||
--sounds = default.node_sound_wood_defaults(),
|
||||
--me retourne une erreur, dommage j'aurais aimé que ça joue un son quand on marche sur le tonneau
|
||||
furnace_burntime = 20,
|
||||
|
||||
on_rightclick = function(pos, node, clicker, itemstack)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local beer_amount = meta:get_int("beer_amount")
|
||||
if itemstack:to_string() == "beer:empty_tankard"
|
||||
then
|
||||
|
||||
meta:set_int("beer_amount",beer_amount - 1)
|
||||
meta:set_string("infotext","Beer barrel, "..beer_amount.." beers left")
|
||||
if meta:get_int("beer_amount") <= -1
|
||||
then minetest.sound_play("empty_barrel")
|
||||
meta:set_int("beer_amount",0)
|
||||
return
|
||||
end
|
||||
minetest.sound_play("have_a_beer")
|
||||
return ItemStack("beer:beer_tankard ")
|
||||
end
|
||||
if string.find(itemstack:to_string(), "fine_beer_mix") ~= nil--itemstack:to_string() == "beer:fine_beer_mix "
|
||||
then
|
||||
minetest.sound_play("filled_barrel")
|
||||
if meta:get_int("beer_amount") >=99
|
||||
then return
|
||||
end
|
||||
meta:set_int("beer_amount",beer_amount + 10)
|
||||
meta:set_string("infotext","Beer barrel, "..beer_amount.." beers left")
|
||||
itemstack:take_item(1)
|
||||
return itemstack
|
||||
end
|
||||
|
||||
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if meta:get_int("beer_amount") == nil
|
||||
then meta:set_int("beer_amount", 0)
|
||||
end
|
||||
meta:set_string("infotext","Beer barrel, "..meta:get_int("beer_amount").." beers left")
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
minetest.register_craft({
|
||||
output = "beer:beer_barrel",
|
||||
recipe = {
|
||||
{"default:steel_ingot","default:wood","default:steel_ingot"},
|
||||
{"default:wood","" ,"default:wood"},
|
||||
{"default:steel_ingot","default:wood","default:steel_ingot"}},
|
||||
})
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
|
||||
|
||||
minetest.register_node("beer:beer_barrel", {
|
||||
description = "Beer barrel",
|
||||
tiles = {"beer_barrel.png", "beer_barrel.png", "beer_barrel.png^[transformR90",
|
||||
"beer_barrel.png^[transformR90", "beer_barrel_face.png", "beer_barrel_face.png"},
|
||||
paramtype2 = "facedir",
|
||||
groups = {snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
|
||||
|
||||
--sounds = default.node_sound_wood_defaults(),
|
||||
--me retourne une erreur, dommage j'aurais aimé que ça joue un son quand on marche sur le tonneau
|
||||
furnace_burntime = 20,
|
||||
|
||||
on_rightclick = function(pos, node, clicker, itemstack)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local beer_amount = meta:get_int("beer_amount")
|
||||
if itemstack:to_string() == "beer:empty_tankard"
|
||||
then
|
||||
|
||||
meta:set_int("beer_amount",beer_amount - 1)
|
||||
meta:set_string("infotext","Beer barrel, "..beer_amount.." beers left")
|
||||
if meta:get_int("beer_amount") <= -1
|
||||
then minetest.sound_play("empty_barrel")
|
||||
meta:set_int("beer_amount",0)
|
||||
return
|
||||
end
|
||||
minetest.sound_play("have_a_beer")
|
||||
return ItemStack("beer:beer_tankard ")
|
||||
end
|
||||
if string.find(itemstack:to_string(), "fine_beer_mix") ~= nil--itemstack:to_string() == "beer:fine_beer_mix "
|
||||
then
|
||||
minetest.sound_play("filled_barrel")
|
||||
if meta:get_int("beer_amount") >=99
|
||||
then return
|
||||
end
|
||||
meta:set_int("beer_amount",beer_amount + 10)
|
||||
meta:set_string("infotext","Beer barrel, "..beer_amount.." beers left")
|
||||
itemstack:take_item(1)
|
||||
return itemstack
|
||||
end
|
||||
|
||||
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if meta:get_int("beer_amount") == nil
|
||||
then meta:set_int("beer_amount", 0)
|
||||
end
|
||||
meta:set_string("infotext","Beer barrel, "..meta:get_int("beer_amount").." beers left")
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
minetest.register_craft({
|
||||
output = "beer:beer_barrel",
|
||||
recipe = {
|
||||
{"default:steel_ingot","default:wood","default:steel_ingot"},
|
||||
{"default:wood","" ,"default:wood"},
|
||||
{"default:steel_ingot","default:wood","default:steel_ingot"}},
|
||||
})
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
minetest.register_craftitem("farming:hops_seed", {
|
||||
description = "hops Seeds",
|
||||
inventory_image = "farming_hops_seed.png",
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
local above = minetest.env:get_node(pointed_thing.above)
|
||||
if above.name == "air" then
|
||||
above.name = "farming:hops_1"
|
||||
minetest.env:set_node(pointed_thing.above, above)
|
||||
itemstack:take_item(1)
|
||||
return itemstack
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
minetest.register_node("farming:hops_1", {
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
drawtype = "plantlike",
|
||||
drop = "",
|
||||
tiles = {"farming_hops_1.png"},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.5, -0.5, -0.5, 0.5, -0.5+6/16, 0.5}
|
||||
},
|
||||
},
|
||||
groups = {snappy=3, flammable=2, not_in_creative_inventory=1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("farming:hops_2", {
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
drawtype = "plantlike",
|
||||
drop = "",
|
||||
tiles = {"farming_hops_2.png"},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.5, -0.5, -0.5, 0.5, -0.5+12/16, 0.5}
|
||||
},
|
||||
},
|
||||
groups = {snappy=3, flammable=2, not_in_creative_inventory=1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("farming:hops", {
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
drawtype = "plantlike",
|
||||
tiles = {"farming_hops.png"},
|
||||
drop = {
|
||||
max_items = 6,
|
||||
items = {
|
||||
{ items = {'farming:hops_seed'} },
|
||||
{ items = {'farming:hops_seed'}, rarity = 2},
|
||||
{ items = {'farming:hops_seed'}, rarity = 5},
|
||||
{ items = {'beer:cone'} },
|
||||
{ items = {'beer:cone'}, rarity = 2 },
|
||||
{ items = {'beer:cone'}, rarity = 5 }
|
||||
}
|
||||
},
|
||||
groups = {snappy=3, flammable=2, not_in_creative_inventory=1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
})
|
||||
|
||||
farming:add_plant("farming:hops", {"farming:hops_1", "farming:hops_2"}, 50, 20)
|
||||
|
||||
|
||||
|
||||
-- ========= FUEL =========
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "farming:hops_seed",
|
||||
burntime = 1
|
||||
})
|
||||
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
|
||||
|
||||
minetest.register_craftitem("beer:cone", {
|
||||
description = "cone",
|
||||
inventory_image = "beer_cone.png",
|
||||
})
|
||||
--[[
|
||||
minetest.register_globalstep(function(dtime)
|
||||
for _, p in ipairs(minetest.get_connected_players()) do
|
||||
|
||||
|
||||
|
||||
|
||||
end
|
||||
end)]]
|
||||
--je voudrais ajouter des particules autour du joueur quand il est bourré
|
||||
--I'd like to add some particles around the player when he's drank
|
||||
|
||||
|
||||
minetest.register_craftitem("beer:crude_beer_mix", {
|
||||
description = "Crude beer mix",
|
||||
inventory_image = "beer_crude_mix.png",
|
||||
})
|
||||
|
||||
minetest.register_craftitem("beer:fine_beer_mix", {
|
||||
description = "Fine beer mix",
|
||||
inventory_image = "beer_fine_mix.png",
|
||||
})
|
||||
minetest.register_craftitem("beer:empty_tankard", {
|
||||
description = "Empty tankart",
|
||||
inventory_image = "beer_empty_tankart.png",
|
||||
|
||||
|
||||
})
|
||||
minetest.register_craftitem("beer:beer_tankard", {
|
||||
description = "Beer tankart",
|
||||
inventory_image = "beer_beer_tankart.png",
|
||||
stack_max = 1,
|
||||
on_use = function(itemstack, user, pointed_thing)
|
||||
minetest.sound_play("drink_a_beer")
|
||||
return ItemStack("beer:empty_tankard ")
|
||||
end
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "beer:crude_beer_mix",
|
||||
recipe = {"beer:cone","bucket:bucket_water"},
|
||||
replacements = {{"bucket:bucket_water", "bucket:bucket_empty"}}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "beer:fine_beer_mix",
|
||||
recipe = "beer:crude_beer_mix",
|
||||
cooktime = 10,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "beer:empty_tankard 3",
|
||||
recipe = {
|
||||
{"default:glass","" ,"default:glass"},
|
||||
{"default:glass","default:glass","" },
|
||||
{"" ,"" ,"" }},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "beer:cone",
|
||||
burntime = 1
|
||||
})
|
||||
|
||||
dofile(minetest.get_modpath("beer").."/barrel.lua")
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
|
||||
|
||||
minetest.register_craftitem("beer:cone", {
|
||||
description = "cone",
|
||||
inventory_image = "beer_cone.png",
|
||||
})
|
||||
--[[
|
||||
minetest.register_globalstep(function(dtime)
|
||||
for _, p in ipairs(minetest.get_connected_players()) do
|
||||
|
||||
|
||||
|
||||
|
||||
end
|
||||
end)]]
|
||||
--je voudrais ajouter des particules autour du joueur quand il est bourré
|
||||
--I'd like to add some particles around the player when he's drank
|
||||
|
||||
|
||||
minetest.register_craftitem("beer:crude_beer_mix", {
|
||||
description = "Crude beer mix",
|
||||
inventory_image = "beer_crude_mix.png",
|
||||
})
|
||||
|
||||
minetest.register_craftitem("beer:fine_beer_mix", {
|
||||
description = "Fine beer mix",
|
||||
inventory_image = "beer_fine_mix.png",
|
||||
})
|
||||
minetest.register_craftitem("beer:empty_tankard", {
|
||||
description = "Empty tankart",
|
||||
inventory_image = "beer_empty_tankart.png",
|
||||
|
||||
|
||||
})
|
||||
minetest.register_craftitem("beer:beer_tankard", {
|
||||
description = "Beer tankart",
|
||||
inventory_image = "beer_beer_tankart.png",
|
||||
stack_max = 1,
|
||||
on_use = function(itemstack, user, pointed_thing)
|
||||
minetest.sound_play("drink_a_beer")
|
||||
return ItemStack("beer:empty_tankard ")
|
||||
end
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "beer:crude_beer_mix",
|
||||
recipe = {"beer:cone","bucket:bucket_water"},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "beer:fine_beer_mix",
|
||||
recipe = "beer:crude_beer_mix",
|
||||
cooktime = 10,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "beer:empty_tankard 3",
|
||||
recipe = {
|
||||
{"default:glass","" ,"default:glass"},
|
||||
{"default:glass","default:glass","" },
|
||||
{"" ,"" ,"" }},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "beer:cone",
|
||||
burntime = 1
|
||||
})
|
||||
|
||||
dofile(minetest.get_modpath("beer").."/barrel.lua")
|
||||
|
After Width: | Height: | Size: 328 B |
After Width: | Height: | Size: 305 B |
After Width: | Height: | Size: 441 B |
After Width: | Height: | Size: 315 B |
After Width: | Height: | Size: 284 B |
After Width: | Height: | Size: 356 B |
After Width: | Height: | Size: 284 B |
After Width: | Height: | Size: 398 B |
After Width: | Height: | Size: 209 B |
After Width: | Height: | Size: 299 B |
After Width: | Height: | Size: 250 B |
|
@ -0,0 +1,37 @@
|
|||
|
||||
|
||||
minetest.register_node("beer:empty_barrel", {
|
||||
description = S("Empty barrel"),
|
||||
tiles = {"beer_barrel.png", "beer_barrel.png", "beer_barrel.png^[transformR90",
|
||||
"beer_barrel.png^[transformR90", "beer_barrel_face.png", "beer_barrel_face.png"},
|
||||
paramtype2 = "facedir",
|
||||
groups = {snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
furnace_burntime = 20,
|
||||
})
|
||||
|
||||
minetest.register_node("beer:beer_barrel", {
|
||||
description = S("Beer barrel"),
|
||||
tiles = {"beer_barrel.png", "beer_barrel.png", "beer_barrel.png^[transformR90",
|
||||
"beer_barrel.png^[transformR90", "beer_barrel_face.png", "beer_barrel_face.png"},
|
||||
paramtype2 = "facedir",
|
||||
groups = {snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
furnace_burntime = 20,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "beer:empty_barrel",
|
||||
recipe = {
|
||||
{"default:steel_ingot","default:wood","default:steel_ingot"},
|
||||
{"default:wood", "" ,"default:wood"},
|
||||
{"default:steel_ingot","default:wood","default:steel_ingot"}},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "beer:beer_barrel",
|
||||
recipe = {"beer:empty_barrel","beer_fine_beer_mix"},
|
||||
})
|
||||
|
||||
|