海龟、斑块及其从一个斑块到下一个斑块的顺序移动

Turtles, patches and their moving sequentially from one patch to the next

平台:NetLogo

我想移动我的旗帜特定的 3 点

-在这个点行进时情节energy/time随机减少。

-到达C标志时会死亡。

我之前问过,找到了这个移动解决方案。 (当乌龟到达2点时它不会停止) - LINES1 -

breed [cities city]
breed [flag person]
flag-own [target]
to setup
  clear-all

  create-flag 1
  [ set size 6
    set shape "by"
    setxy -5 3
    set target patch -10 5
    face target
  ]

  < other commands >
end

to go
  ask flag-on patch -10 5
  [ set target patch <next place you want it to go>
    face target
  ]
  ask flag with [ shape = "by" ]
  [ forward 1 ]
end

人们建议将此代码用于任何目标。

    to go
      ask people [
        ;; if at target, choose a new random target
        if distance target = 0
          [ set target one-of houses
            face target ]
        ;; move towards target.  once the distance is less than 1,
        ;; use move-to to land exactly on the target.
        ifelse distance target < 1
          [ move-to target ]
          [ fd 1 ]
      ]
      tick
    end

在此代码中,它们将随机移动,我不希望这样。我无法在 -LINES1-

实现这部分

我试着用一张图片来解释。

嗯,这就是问题:我怎样才能沿着这些点移动海龟并连接 energy/time 或 energy/distance 的图表。

抄送:@Seth Tisue @JenB @yacc

更新 1

-伙计们,我完成了社区援助计划的运动部分。在此代码中,您的乌龟将移动特定点,并在到达最后一点时死亡。旅行时它正在绘制海龟的数量

    breed [cities city]
    breed [flag person]
    flag-own [target]   ;;set features flag only


    to setup
     clear-all
     reset-ticks
     print "Setting up model."
     set-default-shape cities "house"  ;; set all cities shape by house

      create-flag 1
      [ 
        set SIZE 2
        set shape "turtle"
        setxy -11 13
        set target patch -3 12
        face target

      ]

     create-cities 1
        [set color yellow set SIZE 2 setxy 8 2]
    create-cities 1
        [ set color yellow set SIZE 2 setxy -3 12]
      create-cities 1
        [ set color yellow set SIZE 2 setxy 3 3]


    ask patch 3 3 [set pcolor red]
    end
    to go
      ask flag-on patch -3 12 [
        set target patch 8 2
        face target
      ]

      ask flag-on patch 8 2 [
       set target patch 3 3

        face target
      ]

      ask flag-on patch 3 3 [
       if distance target < 1    ;; check distance for last point
            [die]]




      ask flag with [ shape = "turtle" ]
      [fd 1]

 tick
end

您是否尝试理解已经给出的答案?在 setup 中,将 -10 5 替换为您要前往的第一个位置(即 -12 8)。然后相应地更新 go 代码。

to go
  ask flag-on patch -12 8
  [ set target patch -5 12
    face target
  ]
  ask flag-on patch -5 12
  [ set target patch 6 4
    face target
  ]
  ask flag with [ shape = "by" ]
  [ forward 1 ]
end

这只是方向和移动。您需要尝试为能量和死亡等编写一些代码。但是要循序渐进,让一些东西起作用,然后再添加下一个部分。