diff options
-rwxr-xr-x | hercules/tmx_converter.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/hercules/tmx_converter.py b/hercules/tmx_converter.py index 44a4101..3e8dc16 100755 --- a/hercules/tmx_converter.py +++ b/hercules/tmx_converter.py @@ -137,9 +137,11 @@ class Slide(Object): class DynCollision(Object): __slots__ = ( 'colid', + 'enabled', ) def __init__(self): self.colid = 1 + self.enabled = True class DungeonSwitch(Object): __slots__ = ( @@ -475,13 +477,15 @@ class ContentHandler(xml.sax.ContentHandler): self.warp_cnt = True elif isinstance(obj, DynCollision): obj_name = "%s_%s_%s" % (self.base, obj.x, obj.y) + triggere = ifte(obj.enabled, "\nOnInit:", "") + triggerd = ifte(obj.enabled, "", "\nOnInit:") self.confs.write( SEPARATOR.join([ '\n', '%s,%d,%d,0\t' % (self.base, obj.x, (obj.y)), 'script\t', - '#%s\tNPC_HIDDEN,{\n\tend;\nOnDisable:\n\tdelcells "%s"; end;\n' % (obj_name, obj_name), - 'OnEnable:\nOnInit:\n\tsetcells "%s", %d, %d, %d, %d, %d, "%s";\n}\n' % (self.base, obj.x, obj.y, obj.x+obj.w, obj.y+obj.h, obj.colid, obj_name), + '#%s\tNPC_HIDDEN,{\n\tend;\nOnDisable:%s\n\tdelcells "%s"; end;\n' % (obj_name, triggerd, obj_name), + 'OnEnable:%s\n\tsetcells "%s", %d, %d, %d, %d, %d, "%s";\n}\n' % (triggere, self.base, obj.x, obj.y, obj.x+obj.w, obj.y+obj.h, obj.colid, obj_name), ]) ) self.save_cnt = True |