1.week09_1_createFont_laodFont_textFont
// week09_1_createFont_laodFont_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); //記得把字形,點兩下,安裝,才能順利 createFont() text("ㄑㄋㄇㄉ", 50, 250);2.week09_02_PFont_outside_void_setup_createFont_void_draw_text// week09_02_PFont_outside_void_setup_createFont_void_draw_text PFont font0, font, font2; //3種字形: 英文 中文 注音文(外面宣告,兩個函式都看的到) void setup(){ size(500, 500); //大視窗 font0 = createFont("Algerian", 50); // Arial 或 Times New Roman font = createFont("標楷體", 50); font2 = createFont("elffont-rock.otf", 50); //字形檔,也要拉進來 // println(PFont.list()); //印出現在能用的系統的所有字形 } void draw(){ background(0); //黑色背景 textSize(50); //PFont font0 = creatFont("Ariel"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); //記得把字形,點兩下,安裝,才能順利 createFont() text("ㄑㄋㄇㄉ", 50, 250); }3.week09_03_processing_sound//week09_03_processing_sound 聲音相關 使用音樂相關的Library函式庫 // Sketch-Library-Manager Libraries 找 sound 可找到 Sound 函式庫 (Processing 基金會做的),安裝 // File-Examples, 選Libraries核心函式庫 剛剛裝的Sound 的 Soundfile的SimplePlayback或Jumble 或 JumbleSound //我們自己寫[最精簡的版本] import processing.sound.*; SoundFile soundfile; void setup(){ size(500, 500); sound = new SoundFile(this, "In Game Music.mp3"); //sound.play(); //播放1次 sound.loop(); } void draw(){ }4.week09_04_multiple_sound_files_keyPressed_stop_play// week09_04_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(); //mouse按下時,揮劍的聲音 } void keyPressed(){ if(key=='1'){ sound2.stop(); sound1.play(); }else{ sound1.stop(); sound2.play(); } }5.week09_05_keyboard_ninja01_background_image_appleX_appleY_appleVX_appleVY_g// week09_05_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 = 5, 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){ //裡面應該要寫成5行,只是截圖不太夠,就黏成一行,請分成4行 appleX = 100; appleY = 500; appleVX = 5; appleVY = -30; //分號分開的4行 } //當蘋果太右邊時,重設新的蘋果的位置,速度 }
6.week09_06_keyboard_ninja02_randomApple// week09_06_keyboard_ninja02_randomApple PImage board; //外面宣告變數 void setup(){ size(600, 400); board = loadImage("board.png"); //裡面修改變數 } float appleX = 100, appleY = 500, appleVX = 5, appleVY = -30; void randomApple(){ appleX = random(100, 500); appleY = 500; appleVX = random(-8, 8); appleVY = random(-30, -20); } 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 > 500){ randomApple(); //當蘋果出界時, 重新設定蘋果的位置,速度 } }7.week09_07_keyboard_ninja04_void_keyPressed_appleKey// week09_07_keyboard_ninja04_void_keyPressed_appleKey PImage board; //外面宣告變數 void setup(){ size(600, 400); board = loadImage("board.png"); //裡面修改變數 randomApple(); } float appleX = 100, appleY = 500, appleVX = 5, 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))); } void draw(){ background(board); //裡面使用變數 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 > 500){ randomApple(); //當蘋果出界時, 重新設定蘋果的位置,速度 } }
8.week09_08_keyboard_ninja05_start_3_2_1_go// week09_08_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 = 5, 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, 2: Game int countdown = 60*4; 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 > 500){ randomApple(); //當蘋果出界時, 重新設定蘋果的位置,速度 } } }9.week09_09_keyboard_ninja06_add_music// week09_09_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.mp3"); background(board); sound1.play(); } float appleX = 100, appleY = 500, appleVX = 5, 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, 2: Game int countdown = 60*4; 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; //時間用完,就跳入新的畫面 }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 > 500){ randomApple(); //當蘋果出界時, 重新設定蘋果的位置,速度 } } }
沒有留言:
張貼留言