Стоило упомянуть, что нужны доп.действия чтобы нормально разместить квадрат на поле. И стоило упомянуть, что метод moveBy запоминает координаты квадрата, и не надо ему писать предыдущее местоположение объекта. Ему достаточно задать 5 и он пойдет на 5. Мелочи, а из-за них я голову ломал сидел, почему х(340) + 5 выбрасывае квадрат в небытие