我正在使用一个名为Greenfoot的程序来完成我的java项目。 Greenfoot中有两个随机移动的“演员”。我想这样做,当一个演员接触另一个演员时,它有一定比例将另一个演员改为同一个画面。我该如何做到这一点?
答案 0 :(得分:1)
您在寻找对象碰撞吗?如果是,那么请阅读: http://www.greenfoot.org/doc/manual.html#collisions
答案 1 :(得分:0)
我认为你的意思是你希望有机会交换图像?
如果是这样,你将需要使用actor的getIntersectingObjects()方法来确定是否有任何其他actor与此相交。
如果有,你可以在Actor上使用getImage()/ setImage()方法来获取当前actor和你正在碰撞的actor的图像并交换它们:
http://www.greenfoot.org/doc/javadoc/greenfoot/Actor.html#getImage() http://www.greenfoot.org/doc/javadoc/greenfoot/Actor.html#setImage()
至于随机性,你需要Greenfoot.getRandomNumber()方法:
http://www.greenfoot.org/doc/javadoc/greenfoot/Greenfoot.html#getRandomNumber(int)
您可以测试返回的数字,以查看它是否高于(或低于)某个阈值,以决定您的随机结果以及是否要更换数字。
这些都是你应该要求的Greenfoot方法,我将把实现作为练习!