def obtener_colisiones(self, actor, grupo_de_actores): "Retorna una lista de los actores que colisionan con uno en particular." lista_de_colisiones = [] for a in grupo_de_actores: if id(actor) != id(a) and utils.colisionan(actor, a): lista_de_colisiones.append(a) return lista_de_colisiones
def _verificar_colisiones_en_tupla(self, tupla): "Toma dos grupos de actores y analiza colisiones entre ellos." (grupo_a, grupo_b, funcion_a_llamar) = tupla for a in grupo_a: for b in grupo_b: if id(a) != id(b) and utils.colisionan(a, b): funcion_a_llamar(a, b) # verifica si alguno de los dos objetos muere en la colision. if a not in pilas.actores.todos: if a in grupo_a: list.remove(grupo_a, a) if b not in pilas.actores.todos: if b in grupo_b: list.remove(grupo_b, b)