]> git.lizzy.rs Git - mtmap.git/commitdiff
Fix node id mapping length v0.1.1
authorElias Fleckenstein <eliasfleckenstein@web.de>
Sat, 16 Jul 2022 19:06:08 +0000 (21:06 +0200)
committerElias Fleckenstein <eliasfleckenstein@web.de>
Sat, 16 Jul 2022 19:06:08 +0000 (21:06 +0200)
deserialize.go
serialize.go

index 38100479322b0f1942918c7181ea8c17ef1571fa..c59837c2a4b86d1821bb2ac30a1e0868a99c4769 100644 (file)
@@ -226,7 +226,7 @@ func Deserialize(r io.Reader, idNameMap map[string]mt.Content) *MapBlk {
        nameIdMap := make(map[mt.Content]string)
 
        for i := uint16(0); i < nameIdMapCount; i++ {
-               var id uint16
+               var id mt.Content
                if err := binary.Read(r, binary.BigEndian, &id); err != nil {
                        panic(err)
                }
@@ -241,7 +241,7 @@ func Deserialize(r io.Reader, idNameMap map[string]mt.Content) *MapBlk {
                        panic(err)
                }
 
-               nameIdMap[mt.Content(id)] = string(name)
+               nameIdMap[id] = string(name)
        }
 
        for i := 0; i < 4096; i++ {
index 5f0c461924bdaa9425a2c8bd350c95ac7f97fa18..4ec2b94186cdd179b8fad1080521c83bb38455f2 100644 (file)
@@ -151,16 +151,16 @@ func Serialize(blk *MapBlk, w io.Writer, idNameMap map[string]mt.Content) {
                panic(err)
        }
 
-       var nameIdMapCount = uint16(len(idNameMap))
-       if err := binary.Write(w, binary.BigEndian, &nameIdMapCount); err != nil {
-               panic(err)
-       }
-
        var exists = make(map[mt.Content]struct{})
        for i := 0; i < 4096; i++ {
                exists[blk.Param0[i]] = struct{}{}
        }
 
+       var nameIdMapCount = uint16(len(exists))
+       if err := binary.Write(w, binary.BigEndian, &nameIdMapCount); err != nil {
+               panic(err)
+       }
+
        for name, id := range idNameMap {
                if _, ok := exists[id]; !ok {
                        continue