Make blocks breakable in Creative Mode

master
Wuzzy 2018-09-28 00:19:21 +02:00
parent f010748da8
commit 05f162bc02
13 changed files with 64 additions and 61 deletions

View File

@ -71,7 +71,7 @@ minetest.register_node("arrow_signs:wall_right", {
selection_box = {
type = "wallmounted",
},
groups = {immortal=1,attached_node=1,arrow_sign=1},
groups = {creative_breakable=1,attached_node=1,arrow_sign=1},
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
on_construct = function(pos)
@ -103,7 +103,7 @@ minetest.register_node("arrow_signs:wall_left", {
selection_box = {
type = "wallmounted",
},
groups = {immortal=1,attached_node=1,arrow_sign=1},
groups = {creative_breakable=1,attached_node=1,arrow_sign=1},
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
on_construct = function(pos)
@ -134,7 +134,7 @@ minetest.register_node("arrow_signs:wall_up", {
selection_box = {
type = "wallmounted",
},
groups = {immortal=1,attached_node=1,arrow_sign=1},
groups = {creative_breakable=1,attached_node=1,arrow_sign=1},
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
on_construct = function(pos)
@ -165,7 +165,7 @@ minetest.register_node("arrow_signs:wall_down", {
selection_box = {
type = "wallmounted",
},
groups = {immortal=1,attached_node=1,arrow_sign=1},
groups = {creative_breakable=1,attached_node=1,arrow_sign=1},
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
on_construct = function(pos)

View File

@ -12,7 +12,7 @@ minetest.register_node("castle:shield_2",{
drawtype="nodebox",
paramtype2 = "facedir",
paramtype = "light",
groups={immortal=1},
groups={creative_breakable=1},
node_box = {
type = "fixed",
fixed = {

View File

@ -12,7 +12,7 @@ minetest.register_node("castle:light",{
sunlight_propagates = true,
light_source = 14,
tiles = {"castle_street_light.png"},
groups = {immortal=1},
groups = {creative_breakable=1},
paramtype = "light",
sounds = default.node_sound_glass_defaults()
})

View File

@ -33,7 +33,7 @@ minetest.register_node("cottages:sleeping_mat", {
paramtype2 = "facedir",
is_ground_content = true,
walkable = false,
groups = { immortal=1 },
groups = { creative_breakable=1 },
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "wallmounted",
@ -61,7 +61,7 @@ minetest.register_node("cottages:bench", {
tiles = {"cottages_minimal_wood.png", "cottages_minimal_wood.png", "cottages_minimal_wood.png", "cottages_minimal_wood.png", "cottages_minimal_wood.png", "cottages_minimal_wood.png"},
paramtype = "light",
paramtype2 = "facedir",
groups = { immortal=1 },
groups = { creative_breakable=1 },
sounds = default.node_sound_wood_defaults(),
node_box = {
type = "fixed",
@ -92,7 +92,7 @@ minetest.register_node("cottages:table", {
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = true,
groups = { immortal=1 },
groups = { creative_breakable=1 },
sounds = default.node_sound_wood_defaults(),
node_box = {
type = "fixed",

View File

@ -31,7 +31,7 @@ minetest.register_node("cottages:wagon_wheel", {
selection_box = {
type = "wallmounted",
},
groups = {immortal=1, attached_node=1},
groups = {creative_breakable=1, attached_node=1},
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
})

View File

@ -22,7 +22,7 @@ cottages.register_roof = function( name, tiles, basic_material, homedecor_altern
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = true,
groups = {immortal=1},
groups = {creative_breakable=1},
node_box = {
type = "fixed",
fixed = {
@ -51,7 +51,7 @@ cottages.register_roof = function( name, tiles, basic_material, homedecor_altern
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = true,
groups = {immortal=1},
groups = {creative_breakable=1},
node_box = {
type = "fixed",
fixed = {
@ -80,7 +80,7 @@ cottages.register_roof = function( name, tiles, basic_material, homedecor_altern
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = true,
groups = {immortal=1},
groups = {creative_breakable=1},
node_box = {
type = "fixed",
fixed = {

View File

@ -25,7 +25,7 @@ minetest.register_node("cottages:straw_mat", {
paramtype2 = "facedir",
is_ground_content = true,
walkable = false,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_leaves_defaults(),
node_box = {
type = "fixed",

View File

@ -222,7 +222,9 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
end)
if minetest.setting_getbool("creative_mode") then
local digtime = 0.5
local digtime1 = 0
local digtime2 = digtime1
local digtime3 = digtime1
minetest.register_item(":", {
type = "none",
wield_image = "wieldhand.png",
@ -232,11 +234,12 @@ if minetest.setting_getbool("creative_mode") then
full_punch_interval = 0.5,
max_drop_level = 3,
groupcaps = {
crumbly = {times={[1]=digtime, [2]=digtime, [3]=digtime}, uses=0, maxlevel=3},
cracky = {times={[1]=digtime, [2]=digtime, [3]=digtime}, uses=0, maxlevel=3},
snappy = {times={[1]=digtime, [2]=digtime, [3]=digtime}, uses=0, maxlevel=3},
choppy = {times={[1]=digtime, [2]=digtime, [3]=digtime}, uses=0, maxlevel=3},
oddly_breakable_by_hand = {times={[1]=digtime, [2]=digtime, [3]=digtime}, uses=0, maxlevel=3},
crumbly = {times={[1]=digtime1, [2]=digtime2, [3]=digtime3}, uses=0, maxlevel=3},
cracky = {times={[1]=digtime1, [2]=digtime2, [3]=digtime3}, uses=0, maxlevel=3},
snappy = {times={[1]=digtime1, [2]=digtime2, [3]=digtime3}, uses=0, maxlevel=3},
choppy = {times={[1]=digtime1, [2]=digtime2, [3]=digtime3}, uses=0, maxlevel=3},
oddly_breakable_by_hand = {times={[1]=digtime1, [2]=digtime2, [3]=digtime3}, uses=0, maxlevel=3},
creative_breakable = {times={[1]=digtime1, [2]=digtime2, [3]=digtime3}, uses=0, maxlevel=3},
},
damage_groups = {fleshy = 10},
}

View File

@ -18,7 +18,7 @@ This mod originally created by MasterGollum and is now maintained and being impr
**Version Development**
**Tutorial Edition**
* Stripped down mod to the neccessary parts for the tutorial
* Made many nodes immortal
* Made many nodes diggable in Creative Mode only
**Version 1.3**

View File

@ -9,21 +9,21 @@ end
minetest.register_node("darkage:basalt_cobble", {
description = S("basalt cobble"),
tiles = {"darkage_basalt_cobble.png"},
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:basalt_brick", {
description = S("basalt brick"),
tiles = {"darkage_basalt_brick.png"},
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("darkage:stone_brick", {
description = S("stone brick"),
tiles = {"darkage_stone_brick.png"},
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_stone_defaults()
})
@ -31,7 +31,7 @@ minetest.register_node("darkage:stone_brick", {
minetest.register_node("darkage:straw", {
description = S("straw"),
tiles = {"darkage_straw.png"},
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_leaves_defaults(),
})
@ -40,14 +40,14 @@ minetest.register_node("darkage:lamp", {
tiles = {"darkage_lamp.png"},
paramtype = "light",
light_source = minetest.LIGHT_MAX,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_glass_defaults(),
})
minetest.register_node("darkage:marble_tile", {
description = S("marble tile"),
tiles = {"darkage_marble_tile.png"},
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_stone_defaults()
})
@ -58,7 +58,7 @@ minetest.register_node("darkage:glass", {
tiles = {"darkage_glass.png"},
paramtype = "light",
sunlight_propagates = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_glass_defaults(),
})
@ -71,7 +71,7 @@ minetest.register_node("darkage:wood_bars", {
wield_image = "darkage_wood_bars.png",
paramtype = "light",
sunlight_propagates = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_wood_defaults()
})
@ -83,7 +83,7 @@ minetest.register_node("darkage:wood_grille", {
wield_image = "darkage_wood_grille.png",
paramtype = "light",
sunlight_propagates = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_wood_defaults()
})
@ -95,7 +95,7 @@ minetest.register_node("darkage:wood_frame", {
wield_image = "darkage_wood_frame.png",
paramtype = "light",
sunlight_propagates = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_wood_defaults()
})
@ -107,7 +107,7 @@ minetest.register_node("darkage:iron_bars", {
wield_image = "darkage_iron_bars.png",
paramtype = "light",
sunlight_propagates = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_metal_defaults()
})
@ -118,6 +118,6 @@ minetest.register_node("darkage:iron_grille", {
inventory_image = "darkage_iron_grille.png",
sunlight_propagates = true,
paramtype = "light",
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_metal_defaults()
})

View File

@ -62,7 +62,7 @@ minetest.register_node("default:dirt_with_grass", {
description = S("dirt with grass"),
tiles = {"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"},
is_ground_content = true,
groups = {immortal=1},
groups = {creative_breakable=1},
drop = 'default:dirt',
sounds = default.node_sound_dirt_defaults({
footstep = {name="default_grass_footstep", gain=0.25},
@ -73,7 +73,7 @@ minetest.register_node("default:dirt", {
description = S("dirt"),
tiles = {"default_dirt.png"},
is_ground_content = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_dirt_defaults(),
})
@ -81,7 +81,7 @@ minetest.register_node("default:sand", {
description = S("sand"),
tiles = {"default_sand.png"},
is_ground_content = true,
groups = {immortal=1, falling_node=1},
groups = {creative_breakable=1, falling_node=1},
sounds = default.node_sound_sand_defaults(),
})
@ -90,7 +90,7 @@ minetest.register_node("default:tree", {
tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"},
paramtype2 = "facedir",
is_ground_content = false,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_wood_defaults(),
on_place = minetest.rotate_node
})
@ -103,7 +103,7 @@ minetest.register_node("default:leaves", {
tiles = {"default_leaves.png"},
paramtype = "light",
is_ground_content = false,
groups = {immortal=1},
groups = {creative_breakable=1},
drop = {
max_items = 1,
items = {
@ -126,7 +126,7 @@ minetest.register_node("default:grass_5", {
description = S("grass"),
tiles = {"default_grass_5.png"},
is_ground_content = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_leaves_defaults(),
wield_image = "default_grass_5.png",
inventory_image = "default_grass_5.png",
@ -150,7 +150,7 @@ minetest.register_node("default:ladder", {
selection_box = {
type = "wallmounted",
},
groups = {},
groups = {creative_breakable=1},
legacy_wallmounted = true,
sounds = default.node_sound_wood_defaults(),
})
@ -252,7 +252,7 @@ minetest.register_node("default:torch", {
wall_bottom = {-0.1, -0.5, -0.1, 0.1, -0.5+0.6, 0.1},
wall_side = {-0.5, -0.3, -0.1, -0.5+0.3, 0.3, 0.1},
},
groups = {immortal = 1},
groups = {creative_breakable = 1},
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
})
@ -279,7 +279,7 @@ minetest.register_node("default:chest", {
tiles = {"default_chest_top.png", "default_chest_top.png", "default_chest_side.png",
"default_chest_side.png", "default_chest_side.png", "default_chest_front.png"},
paramtype2 = "facedir",
groups = {immortal=1},
groups = {creative_breakable=1},
legacy_facedir_simple = true,
is_ground_content = false,
sounds = default.node_sound_wood_defaults(),
@ -387,7 +387,7 @@ minetest.register_node("default:furnace", {
tiles = {"default_furnace_top.png", "default_furnace_bottom.png", "default_furnace_side.png",
"default_furnace_side.png", "default_furnace_side.png", "default_furnace_front.png"},
paramtype2 = "facedir",
groups = {immortal=1},
groups = {creative_breakable=1},
legacy_facedir_simple = true,
is_ground_content = false,
sounds = default.node_sound_stone_defaults(),
@ -485,7 +485,7 @@ minetest.register_node("default:furnace_active", {
paramtype2 = "facedir",
light_source = 8,
drop = "default:furnace",
groups = {immortal=1,not_in_creative_inventory=1,hot=1},
groups = {creative_breakable=1,not_in_creative_inventory=1,hot=1},
legacy_facedir_simple = true,
is_ground_content = false,
sounds = default.node_sound_stone_defaults(),

View File

@ -11,14 +11,14 @@ minetest.register_node("supplemental:sticky", {
tiles = {"default_stone_brick.png^supplemental_splat.png",
"default_stone_brick.png", "default_stone_brick.png", "default_stone_brick.png",
"default_stone_brick.png", "default_stone_brick.png"},
groups = {immortal=1, disable_jump=1},
groups = {creative_breakable=1, disable_jump=1},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("supplemental:bouncy", {
description = S("bouncy block"),
tiles = {"supplemental_bouncy.png"},
groups = {immortal=1, bouncy=70, fall_damage_add_percent=-100},
groups = {creative_breakable=1, bouncy=70, fall_damage_add_percent=-100},
sounds = default.node_sound_stone_defaults()
})
@ -50,7 +50,7 @@ minetest.register_node("supplemental:frame",{
paramtype = "light",
paramtype2 = "wallmounted",
sunlight_propagates = true,
groups = { immortal=1, attached_node=1 },
groups = { creative_breakable=1, attached_node=1 },
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
})
@ -64,7 +64,7 @@ minetest.register_node("supplemental:spikes", {
paramtype = "light",
walkable = false,
drawtype = "plantlike",
groups = { immortal = 1 },
groups = { creative_breakable = 1 },
damage_per_second = 1,
collision_box = {
type = "fixed",
@ -85,7 +85,7 @@ minetest.register_node("supplemental:spikes_large", {
paramtype = "light",
walkable = false,
drawtype = "plantlike",
groups = { immortal = 1 },
groups = { creative_breakable = 1 },
damage_per_second = 2
})

View File

@ -79,7 +79,7 @@ function tutorial.register_infosign(itemstringpart, caption, fulltext)
is_ground_content = false,
walkable = false,
selection_box = { type = "wallmounted" },
groups = {immortal=1,attached_node=1,tutorial_sign=1},
groups = {creative_breakable=1,attached_node=1,tutorial_sign=1},
legacy_wallmounted = true,
sounds = default.node_sound_defaults(),
on_construct = function(pos)
@ -990,7 +990,7 @@ minetest.register_node("tutorial:wall", {
description = S("reinforced wall"),
tiles = {"default_stone_brick.png"},
is_ground_content = true,
groups = {immortal=1},
groups = {creative_breakable=1},
sounds = default.node_sound_stone_defaults(),
})
@ -1001,7 +1001,7 @@ minetest.register_node("tutorial:reinforced_glass", {
inventory_image = minetest.inventorycube("tutorial_reinforced_glass.png"),
paramtype = "light",
sunlight_propagates = true,
groups = { immortal=1 },
groups = { creative_breakable=1 },
sounds = default.node_sound_glass_defaults(),
})
@ -1031,7 +1031,7 @@ minetest.register_tool("tutorial:snatcher", {
minetest.register_node("tutorial:day", {
description = S("day/night switch (day)"),
tiles = { "tutorial_day.png" },
groups = {immortal=1},
groups = {creative_breakable=1},
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
minetest.set_timeofday(0)
minetest.set_node(pos, {name="tutorial:night"})
@ -1040,7 +1040,7 @@ minetest.register_node("tutorial:day", {
minetest.register_node("tutorial:night", {
description = S("day/night switch (night)"),
tiles = { "tutorial_night.png" },
groups = {immortal=1},
groups = {creative_breakable=1},
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
minetest.set_timeofday(0.5)
minetest.set_node(pos, {name="tutorial:day"})
@ -1052,7 +1052,7 @@ It only works on a prepared map! ]]
minetest.register_node("tutorial:waterfall_on", {
description = S("waterfall switch (on)"),
tiles = { "tutorial_waterfall_on.png" },
groups = {immortal=1},
groups = {creative_breakable=1},
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
local wpos = { y = 5, z = 86 }
for x=33,46 do
@ -1066,7 +1066,7 @@ minetest.register_node("tutorial:waterfall_on", {
minetest.register_node("tutorial:waterfall_off", {
description = S("waterfall switch (off)"),
tiles = { "tutorial_waterfall_off.png" },
groups = {immortal=1},
groups = {creative_breakable=1},
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
local wpos = { y = 5, z = 86 }
for x=33,46 do
@ -1093,7 +1093,7 @@ minetest.register_node("tutorial:ruler", {
paramtype = "light",
paramtype2 = "wallmounted",
sunlight_propagates = true,
groups = {immortal=1, attached_node=1},
groups = {creative_breakable=1, attached_node=1},
})
-- Item spawner
@ -1111,7 +1111,7 @@ minetest.register_node("tutorial:itemspawner", {
wield_image = "unknown_node.png",
buildable_to = false,
sunlight_propagates = true,
groups = {immortal=1},
groups = {creative_breakable=1},
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_int("spawned", 0)
@ -1217,7 +1217,7 @@ function tutorial.register_craftguide(subId, desc, imageStatic, imageAnim, animF
paramtype = "light",
paramtype2 = "wallmounted",
sunlight_propagates = true,
groups = {immortal=1, attached_node=1},
groups = {creative_breakable=1, attached_node=1},
on_construct = tutorial.craftguideinfo,
})
@ -1277,7 +1277,7 @@ minetest.register_node("tutorial:cup_gold", {
drawtype = "nodebox",
node_box = tutorial.cupnodebox,
selection_box = tutorial.cupselbox,
groups = { immortal = 1 },
groups = { creative_breakable = 1 },
on_construct = tutorial.goldinfo,
})
@ -1289,7 +1289,7 @@ minetest.register_node("tutorial:cup_diamond", {
drawtype = "nodebox",
node_box = tutorial.cupnodebox,
selection_box = tutorial.cupselbox,
groups = { immortal = 1 },
groups = { creative_breakable = 1 },
on_construct = tutorial.diamondinfo,
})