//遍历当前场景里所有的障碍物 for (int i = 0; i < backGround.getObstacleList().size(); i++) { Obstacle ob = backGround.getObstacleList().get(i); //判断马里奥是否位于障碍物上 if (ob.getY() == this.y + 25 && (ob.getX() > this.x - 30 && ob.getX() < this.x + 25)) { //如果马里奥在障碍物上,则设置onObstacle为true onObstacle = true; } //判断是否跳起来顶到砖块 if ((ob.getY() >= this.y - 30 && ob.getY() <= this.y - 20) && (ob.getX() > this.x - 30 && ob.getX() < this.x + 25)) { if (ob.getType() == 0) { //如果顶到普通砖块,移除该砖块,并增加1分 backGround.getObstacleList().remove(ob); score += 1; } //如果顶到道具方块,绘制道具蘑菇,并且将道具方块变为普通障碍物方块 if (ob.getType() == 9 ) { if (this.big) { //如果马里奥是大马里奥,则绘制大蘑菇,否则绘制小蘑菇 backGround.getDaoJuList().add(new DaoJu(ob.getX(), this.y - 55, 1, backGround)); } else { backGround.getDaoJuList().add(new DaoJu(ob.getX(), this.y - 55, 0, backGround)); } ob.setType(11); //将道具方块变为普通障碍物方块 } //判断道具方块3,顶到道具方块3,积分增加5,并将道具方块3变为普通障碍物方块 if (ob.getType() == 11) { score += 1; //增加1分 backGround.getDaoJuList().add(new DaoJu(ob.getX() + 5,this.y - 53,2,backGround)); //绘制金币 ob.setType(12); //将道具方块3变为普通障碍物方块 } //判断道具方块4,顶到道具方块4,积分增加5,并将道具方块4变为普通障碍物方块 if (ob.getType() == 12) { score += 5; //增加5分 ob.setType(7); //将道具方块4变为普通障碍物方块 } upTime = 0; //将upTime重置为0 }


原文地址: http://www.cveoy.top/t/topic/g0Vn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录