+ {
+ x := (*(*(struct {
+ Param0 Content
+
+ Name string
+ Groups []Group
+
+ P1Type Param1Type
+ P2Type Param2Type
+ DrawType DrawType
+
+ Mesh string
+ Scale float32
+ //mt:const uint8(6)
+ Tiles [6]TileDef
+ OverlayTiles [6]TileDef
+ //mt:const uint8(6)
+ SpecialTiles [6]TileDef
+
+ Color color.NRGBA
+ Palette Texture
+
+ Waving WaveType
+ ConnectSides uint8
+ ConnectTo []Content
+ InsideTint color.NRGBA
+ Level uint8 // Must be < 128.
+
+ Translucent bool // Sunlight is scattered and becomes normal light.
+ Transparent bool // Sunlight isn't scattered.
+ LightSrc uint8
+
+ GndContent bool
+ Collides bool
+ Pointable bool
+ Diggable bool
+ Climbable bool
+ Replaceable bool
+ OnRightClick bool
+
+ DmgPerSec int32
+
+ LiquidType LiquidType
+ FlowingAlt string
+ SrcAlt string
+ Viscosity uint8 // 0-7
+ LiqRenewable bool
+ FlowRange uint8
+ DrownDmg uint8
+ Floodable bool
+
+ DrawBox, ColBox, SelBox NodeBox
+
+ FootstepSnd, DiggingSnd, DugSnd SoundDef
+
+ LegacyFaceDir bool
+ LegacyMounted bool
+
+ DigPredict string
+
+ MaxLvl uint8
+
+ AlphaUse
+
+ MoveResistance uint8
+
+ LiquidMovePhysics bool
+ }))(obj)).LiquidMovePhysics
+ if x {
+ write8(w, 1)
+ } else {
+ write8(w, 0)
+ }
+ }
+ {
+ buf := w
+ w := ow
+ if len((buf.Bytes())) > math.MaxUint16 {
+ chk(ErrTooLong)
+ }
+ {
+ x := uint16(len((buf.Bytes())))
+ write16(w, uint16(x))
+ }
+ {
+ _, err := w.Write((buf.Bytes())[:])
+ chk(err)
+ }
+ }
+ }
+}
+
+func (obj *NodeDef) deserialize(r io.Reader) {
+ if err := pcall(func() {
+ ((*(*(struct {
+ Param0 Content
+
+ Name string
+ Groups []Group
+
+ P1Type Param1Type
+ P2Type Param2Type
+ DrawType DrawType
+
+ Mesh string
+ Scale float32
+ //mt:const uint8(6)
+ Tiles [6]TileDef
+ OverlayTiles [6]TileDef
+ //mt:const uint8(6)
+ SpecialTiles [6]TileDef
+
+ Color color.NRGBA
+ Palette Texture
+
+ Waving WaveType
+ ConnectSides uint8
+ ConnectTo []Content
+ InsideTint color.NRGBA
+ Level uint8 // Must be < 128.
+
+ Translucent bool // Sunlight is scattered and becomes normal light.
+ Transparent bool // Sunlight isn't scattered.
+ LightSrc uint8
+
+ GndContent bool
+ Collides bool
+ Pointable bool
+ Diggable bool
+ Climbable bool
+ Replaceable bool
+ OnRightClick bool
+
+ DmgPerSec int32
+
+ LiquidType LiquidType
+ FlowingAlt string
+ SrcAlt string
+ Viscosity uint8 // 0-7
+ LiqRenewable bool
+ FlowRange uint8
+ DrownDmg uint8
+ Floodable bool
+
+ DrawBox, ColBox, SelBox NodeBox
+
+ FootstepSnd, DiggingSnd, DugSnd SoundDef
+
+ LegacyFaceDir bool
+ LegacyMounted bool
+
+ DigPredict string
+
+ MaxLvl uint8
+
+ AlphaUse
+
+ MoveResistance uint8
+
+ LiquidMovePhysics bool
+ }))(obj)).Param0).deserialize(r)
+ }); err != nil {
+ if err == io.EOF {
+ chk(io.EOF)
+ }
+ chk(fmt.Errorf("%s: %w", "github.com/dragonfireclient/mt.Content", err))
+ }
+ {
+ var n uint16