def spam_initial_naubs(self): naubino = self.naubino import naub_spec, random spec = naub_spec.spec("a-b b-c c-a") palette = list(naubino.naub_colors.values()) random.shuffle(palette) spec.colorize(palette) spec.position_on_circle(radius = 20) for naub in spec.naubs: naub.naubino = naubino for join in spec.joins: join.naubino = naubino
def explode(self): self.remove() naubino = self.naubino spec = naub_spec.spec("a-b b-c c-d d-e e-f f-g g-h h-i i-j j-a") palette = naubino.naub_colors.values() spec.colorize(palette) spec.position_on_circle(10) for naub in spec.naubs: naub.naubino = naubino for join in spec.joins: join.naubino = naubino for naub in spec.naubs: naub.shape.group = id(self) away = naub.pos * 15 move_away = Animation( pos = away, duration = 3, transition = "out_quad") move_away.start(naub) move_away.bind( on_complete = lambda anim, naub: self.moved_away(naub))