From 8d8f922ebc2ac518bcd5ebf8f6441802510f53ed Mon Sep 17 00:00:00 2001 From: Paul Vincent Craven Date: Mon, 18 Nov 2019 14:54:34 -0600 Subject: [PATCH] Fixes for bugs found in student .tmx files that cause crashes. --- pytiled_parser/xml_parser.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pytiled_parser/xml_parser.py b/pytiled_parser/xml_parser.py index a50ff14..6088a17 100644 --- a/pytiled_parser/xml_parser.py +++ b/pytiled_parser/xml_parser.py @@ -192,7 +192,10 @@ def _parse_layer( else: id_ = None - name = layer_element.attrib["name"] + if "name" in layer_element.attrib: + name = layer_element.attrib["name"] + else: + name = None offset: Optional[objects.OrderedPair] offset_x_attrib = layer_element.attrib.get("offsetx") @@ -598,9 +601,13 @@ def _parse_tiles( location=(my_x, my_y), size=(my_width, my_height)) + if my_object is None: + if "template" in object.attrib: + print("Warning, this .tmx file is using an unsupported 'template' attribute. Ignoring.") + continue if my_object is None: - my_object = objects.RectangleObject(id_=my_id, + my_object = objects.RectangleObject(id_=my_id, location=(my_x, my_y), size=(my_width, my_height))