netlogo:如果红色斑块上的乌龟颜色变为红色

问题描述 投票:0回答:1

我想让我的乌龟根据它所触摸的斑块改变颜色,所以如果它触摸红色斑块,它就会变成红色,或者如果触摸绿色斑块,它就会变成绿色。

这就是我的补丁设置:

*to setup-patches
   ask patches [set pcolor white]
   ask patches with [pycor = 16][set pcolor red]
   ask patches with [pycor = -16][set pcolor green]
  ask patches with [pxcor = 16][set pcolor blue]
  ask patches with [pxcor = -16][set pcolor yellow]
end *

我尝试过使用圆锥形状来检测颜色,但是当更改设置标题来设置海龟的颜色时,它不起作用,有人有解决方案或不同的方法吗?

 `
*let front-patches patches in-cone 2 75
  if ([pcolor]) of one-of front-patches = red ([set heading heading - 90])*`
netlogo
1个回答
0
投票

我不明白你为什么要使用

in-cone
。我不是 100% 确定你所说的“触摸”是什么意思。如果你只是指海龟当前所在的补丁,这相当简单。

ask turtles [set color [pcolor] of patch-here]

您不必包含

of patch-here
,因为海龟可以读取和设置它们所站立的补丁的补丁变量。

ask turtles [set color pcolor]
© www.soinside.com 2019 - 2024. All rights reserved.