mirror of
https://github.com/moparisthebest/minetest
synced 2024-12-23 08:08:47 -05:00
Remove freezemelt (the remainder of proller nonsense)
This commit is contained in:
parent
8eb9cebdd0
commit
6fdb32361a
@ -155,7 +155,7 @@ void MapNode::rotateAlongYAxis(INodeDefManager *nodemgr, Rotation rot) {
|
||||
u8 wmountface = (param2 & 7);
|
||||
if (wmountface <= 1)
|
||||
return;
|
||||
|
||||
|
||||
Rotation oldrot = wallmounted_to_rot[wmountface - 2];
|
||||
param2 &= ~7;
|
||||
param2 |= rot_to_wallmounted[(oldrot - rot) & 3];
|
||||
@ -439,28 +439,11 @@ u8 MapNode::addLevel(INodeDefManager *nodemgr, s8 add)
|
||||
return setLevel(nodemgr, level);
|
||||
}
|
||||
|
||||
void MapNode::freezeMelt(INodeDefManager *ndef) {
|
||||
u8 level_was_max = this->getMaxLevel(ndef);
|
||||
u8 level_was = this->getLevel(ndef);
|
||||
this->setContent(ndef->getId(ndef->get(*this).freezemelt));
|
||||
u8 level_now_max = this->getMaxLevel(ndef);
|
||||
if (level_was_max && level_was_max != level_now_max) {
|
||||
u8 want = (float)level_now_max / level_was_max * level_was;
|
||||
if (!want)
|
||||
want = 1;
|
||||
if (want != level_was)
|
||||
this->setLevel(ndef, want);
|
||||
//errorstream<<"was="<<(int)level_was<<"/"<<(int)level_was_max<<" nowm="<<(int)want<<"/"<<(int)level_now_max<< " => "<<(int)this->getLevel(ndef)<< std::endl;
|
||||
}
|
||||
if (this->getMaxLevel(ndef) && !this->getLevel(ndef))
|
||||
this->addLevel(ndef);
|
||||
}
|
||||
|
||||
u32 MapNode::serializedLength(u8 version)
|
||||
{
|
||||
if(!ser_ver_supported(version))
|
||||
throw VersionMismatchException("ERROR: MapNode format not supported");
|
||||
|
||||
|
||||
if(version == 0)
|
||||
return 1;
|
||||
else if(version <= 9)
|
||||
@ -474,13 +457,13 @@ void MapNode::serialize(u8 *dest, u8 version)
|
||||
{
|
||||
if(!ser_ver_supported(version))
|
||||
throw VersionMismatchException("ERROR: MapNode format not supported");
|
||||
|
||||
|
||||
// Can't do this anymore; we have 16-bit dynamically allocated node IDs
|
||||
// in memory; conversion just won't work in this direction.
|
||||
if(version < 24)
|
||||
throw SerializationError("MapNode::serialize: serialization to "
|
||||
"version < 24 not possible");
|
||||
|
||||
|
||||
writeU16(dest+0, param0);
|
||||
writeU8(dest+2, param1);
|
||||
writeU8(dest+3, param2);
|
||||
@ -489,7 +472,7 @@ void MapNode::deSerialize(u8 *source, u8 version)
|
||||
{
|
||||
if(!ser_ver_supported(version))
|
||||
throw VersionMismatchException("ERROR: MapNode format not supported");
|
||||
|
||||
|
||||
if(version <= 21)
|
||||
{
|
||||
deSerialize_pre22(source, version);
|
||||
@ -651,7 +634,7 @@ void MapNode::deSerialize_pre22(u8 *source, u8 version)
|
||||
param2 &= 0x0f;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Convert special values from old version to new
|
||||
if(version <= 19)
|
||||
{
|
||||
|
@ -62,11 +62,11 @@ typedef u16 content_t;
|
||||
|
||||
/*
|
||||
Ignored node.
|
||||
|
||||
|
||||
Unloaded chunks are considered to consist of this. Several other
|
||||
methods return this when an error occurs. Also, during
|
||||
map generation this means the node has not been set yet.
|
||||
|
||||
|
||||
Doesn't create faces with anything and is considered being
|
||||
out-of-map in the game map.
|
||||
*/
|
||||
@ -132,7 +132,7 @@ struct MapNode
|
||||
- Uhh... well, most blocks have light or nothing in here.
|
||||
*/
|
||||
u8 param1;
|
||||
|
||||
|
||||
/*
|
||||
The second parameter. Initialized to 0.
|
||||
E.g. direction for torches and flowing water.
|
||||
@ -161,7 +161,7 @@ struct MapNode
|
||||
&& param1 == other.param1
|
||||
&& param2 == other.param2);
|
||||
}
|
||||
|
||||
|
||||
// To be used everywhere
|
||||
content_t getContent() const
|
||||
{
|
||||
@ -187,7 +187,7 @@ struct MapNode
|
||||
{
|
||||
param2 = p;
|
||||
}
|
||||
|
||||
|
||||
void setLight(enum LightBank bank, u8 a_light, INodeDefManager *nodemgr);
|
||||
u8 getLight(enum LightBank bank, INodeDefManager *nodemgr) const;
|
||||
|
||||
@ -223,7 +223,7 @@ struct MapNode
|
||||
u8 getFaceDir(INodeDefManager *nodemgr) const;
|
||||
u8 getWallMounted(INodeDefManager *nodemgr) const;
|
||||
v3s16 getWallMountedDir(INodeDefManager *nodemgr) const;
|
||||
|
||||
|
||||
void rotateAlongYAxis(INodeDefManager *nodemgr, Rotation rot);
|
||||
|
||||
/*
|
||||
@ -241,12 +241,13 @@ struct MapNode
|
||||
*/
|
||||
std::vector<aabb3f> getCollisionBoxes(INodeDefManager *nodemgr) const;
|
||||
|
||||
/* Liquid helpers */
|
||||
/*
|
||||
Liquid helpers
|
||||
*/
|
||||
u8 getMaxLevel(INodeDefManager *nodemgr) const;
|
||||
u8 getLevel(INodeDefManager *nodemgr) const;
|
||||
u8 setLevel(INodeDefManager *nodemgr, s8 level = 1);
|
||||
u8 addLevel(INodeDefManager *nodemgr, s8 add = 1);
|
||||
void freezeMelt(INodeDefManager *nodemgr);
|
||||
|
||||
/*
|
||||
Serialization functions
|
||||
@ -255,7 +256,7 @@ struct MapNode
|
||||
static u32 serializedLength(u8 version);
|
||||
void serialize(u8 *dest, u8 version);
|
||||
void deSerialize(u8 *source, u8 version);
|
||||
|
||||
|
||||
// Serializes or deserializes a list of nodes in bulk format (first the
|
||||
// content of all nodes, then the param1 of all nodes, then the param2
|
||||
// of all nodes).
|
||||
|
@ -227,7 +227,6 @@ void ContentFeatures::reset()
|
||||
liquid_alternative_source = "";
|
||||
liquid_viscosity = 0;
|
||||
liquid_renewable = true;
|
||||
freezemelt = "";
|
||||
liquid_range = LIQUID_LEVEL_MAX+1;
|
||||
drowning = 0;
|
||||
light_source = 0;
|
||||
|
@ -234,8 +234,6 @@ struct ContentFeatures
|
||||
u8 liquid_viscosity;
|
||||
// Is liquid renewable (new liquid source will be created between 2 existing)
|
||||
bool liquid_renewable;
|
||||
// Ice for water, water for ice
|
||||
std::string freezemelt;
|
||||
// Number of flowing liquids surrounding source
|
||||
u8 liquid_range;
|
||||
u8 drowning;
|
||||
|
@ -414,7 +414,6 @@ ContentFeatures read_content_features(lua_State *L, int index)
|
||||
f.leveled = getintfield_default(L, index, "leveled", f.leveled);
|
||||
|
||||
getboolfield(L, index, "liquid_renewable", f.liquid_renewable);
|
||||
getstringfield(L, index, "freezemelt", f.freezemelt);
|
||||
f.drowning = getintfield_default(L, index,
|
||||
"drowning", f.drowning);
|
||||
// Amount of light the node emits
|
||||
|
Loading…
Reference in New Issue
Block a user