2024年11月4日 星期一

酥皮 week09

week09-1

 //week09_1_createFont_loadFont_textFont

size(500,500);
background(0);
textSize(50);
text("Hello",50,50);

PFont font=createFont("標楷體",50);
textFont(font);
text("中文看到了",50,150);

PFont font2=createFont("elffont-rock.otf",50);
textFont(font2);
text("ㄨㄛˇ ㄞˋ ㄋㄧˇ ",50,250);
week09-2
//week09_2_PFont_outside_void_setup_createFont_void_draw_text
PFont font0,font,font2;//3種字形:英文、中文、注音文(外面宣告,兩個函式都看得到)
void setup(){
  size(500,500);
  font0=createFont("Arial",50);
  font=createFont("標楷體",50);
  font2=createFont("elffont-rock.otf",50);
}
void draw(){
  background(0);
  textSize(50);
  //PFont font0=createFont("Arial",50);不能寫在裡面
  textFont(font0);
  text("Hello",50,50);

  //PFont font=createFont("標楷體",50);
  textFont(font);
  text("中文看到了",50,150);
  
  //PFont font2=createFont("elffont-rock.otf",50);
  textFont(font2);
  text("ㄨㄛˇ ㄞˋ ㄋㄧˇ ",50,250);
}
week09-3
//week09_3_processing_sound 聲音相關 使用音樂相關的Library函式庫
import processing.sound.*;
SoundFile sound;

