Added movement radius, movement restrictions based on AP. Moved some existing logic into functions