minetest.luaentities
^ List of lua entities, indexed by active object id
-Deprecated but defined for backwards compatibility:
-minetest.digprop_constanttime(time)
-minetest.digprop_stonelike(toughness)
-minetest.digprop_dirtlike(toughness)
-minetest.digprop_gravellike(toughness)
-minetest.digprop_woodlike(toughness)
-minetest.digprop_leaveslike(toughness)
-minetest.digprop_glasslike(toughness)
-
Class reference
----------------
NodeMetaRef: Node metadata - reference extra data and functionality stored
liquid_alternative_source = "", -- Source version of flowing liquid
liquid_viscosity = 0, -- Higher viscosity = slower flow (max. 7)
liquid_renewable = true, -- Can new liquid source be created by placing
+ drowning = true, -- Player will drown in these
two or more sources nearly?
light_source = 0, -- Amount of light emitted by node
damage_per_second = 0, -- If player is inside node, this damage is caused
^ If schematic is a string, it is the filepath relative to the current working directory of the
^ specified Minetest schematic file.
^ - OR -, could instead be a table containing two fields, size and data:
- schematic = {size = {x=4, y=6, z=4}, data = { {"cobble", 0, 0}, {"dirt_with_grass", 0, 0}, ...}},
+ schematic = {
+ size = {x=4, y=6, z=4},
+ data = {
+ {name="cobble", param1=0, param2=0},
+ {name="dirt_with_grass", param1=0, param2=0},
+ ...
+ }
+ },
^ See 'Schematic specifier' for details.
flags = "place_center_x, place_center_z",
^ Flags for schematic decorations. See 'Schematic attributes'.
b->c_filler = b->c_top;
b->filler_height = MAP_GENERATION_LIMIT;
- b->height_min = -MAP_GENERATION_LIMIT;
- b->height_max = MAP_GENERATION_LIMIT;
- b->heat_point = 0.0;
- b->humidity_point = 0.0;
+ b->height_min = -MAP_GENERATION_LIMIT;
+ b->height_max = MAP_GENERATION_LIMIT;
+ b->heat_point = 0.0;
+ b->humidity_point = 0.0;
biomes.push_back(b);
}
if (y > b->height_max || y < b->height_min)
continue;
- float d_heat = heat - b->heat_point;
- float d_humidity = humidity - b->humidity_point;
+ float d_heat = heat - b->heat_point;
+ float d_humidity = humidity - b->humidity_point;
float dist = (d_heat * d_heat) +
(d_humidity * d_humidity);
if (dist < dist_min) {
}
}
- generate(mg, &ps, max_y, 0, v3s16(x, y, z));
+ generate(mg, &ps, max_y, v3s16(x, y, z));
}
}
}
}
-void DecoSimple::generate(Mapgen *mg, PseudoRandom *pr, s16 max_y,
- s16 start_y, v3s16 p) {
+void DecoSimple::generate(Mapgen *mg, PseudoRandom *pr, s16 max_y, v3s16 p) {
ManualMapVoxelManipulator *vm = mg->vm;
u32 vi = vm->m_area.index(p);
height = MYMIN(height, max_y - p.Y);
v3s16 em = vm->m_area.getExtent();
- for (int i = start_y; i < height; i++) {
+ for (int i = 0; i < height; i++) {
vm->m_area.add_y(em, vi, 1);
content_t c = vm->m_data[vi].getContent();
}
-void DecoSchematic::generate(Mapgen *mg, PseudoRandom *pr, s16 max_y,
- s16 start_y, v3s16 p) {
+void DecoSchematic::generate(Mapgen *mg, PseudoRandom *pr, s16 max_y, v3s16 p) {
ManualMapVoxelManipulator *vm = mg->vm;
if (flags & DECO_PLACE_CENTER_X)
void placeDeco(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax);
void placeCutoffs(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax);
- virtual void generate(Mapgen *mg, PseudoRandom *pr, s16 max_y,
- s16 start_y, v3s16 p) = 0;
+ virtual void generate(Mapgen *mg, PseudoRandom *pr, s16 max_y, v3s16 p) = 0;
virtual int getHeight() = 0;
virtual std::string getName() = 0;
};
~DecoSimple() {}
void resolveNodeNames(INodeDefManager *ndef);
- virtual void generate(Mapgen *mg, PseudoRandom *pr, s16 max_y,
- s16 start_y, v3s16 p);
+ virtual void generate(Mapgen *mg, PseudoRandom *pr, s16 max_y, v3s16 p);
virtual int getHeight();
virtual std::string getName();
};
~DecoSchematic();
void resolveNodeNames(INodeDefManager *ndef);
- virtual void generate(Mapgen *mg, PseudoRandom *pr, s16 max_y,
- s16 start_y, v3s16 p);
+ virtual void generate(Mapgen *mg, PseudoRandom *pr, s16 max_y, v3s16 p);
virtual int getHeight();
virtual std::string getName();
y--;
}
- if (iters == 0)
- printf("iters exhausted at %d %d\n", p.X, p.Y);
return y + b->top_depth;
}
continue;
}
- // N.B. It is necessary to search downward since range_heightmap[i]
+ // N.B. It is necessary to search downward since ridge_heightmap[i]
// might not be the actual height, just the lowest part in the chunk
// where a ridge had been carved
u32 i = vm->m_area.index(x, y, z);
verbosestream << "register_ore: ore '" << ore->ore_name
<< "' registered" << std::endl;
- return 0;
+ return 1;
}
// register_decoration({lots of stuff})
verbosestream << "register_decoration: decoration '" << deco->getName()
<< "' registered" << std::endl;
- return 0;
+ return 1;
}
// create_schematic(p1, p2, probability_list, filename)
dschem.applyProbabilities(&probability_list, p1);
dschem.saveSchematicFile(ndef);
- actionstream << "create_schematic: saved schematic file '" << dschem.filename << "'." << std::endl;
+ actionstream << "create_schematic: saved schematic file '"
+ << dschem.filename << "'." << std::endl;
return 1;
}