Week 11 10160783
-----------------正式開始---------------
這是week11-1 先放背景圖並且填入 顏色 還有字體 並且將數字置中(有更改參數)
程式碼:
void setup(){
size(600,500);
}
void draw(){
background(255);
for(int i=0;i<4;i++){
for(int j=0;j<6;j++){
fill(#F5B4B4); rect(j*100,i*100,100,100);
fill(0);text("Hello",j*100+40,i*100+50);
}
}
}
這是week11-2 增加變數還有宣告 設定數字亂碼 int value程式碼:
void setup(){
size(600,500);
for(int i=0;i<4;i++){
for(int j=0;j<6;j++){
value[i][j]=int(random(40));
}
}
}
int [][]value=new int[4][6];
void draw(){
background(255);
for(int i=0;i<4;i++){
for(int j=0;j<6;j++){
fill(#F5B4B4); rect(j*100,i*100,100,100);
fill(0);text(value[i][j],j*100+45,i*100+50);
}
}
}
這是week11-3 亂數洗牌,新增i 和 i2 int k=0;k<2;k++,多洗兩次(可以大於2) 程式碼:
void setup(){
size(600,500);
for(int i=0;i<4;i++){
for(int j=0;j<6;j++){
value[i][j]=i*6+j+10;//number
}
}
for(int k=0;k<2;k++){
int i=int(random(4)),j=int(random(4));
int i2=int(random(4)),j2=int(random(4));
int temp=value[i][j];
value[i][j]=value[i2][j2];
value[i2][j2]=temp;
}
}
int [][]value=new int[4][6];
void draw(){
background(255);
for(int i=0;i<4;i++){
for(int j=0;j<6;j++){
fill(#F5B4B4); rect(j*100,i*100,100,100);
fill(0);text(value[i][j],j*100+45,i*100+50);
}
}
}
這是week11-4 做轉場(很多狀態)state 先設定顏色程式碼:
int state=0;
void setup(){
size(400,400);
}
void draw(){
if(state==0){
background(255);
}else if(state==1){
background(255,0,0);
}else if(state==2){
background(0,0,255);
}
}
這是week11-5 加入字體提示轉換場景(按下滑鼠左鍵換第一場景)程式碼:
int state=0;
void setup(){
size(400,400);
}
void draw(){
if(state==0){
background(255);
fill(0); text("Click to Start",80,200);
}else if(state==1){
background(255,0,0);
}else if(state==2){
background(0,0,255);
}
}
void mousePressed(){
if(state==0) state=1;
}

這是week11-6
設定state x座標因按下向右鍵而向右 並且設定不同關卡顏色 X=50,Y=50
程式碼:
int state=0;
void setup(){
size(400,400);
textSize(50);
}
int x=50,y=50;
void draw(){
if(state==0){
background(255);
fill(0); text("Click to Start",80,200);
}else if(state==1){
background(255,0,0);
fill(255);rect(300,50,50,50);
fill(128);rect(x,y,50,50);
}else if(state==2){
background(0,0,255);
}
}
void mousePressed(){
if(state==0) state=1;
}
void keyPressed(){
if(state==1 && keyCode==RIGHT){
x+=10;
if(x==300) state=2;
}
}
狀態一開始是1 碰到彼此後進入2 程式碼增加加"T "並且開始倒數 從200開始倒數 結束倒數之後進入狀態0
程式碼:
int state=0;
void setup(){
size(400,400);
textSize(50);
}
int x=50,y=50,t=100;
void draw(){
if(state==0){
background(255);
fill(0); text("Click to Start",80,200);
x=50;
}else if(state==1){
background(255,0,0);
fill(255);rect(300,50,50,50);
fill(128);rect(x,y,50,50);
t=100;
}else if(state==2){
background(0,0,255);
fill(255,255,0); text("Wait "+t,80,200);
t--;
if(t==0) state=0;
}
}
void mousePressed(){
if(state==0) state=1;
}
void keyPressed(){
if(state==1 && keyCode==RIGHT){
x+=10;
if(x==300) state=2;
}
}
這是week11-8 射擊曲線做投籃機 全部重設 開新場景
程式碼:
PImage imgRack;
void setup(){
size(500,500);
imgRack=loadImage("rack.jpg");
}
void draw(){
background(255);
image (imgRack,0,0);
if(mousePressed){
fill(255);ellipse(posX,posY,20,20);
line(posX,posY,mouseX,mouseY);
}
fill(#FFA652);ellipse(mouseX,mouseY,20,20);
}
float posX=-100,posY=-100;
void mousePressed(){
posX=mouseX;
posY=mouseY;
}
這是week11-9
籃球設定 vy+=0.98(設定重力加速度) 加入mouseReleased和mousePressed
程式碼:
PImage imgRack;
void setup(){
size(500,500);
imgRack=loadImage("rack.jpg");
}
void draw(){
background(255);
image (imgRack,0,0);
if(flying){
x+=vx;
y+=vy;
vy+=0.98;
}else{
x=mouseX;
y=mouseY;
if(mousePressed){
fill(255);ellipse(posX,posY,20,20);
line(posX,posY,x,y);
}
}
fill(#FFA652);ellipse(x,y,20,20);
}
boolean flying=false;
float x,y,vx,vy;
float posX=-100,posY=-100;
void mousePressed(){
x=posX=mouseX;
y=posY=mouseY;
flying=false;
}
void mouseReleased(){
vx=posX-mouseX;
vy=posY-mouseY;
flying=true;
}

這是week11-10
boolean gameOver=false; 多增加一個 if(!gameOver){
記得多加一ㄍ括號 前面boolean先設變數
程式碼:
PImage imgRack;
void setup(){
size(500,500);
imgRack=loadImage("rack.jpg");
}
boolean gameOver=false;
void keyPressed(){
gameOver=true;
}
void draw(){
background(255);
image (imgRack,0,0);
if(flying){
if(!gameOver){
x+=vx;
y+=vy;
vy+=0.98;
}
}else{
x=mouseX;
y=mouseY;
if(mousePressed){
fill(255);ellipse(posX,posY,20,20);
line(posX,posY,x,y);
}
}
fill(#FFA652);ellipse(x,y,20,20);
}
boolean flying=false;
float x,y,vx,vy;
float posX=-100,posY=-100;
void mousePressed(){
x=posX=mouseX;
y=posY=mouseY;
flying=false;
}
void mouseReleased(){
vx=posX-mouseX;
vy=posY-mouseY;
flying=true;
}
沒有留言:
張貼留言