当前位置: 首页 > news >正文

N-134基于java实现捕鱼达人游戏

开发工具eclipse,jdk1.8 

文档截图:

 

package com.qd.fish;import java.awt.Graphics;
import java.io.File;
import java.util.ArrayList;
import java.util.List;import javax.imageio.ImageIO;public class Fishes {//定义一个集合来管理鱼List<Fish> fishes=new ArrayList<>();//定义鱼群的帧数数组int[] fishNum={8,8,8,8,8,10,10,12,12,12,12,12};//定义不同鱼的宽高数组int[][] fishSize={{55,296/8},{78,512/8},{72,448/8},{77,472/8},{107,976/8},{92,1510/10},{178,1870/10},{105,948/12},{174,1512/12},{166,2196/12},{509,3240/12},{516,3276/12}};//定义一个不同鱼的概率数组int[] rate={2,3,4,5,6,7,8,9,10,11,15,20};//定义渔场对象FishPool fp;//定义分值数组int[] point={2,3,8,15,20,40,50,60,100,120,150,200};public Fishes(FishPool fp){this.fp=fp;addFish();}public void addFish(){try {for(int i=1;i<=12;i++){Fish fish=new Fish(ImageIO.read(new File("images/fish"+i+".png")),fishNum[i-1],fishSize[i-1][0],fishSize[i-1][1],rate[i-1],point[i-1]);fishes.add(fish);}} catch (Exception e) {}}public void move(){for(int i=0;i<fishes.size();i++){fishes.get(i).move();}}public void draw(Graphics g){for(int i=0;i<fishes.size();i++){Fish fish=fishes.get(i);fish.draw(g);//判断被捕捉并且已播放完被捕捉动画,删除if(fish.isCatch&&fish.frameIndex>=fish.num){fishes.remove(fish);//创建金币Money money=new Money(fish.x, fish.y, fp);fp.moneys.add(money);//加分fp.point=fp.point+fish.point;//如果渔场中的鱼少于5条,再次初始化鱼群if(fishes.size()<5){addFish();}}}}
}

相关文章:

N-134基于java实现捕鱼达人游戏

开发工具eclipse,jdk1.8 文档截图&#xff1a; package com.qd.fish;import java.awt.Graphics; import java.io.File; import java.util.ArrayList; import java.util.List;import javax.imageio.ImageIO;public class Fishes {//定义一个集合来管理鱼List<Fish> fish…...

MTK联发科MT6762/MT6763/MT6765安卓核心板参数规格比较

MT6762安卓核心板 MTK6762安卓核心板是一款工业级高性能、可运行 android9.0 操作系统的 4G智能模块。 CPU&#xff1a;4xCortex-A53 up to 2.0Ghz/4xCortex-A53 up to 1.5GhzGraphics&#xff1a;IMG GE8320 Up to 650MhzProcess&#xff1a;12nmMemory&#xff1a;1xLP3 9…...

仿ChatGPT对话前端页面(内含源码)

仿ChatGPT对话前端页面&#xff08;内含源码&#xff09; 前言布局样式和Js部分关键点全部源码 前言 本文主要讲解如何做出类似ChatGPT的前端页面。具体我们的效果图是长这样&#xff0c;其中除了时间是动态的之外&#xff0c;其他都是假数据。接下来让我们从布局和样式的角度…...

js粒子效果(一)

