2012年11月13日 星期二

Week08,HW08

  就只有做出點一個方個會有紅點 ,然後在紅點的一定範圍內按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);
      }
   }



1 則留言: