xxxxxxxxxx
int Hspeed; //Hのスピード
int A1speed; //1文字目Aのスピード
int Yspeed; //Yのスピード
int A2speed; //2文字目Aのスピード
int Tspeed; //Tのスピード
int Ospeed; //Oのスピード
int Hx,Hy,A1x,A1y,Yx,Yy,A2x,A2y,Tx,Ty,Ox,Oy = 0; //それぞれの文字のx座標、y座標の指定
//Hの色
int Hr=0;
int Hg=0;
int Hb=0;
//1文字目Aの色
int A1r=0;
int A1g=0;
int A1b=0;
//Yの色
int Yr=0;
int Yg=0;
int Yb=0;
//2文字目Aの色
int A2r=0;
int A2g=0;
int A2b=0;
//Tの色
int Tr=0;
int Tg=0;
int Tb=0;
//Oの色
int Or=0;
int Og=0;
int Ob=0;
int Htimer;//Hの時間
int A1timer;//1文字目Aの時間
int Ytimer;//Yの時間
int A2timer;//2文字目Aの時間
int Ttimer;//Tの時間
int Otimer;//Oの時間
//文字指定(□1,3=アニメーション、□2,4=固定)
PFont H1;
PFont H2;
PFont A1;
PFont A2;
PFont Y1;
PFont Y2;
PFont A3;
PFont A4;
PFont T1;
PFont T2;
PFont O1;
PFont O2;
void setup() {
size(500, 500);//画面サイズの指定
colorMode(RGB, 255);//RGBで色を指定
frameRate(30); //再生速度を1秒30フレームに設定(初期値は1秒60フレーム)
//テキストのフォント指定
H1= loadFont("AdobeDevanagari-Regular-48.vlw");
H2= loadFont("AdobeDevanagari-Regular-48.vlw");
A1= loadFont("AdobeDevanagari-Regular-48.vlw");
A2= loadFont("AdobeDevanagari-Regular-48.vlw");
Y1= loadFont("AdobeDevanagari-Regular-48.vlw");
Y2= loadFont("AdobeDevanagari-Regular-48.vlw");
A3= loadFont("AdobeDevanagari-Regular-48.vlw");
A4= loadFont("AdobeDevanagari-Regular-48.vlw");
T1= loadFont("AdobeDevanagari-Regular-48.vlw");
T2= loadFont("AdobeDevanagari-Regular-48.vlw");
O1= loadFont("AdobeDevanagari-Regular-48.vlw");
O2= loadFont("AdobeDevanagari-Regular-48.vlw");
}
void draw() {
background(0); //画面の色は黒
//もしH,A,Y,A,T,Oが全て固定の文字に重なったら
if(Hy==256 && A1y==252 && Yy==256 && A2y==252 && Ty==256 && Oy==252){
background(255);//画面の色を白くする
}
//固定のHの指定
textFont(H2, 64);
fill(255);
text("H", 31,256);
//アニメーションのHの指定
textFont(H1, 64);
fill(Hr,Hg,Hb);
text("H", 31,Hy);
Hy=Hy+Hspeed;//Hy座標にHspeedの値を足す
if(Hy==250){//Hy座標が250に等しいとき
Htimer=0;//Htimerを0秒にする
}else if(Htimer>0 && Htimer<5*30){//もしくは、Htimerが0秒より大きい。かつ、Htimerが5秒より小さいとき。
Hspeed=0;//Hspeedを0にする
}else if(Htimer>5*30){//もしくは、Htimerが5秒より大きくなったら
Hspeed=6;//Hspeedを6にする
}
Htimer++;//1秒ずつ足していく
//固定の1文字目Aの指定
textFont(A2, 64);
fill(255);
text("A", 114,252);
//アニメーションの1文字目Aの指定
textFont(A1, 64);
fill(A1r,A1g,A1b);
text("A", 114,A1y);
A1y=A1y+A1speed;//A1y座標にA1speedの値を足す
if(A1y==250){//A1y座標が250に等しいとき
A1timer=0;//A1timerを0秒にする
}else if(A1timer>0 && A1timer<5*30){//もしくは、A1timerが0秒より大きい。かつ、A1timerが5秒より小さいとき。
A1speed=0;//A1speedを0にする
}else if(A1timer>5*30){//もしくは、A1timerが5秒より大きくなったら
A1speed=2;//A1speedを2にする
}
A1timer++;//1秒ずつ足していく
//固定のYの指定
textFont(Y2, 64);
fill(255);
text("Y", 197,256);
//アニメーションのYの指定
textFont(Y1, 64);
fill(Yr,Yg,Yb);
text("Y", 197,Yy);
Yy=Yy+Yspeed;//Yy座標にYspeedの値を足す
if(Yy==250){//Yy座標が250に等しいとき
Ytimer=0;//Ytimerを0秒にする
}else if(Ytimer>0 && Ytimer<5*30){//もしくは、Ytimerが0秒より大きい。かつ、Ytimerが5秒より小さいとき。
Yspeed=0;//Yspeedを0にする
}else if(Ytimer>5*30){//もしくは、Ytimerが5秒より大きくなったら
Yspeed=6;//Yspeedを6にする
}
Ytimer++;//1秒ずつ足していく
//固定の2文字目Aの指定
textFont(A4, 64);
fill(255);
text("A", 280,252);
//アニメーションの2文字目Aの指定
textFont(A3, 64);
fill(A2r,A2g,A2b);
text("A", 280,A2y);
A2y=A2y+A2speed;//A2y座標にA2speedの値を足す
if(A2y==250){//A2y座標が250に等しいとき
A2timer=0;//A2timerを0秒にする
}else if(A2timer>0 && A2timer<5*30){//もしくは、A2timerが0秒より大きい。かつ、A2timerが5秒より小さいとき。
A2speed=0;//A2speedを0にする
}else if(A2timer>5*30){//もしくは、A2timerが5秒より大きくなったら
A2speed=2;//A2speedを2にする
}
A2timer++;//1秒ずつ足していく
//固定のTの指定
textFont(T2, 64);
fill(255);
text("T", 363,256);
//アニメーションのTの指定
textFont(T1, 64);
fill(Tr,Tg,Tb);
text("T", 363,Ty);
Ty=Ty+Tspeed;//Ty座標にTspeedの値を足す
if(Ty==250){//Ty座標が250に等しいとき
Ttimer=0;//Ttimerを0秒にする
}else if(Ttimer>0 && Ttimer<5*30){//もしくは、Ttimerが0秒より大きい。かつ、Ttimerが5秒より小さいとき。
Tspeed=0;//Tspeedを0にする
}else if(Ttimer>5*30){//もしくは、Ttimerが5秒より大きくなったら
Tspeed=6;//Tspeedを6にする
}
Ttimer++;//1秒ずつ足していく
//固定のOの指定
textFont(O2, 64);
fill(255);
text("O", 446,252);
//アニメーションのOの指定
textFont(O1, 64);
fill(Or,Og,Ob);
text("O", 446,Oy);
Oy=Oy+Ospeed;//Oy座標にOspeedの値を足す
if(Oy==250){//Oy座標が250に等しいとき
Otimer=0;//Otimerを0秒にする
}else if(Otimer>0 && Otimer<5*30){//もしくは、Otimerが0秒より大きい。かつ、Otimerが5秒より小さいとき。
Ospeed=0;//Ospeedを0にする
}else if(Otimer>5*30){//もしくは、Otimerが5秒より大きくなったら
Ospeed=2;//Ospeedを2にする
}
Otimer++;//1秒ずつ足していく
}
void mousePressed(){//マウスクリックされたとき
if(mouseX>=0 && mouseX<=83 && mouseY>=200 && mouseY<=250 ){//カーソルが、0<=x座標<=83かつ、200<=Y座標<=250のとき
//Hはx座標が31、y座標が-20へ
Hx=31;
Hy=-20;
//色はランダム
Hr =(int)random(255)+0;
Hg =(int)random(255)+0;
Hb =(int)random(255)+0;
loop();
}else if(mouseX>83 && mouseX<=166 && mouseY>=200 && mouseY<=250){//カーソルが、83<x座標<=166かつ、200<=Y座標<=250のとき
//1文字目Aはx座標が114、y座標が-20へ
A1x=114;
A1y=-20;
//色はランダム
A1r =(int)random(255)+0;
A1g =(int)random(255)+0;
A1b =(int)random(255)+0;
}else if(mouseX>166 && mouseX<=249 && mouseY>=200 && mouseY<=250){//カーソルが、166<x座標<=249かつ、200<=Y座標<=250のとき
//Yはx座標が197、y座標が-20へ
Yx=197;
Yy=-20;
//色はランダム
Yr =(int)random(255)+0;
Yg =(int)random(255)+0;
Yb =(int)random(255)+0;
}else if(mouseX>249 && mouseX<=332 && mouseY>=200 && mouseY<=250){//カーソルが、249<x座標<=332かつ、200<=Y座標<=250のとき
//Hはx座標が280、y座標が-20へ
A2x=280;
A2y=-20;
//色はランダム
A2r =(int)random(255)+0;
A2g =(int)random(255)+0;
A2b =(int)random(255)+0;
}else if(mouseX>332 && mouseX<=417 && mouseY>=200 && mouseY<=250){//カーソルが、332<x座標<=417かつ、200<=Y座標<=250のとき
//Hはx座標が363、y座標が-20へ
Tx=363;
Ty=-20;
//色はランダム
Tr =(int)random(255)+0;
Tg =(int)random(255)+0;
Tb =(int)random(255)+0;
}else if(mouseX>417 && mouseX<=500 && mouseY>=200 && mouseY<=250){
//Hはx座標が446、y座標が-20へ
Ox=446;
Oy=-20;
//色はランダム
Or =(int)random(255)+0;
Og =(int)random(255)+0;
Ob =(int)random(255)+0;
}
}