def WalkerSystem(keyword):
    for entityId in coreInstance.tagToEntityIdGroup[keyword]:
        entity = coreInstance.entities[entityId]
        if not entity.walker.destinationPos: continue

        delta_vector_normalized = deltaVectorNormalized(entity.walker.destinationPos, entity.pos)
        entity.deltaVector = [x * entity.walker.speed for x in delta_vector_normalized]

        if distanceBetweenPoints(entity.pos, entity.walker.destinationPos) < 0.03:
            entity.deltaVector = [x * 0.1 for x in entity.deltaVector]
            entity.walker.destinationPos = None
 def collision(self, currentPos):
     distance_between_points = distanceBetweenPoints(currentPos, self.position)
     if distance_between_points < self.radius:
         return CollisionData(self.color, deltaVectorNormalized(currentPos, self.position))