效果: 代码: <!doctype html> <html> <head><meta charset"utf-8"><title>HTML5鼠标经过粒子散开动画特效</title><style>html, body {position: absolute;overflow: hidden;margin: 0;padding: 0;width: 100%;height: 1…...

程序员必备工具篇 / 程序员必备基础:Git

前言 掌握 Git 命令是每位程序员必备的基础,之前一直是用 smartGit 工具,直到看到大佬们都是在用 Git 命令操作的,回想一下,发现有些 Git 命令我都忘记了,于是写了这篇博文,复习一下~ https://github.com/whx123/JavaHome 公众号:顺哥轻创 文章目录 Git 是什么?Git …...

MacBook使用指南

一、安装及卸载Windows系统 1、卸载Windows系统 步骤① 点击下侧任务栏中的“启动台”&#xff0c;进入程序坞&#xff0c;点击"其他",选择“启动转换助理” 步骤② 点击“继续”&#xff0c;接着点击“恢复”&#xff0c;即可卸载Windows系统 2、安装Windows系统 …...

数据库的事务的基本特性,事务的隔离级别,事务隔离级别如何在java代码中使用,使用MySQL数据库演示不同隔离级别下的并发问题

文章目录 数据库的事务的基本特性事务的四大特性(ACID)4.1、原子性&#xff08;Atomicity&#xff09;4.2、一致性&#xff08;Consistency&#xff09;4.3、隔离性&#xff08;Isolation&#xff09;4.4、持久性&#xff08;Durability&#xff09; 事务的隔离级别5.1、事务不…...

Robust taboo search for the quadratic assignment problem-二次分配问题的鲁棒禁忌搜索

文章目录 摘要关键字结论研究背景1. Introduction 常用基础理论知识2. The quadratic assignment problem3. Taboo search3.1. Moves3.2 Taboo list3.3. Aspiration function3.4. Taboo list size4. Random problems5. Parallel taboo search 研究内容、成果7. Conclusion 潜在…...

Linux:创建进程 -- fork,到底是什么?

相信大家在初学进程时&#xff0c;对fork函数创建进程一定会有很多的困惑&#xff0c;比如&#xff1a; 1.fork做了什么事情?? 2.为什么fork函数会有两个返回值?3.为什么fork的两个返回值&#xff0c;会给父进程谅回子进程pid&#xff0c;给子进程返回0?4.fork之后:父子进…...

基于SpringBoot+vue的token验证

后端&#xff1a; 1&#xff0c;写一个验证token的拦截器 import com.fasterxml.jackson.databind.ObjectMapper; import com.ffyc.news.model.CommonData; import org.springframework.web.servlet.HandlerInterceptor;import javax.servlet.http.HttpServletRequest; impor…...

Clickhouse设置多磁盘存储策略

设置多磁盘存储 clickhouse安装完成以后&#xff0c;配置了一个默认的存储空间&#xff0c; 这个只能配置一个目录&#xff0c;如果要使用多个磁盘目录&#xff0c;则需要配置磁盘组策略 查看当前的存储策略 select name, path, formatReadableSize(free_space) as free, fo…...

Python开发运维:Django 4.2.7 使用Celery 5.3.5 完成异步和定时任务

目录 一、实验 1.Django使用Celery完成异步和定时任务 二、问题 1. 如何查看Django版本 一、实验 1.Django使用Celery完成异步和定时任务 (1)安装Django (2)新建Django项目 (3)初始框架 (4)urls.py引用视图views from django.contrib import admin from django.urls imp…...

媒体增加日活量的有效策略

随着数字媒体的蓬勃发展&#xff0c;提高日活量成为媒体平台追求的重要目标之一。日活量的增加不仅意味着更广泛的影响力&#xff0c;还能为媒体平台带来更多的商业机会。以下是一些有效的策略&#xff0c;可帮助媒体提高日活量&#xff1a; admaoyan猫眼聚合 内容优质化&#…...

es6新特性总结

1、支持了let和const&#xff0c;为了防止var声明变量带来的变量提升 &#xff08;1&#xff09;、存在块级作用域不存在变量提升&#xff08;考虑暂时性死区&#xff09; &#xff08;2&#xff09;、不允许重复声明&#xff08;包括普通变量和函数参数&#xff09;变量提升…...

Spring Boot + hutool 创建海报图片

Spring Boot hutool 创建海报图片 /*** 分享,生成图片* param id* return*/GetMapping("/getShareImg")public void getShareImg(String id,HttpServletResponse response) throws IOException {CouponConsignSaleClassify byId couponConsignSaleClassifyService…...

0002Java程序设计-springboot在线考试系统小程序

文章目录 **摘 要****目录**系统实现开发环境 编程技术交流、源码分享、模板分享、网课分享 企鹅&#x1f427;裙&#xff1a;776871563 摘 要 本毕业设计的内容是设计并且实现一个基于springboot的在线考试系统小程序。它是在Windows下&#xff0c;以MYSQL为数据库开发平台&…...

Linux(Centos)上使用crontab实现定时任务(定时执行脚本)

场景 Windows中通过bat定时执行命令和mysqldump实现数据库备份&#xff1a; Windows中通过bat定时执行命令和mysqldump实现数据库备份_mysqldump bat-CSDN博客 上面讲windows中使用bat实现定时任务的方式&#xff0c;如果是在linux上可以通过crontab实现。 cron是服务名称。…...

【Leetcode合集】20. 有效的括号

20. 有效的括号 20. 有效的括号 代码仓库地址&#xff1a; https://github.com/slience-me/Leetcode 个人博客 &#xff1a;https://slienceme.xyz 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串…...

OpenGL 绘制线(Qt)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 这里同样对OpenGL中的绘制线操作进行封装,便于后续的操作,很多形状也都是基于线来生成的,如圆形等。 二、实现代码 LineDrawable.h #ifndef LINE_DRAWABLE_H #define LINE_DRAWABLE_H#include...

Java | 多线程并发编程CountDownLatch实践

关注&#xff1a;CodingTechWork 引言 在一次数据割接需求中&#xff0c;数据需要通过编程的方式进行转移割接到新平台&#xff0c;此时若串行化方式&#xff0c;无疑会拉锯此次战斗&#xff0c;所以首当其冲要使用并发编程来降低割接时长。  本次主要考虑使用CountDownLatc…...

基于外置摄像头的实时信号灯状态监测与报警系统

基于外置摄像头的实时信号灯状态监测与报警系统 摘 要 本文详细阐述了一套基于外置USB摄像头的实时信号灯状态监测系统的完整开发过程。该系统通过OpenCV计算机视觉库实时采集摄像头视频流,利用HSV色彩空间的红灯多区间检测算法精确识别三个信号灯的状态,并结合时间戳记录和…...

告别Option键!在MacBook Pro 2015上,用rEFInd打造macOS与Ubuntu 20.04的无缝双系统切换

优雅双系统&#xff1a;用rEFInd为MacBook Pro 2015打造无缝切换体验 每次开机都要按住Option键选择系统&#xff1f;默认的启动菜单简陋又难用&#xff1f;作为同时需要macOS生产力与Ubuntu开发环境的用户&#xff0c;我花了三个月时间折腾出这套完美方案。本文将分享如何通过…...

【会议征稿通知 | 东北农业大学主办 | ACM出版 | EI 、Scopus稳定检索】第二届智慧农业与人工智能国际学术会议(SAAI 2026)

第二届智慧农业与人工智能国际学术会议&#xff08;SAAI 2026&#xff09; 2026 2nd International Conference on Smart Agriculture and Artificial Intelligence 2026年5月29-31日 中国西安&#xff08;线上/线下均可参会) 大会官网&#xff1a;www.icsaai.org 截稿时…...

手把手教你用U盘和rEFInd救活你的多系统电脑(Win10/Linux引导修复指南)

手把手教你用U盘和rEFInd救活你的多系统电脑&#xff08;Win10/Linux引导修复指南&#xff09; 当你按下电源键&#xff0c;屏幕却只显示"Boot Device Not Found"或陷入Grub Rescue的黑白界面时&#xff0c;这种绝望感每个折腾多系统的用户都深有体会。去年我的开发…...

AWPortrait-Z镜像免配置优势:省去conda环境/模型下载/LoRA加载手动步骤

AWPortrait-Z镜像免配置优势&#xff1a;省去conda环境/模型下载/LoRA加载手动步骤 1. 为什么你需要一个“开箱即用”的人像生成工具&#xff1f; 如果你曾经尝试过自己部署一个AI图像生成项目&#xff0c;大概率经历过这样的“折磨”&#xff1a; 环境搭建地狱&#xff1a;…...

SecGPT-14B作品集:15个真实安全问答+5个日志溯源对话实录

SecGPT-14B作品集&#xff1a;15个真实安全问答5个日志溯源对话实录 1. SecGPT-14B网络安全大模型介绍 SecGPT-14B是由云起无垠团队开发的开源网络安全大模型&#xff0c;专注于提升安全防护的智能化水平。该模型基于vLLM框架部署&#xff0c;并通过Chainlit前端提供交互式体…...

实测性能反超15%!C#工业上位机统信UOS+鲲鹏全栈移植指南(踩坑+优化+源码)

摘要 2026年是工业领域国产化替代的爆发年&#xff0c;统信UOS鲲鹏架构已成为政府、军工、能源等关键行业的标配。但90%的C#工业开发者都面临同一个难题&#xff1a;写了十几年的Windows上位机&#xff0c;怎么移植到Linux ARM64平台&#xff1f; 网上的教程要么碎片化&#xf…...

嵌入式系统内存架构设计与优化实战

1. 嵌入式系统内存架构设计基础在嵌入式系统设计中&#xff0c;内存架构的选择直接影响着系统性能、功耗和实时性表现。与通用计算机不同&#xff0c;嵌入式设备往往需要在严格的资源约束下实现确定性的响应行为。1.1 内存层次结构解析典型嵌入式系统采用金字塔式内存层次结构&…...

颠覆性突破:如何在Windows上无缝运行Android应用的终极指南

颠覆性突破&#xff1a;如何在Windows上无缝运行Android应用的终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾渴望在Windows电脑上直接运行心仪的And…...

Bioicons:如何在10分钟内为科研论文找到完美的免费矢量图标?

Bioicons&#xff1a;如何在10分钟内为科研论文找到完美的免费矢量图标&#xff1f; 【免费下载链接】bioicons A library of free open source icons for science illustrations in biology and chemistry 项目地址: https://gitcode.com/gh_mirrors/bi/bioicons Bioic…...