mirror of
https://github.com/luanti-org/luanti.git
synced 2025-07-22 17:18:39 +00:00
Fix out of range enum casts in deSerialize functions (#14090)
This commit is contained in:
parent
0383c44f0d
commit
2ea8d9ca11
15 changed files with 138 additions and 77 deletions
|
@ -45,13 +45,14 @@ class NodeResolver;
|
|||
class TestSchematic;
|
||||
#endif
|
||||
|
||||
enum ContentParamType
|
||||
enum ContentParamType : u8
|
||||
{
|
||||
CPT_NONE,
|
||||
CPT_LIGHT,
|
||||
ContentParamType_END // Dummy for validity check
|
||||
};
|
||||
|
||||
enum ContentParamType2
|
||||
enum ContentParamType2 : u8
|
||||
{
|
||||
CPT2_NONE,
|
||||
// Need 8-bit param2
|
||||
|
@ -82,16 +83,19 @@ enum ContentParamType2
|
|||
CPT2_4DIR,
|
||||
// 6 bits of palette index, then 4dir
|
||||
CPT2_COLORED_4DIR,
|
||||
// Dummy for validity check
|
||||
ContentParamType2_END
|
||||
};
|
||||
|
||||
enum LiquidType
|
||||
enum LiquidType : u8
|
||||
{
|
||||
LIQUID_NONE,
|
||||
LIQUID_FLOWING,
|
||||
LIQUID_SOURCE,
|
||||
LiquidType_END // Dummy for validity check
|
||||
};
|
||||
|
||||
enum NodeBoxType
|
||||
enum NodeBoxType : u8
|
||||
{
|
||||
NODEBOX_REGULAR, // Regular block; allows buildable_to
|
||||
NODEBOX_FIXED, // Static separately defined box(es)
|
||||
|
@ -189,7 +193,7 @@ public:
|
|||
void readSettings();
|
||||
};
|
||||
|
||||
enum NodeDrawType
|
||||
enum NodeDrawType : u8
|
||||
{
|
||||
// A basic solid block
|
||||
NDT_NORMAL,
|
||||
|
@ -233,6 +237,8 @@ enum NodeDrawType
|
|||
NDT_MESH,
|
||||
// Combined plantlike-on-solid
|
||||
NDT_PLANTLIKE_ROOTED,
|
||||
// Dummy for validity check
|
||||
NodeDrawType_END
|
||||
};
|
||||
|
||||
// Mesh options for NDT_PLANTLIKE with CPT2_MESHOPTIONS
|
||||
|
@ -252,6 +258,7 @@ enum AlignStyle : u8 {
|
|||
ALIGN_STYLE_NODE,
|
||||
ALIGN_STYLE_WORLD,
|
||||
ALIGN_STYLE_USER_DEFINED,
|
||||
AlignStyle_END // Dummy for validity check
|
||||
};
|
||||
|
||||
enum AlphaMode : u8 {
|
||||
|
@ -259,6 +266,7 @@ enum AlphaMode : u8 {
|
|||
ALPHAMODE_CLIP,
|
||||
ALPHAMODE_OPAQUE,
|
||||
ALPHAMODE_LEGACY_COMPAT, /* only sent by old servers, equals OPAQUE */
|
||||
AlphaMode_END // Dummy for validity check
|
||||
};
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue