Проблема в том, что каждый человек снова определяет список y-coordinates
для своего собственного создания. Список не переносится с создания одного человека на другого, поэтому удаление одним человеком одного из элементов в списке не окажет никакого влияния на список, который следующий человек определяет заново при создании. Самый простой способ обойти это - определить y-coordinates
как переменную global
, чтобы каждый человек работал в одном и том же списке. Таким образом, когда один человек удаляет координату, следующий человек получит этот сокращенный список. Попробуйте
breed [people person]
globals [y-coordinates]
to make-people
set y-coordinates (list -8 -7 -6 -5)
create-people 4 [setup-turtles]
end
to setup-turtles ;;Turtle Procedure
set shape "person"
let remove-index random length y-coordinates
set ycor item remove-index y-coordinates
set y-coordinates remove-item remove-index y-coordinates
set xcor 19
show y-coordinates
end
Оператор show покажет вам, что список y-coordinates
действительно сокращается каждой новой черепахой.
Надеюсь, это поможет, Чарльз