+
+
+def roach_is_serumless(roach):
+ for serum_name in SERUMS:
+ if getattr(roach, serum_name):
+ return False
+ return True
+
+
+class SerumFactory:
+ def __init__(self, suffix):
+ self.suffix = suffix
+
+ def assemble(self, name):
+ assert name in SERUMS
+ puddle = images.load("serum%s/serum" % (self.suffix,))
+ serum_icon = images.load("serum%s/%s" % (
+ self.suffix, SERUM_TILENAME_MAP[name],))
+ frame = puddle.copy()
+ frame.fill(SERUM_OVERLAY_COLORS[name], None, BLEND_RGBA_MULT)
+ frame.blit(serum_icon, (0, 0))
+ return SurfActor(frame)
+
+
+default_serums = SerumFactory("")
+big_serums = SerumFactory("_big")