2020年3月19日 星期四

week03

程式設計二
瘋狂程設
1. 瘋狂程設-第03週練習模式- (SOIT107_ADVANCE_003) 進階題

2.瘋狂程設-第03週練習模式- 進階題:最大公因數gcd


processing

1.將小畫家的圖呈現在processing


2.可以用鍵盤的方向鍵控制出現圖片並且移動
程式:
PImage img0,img1,img2;
void setup(){
  size(400,400);
  img0 = loadImage("user0.png");
  img1 = loadImage("user1.png");
  img2 = loadImage("user2.png");
}
int userX=250,userY=250;
void draw(){
  background(128);
  if(keyPressed && keyCode==LEFT){
  image(img1,userX,userY);
  userX--;
  }else if(keyPressed && keyCode==RIGHT){
    image(img2,userX,userY);
    userX++;
  }else image(img0,userX,userY);
}



3.將圖片設成背景,且可以用鍵盤的方向鍵控制主角移動

程式:
PImage img;
void setup(){
  size(432,500);
  img=loadImage("map.jpg");
}
int userX=147,userY=276;
void draw(){
  background(img);
  ellipse(userX,userY,10,25);
  if(keyPressed&&keyCode==UP)userY--;
  if(keyPressed&&keyCode==RIGHT)userX++;
  if(keyPressed&&keyCode==LEFT)userX--;
  if(keyPressed&&keyCode==DOWN)userY++;
}

4.將圖片設成背景,且可以用鍵盤的方向鍵控制主角移動,且主角可以射子彈

程式:
PImage img;
void setup(){
  size(432,500);
  img=loadImage("map.jpg");
}
int userX=147,userY=276;
int[]bulletX={0,0,0,0,0,0,0,0,0,0};
int[]bulletY={0,0,0,0,0,0,0,0,0,0};
int[]bulletFlying={0,0,0,0,0,0,0,0,0,0};
int n=0;
void draw(){
  background(img);
  ellipse(userX,userY,10,25);
  if(keyPressed&&keyCode==UP)userY--;
  if(keyPressed&&keyCode==RIGHT)userX++;
  if(keyPressed&&keyCode==LEFT)userX--;
  if(keyPressed&&keyCode==DOWN)userY++;
  for(int i=0;i<n;i++){
    if(bulletFlying[i]==1){
      ellipse(bulletX[i],bulletY[i],5,5);
      bulletY[i]-=2;
    }
  }
}
void mousePressed(){
  bulletX[n]=userX; bulletY[n]=userY; bulletFlying[n]=1;n++;
}



沒有留言:

張貼留言