# HG changeset patch # User Neil Muller # Date 1378508718 -7200 # Node ID b3df20c76afd1ea025f364604bed3fc15c695039 # Parent 450081926426746a48adf9399561dca482675429 Pass layout hint to overlays diff -r 450081926426 -r b3df20c76afd nagslang/render.py --- a/nagslang/render.py Sat Sep 07 01:03:55 2013 +0200 +++ b/nagslang/render.py Sat Sep 07 01:05:18 2013 +0200 @@ -166,7 +166,7 @@ def set_game_object(self, game_object): self.game_object = game_object - def render(self, surface, display_offset): + def render(self, surface, display_offset, max_width): pass def is_visible(self): @@ -178,7 +178,7 @@ self.text = text self.widget = LabelWidget((20, 20), self.text) - def render(self, surface, display_offset): + def render(self, surface, display_offset, max_width): x, y = 20, 20 if display_offset[0] < 0: x += abs(display_offset[0]) diff -r 450081926426 -r b3df20c76afd nagslang/screens/area.py --- a/nagslang/screens/area.py Sat Sep 07 01:03:55 2013 +0200 +++ b/nagslang/screens/area.py Sat Sep 07 01:05:18 2013 +0200 @@ -214,9 +214,11 @@ drawable.render(mysurface) render_rect = self._calc_viewport(mysurface, surface) surface.blit(mysurface, (0, 0), render_rect) + # Maximum width we allow for overlays + max_width = min(render_rect.width, mysurface.get_width()) for overlay in self._level.overlay_drawables: if overlay.is_visible(): - overlay.render(surface, render_rect.topleft) + overlay.render(surface, render_rect.topleft, max_width) self.render_health_bar(surface) def tick_protagonist(self):