目录
每次到了做作业的时候,总觉得漫漫学习夜需要点食物陪伴,于是这次做了一条能够吃了彩虹食物变大变强的鱼儿,和在代码海洋喂鲨鱼的我不同,我要让它称霸这片渔场。
这是一个简单的小游戏,玩法是:玩家操控小鱼去吃掉那些当前可以食用的鱼食,以此来不断升级得分并将小鱼变大变色,最后获得游戏的胜利。主要通过页面设计,游戏难易等级设定,增添交互的趣味性。
游戏内容
1.开始界面
1. 设定了 字体、大小、颜色、位置;
2. 点击 START 开始游戏;
该段代码判断是否点击中 start 键
if (mousePressed && startTimer > 30) {
if (abs(mouseX - 2 * width / 3) < 150 && (abs(mouseY - height / 2) < 150)) {
x = mouseX;
y = mouseY;
}
}
如点击成功,则载入游戏场景;
}
if (x != 0 && y != 0) {
fill(0);
size *= 1.05;
ellipse(x, y, size, size);
if (size >= 1200) {
colorList = new int[5][1];
loadColors("one");
drawBar();
b.redraw();
p.displayLives();
fill(0, fadeAgain);
rect(0, 0, width, height);
fadeAgain *= 0.95;
if (fadeAgain <= 10)
stages.moveToNextStage();
}
}
2.过度场景
在游戏开始之前,先显示当前 游戏难度等级 、状态栏(FrenzyTime进度条:蓄满之后一定时间内得分×2;当前分数;历史最高得分;当前可食用鱼食类型;生命值)。
1.得分情况
class Bar {
float percent = 0; // 得分进度条
boolean frenzy; // 狂暴模式
void displayScore() {
fill(245, 90, 61);
textAlign(LEFT, TOP); // 左上对齐
font = createFont(fName, 26); // 载入字体
textFont(font);
int posX = 250; // 分数栏位置
int posY = barHeight / 2 - 15;
text("score: " + score, posX, posY);
text("high: " + highScore, posX + 160, posY);
}
void redraw() {
stroke(10);
strokeWeight(2);
strokeCap(ROUND);
rect(30, 30, 150, 20);
noStroke();
fill(0);
if (percent <= 0)
percent = 0;
if (percent >= 100) {
percent = 100;
frenzy &#