+ if hasattr(t, 'installable') and (not t.portable):
+ write(f, 'THING_INSTALLED %s' % t.id_)
+ if t.type_ == 'Door' and t.blocking:
+ write(f, 'THING_DOOR_CLOSED %s' % t.id_)
+ elif t.type_ == 'Hat':
+ write(f, 'THING_HAT_DESIGN %s %s' % (t.id_,
+ quote(t.design)))
+ elif t.type_ == 'MusicPlayer':
+ write(f, 'THING_MUSICPLAYER_SETTINGS %s %s %s %s' %
+ (t.id_, int(t.playing), t.playlist_index, int(t.repeat)))
+ for item in t.playlist:
+ write(f, 'THING_MUSICPLAYER_PLAYLIST_ITEM %s %s %s' %
+ (t.id_, quote(item[0]), item[1]))
+ elif t.type_ == 'Bottle' and not t.full:
+ write(f, 'THING_BOTTLE_EMPTY %s' % t.id_)