Week06-1 TEXT
開啟processing,輸入以下程式碼
size(500,500);
textSize(64);
text("Hello Word",100,100);
fill(255,0,0);
text("RED",100,200);
命名week06_1_text_string
印字
Week06-2 KEY
開啟processing,輸入以下程式碼
命名week06_2_keyPressed_string
用鍵盤輸入字串,但特殊符號無法顯示
Week06-4 BACKSPACE
開啟processing,輸入以下程式碼
void setup(){ size(800,500); textSize(64); } String line = ""; void draw(){ background(0); text("Input: "+line,50,100); } void keyPressed(){ if(key>='A' && key<='Z') line+= key; if(key>='a' && key<='z') line+= key; if(key==BACKSPACE && line.length()>0){ line=line.substring(0,line.length()-1); } }
命名week06_4_BACKSPACE
可用刪減字串長度應用backspace
(圖上錯誤:line=line.substring...)
Week06-5 MUSIC FILE PLAY
開啟processing,輸入以下程式碼
命名week06_5_music
開程式素描本-使用函式庫-Contribution Manager-搜尋Sound-Install
下載一個音檔命名為a.mp3拖入畫面中,可以撥放音樂
Week06-6 3SOUND
開啟processing,輸入以下程式碼
import processing.sound.*; SoundFile a,b,c; void setup(){ size(300,300); a=new SoundFile(this,"a.mp3"); b=new SoundFile(this,"b.mp3"); c=new SoundFile(this,"c.mp3"); } void draw(){ text("press 1,2,3",100,100); } void keyPressed(){ if(key=='1') a.play(); if(key=='2') b.play(); if(key=='3') c.play(); }
命名week06_6_3sound_chose
可以按a,b,c鍵撥放三種聲音
Week06-7 KEY/SOUND
開啟processing,輸入以下程式碼
import processing.sound.*; SoundFile a,b,c; void setup(){ size(800,500); textSize(64); a=new SoundFile(this,"a.mp3"); b=new SoundFile(this,"b.mp3"); c=new SoundFile(this,"c.mp3"); } String line = ""; void draw(){ background(0); text("Input: "+line,50,100); } void keyPressed(){ if(key>='A' && key<='Z') {line+= key; a.play();} if(key>='a' && key<='z') {line+= key; a.play();} if(key==BACKSPACE && line.length()>0){ line = line.substring(0,line.length()-1); c.play(); } if(key==ENTER){ println("ENTER"); line += key; b.play(); } }
命名week06_7_key_a_ENTER
將兩個程式合在一起,打字時可以發出不同音效
Week06-8 SHOOT X/Y
開啟processing,輸入以下程式碼
命名week06_8_game_shoot_x_y
hello字串往下漂移
Week06-9 QA/RED
開啟processing,輸入以下程式碼
命名week06_9_game_QA
Qustion是白色,輸入Answer變紅色
(把射擊器變回白色在ellipse前fill顏色即可)
Week06-10 GAME
開啟processing,輸入以下程式碼
void setup(){ size(400,600); textSize(20); randomQ(); } void randomQ(){ int i= int (random(QQ.length)); Q=QQ[i]; x=random(0,300); y=random(0,100); } String []QQ={"void","apple","monkey","size","background"}; String Q ="hello",A=""; float x=100, y=100; void draw(){ background(0); fill(#FFFFFF); text(Q,x,y); fill(#FF0000); text(A,x,y); ellipse(200,550,20,200); float dx=(200-x), dy=(550-y),d=sqrt(dx*dx+dy*dy)*3; x+= dx/d; y+= dy/d; if(keyPressed){ stroke(255,0,0); line(200,550,x,y); } } void keyPressed(){ int i = A.length(); if(key==Q.charAt(i)){ A+=key; if(Q.equals(A)){ randomQ(); A=""; } } }
命名week06_A_GAME
單字隨機出現 答對消除
(把射擊器變回白色在ellipse前fill顏色即可)
(期末作品目前是可憐的單人組)
沒有留言:
張貼留言