week09_01_createFont_loadFont_textFont
最近世俗不知哪流行的文字,下載精靈文轉換器精靈岩安裝
丟入processing
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_02_PFont_outside_void_setup_createFont_void_draw_text另一種寫法 println(PFont.list());印出現在系統能用的所有字型PFont font0, font, font2; void setup() { size(500, 500); font0 = createFont("Arial", 50); font = createFont("標楷體", 50); font2 = createFont("elffont-rock.otf", 50); }//println(PFont.list());//印出現在系統能用的所有字型 void draw() { background(0); textSize(50); textFont(font0); text("Hello", 50, 50); textFont(font); text("中文看到了", 50, 150); PFont font2 = createFont("elffont-rock.otf", 50); textFont(font2); text("ㄇㄉㄈㄎ", 50, 250); }week09_03_processing_sound_SoundFile_sound_new_SoundFile要來處理如何將音樂放進processing裡面並且撥放import processing.sound.*; SoundFile sound; void setup(){ size(500, 500); sound = new SoundFile(this, "In Game Music.mp3"); sound.play();//撥放一次 sound.loop();//一直迴圈撥放 } void draw(){ }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(); } void keyPressed() { if (key=='1') { sound2.stop(); sound1.play(); } else{ sound1.stop(); sound2.play(); } }week09_05_keyboard_ninja01_background_image_appleX_appleY_appleVX_appleVY_g要來模擬ninjakeyboard,音樂打鍵遊戲,先製作出背景,和會跳躍的蘋果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_06_keyboard_ninja03_void_randomApple開始讓蘋果的出現頻率可以出現,利用random的性質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>500) { randomApple(); } }week09_07_keyboard_ninja04_void_keyPressed_appleKey準備在蘋果上面加上26個英文字母,如果在落下前打鍵成功,就加分數。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>500) { randomApple(); } }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 = 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; if (state==2) { if (key==appleKey) { score+= 100; } else { score -= 20; } } } int state = 0; 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(); } } }
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, "In Game Music.mp3"); sound2 = new SoundFile(this, "Gong.mp3"); sound3 = new SoundFile(this, "Intro Song_Final.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; if (state==2) { if (key==appleKey) { score+= 100; } else { score -= 20; } } } int state = 0; 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; sound2.stop(); sound2.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>500) { randomApple(); } } }
沒有留言:
張貼留言