if opts.get('newline_sep', False): sep = '\n' return sep.join([str(x) for x in subviews]) class HiddenZoneView(ListView): def __str__(self): return "This information is not for your eyes" class PrivateZoneView(ListView): def __str__(self): viewer,obj,opts = self.viewer,self.obj,self.opts if viewer == obj.owner: return super(PrivateZoneView, self).__str__() return "This information is private" class PublicZoneView(ListView): def __str__(self): viewer,obj,opts = self.viewer,self.obj,self.opts return super(PublicZoneView, self).__str__() db = ViewDB() db.update({ tuple : ListView, list : ListView, Building : BuildingView, Creature : CreatureView, zHidden : HiddenZoneView, zPrivate : PrivateZoneView, zPublic : PublicZoneView })
viewer,obj,opts = self.viewer,self.obj,self.opts return '<Zone name="%s">This information is not for your eyes</Zone>' % obj._name class PrivateZoneView(ZoneView): def __str__(self): viewer,obj,opts = self.viewer,self.obj,self.opts if viewer == obj.owner: return super(PrivateZoneView, self).__str__() return '<Zone name="%s">This information is private</Zone>' % obj._name class PublicZoneView(ZoneView): def __str__(self): viewer,obj,opts = self.viewer,self.obj,self.opts return super(PublicZoneView, self).__str__() db = ViewDB() db.update({ tuple : ListView, list : ListView, Building : BuildingView, Creature : CreatureView, Mage : MageView, Spell : SpellView, Pad : PadView, zHidden : HiddenZoneView, zPrivate : PrivateZoneView, zPublic : PublicZoneView, buildings.ManaRuby.ManaShard : ManaShardView })