From d817c9babeedb335735f3a9c7efb4d325da27eb9 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sat, 16 Jun 2012 17:19:35 +0300 Subject: [PATCH] Add flowing lava animation and update some field names --- mods/default/init.lua | 132 ++++++++++-------- .../default_lava_flowing_animated.png | Bin 0 -> 8715 bytes .../textures/default_lava_source_animated.png | Bin 0 -> 3481 bytes 3 files changed, 71 insertions(+), 61 deletions(-) create mode 100644 mods/default/textures/default_lava_flowing_animated.png create mode 100644 mods/default/textures/default_lava_source_animated.png diff --git a/mods/default/init.lua b/mods/default/init.lua index 851ca13..58d3977 100644 --- a/mods/default/init.lua +++ b/mods/default/init.lua @@ -696,7 +696,7 @@ end minetest.register_node("default:stone", { description = "Stone", - tile_images = {"default_stone.png"}, + tiles = {"default_stone.png"}, is_ground_content = true, groups = {cracky=3}, drop = 'default:cobble', @@ -706,7 +706,7 @@ minetest.register_node("default:stone", { minetest.register_node("default:desert_stone", { description = "Desert Stone", - tile_images = {"default_desert_stone.png"}, + tiles = {"default_desert_stone.png"}, is_ground_content = true, groups = {cracky=3}, drop = 'default:desert_stone', @@ -716,7 +716,7 @@ minetest.register_node("default:desert_stone", { minetest.register_node("default:stone_with_coal", { description = "Coal Ore", - tile_images = {"default_stone.png^default_mineral_coal.png"}, + tiles = {"default_stone.png^default_mineral_coal.png"}, is_ground_content = true, groups = {cracky=3}, drop = 'default:coal_lump', @@ -725,7 +725,7 @@ minetest.register_node("default:stone_with_coal", { minetest.register_node("default:stone_with_iron", { description = "Iron Ore", - tile_images = {"default_stone.png^default_mineral_iron.png"}, + tiles = {"default_stone.png^default_mineral_iron.png"}, is_ground_content = true, groups = {cracky=3}, drop = 'default:iron_lump', @@ -734,7 +734,7 @@ minetest.register_node("default:stone_with_iron", { minetest.register_node("default:dirt_with_grass", { description = "Dirt with Grass", - tile_images = {"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"}, + tiles = {"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"}, is_ground_content = true, groups = {crumbly=3}, drop = 'default:dirt', @@ -745,7 +745,7 @@ minetest.register_node("default:dirt_with_grass", { minetest.register_node("default:dirt_with_grass_footsteps", { description = "Dirt with Grass and Footsteps", - tile_images = {"default_grass_footsteps.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"}, + tiles = {"default_grass_footsteps.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"}, is_ground_content = true, groups = {crumbly=3}, drop = 'default:dirt', @@ -756,7 +756,7 @@ minetest.register_node("default:dirt_with_grass_footsteps", { minetest.register_node("default:dirt", { description = "Dirt", - tile_images = {"default_dirt.png"}, + tiles = {"default_dirt.png"}, is_ground_content = true, groups = {crumbly=3}, sounds = default.node_sound_dirt_defaults(), @@ -764,7 +764,7 @@ minetest.register_node("default:dirt", { minetest.register_node("default:sand", { description = "Sand", - tile_images = {"default_sand.png"}, + tiles = {"default_sand.png"}, is_ground_content = true, groups = {crumbly=3, falling_node=1}, sounds = default.node_sound_sand_defaults(), @@ -772,7 +772,7 @@ minetest.register_node("default:sand", { minetest.register_node("default:desert_sand", { description = "Desert Sand", - tile_images = {"default_desert_sand.png"}, + tiles = {"default_desert_sand.png"}, is_ground_content = true, groups = {sand=1, crumbly=3, falling_node=1}, sounds = default.node_sound_sand_defaults(), @@ -780,7 +780,7 @@ minetest.register_node("default:desert_sand", { minetest.register_node("default:gravel", { description = "Gravel", - tile_images = {"default_gravel.png"}, + tiles = {"default_gravel.png"}, is_ground_content = true, groups = {crumbly=2, falling_node=1}, sounds = default.node_sound_dirt_defaults({ @@ -790,7 +790,7 @@ minetest.register_node("default:gravel", { minetest.register_node("default:sandstone", { description = "Sandstone", - tile_images = {"default_sandstone.png"}, + tiles = {"default_sandstone.png"}, is_ground_content = true, groups = {crumbly=2,cracky=2}, drop = 'default:sand', @@ -799,7 +799,7 @@ minetest.register_node("default:sandstone", { minetest.register_node("default:clay", { description = "Clay", - tile_images = {"default_clay.png"}, + tiles = {"default_clay.png"}, is_ground_content = true, groups = {crumbly=3}, drop = 'default:clay_lump 4', @@ -810,7 +810,7 @@ minetest.register_node("default:clay", { minetest.register_node("default:brick", { description = "Brick Block", - tile_images = {"default_brick.png"}, + tiles = {"default_brick.png"}, is_ground_content = true, groups = {cracky=3}, drop = 'default:clay_brick 4', @@ -819,7 +819,7 @@ minetest.register_node("default:brick", { minetest.register_node("default:tree", { description = "Tree", - tile_images = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"}, + tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"}, is_ground_content = true, groups = {tree=1,snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2}, sounds = default.node_sound_wood_defaults(), @@ -827,7 +827,7 @@ minetest.register_node("default:tree", { minetest.register_node("default:jungletree", { description = "Jungle Tree", - tile_images = {"default_jungletree_top.png", "default_jungletree_top.png", "default_jungletree.png"}, + tiles = {"default_jungletree_top.png", "default_jungletree_top.png", "default_jungletree.png"}, is_ground_content = true, groups = {tree=1,snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2}, sounds = default.node_sound_wood_defaults(), @@ -837,7 +837,7 @@ minetest.register_node("default:junglegrass", { description = "Jungle Grass", drawtype = "plantlike", visual_scale = 1.3, - tile_images = {"default_junglegrass.png"}, + tiles = {"default_junglegrass.png"}, inventory_image = "default_junglegrass.png", wield_image = "default_junglegrass.png", paramtype = "light", @@ -850,7 +850,7 @@ minetest.register_node("default:leaves", { description = "Leaves", drawtype = "allfaces_optional", visual_scale = 1.3, - tile_images = {"default_leaves.png"}, + tiles = {"default_leaves.png"}, paramtype = "light", groups = {snappy=3, leafdecay=3, flammable=2}, drop = { @@ -873,7 +873,7 @@ minetest.register_node("default:leaves", { minetest.register_node("default:cactus", { description = "Cactus", - tile_images = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_side.png"}, + tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_side.png"}, is_ground_content = true, groups = {snappy=2,choppy=3,flammable=2}, sounds = default.node_sound_wood_defaults(), @@ -882,7 +882,7 @@ minetest.register_node("default:cactus", { minetest.register_node("default:papyrus", { description = "Papyrus", drawtype = "plantlike", - tile_images = {"default_papyrus.png"}, + tiles = {"default_papyrus.png"}, inventory_image = "default_papyrus.png", wield_image = "default_papyrus.png", paramtype = "light", @@ -894,7 +894,7 @@ minetest.register_node("default:papyrus", { minetest.register_node("default:bookshelf", { description = "Bookshelf", - tile_images = {"default_wood.png", "default_wood.png", "default_bookshelf.png"}, + tiles = {"default_wood.png", "default_wood.png", "default_bookshelf.png"}, is_ground_content = true, groups = {snappy=2,choppy=3,oddly_breakable_by_hand=2,flammable=3}, sounds = default.node_sound_wood_defaults(), @@ -903,7 +903,7 @@ minetest.register_node("default:bookshelf", { minetest.register_node("default:glass", { description = "Glass", drawtype = "glasslike", - tile_images = {"default_glass.png"}, + tiles = {"default_glass.png"}, inventory_image = minetest.inventorycube("default_glass.png"), paramtype = "light", sunlight_propagates = true, @@ -915,7 +915,7 @@ minetest.register_node("default:glass", { minetest.register_node("default:fence_wood", { description = "Wooden Fence", drawtype = "fencelike", - tile_images = {"default_wood.png"}, + tiles = {"default_wood.png"}, inventory_image = "default_fence.png", wield_image = "default_fence.png", paramtype = "light", @@ -931,7 +931,7 @@ minetest.register_node("default:fence_wood", { minetest.register_node("default:rail", { description = "Rail", drawtype = "raillike", - tile_images = {"default_rail.png", "default_rail_curved.png", "default_rail_t_junction.png", "default_rail_crossing.png"}, + tiles = {"default_rail.png", "default_rail_curved.png", "default_rail_t_junction.png", "default_rail_crossing.png"}, inventory_image = "default_rail.png", wield_image = "default_rail.png", paramtype = "light", @@ -947,7 +947,7 @@ minetest.register_node("default:rail", { minetest.register_node("default:ladder", { description = "Ladder", drawtype = "signlike", - tile_images = {"default_ladder.png"}, + tiles = {"default_ladder.png"}, inventory_image = "default_ladder.png", wield_image = "default_ladder.png", paramtype = "light", @@ -968,7 +968,7 @@ minetest.register_node("default:ladder", { minetest.register_node("default:wood", { description = "Wooden Planks", - tile_images = {"default_wood.png"}, + tiles = {"default_wood.png"}, is_ground_content = true, groups = {snappy=1,choppy=2,oddly_breakable_by_hand=2,flammable=3}, sounds = default.node_sound_wood_defaults(), @@ -976,7 +976,7 @@ minetest.register_node("default:wood", { minetest.register_node("default:mese", { description = "Mese", - tile_images = {"default_mese.png"}, + tiles = {"default_mese.png"}, is_ground_content = true, groups = {cracky=1}, sounds = default.node_sound_defaults(), @@ -984,7 +984,7 @@ minetest.register_node("default:mese", { minetest.register_node("default:cloud", { description = "Cloud", - tile_images = {"default_cloud.png"}, + tiles = {"default_cloud.png"}, is_ground_content = true, sounds = default.node_sound_defaults(), }) @@ -993,7 +993,11 @@ minetest.register_node("default:water_flowing", { description = "Flowing Water", inventory_image = minetest.inventorycube("default_water.png"), drawtype = "flowingliquid", - tile_images = {"default_water.png"}, + tiles = {"default_water.png"}, + special_tiles = { + {name="default_water.png", backface_culling=false}, + {name="default_water.png", backface_culling=true}, + }, alpha = WATER_ALPHA, paramtype = "light", walkable = false, @@ -1005,10 +1009,6 @@ minetest.register_node("default:water_flowing", { liquid_alternative_source = "default:water_source", liquid_viscosity = WATER_VISC, post_effect_color = {a=64, r=100, g=100, b=200}, - special_materials = { - {image="default_water.png", backface_culling=false}, - {image="default_water.png", backface_culling=true}, - }, groups = {water=3, liquid=3, puts_out_fire=1}, }) @@ -1016,7 +1016,11 @@ minetest.register_node("default:water_source", { description = "Water Source", inventory_image = minetest.inventorycube("default_water.png"), drawtype = "liquid", - tile_images = {"default_water.png"}, + tiles = {"default_water.png"}, + special_tiles = { + -- New-style water source material (mostly unused) + {name="default_water.png", backface_culling=false}, + }, alpha = WATER_ALPHA, paramtype = "light", walkable = false, @@ -1028,10 +1032,6 @@ minetest.register_node("default:water_source", { liquid_alternative_source = "default:water_source", liquid_viscosity = WATER_VISC, post_effect_color = {a=64, r=100, g=100, b=200}, - special_materials = { - -- New-style water source material (mostly unused) - {image="default_water.png", backface_culling=false}, - }, groups = {water=3, liquid=3, puts_out_fire=1}, }) @@ -1039,7 +1039,19 @@ minetest.register_node("default:lava_flowing", { description = "Flowing Lava", inventory_image = minetest.inventorycube("default_lava.png"), drawtype = "flowingliquid", - tile_images = {"default_lava.png"}, + tiles = {"default_lava.png"}, + special_tiles = { + { + image="default_lava_flowing_animated.png", + backface_culling=false, + animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.3} + }, + { + image="default_lava_flowing_animated.png", + backface_culling=true, + animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.3} + }, + }, paramtype = "light", light_source = LIGHT_MAX - 1, walkable = false, @@ -1052,10 +1064,6 @@ minetest.register_node("default:lava_flowing", { liquid_viscosity = LAVA_VISC, damage_per_second = 4*2, post_effect_color = {a=192, r=255, g=64, b=0}, - special_materials = { - {image="default_lava.png", backface_culling=false}, - {image="default_lava.png", backface_culling=true}, - }, groups = {lava=3, liquid=2, hot=3, igniter=2}, }) @@ -1063,7 +1071,13 @@ minetest.register_node("default:lava_source", { description = "Lava Source", inventory_image = minetest.inventorycube("default_lava.png"), drawtype = "liquid", - tile_images = {"default_lava.png"}, + tiles = { + {name="default_lava_source_animated.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}} + }, + special_tiles = { + -- New-style lava source material (mostly unused) + {name="default_lava.png", backface_culling=false}, + }, paramtype = "light", light_source = LIGHT_MAX - 1, walkable = false, @@ -1076,17 +1090,13 @@ minetest.register_node("default:lava_source", { liquid_viscosity = LAVA_VISC, damage_per_second = 4*2, post_effect_color = {a=192, r=255, g=64, b=0}, - special_materials = { - -- New-style lava source material (mostly unused) - {image="default_lava.png", backface_culling=false}, - }, groups = {lava=3, liquid=2, hot=3, igniter=2}, }) minetest.register_node("default:torch", { description = "Torch", drawtype = "torchlike", - tile_images = {"default_torch_on_floor.png", "default_torch_on_ceiling.png", "default_torch.png"}, + tiles = {"default_torch_on_floor.png", "default_torch_on_ceiling.png", "default_torch.png"}, inventory_image = "default_torch_on_floor.png", wield_image = "default_torch_on_floor.png", paramtype = "light", @@ -1108,7 +1118,7 @@ minetest.register_node("default:torch", { minetest.register_node("default:sign_wall", { description = "Sign", drawtype = "signlike", - tile_images = {"default_sign_wall.png"}, + tiles = {"default_sign_wall.png"}, inventory_image = "default_sign_wall.png", wield_image = "default_sign_wall.png", paramtype = "light", @@ -1144,7 +1154,7 @@ minetest.register_node("default:sign_wall", { minetest.register_node("default:chest", { description = "Chest", - tile_images = {"default_chest_top.png", "default_chest_top.png", "default_chest_side.png", + 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 = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, @@ -1195,7 +1205,7 @@ end minetest.register_node("default:chest_locked", { description = "Locked Chest", - tile_images = {"default_chest_top.png", "default_chest_top.png", "default_chest_side.png", + tiles = {"default_chest_top.png", "default_chest_top.png", "default_chest_side.png", "default_chest_side.png", "default_chest_side.png", "default_chest_lock.png"}, paramtype2 = "facedir", groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, @@ -1278,7 +1288,7 @@ default.furnace_inactive_formspec = minetest.register_node("default:furnace", { description = "Furnace", - tile_images = {"default_furnace_top.png", "default_furnace_bottom.png", "default_furnace_side.png", + 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 = {cracky=2}, @@ -1309,7 +1319,7 @@ minetest.register_node("default:furnace", { minetest.register_node("default:furnace_active", { description = "Furnace", - tile_images = {"default_furnace_top.png", "default_furnace_bottom.png", "default_furnace_side.png", + tiles = {"default_furnace_top.png", "default_furnace_bottom.png", "default_furnace_side.png", "default_furnace_side.png", "default_furnace_side.png", "default_furnace_front_active.png"}, paramtype2 = "facedir", light_source = 8, @@ -1457,7 +1467,7 @@ minetest.register_abm({ minetest.register_node("default:cobble", { description = "Cobblestone", - tile_images = {"default_cobble.png"}, + tiles = {"default_cobble.png"}, is_ground_content = true, groups = {cracky=3}, sounds = default.node_sound_stone_defaults(), @@ -1465,7 +1475,7 @@ minetest.register_node("default:cobble", { minetest.register_node("default:mossycobble", { description = "Mossy Cobblestone", - tile_images = {"default_mossycobble.png"}, + tiles = {"default_mossycobble.png"}, is_ground_content = true, groups = {cracky=3}, sounds = default.node_sound_stone_defaults(), @@ -1473,7 +1483,7 @@ minetest.register_node("default:mossycobble", { minetest.register_node("default:steelblock", { description = "Steel Block", - tile_images = {"default_steel_block.png"}, + tiles = {"default_steel_block.png"}, is_ground_content = true, groups = {snappy=1,bendy=2,cracky=1,melty=2,level=2}, sounds = default.node_sound_stone_defaults(), @@ -1481,7 +1491,7 @@ minetest.register_node("default:steelblock", { minetest.register_node("default:nyancat", { description = "Nyan Cat", - tile_images = {"default_nc_side.png", "default_nc_side.png", "default_nc_side.png", + tiles = {"default_nc_side.png", "default_nc_side.png", "default_nc_side.png", "default_nc_side.png", "default_nc_back.png", "default_nc_front.png"}, inventory_image = "default_nc_front.png", paramtype2 = "facedir", @@ -1492,7 +1502,7 @@ minetest.register_node("default:nyancat", { minetest.register_node("default:nyancat_rainbow", { description = "Nyan Cat Rainbow", - tile_images = {"default_nc_rb.png"}, + tiles = {"default_nc_rb.png"}, inventory_image = "default_nc_rb.png", groups = {cracky=2}, sounds = default.node_sound_defaults(), @@ -1502,7 +1512,7 @@ minetest.register_node("default:sapling", { description = "Sapling", drawtype = "plantlike", visual_scale = 1.0, - tile_images = {"default_sapling.png"}, + tiles = {"default_sapling.png"}, inventory_image = "default_sapling.png", wield_image = "default_sapling.png", paramtype = "light", @@ -1515,7 +1525,7 @@ minetest.register_node("default:apple", { description = "Apple", drawtype = "plantlike", visual_scale = 1.0, - tile_images = {"default_apple.png"}, + tiles = {"default_apple.png"}, inventory_image = "default_apple.png", paramtype = "light", sunlight_propagates = true, @@ -1529,7 +1539,7 @@ minetest.register_node("default:dry_shrub", { description = "Dry Shrub", drawtype = "plantlike", visual_scale = 1.0, - tile_images = {"default_dry_shrub.png"}, + tiles = {"default_dry_shrub.png"}, inventory_image = "default_dry_shrub.png", wield_image = "default_dry_shrub.png", paramtype = "light", diff --git a/mods/default/textures/default_lava_flowing_animated.png b/mods/default/textures/default_lava_flowing_animated.png new file mode 100644 index 0000000000000000000000000000000000000000..cef8e36113597ea1b2427c6709db33322d4cf406 GIT binary patch literal 8715 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 NdAjFP(c6y literal 0 HcmV?d00001