diff options
author | PilzAdam <pilzadam@minetest.net> | 2013-07-20 21:25:21 +0200 |
---|---|---|
committer | PilzAdam <pilzadam@minetest.net> | 2013-07-20 21:25:21 +0200 |
commit | 46d1d70e4c37973a9d9c9b69b150731ca9f53b7d (patch) | |
tree | 88937e4011cf962b90ac499b16b17784903c8d66 | |
parent | 8cae65978611476d0da215acf61819a905c68267 (diff) | |
download | minetest-46d1d70e4c37973a9d9c9b69b150731ca9f53b7d.tar.gz minetest-46d1d70e4c37973a9d9c9b69b150731ca9f53b7d.tar.bz2 minetest-46d1d70e4c37973a9d9c9b69b150731ca9f53b7d.zip |
Bump protocol version
-rw-r--r-- | src/clientserver.h | 7 | ||||
-rw-r--r-- | src/itemdef.cpp | 14 | ||||
-rw-r--r-- | src/nodedef.cpp | 10 |
3 files changed, 21 insertions, 10 deletions
diff --git a/src/clientserver.h b/src/clientserver.h index a84d29a90..0d07d64ff 100644 --- a/src/clientserver.h +++ b/src/clientserver.h @@ -95,9 +95,14 @@ SharedBuffer<u8> makePacket_TOCLIENT_TIME_OF_DAY(u16 time, float time_speed); TOCLIENT_HUDRM TOCLIENT_HUDCHANGE TOCLIENT_HUD_SET_FLAGS + PROTOCOL_VERSION 21: + TOCLIENT_BREATH + TOSERVER_BREATH + range added to ItemDefinition + drowning, leveled and liquid_range added to ContentFeatures */ -#define LATEST_PROTOCOL_VERSION 20 +#define LATEST_PROTOCOL_VERSION 21 // Server's supported network protocol range #define SERVER_PROTOCOL_VERSION_MIN 13 diff --git a/src/itemdef.cpp b/src/itemdef.cpp index 4ac23d0fc..83a70f1d7 100644 --- a/src/itemdef.cpp +++ b/src/itemdef.cpp @@ -119,8 +119,10 @@ void ItemDefinition::serialize(std::ostream &os, u16 protocol_version) const { if(protocol_version <= 17) writeU8(os, 1); // version - else + else if(protocol_version <= 20) writeU8(os, 2); // version + else + writeU8(os, 3); // version writeU8(os, type); os<<serializeString(name); os<<serializeString(description); @@ -148,6 +150,8 @@ void ItemDefinition::serialize(std::ostream &os, u16 protocol_version) const //serializeSimpleSoundSpec(sound_place, os); os<<serializeString(sound_place.name); writeF1000(os, sound_place.gain); + } + if(protocol_version > 20){ writeF1000(os, range); } } @@ -159,7 +163,7 @@ void ItemDefinition::deSerialize(std::istream &is) // Deserialize int version = readU8(is); - if(version != 1 && version != 2) + if(version < 1 || version > 3) throw SerializationError("unsupported ItemDefinition version"); type = (enum ItemType)readU8(is); name = deSerializeString(is); @@ -192,16 +196,18 @@ void ItemDefinition::deSerialize(std::istream &is) // Set the old default sound sound_place.name = "default_place_node"; sound_place.gain = 0.5; - } else if(version == 2) { + } else if(version >= 2) { node_placement_prediction = deSerializeString(is); //deserializeSimpleSoundSpec(sound_place, is); sound_place.name = deSerializeString(is); sound_place.gain = readF1000(is); } + if(version == 3) { + range = readF1000(is); + } // If you add anything here, insert it primarily inside the try-catch // block to not need to increase the version. try{ - range = readF1000(is); }catch(SerializationError &e) {}; } diff --git a/src/nodedef.cpp b/src/nodedef.cpp index b1ce7bbc8..a4d036883 100644 --- a/src/nodedef.cpp +++ b/src/nodedef.cpp @@ -281,11 +281,11 @@ void ContentFeatures::serialize(std::ostream &os, u16 protocol_version) serializeSimpleSoundSpec(sound_dig, os); serializeSimpleSoundSpec(sound_dug, os); writeU8(os, rightclickable); - // Stuff below should be moved to correct place in a version that otherwise changes - // the protocol version writeU8(os, drowning); writeU8(os, leveled); writeU8(os, liquid_range); + // Stuff below should be moved to correct place in a version that otherwise changes + // the protocol version } void ContentFeatures::deSerialize(std::istream &is) @@ -345,14 +345,14 @@ void ContentFeatures::deSerialize(std::istream &is) deSerializeSimpleSoundSpec(sound_dig, is); deSerializeSimpleSoundSpec(sound_dug, is); rightclickable = readU8(is); + drowning = readU8(is); + leveled = readU8(is); + liquid_range = readU8(is); // If you add anything here, insert it primarily inside the try-catch // block to not need to increase the version. try{ // Stuff below should be moved to correct place in a version that // otherwise changes the protocol version - drowning = readU8(is); - leveled = readU8(is); - liquid_range = readU8(is); }catch(SerializationError &e) {}; } |