2011-02-09 31 views
1

我做的练习本网站: http://www.env3d.org/beta/node/79添加“智能”融入游戏当中

所有的代码是存在的,一切。我正在研究问题3,但没有提出任何问题。我不知道接下来要尝试什么。有任何想法吗?

+1

提示:您需要在Fox类中创建move()方法来覆盖Creature的move()方法。 [(ref。)](http://www.env3d.org/beta/node/79) – 2011-02-09 23:13:06

+0

请登陆http://gamedev.stackexchange.com/ – 2011-02-09 23:13:21

回答

1

如何让物体移动到最近的物体?首先你需要知道最近的物体是什么以及它在哪里,对吗?

我建议你先写一些代码来知道哪个是最近的敌方物体。 :)

1

该移动方法通过其他生物的集合。所以你需要遍历其他生物并且找到这个生物(狐狸)和其他生物(只有它是一个tux)时的距离。记下最短的距离和哪个礼服,然后让狐狸向那个方向移动。

既然你知道狐狸和礼服的坐标,你应该能够找出移动狐狸的方法,以便让他更接近礼服。

这是一般的想法,你就必须将其转换成代码;)

1

我最近回答了similar question ...我认为你正在寻找线性插值

一些伪从拉以上链接:

speed = 5; // "pixels" per frame 
deltaX = destX - sourceX; 
deltaY = destY - sourceY; 
distance = sqrt(deltaX^2 + deltaY^2); 

moveX = speed/distance * deltaX; 
moveY = speed/distance * deltaY; 

newX = sourceX + moveX; 
newY = sourceY + moveY;