捕鱼达人游戏项目开发过程文档教学文稿
java捕鱼达人工作流程
Java捕鱼达人是一款基于Java编程语言开发的休闲游戏。
该游戏的工作流程主要包括游戏准备、游戏进行和游戏结算三个步骤。
首先,在游戏准备阶段,玩家需要选择游戏模式和难度等级。
游戏模式包括单人模式和多人模式,难度等级则包括简单、普通和困难等选项。
玩家还可以进行游戏设置,如调整游戏音效和背景音乐等。
接下来是游戏进行阶段。
玩家将操纵游戏角色在水域中进行捕鱼,通过操作键盘或鼠标来控制角色的移动和发射子弹。
在游戏中,玩家需要躲避一些障碍物,如海藻和岩石,并且要小心一些比较凶猛的鱼类。
玩家可以通过捕获鱼类来赚取金币和积分,并且在游戏中还会出现一些道具,如加速道具和双倍积分道具,可以帮助玩家提升游戏体验和收益。
最后是游戏结算阶段。
一般游戏时间到达或者玩家生命值耗尽时,游戏将会进入结算阶段。
在这个阶段,游戏会统计玩家的捕鱼数量、金币数和积分,然后给予相应的奖励。
玩家可以根据自己的表现获得不同等级的奖励,并且可以用金币来换取一些游戏道具或者提升自己的游戏角色。
总的来说,Java捕鱼达人游戏的工作流程非常简单直观,玩家可以在游戏中体验到捕鱼的乐趣和刺激,同时也能够享受到游戏结算带来的成就感和奖励。
捕鱼达人沙盘课程设计
捕鱼达人沙盘课程设计一、课程目标知识目标:1. 学生能够理解捕鱼达人沙盘游戏的背景知识,掌握基本的海洋生态及生物链概念。
2. 学生能够运用数学知识,进行数据收集、整理与分析,了解捕鱼业对海洋生态环境的影响。
3. 学生能够结合地理知识,描述不同海域的特点及其对捕鱼业的影响。
技能目标:1. 学生通过沙盘游戏,提高观察、分析、解决问题的能力。
2. 学生能够运用团队合作、沟通协调等技能,完成沙盘游戏中的任务。
3. 学生能够运用计算机技术,对捕鱼数据进行有效处理,提高信息素养。
情感态度价值观目标:1. 学生培养对自然环境的热爱和责任感,关注海洋资源的合理利用与保护。
2. 学生在沙盘游戏中,培养团队合作精神,学会尊重、信任、理解他人。
3. 学生通过课程学习,认识到科技在捕鱼业发展中的重要作用,增强创新意识。
本课程针对五年级学生设计,结合学科特点,注重培养学生的实践能力、合作能力及创新能力。
课程内容紧密联系课本知识,以沙盘游戏为载体,让学生在轻松愉快的氛围中学习,提高学生对海洋生态、捕鱼业及其影响的认知。
通过具体可衡量的课程目标,使学生在知识、技能、情感态度价值观等方面取得实质性进步。
二、教学内容本课程依据课程目标,结合五年级教材,组织以下教学内容:1. 海洋生态基础知识:包括海洋生物的分类、生物链的构成及其相互关系,涉及教材中生态系统相关章节。
2. 捕鱼业发展及影响:介绍捕鱼业的发展历程、现状及对海洋生态环境的影响,关联教材中人类活动对环境的影响章节。
3. 数据收集与处理:教授学生如何收集、整理和分析捕鱼数据,运用数学知识进行简单的数据分析,结合教材中数据分析相关章节。
4. 地理知识与海域特点:介绍不同海域的地理位置、气候特点及其对捕鱼业的影响,涉及教材中地理知识相关章节。
5. 计算机技术应用:教授学生运用计算机技术进行捕鱼数据的处理,提高信息素养,结合教材中信息技术相关章节。
教学内容安排与进度:1. 第一周:海洋生态基础知识学习,进行沙盘游戏规则介绍。
2018-2019-拓展训练游戏项目捕鱼达人-推荐word版 (2页)
2018-2019-拓展训练游戏项目捕鱼达人-推荐word版
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!
== 本文为word格式,下载后可方便编辑和修改! ==
拓展训练游戏项目捕鱼达人
拓展训练游戏项目捕鱼达人不知道大家有没有玩过?下面是小编为大家收集的关于,欢迎大家阅读借鉴!
背景介绍:
遥远的美极湖中生活着一种珍贵的美极鱼,这种鱼不但味道极其鲜美且具有独特的药用价值。
美极湖边有一个围湖而居的渔村,村中有九条可以捕捞美极鱼的渔船,能尽量多的捕到美极鱼是村民致富的希望。
经过漫长的休渔期,捕鱼的季节马上就要到了。
鱼季会经历十周的时间,接下来又将是漫长的休渔期。
在这个捕鱼期,大家的任务就是尽可能多的捕到美极鱼。
项目规则:
湖泊经过休渔期,初始拥有100条鱼,经过每一周的捕捞,湖里的鱼会减少,当然它们也会自然的繁殖。
大体上湖泊内鱼的数量遵守这个规律:(注:N代表湖内鱼的总体数量)
1、N>=50,湖内都将拥有100条鱼;
2、50>N>=10,湖内的鱼的数量都将在原有的基础上翻番;
3、N<10,湖内鱼的数量都将维持在20条。
项目流程:
1、所有渔船本季捕鱼的总数量必须超过350条;
2、每只渔船捕鱼的数量必须超过32条;
3、十周过后,捕鱼最多的渔船获得胜利,捕鱼最少的渔船失败。
项目目标:。
捕鱼达人互动游戏策划方案
游戏环节设置
1
摄像头捕捉玩家进入 游戏区域,游戏片头 出现
2
体感点触按钮 ,倒计时3s, 开始游戏
3
第一关,普 通渔网捕鱼 ,小鱼环游
4
第二关,散弹
5
第三关,大鲨
6
得分统计
7
倒计时拍照, 二维码推送照 片
互动页面流程:
游戏开始页面UE:
游戏画面参考:
游戏武器画面参考:
第一关, 小鱼网
第二关, 散花弹
第三关, 重磅炸弹
鱼儿阵列画面参考:
多鱼种混游
小鱼环绕大鱼 蛋糕游法
拍照页面UE:
1.游戏结束,会有可爱的鱼儿出来合影 2.分数分5档(100,200,300,400,500) 3.分数越高,出来摆pose的鱼儿越大 (如100分是小黄鱼,500分是鲨鱼)。
捕鱼达人大屏AR互动方案
目录 /CONTENS
游戏名称
游戏方式
游戏环节
互动传播 设计
设置12源自456游戏概述
感应互动LED屏
AR技术完美呈现
游戏目的 游戏名称 命名说明
吸引玩家参与,推进品牌传播
捕鱼达人AR 与产品名称完全一致,产生直接传播效应
游戏方式
利用AR虚拟现实技术,从摄像头捕捉玩家所在的真实场景,叠加游戏的虚拟画面,出现在大屏幕中
500分以上
200分
二维码下载页面UE参考:
手机照片分享页面UE:
1.点击下载按钮,会自动根据iphone和android手机 跳转到不同的安装链接
谢谢观赏
微飞传播
枪捕鱼,鱼儿
java 捕鱼达人设计流程(按工作时间顺序写)
java 捕鱼达人设计流程(按工作时间顺序写)The design process for a Java Fish Shooting game consists of several steps that need to be followed in chronological order. The aim is to create an engaging and functional game that provides an enjoyable gaming experience. Here is the step-by-step breakdown of the design process:1. Conceptualization and ResearchThis initial phase involves brainstorming and gathering ideas for the game. Research similar games in the market, analyze their strengths and weaknesses, and identify the target audience. Understand the mechanics and gameplay elements of Fish Shooting games.1号步骤:概念化和研究这个初始阶段涉及到为游戏进行头脑风暴,收集想法。
研究市场上类似的游戏,分析它们的优点和缺点,并确定目标受众。
了解捕鱼达人游戏的机制和玩法元素。
2. Game Design Document (GDD)Create a detailed Game Design Document that outlines all the aspects of the game, including gameplay mechanics, art style, levels, characters, audio, and monetization strategies. Determine the core features and game progression.2号步骤:游戏设计文档(GDD)创建一个详细的游戏设计文档,其中包括游戏的各个方面,包括玩法机制、艺术风格、关卡、角色、音频和变现策略。
基于 Android 的“捕鱼达人游戏”的开发
基于 Android 的“捕鱼达人游戏”的开发作者:李湘一来源:《智能计算机与应用》2015年第06期摘要:本文通过分析实际运行效果,阐述了捕鱼达人游戏开发的体系结构,确定了游戏开发中需要创建哪些类,如何创建这些类。
并对各实体类实现的功能进行了具体的描述。
用线程实现了鱼的游行,子弹的发射。
最后给出了三种关键算法的描述,大炮旋转角度的计算、子弹的运行轨迹的计算、判断子弹是否击中鱼的算法描述。
关键词: Android;捕鱼达人;算法中图分类号:TP391 文献标识号:A 文章编号:2095-2163(2015)06-Abstract: Through the analysis of the actual operating results, this paper expounds the system structure of the game development of fishing up game, and determines what kind of game development need to create, and how to create these classes. After that, the function of each entity class is described in detail. The paper also uses threads to achieve the fish's parade, bullets fired. Three key algorithms are described,which respectively are the calculation of the rotation angle of the barrel, the calculation of the trajectory of the bullet, and judging whether the bullet hit the fish.Keywords: Android; Fishing Talent; Algorithm0引言近几年来,Android凭借其开放性和灵活性成为时下热门的移动终端操作系统之一。
嵌入式课程设计捕鱼达人
嵌入式课程设计捕鱼达人一、教学目标本课程旨在通过“捕鱼达人”项目的设计与实现,让学生掌握嵌入式系统的基本原理和开发技能。
具体目标如下:1.理解嵌入式系统的基本概念和架构。
2.熟悉C/C++编程语言在嵌入式环境中的应用。
3.学习嵌入式操作系统的基本原理和常用操作。
4.掌握基于嵌入式系统的硬件接口和驱动开发。
5.能够使用嵌入式开发工具,如编译器、调试器等。
6.学会使用嵌入式操作系统进行应用程序开发。
7.能够独立设计和实现简单的嵌入式系统项目。
8.具备基本的硬件接口编程和故障排除能力。
情感态度价值观目标:1.培养学生的创新意识和解决问题的能力。
2.增强学生团队合作和沟通协调的能力。
3.培养学生对嵌入式技术的兴趣和热情。
二、教学内容本课程的教学内容围绕“捕鱼达人”项目展开,包括以下几个部分:1.嵌入式系统概述:介绍嵌入式系统的定义、特点和应用领域。
2.嵌入式硬件基础:学习嵌入式系统的硬件组成,如CPU、内存、外设等。
3.嵌入式操作系统:讲解嵌入式操作系统的原理和常用操作系统,如Linux、RTOS等。
4.嵌入式编程语言:学习C/C++编程语言在嵌入式环境中的应用。
5.硬件接口和驱动开发:掌握嵌入式系统与硬件的接口编程和驱动开发。
6.项目实践:“捕鱼达人”嵌入式系统的设计与实现。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法:1.讲授法:讲解嵌入式系统的基本概念、原理和关键技术。
2.案例分析法:通过分析具体的嵌入式系统案例,让学生了解实际应用。
3.实验法:动手实践,完成“捕鱼达人”项目的开发和调试。
4.小组讨论法:分组进行项目开发,培养团队合作和沟通协调能力。
四、教学资源为了支持本课程的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《嵌入式系统设计与实践》、《嵌入式操作系统原理与应用》等。
2.参考书:提供相关的技术文档和教程,供学生自主学习。
3.多媒体资料:制作课件和教学视频,辅助学生理解嵌入式系统的原理和应用。
java-捕鱼达人课程设计要点
武汉理工大学华夏学院课程设计报告书课程名称:智能手机软件开发题目:捕鱼达人系名:信息工程系专业班级:计算机1112*名:***学号:***************:***2014 年 6 月20 日武汉理工大学华夏学院信息工程系课程设计任务书课程名称:智能手机软件开发课程设计指导教师:凌伟班级名称:计算机1111 开课系、教研室:自动化与计算机三、课程设计目的与任务本课程的设计的目的是通过实践使同学们经历智能手机软件开发的全过程和受到一次综合训练,以便能较全面地理解、掌握和综合运用所学的智能手机开发的知识。
结合具体的开发案例捕鱼达人,理解并初步掌握智能手机开发的主要环节和步骤以及智能手机游戏开发的知识。
二、课程设计的内容与基本要求1、课程设计题目捕鱼达人2、课程设计内容要求学生根据所学的软件工程的理念,利用所学的Android 手机开发的知识,开发一个智能手机游戏捕鱼达人,并针对该手机游戏软件进行需求分析,总体设计、详细设计、编码、测试。
游戏操作鼠标移动/键盘方向键←→控制炮台射击方向,点击鼠标左键/按空格键射击撒网抓鱼,点击下方的红色+号和-号按钮/数字键1-8键/方向键↑键/滑动鼠标滑轮切换炮台游戏背景音乐设计游戏背景动画设计游戏界面设计游戏关卡设计游戏积分榜的设计三、课程设计步骤及时间进度和场地安排本课程设计将安排在第18周, 教育技术中心。
具体安排如下:第一天,系统开发平台搭建及主流开发工具安装第二天,游戏界面的设计第三天,游戏业务的设计第四天,游戏关卡的设计第五天,系统调试测试打包和验收四、课程设计考核及评分标准课程设计考核将综合考虑学生考勤和参与度,系统设计方案正确性,系统设计和开发效果以及课程设计报告书的质量。
具体评分标准如下:设置六个评分点(1)设计方案正确,具有可行性、创新性;25分(2)系统开发效果较好;25分(3)态度认真、刻苦钻研、遵守纪律;10分(4)设计报告规范、课程设计报告质量高、参考文献充分20分(5)课程设计答辩概念清晰,内容正确10分(6)课程设计期间的课堂考勤、答疑与统筹考虑。
java捕鱼达人课程设计
武汉理工大学华夏学院课程设计报告书课程名称:智能手机软件开发题目:捕鱼达人系名:信息工程系专业班级:计算机1112*名:***学号:***************:***2014 年 6 月20 日武汉理工大学华夏学院信息工程系课程设计任务书课程名称:智能手机软件开发课程设计指导教师:凌伟班级名称:计算机1111 开课系、教研室:自动化与计算机三、课程设计目的与任务本课程的设计的目的是通过实践使同学们经历智能手机软件开发的全过程和受到一次综合训练,以便能较全面地理解、掌握和综合运用所学的智能手机开发的知识。
结合具体的开发案例捕鱼达人,理解并初步掌握智能手机开发的主要环节和步骤以及智能手机游戏开发的知识。
二、课程设计的内容与基本要求1、课程设计题目捕鱼达人2、课程设计内容要求学生根据所学的软件工程的理念,利用所学的Android 手机开发的知识,开发一个智能手机游戏捕鱼达人,并针对该手机游戏软件进行需求分析,总体设计、详细设计、编码、测试。
游戏操作鼠标移动/键盘方向键←→控制炮台射击方向,点击鼠标左键/按空格键射击撒网抓鱼,点击下方的红色+号和-号按钮/数字键1-8键/方向键↑键/滑动鼠标滑轮切换炮台游戏背景音乐设计游戏背景动画设计游戏界面设计游戏关卡设计游戏积分榜的设计三、课程设计步骤及时间进度和场地安排本课程设计将安排在第18周, 教育技术中心。
具体安排如下:第一天,系统开发平台搭建及主流开发工具安装第二天,游戏界面的设计第三天,游戏业务的设计第四天,游戏关卡的设计第五天,系统调试测试打包和验收四、课程设计考核及评分标准课程设计考核将综合考虑学生考勤和参与度,系统设计方案正确性,系统设计和开发效果以及课程设计报告书的质量。
具体评分标准如下:设置六个评分点(1)设计方案正确,具有可行性、创新性;25分(2)系统开发效果较好;25分(3)态度认真、刻苦钻研、遵守纪律;10分(4)设计报告规范、课程设计报告质量高、参考文献充分20分(5)课程设计答辩概念清晰,内容正确10分(6)课程设计期间的课堂考勤、答疑与统筹考虑。
体育游戏捕鱼教案精选
体育游戏捕鱼教案精选一、教学内容本节课选自人教版小学体育教材第四册第六单元“体育游戏”,主要围绕“捕鱼”游戏展开。
详细内容如下:1. 理论知识:介绍“捕鱼”游戏的起源、发展、规则及技巧。
2. 实践操作:分组进行“捕鱼”游戏,培养团队合作精神和运动能力。
二、教学目标1. 让学生了解并掌握“捕鱼”游戏的规则和技巧,提高运动技能。
2. 培养学生的团队合作精神和竞技体育道德。
3. 激发学生对体育游戏的兴趣,提高参与体育活动的积极性。
三、教学难点与重点难点:学生在游戏中运用技巧,提高捕鱼成功率。
重点:掌握“捕鱼”游戏的规则,培养学生的团队合作精神。
四、教具与学具准备1. 教具:哨子、计时器、口哨、记分牌。
2. 学具:渔网、鱼(可用其他物品代替)、标志物、绳子。
五、教学过程1. 导入:通过讲述《渔夫和金鱼的故事》,引出本节课的主题——“捕鱼”游戏。
2. 理论知识学习:讲解“捕鱼”游戏的起源、发展、规则及技巧。
3. 实践操作:(1)将学生分成若干小组,每组46人。
(2)设置渔网、鱼、标志物等,模拟捕鱼场景。
(3)教师示范,学生模仿,进行“捕鱼”游戏。
(4)游戏过程中,教师巡回指导,纠正动作,提高学生技能。
4. 随堂练习:(1)分组进行“捕鱼”比赛,比一比哪个小组捕到的鱼多。
(2)邀请个别学生展示技巧,分享经验。
六、板书设计1. 《体育游戏——捕鱼》2. 内容:(1)捕鱼游戏的起源与发展(2)捕鱼游戏的规则与技巧(3)团队合作精神的重要性七、作业设计1. 作业题目:结合本节课的学习,以小组为单位,设计一个创意捕鱼游戏。
2. 答案:要求创意捕鱼游戏具有趣味性、竞技性和团队合作性。
八、课后反思及拓展延伸1. 反思:本次课程中学生对“捕鱼”游戏的兴趣浓厚,团队合作精神得到提升。
但在技巧方面,部分学生还需加强练习。
2. 拓展延伸:(1)组织学生参加校内外“捕鱼”比赛,提高竞技水平。
(2)邀请家长参与,开展亲子“捕鱼”活动,增进亲子关系。
捕鱼达人教案
教案:捕鱼达人
一、教学目标
1.让学生了解捕鱼达人游戏的规则和玩法。
2.培养学生的观察能力、反应能力和手眼协调能力。
3.增强学生的团队合作意识和竞争意识。
二、教学重难点
1.重点:掌握捕鱼达人游戏的规则和技巧。
2.难点:如何在游戏中灵活运用各种策略,提高得分。
三、教学方法
1.讲授法:讲解捕鱼达人游戏的规则和玩法。
2.演示法:通过实际操作演示游戏的技巧和策略。
3.练习法:让学生分组进行游戏,实际体验游戏的乐趣。
四、教学过程
1.导入
•询问学生是否玩过捕鱼达人游戏,引发学生的兴趣。
2.新授
•讲解捕鱼达人游戏的规则和玩法,包括游戏界面、鱼类的种类和分值、炮台的选择和使用等。
•通过实际操作演示游戏的技巧和策略,如如何瞄准鱼类、如何使用道具等。
•让学生分组进行游戏,每组4-5 人,实际体验游戏的
乐趣。
3.练习
•学生分组进行游戏,教师在旁边指导,帮助学生掌握游戏技巧。
•进行小组比赛,评选出得分最高的小组和个人,给予奖励。
4.课堂小结
•让学生分享自己在游戏中的心得体会,以及如何提高得分的技巧和策略。
•教师对本节课的内容进行总结,强调游戏中的团队合作和竞争意识。
五、教学反思
通过本次教学,学生对捕鱼达人游戏有了更深入的了解,掌握了游戏的规则和技巧,同时也增强了团队合作意识和竞争意识。
在教学过程中,教师应该注重引导学生思考和探索,让学生在游戏中不断提高自己的能力。
JAVA课程设计报告书捕鱼达人
JAVA课程设计报告书■捕鱼达人一、项目概述本课程设计项目名为“捕鱼达人”,是一款基于Java语言开发的休闲小游戏。
游戏的玩法类似于传统的电子捕鱼游戏,玩家需要控制一个炮台发射炮弹,捕获游泳在屏幕上的鱼类,从而获取积分。
游戏采用图形界面展示,通过键盘操作进行操作。
二、项目功能本项目实现了以下主要功能:1.游戏开始界面:展示游戏名称、游戏说明和开始游戏按钮。
2.游戏主界面:展示玩家得分、可发射的炮弹数量、当前关卡和剩余时间。
3.炮台操作:玩家可以使用键盘左右箭头键控制炮台的旋转角度,空格键发射炮弹。
4.游戏关卡:游戏包含多个关卡,每个关卡有不同游泳速度和分数的鱼类。
5.鱼类生成和移动:游戏会随机生成游泳在屏幕上的鱼类,玩家需要通过炮弹捕获鱼类。
6.炮弹碰撞检测:当炮弹与鱼类碰撞时,计算得分并移除鱼类和炮弹。
7.时间限制:游戏设有时间限制,到达时间上限后游戏结束。
8.游戏结束界面:展示玩家得分、最高分和重新开始游戏按钮。
三、游戏开发过程本项目基于JaVa语言开发,采用面向对象的编程思想。
以下是项目的开发过程和关键步骤:1.游戏框架搭建:使用JavaSwing库创建游戏窗口,定义游戏主界面和游戏开始界面。
2.炮台操作:使用键盘监听器,监听左右箭头键的按F事件,实现炮台的旋转操作。
3.炮弹发射:使用键盘监听器,监听空格键的按下事件,发射炮弹。
创建炮弹类,并定义炮弹的弹道和移动速度。
4.鱼类生成和移动:使用线程控制鱼类的生成和移动。
创建鱼类类,并定义鱼类的游泳速度和移动路径。
5.碰撞检测:使用碰撞检测算法,判断炮弹与鱼类是否发生碰撞。
如果发生碰撞,计算得分并移除鱼类和炮弹。
6.游戏计时:使用定时器控制游戏时间的倒计时,到达时间上限后游戏结束。
7.界面设计:美化游戏界面,添加游戏结束界面,并显ZΓ⅞71家得分和最高分。
四.项目总结本项目旨在通过实践应用Java编程知识,提高学生对Java面向对象编程的理解和掌握程度。
捕鱼达人游戏项目开发过程文档
捕鱼达人游戏项目开发过程文档————————————————————————————————作者:————————————————————————————————日期:捕鱼达人项目开发过程文档一、游戏资源文件image 图片:包括火炮,鱼,子弹,渔网,金币,数字,背景图片以及其它UI 图片 CCFish 类:实现鱼的曲线路线的移动与各种鱼捕捉概率的设置UINumber 类与UIRollNumber 类二、游戏基本结构确定及搭建图1.1 依次在项目中创建如有图类完成项目结构,在总体上把握项目实现内容三、详细设计与各功能模块的实现程序编写流程1. 系统菜单场景:1) 添加初始化方法2) 添加菜单3) 添加菜单选项方法2. 游戏场景1) 添加初始化方法2) 添加纹理图集载入方法3) 添加UI 设计方法4) 添加触摸事件处理方法5) 添加自动补充鱼更新方法6) 添加碰撞检测方法3. 设置页面4. 帮助场景游戏重要模块详细实现1. 纹理图集的使用与加载要点:精灵处于界面中的层次关系,如下为纹理图集加载代码[[CCSpriteFrameCache sharedSpriteFrameCache ] addSpriteFramesWithFile :@"fish.plist"];fishSheet = [CCSpriteBatchNode batchNodeWithFile :@"fish.png"];[self addChild :fishSheet z :100];2. UI 设计的细节实现要点:各个UI 部件(精灵)的层次,位置调整以及武器的更换动作设置,下面为UI 实现代码-(void ) initUI {SysMenu(scene)GameMain(scene) Setting (layer)Help (scene)CGSize winSize = [[CCDirector sharedDirector] winSize];CCSprite * background = [CCSprite spriteWithFile:@"bj00.jpg"];background.position = ccp(winSize.width * 0.5, winSize.height * 0.5);[self addChild:background z:0];//添加能量槽CCSprite *engryBox =[CCSprite spriteWithFile:@"ui_2p_004.png"];engryBox.anchorPoint = ccp(0.5, 0.5);engryBox.position = ccp(winSize.width/2,10);[self addChild:engryBox z:10];//添加能量箭头energyPointer = [CCSprite spriteWithFile:@"ui_2p_005.png"];energyPointer.anchorPoint = ccp(0.5,0.5);energyPointer.position = ccp(winSize.width/2,10);energyPointer.rotation = minEnergyRotation;[self addChild:energyPointer z:12];//添加顶部框体CCSprite *bgExp =[CCSprite spriteWithFile:@"ui_box_01.png"];bgExp.position = ccp(winSize.width/2, winSize.height);bgExp.anchorPoint = ccp(0.5f,1.0f);[self addChild:bgExp z:101];//添加底框CCSprite *bgNum =[CCSprite spriteWithFile:@"ui_box_02.png"];bgNum.position = ccp(bgNum.contentSize.width/2, 0);bgNum.anchorPoint = ccp(0.5f,0);[self addChild:bgNum z:101];//添加武器cannnon = [CCCannon spriteWithSpriteFrameName: [NSStringstringWithFormat:@"actor_cannon1_%i1.png",1]];cannnon.cannonLevel = 1;cannonLevel = 1;cannnon.anchorPoint = ccp(0.5f,0.5f);cannnon.position = ccp(winSize.width/2,30);cannnon.scale = cannon_scale;cannnon.cannonType = nomal;[cannonSheet addChild:cannnon];//添加“+”,“-”按钮(待改)[CCMenuItemFont setFontSize:32];[CCMenuItemFont setFontName:@"Arial"];CCMenuItem * addItem = [CCMenuItemFont itemFromString: @"+"target:self elector:@selector(addCannonLeave)];//addItem.scale = 1.5;CCMenu * addMenu = [CCMenu menuWithItems:addItem,nil];addMenu.position = ccp(winSize.width*0.5+30, 10);[addMenu alignItemsVertically];[self addChild:addMenu z:102 ];CCMenuItem * reduceItem = [CCMenuItemFont itemFromString: @"-"target:selfselector:@selector(reduceCannonLeave)];CCMenu * reduceMenu = [CCMenu menuWithItems:reduceItem,nil];reduceMenu.position = ccp(winSize.width*0.5-30, 10);[reduceMenu alignItemsVertically];[self addChild:reduceMenu z:102];//初始化金币数gold = [[UIRollNumber alloc]init];[gold setNumber:originGold];[gold setPosition:ccp(168, 10)];[self addChild:gold z:102];}-(void)addCannonLeave{CGSize winSize = [[CCDirector sharedDirector] winSize];cannonLevel++;If(cannonLevel == 8)cannonLevel = 1;//remove cannonCCScaleTo * narrow = [CCScaleT o actionWithDuration:0.1f scale:0.1];CCCallFuncO * removeCannon = [CCCallFuncO actionWithTarget:self selector:@selector(removeCannon:) object:cannnon];CCSequence *bowDismissSequence = [CCSequence actions:narrow,removeCannon,nil];[cannnon runAction:bowDismissSequence];//add a new cannoncannnon = [CCCannon spriteWithSpriteFrameName:[NSStringstringWithFormat:@"actor_cannon1_%i1.png",cannonLevel]];cannnon.cannonLevel = cannonLevel;cannnon.position = ccp(winSize.width*0.5,30);cannnon.scale = 0.1f;CCDelayTime * delayTime = [CCDelayTime actionWithDuration:0.1f];CCScaleTo * appear = [CCScaleT o actionWithDuration:0.1f scale:cannon_scale];CCSequence * bowAppearSequence = [CCSequence actions:delayTime,appear,nil];[cannnon runAction:bowAppearSequence];[cannonSheet addChild:cannnon z:100];}//删除武器用于武器改变-(void)removeCannon:(id)sender{//CCLOG(@"removeBow");CCCannon * sp = sender;[cannonSheet removeChild:sp cleanup:YES];}3.触摸事件模块要点:子弹、大炮的跟随转向,子弹射出速度设置,越界判定(移动出画面)-(void) setAngle:(CGPoint)point sprite:(CCSprite *)sp{//CCLOG(@"setAngle");//设置“旋转角度”int offX = point.x - cannnon.position.x;int offY = point.y - cannnon.position.y;if (offY <= 0) {return;}float ratio = (float)offY /(float)offX; //直角三角形float angle = atanf(ratio)/M_PI*180; //三角形正切值获得角度if (angle < 0) {cannnon.rotation = -(90+angle);//设置武器旋转角度sp.rotation = cannnon.rotation;} else if (angle > 0) {cannnon.rotation = 90 - angle;sp.rotation = cannnon.rotation;}}#pragma touch menthed- (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{for (UITouch *touch in touches){CGPoint pos = [touch locationInView:touch.view];pos = [[CCDirector sharedDirector] convertToGL:pos];if (pos.y <= cannnon.position.y) {return;}if (cannnon.cannonType == laser) { //如果当前为超级武器,} else {[cannnon setDisplayFrame:[[CCSpriteFrameCache sharedSpriteFrameCache]spriteFrameByName:[NSStringstringWithFormat:@"actor_cannon1_%i2.png",cannnon.cannonLevel]]];}[self setAngle:pos sprite:nil];}}- (void)ccTouchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{for (UITouch *touch in touches) {CGPoint pos = [touch locationInView:touch.view];pos = [[CCDirector sharedDirector] convertToGL:pos];[self setAngle:pos sprite:nil];}}- (void)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{for (UITouch *touch in touches){CGSize winSize = [[CCDirector sharedDirector] winSize];CGPoint pos = [touch locationInView:touch.view];pos = [[CCDirector sharedDirector] convertToGL:pos];int offX = pos.x - cannnon.position.x;int offY = pos.y - cannnon.position.y;if (offY <= 0) {return;}if(cannnon.cannonType == laser){//用超级能量捕捉动物(待改)cannnon.cannonType = nomal; //发射完毕还原武器}else{//***************(待改)*******************[gold setNumber:([gold getNumber]-cannnon.cannonType)];//每次损耗CCBullet *bullet = [CCBullet spriteWithSpriteFrameName:[NSStringstringWithFormat:@"bullet0%i.png",cannnon.cannonLevel]]; //添加子弹bullet.position = cannnon.position;bullet.isHit = NO;[self setAngle:pos sprite:bullet];// Determine where we wish to shoot the projectile toint realY = winSize.height + bullet.contentSize.height*0.5;float ratio = (float) offX / (float) offY;int realX = (realY - cannnon.position.y)* ratio + cannnon.position.x;CGPoint realDest = ccp(realX, realY);// 子弹会于一个恒定的速率按照射击方向前进int offRealX = realX - cannnon.position.x;int offRealY = realY - cannnon.position.y;float length = sqrtf((offRealX*offRealX)+(offRealY*offRealY));//一旦我们有了距离,我们只是除以速度,以获得所需的时间。
2018收获季节(捕鱼达人)方案
•
6、意志坚强的人能把世界放在手中像 泥块一 样任意 揉捏。 2020年 12月16 日星期 三上午 10时38 分33秒 10:38:3 320.12. 16
•
7、最具挑战性的挑战莫过于提升自我 。。20 20年12 月上午 10时38 分20.1 2.1610: 38Dece mber 16, 2020
420条
几支捕鱼队在经过所有的捕鱼期后,要确保每个鱼塘 捕上来鱼的总数量在420条以上(包括420条),才 能达到渔业公司的要求,兑现当初与渔业公司的承诺。 如最终补不到420条,则全体失败。
02 体验活动背景
➢ 由于湖面面积有限,因此湖里鱼的数量是有限的,当雨水丰富的时候,湖里鱼的上限数量为100条,但由于去年冬天干旱,在第一次捕 鱼时湖里鱼的数量有一定的减少,没有达到实际的饱和状态100条(具体数量不详)。 ➢几家捕鱼队每经过一轮捕鱼,湖里鱼的数量会发生变化,当每一轮(一周时间)捕鱼后: A、如果湖里的鱼多于50条(包括50条),则在下一轮捕鱼时湖里的鱼会自动衍生到100条。 B、如果湖里的鱼在10-49条(包括10、49条),则在下一轮捕鱼时湖里鱼的数量会翻倍。 C、如果湖里鱼的数量小于10条(0-9条),则在下一轮捕鱼时湖里鱼的数量会变为20条。 在这种条件的约束下,几支捕鱼队会进行跨部门的沟通与合作,前期会开放沟通时间,考验团队沟通能力,过程中每轮捕鱼约进行5分钟 左右时间,体验时间➕前期讲解时间约为90分钟,回顾复盘时间约为90分钟。总时间180分钟,3小时
04 场地要求
室内,岛屿式桌椅摆放,按人数分组,每组5-6人。
05 主要分享内容
跨部门沟通
跨部门沟通的四把钥匙。
与现实的关系
本活动中的哪些体验感受能够带回工作 生活中,准备怎么样帮助工作。
《捕鱼游戏》教案
5
中
1.慢走抖腿。
2.原地坐下拍、揉腿,并播放音乐。
三、课堂总结
四、收还器材
五、宣布下课
1.教师整队(组织见图1)。
2.教师播放音乐,带领学生做放松练习。
3.课堂总结。
4.安排学生收还器材。
5.师生再见。
1.学生集合。
2.身心放松,跟教师一起做放松活动。
3.静听教师总结。
1.教师组织学生站在规定区域内(篮球场、排球场或15×15正方形自制场地)。
2.教师给学生讲解游戏的方法和规则。
游戏规则:
(1)“小鱼”出“池塘”算被捕获。
(2)“渔网”触及“小鱼”即为捕获。
(3)“小鱼”被全部捕获,游戏结束。
3.教师担任裁判,组织学生进行游戏,游戏结束后进行总结。
教学建议:
1.游戏前留给学生适当自主活动的时间,引导他们进行移动、躲闪、转身快跑、短距离的直线跑、曲线跑、急起急停等适应性练习。
图3
2.学生听教师口令进行练习。
3.按顺序进行,结束跑后快速回到各自队伍后面。
2分钟
5分钟
1
1
小
中
基本
部分
“捕鱼”游戏
游戏方法:以规定区域内(篮球场、排球场或15×15正方形自制场地)为“池塘”,两名同学手拉手为“渔网”,剩余同学为“小鱼”,在规定区域内自由活动。被“渔网”捕获的“小鱼”随即变换角色,变成“渔网”。“渔网”越来越大,“小鱼”越来越少,直到捕获所有“小鱼”,游戏结束。
《捕鱼游戏》教案
教师:班级:人数:人课次:时间:第周
教学
内容
“捕鱼”游戏
教材
分析
体育游戏是以身体活动为基本特征的小学生喜爱的体育活动,它的内容丰富多彩,形式生动活泼,融趣味性、娱乐性、健身性和教育性于一体,符合儿童身心特点。体育游戏对于激发学生参与运动、掌握动作技能、发展体能、增进身心健康和促进社会适应能力,开发学生智力,培养良好的道德品质都有积极、重要的作用。根据小学低年级学生的身心特点和认知能力,使学生在体育游戏活动中完成各种形式的走、跑、跳、投、抛、接等动作的要求,本课的教学内容为“捕鱼”游戏。通过在游戏中体验追逃、躲闪等动作,发展学生灵敏素质和快速移动、奔跑等活动能力。
捕鱼达人实验报告
for (int i = 0; i < 9; i++) {
String filename = pre+"_0"+(i+1)+".png"; images[i] = lmagelO.read(new File(filename)); System.out.println(filename);
public void mouseEntered(MouseEvent e) { net.show=true;
}
public void mousePressed(MouseEvent e) {
for (int i = 0; i < allfish」ength; i++) {
Fish fish=allfish[i]; if(fish.catain(net.x,net.y)){ fish.catchFish();
}
index++;
image = images[index%images」ength];
if(index==100){index=0;}
try {
Thread.sleep(1000/24);
} catch (InterruptedException e) {
e.printStackTrace();
}
allfish[i] = new Fish("fish0"+(i+1)); allfish[i+9] = new Fish("fish0"+(i+1));
}
捕鱼达人
武汉理工大学华夏学院课程设计报告书课程名称:智能手机软件开发题目:捕鱼达人系名:专业班级:姓名:学号:指导教师:武汉理工大学华夏学院信息工程系课程设计任务书课程名称:智能手机软件开发课程设计指导教师:班级名称:开课系、教研室:一、课程设计目的与任务本课程的设计的目的是通过实践使同学们经历智能手机软件开发的全过程和受到一次综合训练,以便能较全面地理解、掌握和综合运用所学的智能手机开发的知识。
结合具体的开发案例捕鱼达人,理解并初步掌握智能手机开发的主要环节和步骤以及智能手机游戏开发的知识。
二、课程设计的内容与基本要求1、课程设计题目捕鱼达人2、课程设计内容要求学生根据所学的软件工程的理念,利用所学的Android 手机开发的知识,开发一个智能手机游戏捕鱼达人,并针对该手机游戏软件进行需求分析,总体设计、详细设计、编码、测试。
游戏操作鼠标移动/键盘方向键←→控制炮台射击方向,点击鼠标左键/按空格键射击撒网抓鱼,点击下方的红色+号和-号按钮/数字键1-8键/方向键↑键/滑动鼠标滑轮切换炮台游戏背景音乐设计游戏背景动画设计游戏界面设计游戏关卡设计游戏积分榜的设计三、课程设计步骤及时间进度和场地安排本课程设计将安排在第18周, 教育技术中心。
具体安排如下:第一天,系统开发平台搭建及主流开发工具安装第二天,游戏界面的设计第三天,游戏业务的设计第四天,游戏关卡的设计第五天,系统调试测试打包和验收四、课程设计考核及评分标准课程设计考核将综合考虑学生考勤和参与度,系统设计方案正确性,系统设计和开发效果以及课程设计报告书的质量。
具体评分标准如下:设置六个评分点(1)设计方案正确,具有可行性、创新性;25分(2)系统开发效果较好;25分(3)态度认真、刻苦钻研、遵守纪律;10分(4)设计报告规范、课程设计报告质量高、参考文献充分20分(5)课程设计答辩概念清晰,内容正确10分(6)课程设计期间的课堂考勤、答疑与统筹考虑。
孙跃捕鱼达人游戏项目开发最终确定
学校代码:题目:捕鱼达人游戏项目开发学生姓名:孙跃学院:理学院班级:信计12-2指导教师:侯睿二〇一五年六月二十六日内蒙古工业大学课程设计(论文)任务书课程名称:数据库应用课程设计学院:理学院班级:信计12-2学生姓名:孙跃学号: 5048 指导教师:侯睿一、题目捕鱼达人游戏项目开发三、要求(包括原始数据、技术参数、设计要求、图纸量、工作量要求等)采用SQL Server 2005建立数据库,采用界面方式或命令方式创建数据库和表。
选用一种开发环境设计界面,实现信息的插入、修改、删除、查询的基本功能。
在开发环境下,通过某种方法建立与SQL Server 2005数据库的连接。
摘要捕鱼达人游戏采用Java高级程序语言设计,游戏后台数据存储、调用,使用SQL Server 2005数据库管理系统。
捕鱼达人游戏的设计目的是是以深海为游戏场景,各种鱼儿在其中游动的姿态自然,炮弹打击粒子效果华丽,打击感强烈,很具有趣味性。
实现如用数据库存储用户名和密码,凭正确的用户名和密码登录游戏;需要有不同种类的鱼;让鱼游动起来,被炮击中时有特效(翻滚),并获得金币;炮台可以根据鼠标的位置调整方向;炮台发射时消耗金币;可以切换背景,增加趣味性等功能。
主要依靠如,,,等一些类和框架实现相关功能。
关键词:Java;SQL Server;Eclipse;数据库连接目录引言随着人们娱乐生活的不断丰富,人们对休闲游戏的需求也越来越高。
捕鱼达人是以深海为游戏场景,各种鱼儿在其中游动的姿态自然,炮弹打击粒子效果华丽,打击感强烈,很具有趣味性。
捕鱼达人游戏采用Java高级程序语言设计。
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。
Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
游戏后台数据存储、调用,使用SQL Server 2005数据库管理系统。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
捕鱼达人项目开发过程文档一、游戏资源文件image 图片:包括火炮,鱼,子弹,渔网,金币,数字,背景图片以及其它UI 图片 CCFish 类:实现鱼的曲线路线的移动与各种鱼捕捉概率的设置UINumber 类与UIRollNumber 类二、游戏基本结构确定及搭建 图1.1 依次在项目中创建如有图类完成项目结构,在总体上把握项目实现内容三、详细设计与各功能模块的实现程序编写流程1. 系统菜单场景:1) 添加初始化方法2) 添加菜单3) 添加菜单选项方法2. 游戏场景1) 添加初始化方法2) 添加纹理图集载入方法3) 添加UI 设计方法4) 添加触摸事件处理方法5) 添加自动补充鱼更新方法6) 添加碰撞检测方法3. 设置页面4. 帮助场景游戏重要模块详细实现1. 纹理图集的使用与加载要点:精灵处于界面中的层次关系,如下为纹理图集加载代码[[CCSpriteFrameCache sharedSpriteFrameCache ] addSpriteFramesWithFile :@"fish.plist"];fishSheet = [CCSpriteBatchNode batchNodeWithFile :@"fish.png"];[self addChild :fishSheet z :100];2. UI 设计的细节实现要点:各个UI 部件(精灵)的层次,位置调整以及武器的更换动作设置,下面为UI 实现代码-(void ) initUI {SysMenu(scene)GameMain(scene) Setting (layer)Help (scene)CGSize winSize = [[CCDirector sharedDirector] winSize];CCSprite * background = [CCSprite spriteWithFile:@"bj00.jpg"];background.position = ccp(winSize.width * 0.5, winSize.height * 0.5);[self addChild:background z:0];//添加能量槽CCSprite *engryBox =[CCSprite spriteWithFile:@"ui_2p_004.png"];engryBox.anchorPoint = ccp(0.5, 0.5);engryBox.position = ccp(winSize.width/2,10);[self addChild:engryBox z:10];//添加能量箭头energyPointer = [CCSprite spriteWithFile:@"ui_2p_005.png"];energyPointer.anchorPoint = ccp(0.5,0.5);energyPointer.position = ccp(winSize.width/2,10);energyPointer.rotation = minEnergyRotation;[self addChild:energyPointer z:12];//添加顶部框体CCSprite *bgExp =[CCSprite spriteWithFile:@"ui_box_01.png"];bgExp.position = ccp(winSize.width/2, winSize.height);bgExp.anchorPoint = ccp(0.5f,1.0f);[self addChild:bgExp z:101];//添加底框CCSprite *bgNum =[CCSprite spriteWithFile:@"ui_box_02.png"];bgNum.position = ccp(bgNum.contentSize.width/2, 0);bgNum.anchorPoint = ccp(0.5f,0);[self addChild:bgNum z:101];//添加武器cannnon = [CCCannon spriteWithSpriteFrameName: [NSStringstringWithFormat:@"actor_cannon1_%i1.png",1]];cannnon.cannonLevel = 1;cannonLevel = 1;cannnon.anchorPoint = ccp(0.5f,0.5f);cannnon.position = ccp(winSize.width/2,30);cannnon.scale = cannon_scale;cannnon.cannonType = nomal;[cannonSheet addChild:cannnon];//添加“+”,“-”按钮(待改)[CCMenuItemFont setFontSize:32];[CCMenuItemFont setFontName:@"Arial"];CCMenuItem * addItem = [CCMenuItemFont itemFromString: @"+"target:self elector:@selector(addCannonLeave)];//addItem.scale = 1.5;CCMenu * addMenu = [CCMenu menuWithItems:addItem,nil];addMenu.position = ccp(winSize.width*0.5+30, 10);[addMenu alignItemsVertically];[self addChild:addMenu z:102 ];CCMenuItem * reduceItem = [CCMenuItemFont itemFromString: @"-"target:selfselector:@selector(reduceCannonLeave)];CCMenu * reduceMenu = [CCMenu menuWithItems:reduceItem,nil];reduceMenu.position = ccp(winSize.width*0.5-30, 10);[reduceMenu alignItemsVertically];[self addChild:reduceMenu z:102];//初始化金币数gold = [[UIRollNumber alloc]init];[gold setNumber:originGold];[gold setPosition:ccp(168, 10)];[self addChild:gold z:102];}-(void)addCannonLeave{CGSize winSize = [[CCDirector sharedDirector] winSize];cannonLevel++;If(cannonLevel == 8)cannonLevel = 1;//remove cannonCCScaleTo * narrow = [CCScaleT o actionWithDuration:0.1f scale:0.1];CCCallFuncO * removeCannon = [CCCallFuncO actionWithTarget:self selector:@selector(removeCannon:) object:cannnon];CCSequence *bowDismissSequence = [CCSequence actions:narrow,removeCannon,nil];[cannnon runAction:bowDismissSequence];//add a new cannoncannnon = [CCCannon spriteWithSpriteFrameName:[NSStringstringWithFormat:@"actor_cannon1_%i1.png",cannonLevel]];cannnon.cannonLevel = cannonLevel;cannnon.position = ccp(winSize.width*0.5,30);cannnon.scale = 0.1f;CCDelayTime * delayTime = [CCDelayTime actionWithDuration:0.1f];CCScaleTo * appear = [CCScaleT o actionWithDuration:0.1f scale:cannon_scale];CCSequence * bowAppearSequence = [CCSequence actions:delayTime,appear,nil];[cannnon runAction:bowAppearSequence];[cannonSheet addChild:cannnon z:100];}//删除武器用于武器改变-(void)removeCannon:(id)sender{//CCLOG(@"removeBow");CCCannon * sp = sender;[cannonSheet removeChild:sp cleanup:YES];}3.触摸事件模块要点:子弹、大炮的跟随转向,子弹射出速度设置,越界判定(移动出画面)-(void) setAngle:(CGPoint)point sprite:(CCSprite *)sp{//CCLOG(@"setAngle");//设置“旋转角度”int offX = point.x - cannnon.position.x;int offY = point.y - cannnon.position.y;if (offY <= 0) {return;}float ratio = (float)offY /(float)offX; //直角三角形float angle = atanf(ratio)/M_PI*180; //三角形正切值获得角度if (angle < 0) {cannnon.rotation = -(90+angle);//设置武器旋转角度sp.rotation = cannnon.rotation;} else if (angle > 0) {cannnon.rotation = 90 - angle;sp.rotation = cannnon.rotation;}}#pragma touch menthed- (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{for (UITouch *touch in touches){CGPoint pos = [touch locationInView:touch.view];pos = [[CCDirector sharedDirector] convertToGL:pos];if (pos.y <= cannnon.position.y) {return;}if (cannnon.cannonType == laser) { //如果当前为超级武器,} else {[cannnon setDisplayFrame:[[CCSpriteFrameCache sharedSpriteFrameCache]spriteFrameByName:[NSStringstringWithFormat:@"actor_cannon1_%i2.png",cannnon.cannonLevel]]];}[self setAngle:pos sprite:nil];}}- (void)ccTouchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{for (UITouch *touch in touches) {CGPoint pos = [touch locationInView:touch.view];pos = [[CCDirector sharedDirector] convertToGL:pos];[self setAngle:pos sprite:nil];}}- (void)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{for (UITouch *touch in touches){CGSize winSize = [[CCDirector sharedDirector] winSize];CGPoint pos = [touch locationInView:touch.view];pos = [[CCDirector sharedDirector] convertToGL:pos];int offX = pos.x - cannnon.position.x;int offY = pos.y - cannnon.position.y;if (offY <= 0) {return;}if(cannnon.cannonType == laser){//用超级能量捕捉动物(待改)cannnon.cannonType = nomal; //发射完毕还原武器}else{//***************(待改)*******************[gold setNumber:([gold getNumber]-cannnon.cannonType)];//每次损耗CCBullet *bullet = [CCBullet spriteWithSpriteFrameName:[NSStringstringWithFormat:@"bullet0%i.png",cannnon.cannonLevel]]; //添加子弹bullet.position = cannnon.position;bullet.isHit = NO;[self setAngle:pos sprite:bullet];// Determine where we wish to shoot the projectile toint realY = winSize.height + bullet.contentSize.height*0.5;float ratio = (float) offX / (float) offY;int realX = (realY - cannnon.position.y)* ratio + cannnon.position.x;CGPoint realDest = ccp(realX, realY);// 子弹会于一个恒定的速率按照射击方向前进int offRealX = realX - cannnon.position.x;int offRealY = realY - cannnon.position.y;float length = sqrtf((offRealX*offRealX)+(offRealY*offRealY));//一旦我们有了距离,我们只是除以速度,以获得所需的时间。