void setup(){
  size(500,500);
  sound=new SoundFile(this,"In Game Music.mp3");
  //sound.play();//撥放1次
  sound.loop();//一直迴圈撥放
}
void draw(){
  
}
week09-4
//weekk09_4_multiple_sound_files_keyPressed_stop_play
import processing.sound.*;
SoundFile sound1,sound2,hit;
void setup(){
  size(500,500);
  sound1=new SoundFile(this,"In Game Music.mp3");
  sound2=new SoundFile(this,"Intro Song_Final.mp3");
  hit=new SoundFile(this,"sword slash.mp3");
  sound2.play();//開始時,先撥放開場音樂
}
void draw(){
  background(255);
}
void mousePressed(){
  hit.play();
}
void keyPressed(){
  if(key=='1'){
    sound2.stop();
    sound1.play();
  }else{
    sound1.stop();
    sound2.play();
  }
}
week09-5
//week09_5_keyboard_ninja01_background_image_appleX_appleY_appleVX_appleVY_g
PImage board;//外面宣告變數
void setup(){
  size(600,400);
  board=loadImage("board.png");//裡面修改變數
}
float appleX=100,appleY=500,appleVX=3,appleVY=-30;
void draw(){
  background(board);//裡面使用變數
  fill(255,0,0);
  ellipse(appleX,appleY,80,80);//紅色的蘋果
  appleX+=appleVX;//照著運動速度,X往右移
  appleY+=appleVY;//照著運動速度,Y也會移動
  appleVY+=0.98;//0.98 gravity 重力加速度
  if(appleX>600){
    appleX=100;appleY=500;appleVX=5;appleVY=-30;
  }
}
week09-6
//week09_6_keyboard_ninja03_void_randomApple
PImage board;//外面宣告變數
void setup(){
  size(600,400);
  board=loadImage("board.png");//裡面修改變數
}
float appleX=100,appleY=500,appleVX=3,appleVY=-30;
void randomApple(){
  appleX=random(100,500);
  appleY=500;
  if(appleX<300) appleVX=random(0,8);
  else appleVX=random(-8,0);
  appleVY=random(-30,-25);
}
void draw(){
  background(board);//裡面使用變數
  fill(255,0,0);
  ellipse(appleX,appleY,80,80);//紅色的蘋果
  appleX+=appleVX;//照著運動速度,X往右移
  appleY+=appleVY;//照著運動速度,Y也會移動
  appleVY+=0.98;//0.98 gravity 重力加速度
  if(appleX>600 || appleX<0 || appleY>550){
    randomApple();
  }
}
week09-7
//week09_7_keyboard_ninja04_void_keyPressed_appleKey
PImage board;//外面宣告變數
void setup(){
  size(600,400);
  board=loadImage("board.png");//裡面修改變數
  randomApple();
}
float appleX=100,appleY=500,appleVX=3,appleVY=-30;
char appleKey;
void randomApple(){
  appleX=random(100,500);
  appleY=500;
  if(appleX<300) appleVX=random(0,8);
  else appleVX=random(-8,0);
  appleVY=random(-30,-25);
  appleKey=(char)('a'+int(random(26)));
}
int score=0;
void keyPressed(){
  if(key==appleKey){
    score+=100;//答對加分
  }else{
    score-=200;//答錯扣分
  }
}
void draw(){
  background(board);//裡面使用變數
  text("Score:"+score,400,50);
  fill(255,0,0);
  ellipse(appleX,appleY,80,80);//紅色的蘋果
  fill(255,255,0);
  textSize(50);
  textAlign(CENTER,CENTER);
  text(appleKey,appleX,appleY);
  appleX+=appleVX;//照著運動速度,X往右移
  appleY+=appleVY;//照著運動速度,Y也會移動
  appleVY+=0.98;//0.98 gravity 重力加速度
  if(appleX>600 || appleX<0 || appleY>550){
    randomApple();
  }
}
week09-8
//week09_8_keyboard_ninja05_start_3_2_1_go
PImage board;//外面宣告變數
void setup(){
  size(600,400);
  board=loadImage("board.png");//裡面修改變數
  randomApple();
}
float appleX=100,appleY=500,appleVX=3,appleVY=-30;
char appleKey;
void randomApple(){
  appleX=random(100,500);
  appleY=500;
  if(appleX<300) appleVX=random(0,8);
  else appleVX=random(-8,0);
  appleVY=random(-30,-25);
  appleKey=(char)('a'+int(random(26)));
}
int score=0;
void keyPressed(){
  if(state==0) state=1;//按任意鍵,會開始 3,2,1倒數
  if(state==2){
    if(key==appleKey){
      score+=100;//答對加分
    }else{
      score-=200;//答錯扣分
    }
  }
}
int state=0;//0:wait,1:3,2,1,GO,:Game
int countdown=60*4;//倒數計時3秒
void draw(){
  background(board);//裡面使用變數
  textSize(50);
  textAlign(CENTER,CENTER);
  fill(255,255,0);
  if(state==0) text("Press Any Key to Start",300,200);
  else if(state==1){
    textSize(100);
    countdown--;
    if(countdown>60*3) text("3",300,200);
    else if(countdown>60*2) text("2",300,200);
    else if(countdown>60*1) text("1",300,200);
    else if(countdown>0) text("GO",300,200);
    else state=2;//時間用完,就跳入新的畫面
  }else{
    text("Score:"+score,400,50);
    fill(255,0,0);
    ellipse(appleX,appleY,80,80);//紅色的蘋果
    fill(255,255,0);
    textSize(50);
    textAlign(CENTER,CENTER);
    text(appleKey,appleX,appleY);
    appleX+=appleVX;//照著運動速度,X往右移
    appleY+=appleVY;//照著運動速度,Y也會移動
    appleVY+=0.98;//0.98 gravity 重力加速度
    if(appleX>600 || appleX<0 || appleY>550){
      randomApple();
    }
  }
}
week09-9
//week09_9_keyboard_ninja06_add_music
import processing.sound.*;
SoundFile sound1,sound2,sound3;
PImage board;//外面宣告變數
void setup(){
  size(600,400);
  board=loadImage("board.png");//裡面修改變數
  randomApple();
  sound1=new SoundFile(this,"Intro Song_Final.mp3");
  sound2=new SoundFile(this,"Gong.mp3");
  sound3=new SoundFile(this,"In Game Music.mp3");
  sound1.play();
}
float appleX=100,appleY=500,appleVX=3,appleVY=-30;
char appleKey;
void randomApple(){
  appleX=random(100,500);
  appleY=500;
  if(appleX<300) appleVX=random(0,8);
  else appleVX=random(-8,0);
  appleVY=random(-30,-25);
  appleKey=(char)('a'+int(random(26)));
}
int score=0;
void keyPressed(){
  if(state==0) state=1;//按任意鍵,會開始 3,2,1倒數
  if(state==2){
    if(key==appleKey){
      score+=100;//答對加分
    }else{
      score-=200;//答錯扣分
    }
  }
}
int state=0;//0:wait,1:3,2,1,GO,:Game
int countdown=60*4;//倒數計時3秒
void draw(){
  background(board);//裡面使用變數
  textSize(50);
  textAlign(CENTER,CENTER);
  fill(255,255,0);
  if(state==0) text("Press Any Key to Start",300,200);
  else if(state==1){
    textSize(100);
    countdown--;
    if(countdown%60==0){
      sound2.stop();
      sound2.play();
    }
    if(countdown>60*3) text("3",300,200);
    else if(countdown>60*2) text("2",300,200);
    else if(countdown>60*1) text("1",300,200);
    else if(countdown>0) text("GO",300,200);
    else{
      state=2;//時間用完,就跳入新的畫面
      sound2.stop();
      sound3.loop();
    }
  }else{
    text("Score:"+score,400,50);
    fill(255,0,0);
    ellipse(appleX,appleY,80,80);//紅色的蘋果
    fill(255,255,0);
    textSize(50);
    textAlign(CENTER,CENTER);
    text(appleKey,appleX,appleY);
    appleX+=appleVX;//照著運動速度,X往右移
    appleY+=appleVY;//照著運動速度,Y也會移動
    appleVY+=0.98;//0.98 gravity 重力加速度
    if(appleX>600 || appleX<0 || appleY>550){
      randomApple();
    }
  }
}

沒有留言:

張貼留言