summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElias Fleckenstein <eliasfleckenstein@web.de>2022-07-16 23:16:36 +0200
committerElias Fleckenstein <eliasfleckenstein@web.de>2022-07-16 23:16:36 +0200
commit2de49e42a1001a39416c072f57f38d7a40810454 (patch)
tree106aede7cdd5aab3282127688ac0a4daa068422c
parent49ab7f5232167cdd6115ae481e614b01bcc1371d (diff)
downloadmtmap-2de49e42a1001a39416c072f57f38d7a40810454.tar.xz
Don't error on unknown nodesv0.3.0
-rw-r--r--deserialize.go4
-rw-r--r--serialize.go3
-rw-r--r--types.go17
3 files changed, 4 insertions, 20 deletions
diff --git a/deserialize.go b/deserialize.go
index 78b9ea2..579acac 100644
--- a/deserialize.go
+++ b/deserialize.go
@@ -250,7 +250,7 @@ func Deserialize(r io.Reader, idNameMap map[string]mt.Content) *MapBlk {
name, ok := nameIdMap[id]
if !ok {
- panic(ErrInvalidNodeId{id})
+ name = "unknown"
}
switch name {
@@ -263,7 +263,7 @@ func Deserialize(r io.Reader, idNameMap map[string]mt.Content) *MapBlk {
default:
id, ok = idNameMap[name]
if !ok {
- panic(ErrInvalidNodeName{name})
+ id = mt.Unknown
}
}
diff --git a/serialize.go b/serialize.go
index 85f1b28..22c591f 100644
--- a/serialize.go
+++ b/serialize.go
@@ -179,7 +179,8 @@ func Serialize(blk *MapBlk, w io.Writer, nameIdMap map[mt.Content]string) {
default:
name, ok = nameIdMap[id]
if !ok {
- panic(ErrInvalidNodeId{id})
+ id = mt.Unknown
+ name = "unknown"
}
}
diff --git a/types.go b/types.go
index 5c923a3..abb02e2 100644
--- a/types.go
+++ b/types.go
@@ -1,7 +1,6 @@
package mtmap
import (
- "fmt"
"github.com/anon55555/mt"
)
@@ -35,19 +34,3 @@ type StaticObj struct {
Pos [3]float32
Data string
}
-
-type ErrInvalidNodeName struct {
- Name string
-}
-
-func (e ErrInvalidNodeName) Error() string {
- return fmt.Sprintf("invalid node \"%v\"", e.Name)
-}
-
-type ErrInvalidNodeId struct {
- Id mt.Content
-}
-
-func (e ErrInvalidNodeId) Error() string {
- return fmt.Sprintf("invalid node %v", e.Id)
-}