gpt4 book ai didi

java - 贝壳游戏。如何使物体移动,特别是在特定曲线上但以随机顺序移动?

转载 作者:行者123 更新时间:2023-12-02 10:26:05 45 4
gpt4 key购买 nike

我正在将这款游戏称为“shell game”。

当涉及到让我的杯子以随机顺序但具有一定的曲线运动切换位置时,​​我已经被困了一段时间。我应该以某种方式使用贝尔塞尔曲线吗?

如何以及在代码中的何处隐藏球?

非常感谢您的帮助:-)

cup cupLeft;       
cup cupMiddle;
cup cupRight;
coin coinGold;

void setup() {
size(1250,750);
background(255);

int x = width/2;
int y = height/2;
cupLeft = new cup(x,y);

int x2 = 1050;
int y2 = 300;
cupMiddle = new cup(x2,y2);

int x3 = 1500;
int y3 = 375;
cupRight = new cup(x3,y3);

int x5 = width/2;
int y5 = height/2;
coinGold = new coin(x5,y5);
}

void draw() {
display_bW();
cupLeft.display();
cupMiddle.display();
cupRight.display();

coinGold.display();
}

display_bW()的代码

PImage bW;        
bW = loadImage("brickWall.jpg");
bW.resize(1250,750);
imageMode(CENTER);
image( bW, width/2, height/2);
bW.resize(800,800);
//The TITLE
fill(255,215,0);
textAlign(CENTER);
textSize(100);
text("The shell game", width/2, 150);
// Instruction
fill(255,215,0);
textAlign(CENTER);
textSize(55);
text("Find the coin. Press space to start the game", width/2, 700);

杯子的类别:

class cup {    
int x;
int y;
int dir;

cup(int x1, int y1) {
x=x1;
y=y1;
dir = 1;
}

void move(int speed) {
//My thought was to write something in here that could determine the speed and direction of the cups.

}

void display() {

fill(255,0,0);
quad(x-550,y+100,x-330,y+100,x-380,y-100,x-500,y-100);
ellipse(x-440,y-100,120,50);
ellipse(x-440,y+100, 220, 50);
}
}

如果您有任何其他建议以更好或更有效的方式做某事,请告诉我。

最佳答案

回答一般的“我该怎么做”类型的问题是相当困难的。我们可以给您的最佳建议是break your problem down into smaller steps然后一次一个地执行这些步骤。

例如,您可以创建一个简单的程序来显示两个矩形交换位置吗?您可以研究animation 。从简单的事情开始,一开始不要有曲线。 lerp() 函数在这里可能会派上用场。在尝试实现曲线之前先使其发挥作用。

对于曲线,curvePoint()bezierPoint() 函数可能会派上用场。所有这些功能都可以在 the reference 中找到。 .

构建您的程序,以便您可以对两个索引进行硬编码并显示它们切换位置的动画。

最后,在您目前掌握的基础上随机生成索引。

如果您在其中一个步骤上遇到困难,您可以创建一篇新帖子,其中包含更具体的问题以及 MCVE 。祝你好运!

关于java - 贝壳游戏。如何使物体移动,特别是在特定曲线上但以随机顺序移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53948683/

45 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com