就只有做出點一個方個會有紅點 ,然後在紅點的一定範圍內按a會可以再點一點,之後可
能就是把紅點做成炸彈超人的貼圖,另一個就做成炸彈。
不過因為打算跟黃同學一組,所以其中可能就以他的作品為主,再加以修改吧
int sx=50,sy=50;//上限
int stx,sty,enx,eny;//起始點 終點
float pencostset=0.5;//
float pencost=0;
float fillrate=0.2;
float hmult=1.15;
float maxpert=0;
boolean finding,findingsolution,d1=true,pressA=true;
int gx,gy,rx,ry;
float fx;
float fy;
void setup()
{
size(800,800);//地圖大小
smooth();//平滑
sx=800>>6;
sy=800>>6;
stx=0;
sty=0;
fx=800/sx;
fy=800/sy;
enx=sx-1;
eny=sy-1;
}
void draw()
{
for(int x=0;x<sx;x++)
for(int y=0;y<sy;y++)
{
strokeWeight(1);
stroke(0);
if(x*fx<mouseX&&mouseX<(x+1)*fx)
if(y*fy<mouseY&&mouseY<(y+1)*fy)
{
if(mousePressed&&keyPressed&&key =='a'){
rx=x; ry=y;
}
if(mousePressed&&!keyPressed){
gx=x; gy=y;
}
}
if(mousePressed&&rx==x&&ry==y&&!(gx==x&&gy==y)&&keyPressed&&(key =='a'||key =='A')
&&(pow(gx-rx,2)+pow(gy-ry,2)<=pow(5,2)))fill(255,0,0);//丟炸彈的位置
else if(/*mousePressed&&*/gx==x&&gy==y/*&!keyPressed*/)fill(0,255,0);//人的位置
else fill(255,255,255);
rect(x*fx,y*fy,fx,fy);
}
}
83
回覆刪除