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

跳跳狗小游戏

欢迎来到程序小院

跳跳狗

玩法:一直弹跳的狗狗,鼠标点击屏幕左右方向键进行弹跳,弹到不同物品会有不同的分数减扣,规定的时间3分钟内完成狗狗弹跳,快去跳跳狗吧^^。

开始游戏https://www.ormcc.com/play/gameStart/198

 

c823bef8125f47c1897cc9d8e2b10e6a.png

 

html

<canvas id="ef" width="100%" height="100%" style="position:absolute;left:0;top:180px;z-index:19;display:none;"></canvas>
<canvas id="game" width="100%" height="100%" style="position:absolute;left:0;top:180px;z-index:18;"></canvas>
<canvas id="bg" width="100%" height="100%" style="position:absolute;left:0;top:180px;z-index:17;"></canvas>

css

h2.title{display: block;margin: 50px auto;text-align: center;
}

js

function dot_TalkBubble() {this.reset = function(a, b, c, d, e, f, g, h, k) {this.image = a;this.text = "";this.x = f;this.y = g;this.offsetX = b;this.offsetY = c;this.w = h;this.font = k;a = d.split(" ");for (d = c = b = 0; d < a.length; d++) c = k.getTextSize(a[d]).w, b + c > this.w ? (this.text += "\n" + a[d] + " ", b = c + k.charWidths[" "]) : (this.text += a[d] + " ", b += c + k.charWidths[" "]);this.timer = this.currentIndex = 0;this.maxTimer = 1 / e;this.justFinished = this.finished = !1};this.update = function(a) {this.justFinished = !1;this.finished || (this.timer += a, this.timer >this.maxTimer && (this.timer = 0, this.currentIndex++, this.currentIndex == this.text.length && (this.justFinished = this.finished = !0)))};this.render = function(a, b, c, d) {a.drawImage(this.image, Math.floor(this.x + b - this.offsetX), Math.floor(this.y + c - this.offsetY));this.font.write(a, Math.floor(this.x + b), Math.floor(this.y + c), this.text, d, 0, this.currentIndex)}
}function dot_Math() {this.load = function() {this.m_sin = Array(1440);this.m_cos = Array(1440);for (var a = 0, b = 0; 1440 > b; b++) this.m_sin[b] = Math.sin(a * PI / 180), this.m_cos[b] = Math.cos(a * PI / 180), a += 0.25;this.msquare = Array(600);for (b = 0; b < this.msquare.length; b++) this.msquare[b] = b * b};this.sqrt = function(a) {a = Math.floor(a);a = 0 < a ? a : -a;for (var b = 0, c = this.msquare.length - 1, d = b + c >> 1; b < c - 1;) {if (this.msquare[d] > a) c = d;else if (this.msquare[d] < a) b = d;else break;d = b + c >> 1}return d};this.sin = function(a) {0 > a ? a += 360 : 360 <= a && (a -= 360);return this.m_sin[Math.floor(4 * a)]};this.cos = function(a) {0 > a ? a += 360 : 360 <= a && (a -= 360);return this.m_cos[Math.floor(4 * a)]};this.seed_w = 1234;this.seed_z = 5678;this.randomize = function() {var a = (new Date).getTime();this.seed_w = a % 32E3;this.seed_z = a % 65535};this.rand = function() {this.seed_z = 36969 * (this.seed_z & 65535) + (this.seed_z >> 16);this.seed_w = 18E3 * (this.seed_w & 65535) + (this.seed_w >> 16);return Math.abs((this.seed_z << 16) + this.seed_w)};this.random = function() {return 1 / (this.rand() % 10)};this.randomIn = function(a,b) {return 1 < b ? a + this.rand() % b : a + this.random() * b}
}
var EASE_NONE = 0,EASE_QUAD_IN = 1,EASE_QUAD_OUT = 2,EASE_QUAD_INOUT = 3,EASE_CUBE_IN = 4,EASE_CUBE_OUT = 5,EASE_CUBE_INOUT = 6,EASE_QUART_IN = 7,EASE_QUART_OUT = 8,EASE_QUART_INOUT = 9,EASE_QUINT_IN = 10,EASE_QUINT_OUT = 11,EASE_QUINT_INOUT = 12,EASE_SIN_IN = 13,EASE_SIN_OUT = 14,EASE_SIN_INOUT = 15,EASE_BOUNCE_IN = 16,EASE_BOUNCE_OUT = 17,EASE_BOUNCE_INOUT = 18,EASE_CIRC_IN = 19,EASE_CIRC_OUT = 20,EASE_CIRC_INOUT = 21,EASE_EXPO_IN = 22,EASE_EXPO_OUT = 23,EASE_EXPO_INOUT = 24,EASE_BACK_IN = 25,EASE_BACK_OUT = 26,EASE_BACK_INOUT = 27,PI = 3.1415926,PI2 =1.5707963,B1 = 0.363636363636364,B2 = 0.727272727272727,B3 = 0.545454545454545,B4 = 0.909090909090909,B5 = 0.818181818181818,B6 = 0.954545;function dot_Tween() {this.duration = this.duration_inverse = this.t = 0;this.functionId = EASE_NONE;this.targetRangeNumber = this.targetLowest = this.timer = 0;this.finished = !0;this.delta = 0;this.reset = function(a, b, c, d) {this.duration_inverse = 1 / d;this.functionId = c;this.timer = 0;this.targetLowest = a;this.targetRangeNumber = b - a;this.duration = d;this.finished = !1;this.t = 0;this.delta = this.targetLowest;this.update(0)};this.replay = function() {this.finished = !1;this.t = this.timer = 0;this.delta = this.targetLowest;this.update(0)};this.update = function(a) {if (!this.finished)if (this.timer += a, this.timer > this.duration) this.finished = !0, this.t = 1, this.delta = this.targetLowest + this.targetRangeNumber;else {a = this.t = this.timer * this.duration_inverse;switch (this.functionId) {case EASE_QUAD_IN:a *= a;break;case EASE_QUAD_OUT:a = -a * (a - 2);break;case EASE_QUAD_INOUT:a = 0.5 >= a ? 2 * a * a : 1 - 2 * --a * a;break;case EASE_CUBE_IN:a *= a * a;break;case EASE_CUBE_OUT:a = 1 + --a * a * a;break;case EASE_CUBE_INOUT:a = 0.5 >= a ? 4 * a * a * a : 1 + 4 * --a * a * a;break;case EASE_QUART_IN:a *= a * a * a;break;case EASE_QUART_OUT:a = 1 - (a -= 1) * a * a * a;break;case EASE_QUART_INOUT:a = 0.5 >= a ? 8 * a * a * a * a : (1 - (a = 2 * a - 2) * a * a * a) / 2 + 0.5;break;case EASE_QUINT_IN:a *= a * a * a * a;break;case EASE_QUINT_OUT:a = (a -= 1) * a * a * a * a + 1;break;case EASE_QUINT_INOUT:a = 1 > (a *= 2) ? a * a * a * a * a / 2 : ((a -= 2) * a * a * a * a + 2) / 2;break;case EASE_SIN_IN:a = -Math.cos(PI2 * a) + 1;break;case EASE_SIN_OUT:a = Math.sin(PI2 * a);break;case EASE_SIN_INOUT:a = -Math.cos(PI * a) / 2 + 0.5;break;case EASE_BOUNCE_IN:a = 1 - a;if (a < B1) {a = 1 - 7.5625 * a * a;break}if (a < B2) {a = 1 - (7.5625 * (a - B3) * (a - B3) +0.75);break}if (a < B4) {a = 1 - (7.5625 * (a - B5) * (a - B5) + 0.9375);break}a = 1 - (7.5625 * (a - B6) * (a - B6) + 0.984375);break;case EASE_BOUNCE_OUT:if (a < B1) {a *= 7.5625 * a;break}if (a < B2) {a = 7.5625 * (a - B3) * (a - B3) + 0.75;break}if (a < B4) {a = 7.5625 * (a - B5) * (a - B5) + 0.9375;break}a = 7.5625 * (a - B6) * (a - B6) + 0.984375;break;case EASE_BOUNCE_INOUT:if (0.5 > a) {a = 1 - 2 * a;if (a < B1) {a = (1 - 7.5625 * a * a) / 2;break}if (a < B2) {a = (1 - (7.5625 * (a - B3) * (a - B3) + 0.75)) / 2;break}if (a < B4) {a = (1 - (7.5625 * (a - B5) * (a - B5) + 0.9375)) / 2;break}a = (1 - (7.5625 * (a - B6) * (a - B6) + 0.984375)) / 2;break}a =2 * a - 1;if (a < B1) {a = 7.5625 * a * a / 2 + 0.5;break}if (a < B2) {a = (7.5625 * (a - B3) * (a - B3) + 0.75) / 2 + 0.5;break}if (a < B4) {a = (7.5625 * (a - B5) * (a - B5) + 0.9375) / 2 + 0.5;break}a = (7.5625 * (a - B6) * (a - B6) + 0.984375) / 2 + 0.5;break;case EASE_CIRC_IN:a = -(Math.sqrt(1 - a * a) - 1);break;case EASE_CIRC_OUT:a = Math.sqrt(1 - (a - 1) * (a - 1));break;case EASE_CIRC_INOUT:a = 0.5 >= a ? (Math.sqrt(1 - 4 * a * a) - 1) / -2 : (Math.sqrt(1 - (2 * a - 2) * (2 * a - 2)) + 1) / 2;break;case EASE_EXPO_IN:a = Math.pow(2, 10 * (a - 1));break;case EASE_EXPO_OUT:a = -Math.pow(2, -10 * a) + 1;break;case EASE_EXPO_INOUT:a =0.5 > a ? Math.pow(2, 10 * (2 * a - 1)) / 2 : (-Math.pow(2, -10 * (2 * a - 1)) + 2) / 2;break;case EASE_BACK_IN:a = a * a * (2.70158 * a - 1.70158);break;case EASE_BACK_OUT:a = 1 - --a * a * (-2.70158 * a - 1.70158);break;case EASE_BACK_INOUT:a *= 2;if (1 > a) {a = a * a * (2.70158 * a - 1.70158) / 2;break}a--;a = (1 - --a * a * (-2.70158 * a - 1.70158)) / 2 + 0.5}this.t = a;this.delta = this.targetLowest + this.targetRangeNumber * this.t}}
}

源码https://www.ormcc.com/

需要源码请关注添加好友哦^ ^

转载:欢迎来到本站,转载请注明文章出处https://ormcc.com/

 

33945bc54df90d6d5d0bdb742bc5f071.gif

 

相关文章:

跳跳狗小游戏

欢迎来到程序小院 跳跳狗 玩法&#xff1a;一直弹跳的狗狗&#xff0c;鼠标点击屏幕左右方向键进行弹跳&#xff0c;弹到不同物品会有不同的分数减扣&#xff0c;规定的时间3分钟内完成狗狗弹跳&#xff0c;快去跳跳狗吧^^。开始游戏https://www.ormcc.com/play/gameStart/198…...

CoDeSys系列-4、基于Ubuntu的codesys运行时扩展包搭建Profinet主从环境

CoDeSys系列-4、基于Ubuntu的codesys运行时扩展包搭建Profinet主从环境 文章目录 CoDeSys系列-4、基于Ubuntu的codesys运行时扩展包搭建Profinet主从环境一、前言二、资料收集三、Ubuntu18.04从安装到更换实时内核1、下载安装Ubuntu18.042、下载安装实时内核&#xff0c;解决编…...

shell_70.Linux调整谦让度

调整谦让度 1.nice 命令 (1)nice 命令允许在启动命令时设置其调度优先级。要想让命令以更低的优先级运行&#xff0c;只需用nice 命令的-n 选项指定新的优先级即可&#xff1a; $ nice -n 10 ./jobcontrol.sh > jobcontrol.out & [2] 16462 $ $ ps -p 16462 -o pid,…...

【jvm】虚拟机栈

目录 一、背景二、栈与堆三、声明周期四、作用五、特点&#xff08;优点&#xff09;六、可能出现的异常七、设置栈内存大小八、栈的存储单位九、栈运行原理十、栈帧的内部结构10.1 说明10.2 局部变量表10.3 操作数栈10.4 动态链接10.5 方法返回地址10.6 一些附加信息 十一、代…...

Flink SQL Over 聚合详解

Over 聚合定义&#xff08;⽀持 Batch\Streaming&#xff09;&#xff1a;**特殊的滑动窗⼝聚合函数&#xff0c;拿 Over 聚合 与 窗⼝聚合 做对⽐。 窗⼝聚合&#xff1a;不在 group by 中的字段&#xff0c;不能直接在 select 中拿到 Over 聚合&#xff1a;能够保留原始字段…...

【鸿蒙软件开发】ArkUI之容器组件Counter(计数器组件)、Flex(弹性布局)

文章目录 前言一、Counter1.1 子组件1.2 接口1.3 属性1.4 事件 1.5 示例代码二、Flex弹性布局到底是什么意思&#xff1f; 2.1 权限列表2.2 子组件2.3 接口参数 2.4 示例代码示例代码1示例代码2 总结 前言 Counter容器组件&#xff1a;计数器组件&#xff0c;提供相应的增加或…...

PyTorch入门学习(十一):神经网络-线性层及其他层介绍

目录 一、简介 二、PyTorch 中的线性层 三、示例&#xff1a;使用线性层构建神经网络 四、常见的其他层 一、简介 神经网络是由多个层组成的&#xff0c;每一层都包含了一组权重和一个激活函数。每层的作用是将输入数据进行变换&#xff0c;从而最终生成输出。线性层是神经…...

农业水土环境与面源污染建模及对农业措施响应

目录 ​专题一 农业水土环境建模概述 专题二 ArcGIS入门 专题三 农业水土环境建模流程 专题四 DEM数据制备流程 专题五 土地利用数据制备流程 专题六 土壤数据制备流程 专题七 气象数据制备流程 专题八 农业措施数据制备流程 专题九 参数率定与结果验证 专题十 模型结…...

回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测(多指标、多图)

回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测&#xff08;多指标、多图&#xff09; 目录 回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测&#xff08;多指标、多图&#xff09;效果一览基本介绍程序设计参考资料 效果一览…...

扫地机器人遇瓶颈?科沃斯、石头科技“突围”

曾经&#xff0c;扫地机器人行业也曾有过高光时刻&#xff0c;而如今&#xff0c;扫地机器人已然告别高增长阶段&#xff0c;增速开始放缓。据中怡康零售推总数据显示&#xff0c;2023年上半年&#xff0c;中国扫地机器人市场规模为63.6亿元人民币&#xff0c;同比下滑了0.6%&a…...

基于SSM的防疫信息登记系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…...

VBA将字典按照item的值大小排序key

方法&#xff1a;利用数组交换位置 sub 字典排序() s 0 Dim arr(dic1.keys)将字典key和value存入一个数组中 For Each ke In dic1.keysarr(s) Array(ke, dic1(ke))s s 1 Next进行排序 For i LBound(arr) To UBound(arr) - 1For j i 1 To UBound(arr)If arr(i)(1) >…...

MySQL第四讲·如何正确设置主键?

你好&#xff0c;我是安然无虞。 文章目录 主键&#xff1a;如何正确设置主键&#xff1f;业务字段做主键自增字段做主键手动赋值字段做主键 主键总结 主键&#xff1a;如何正确设置主键&#xff1f; 前面我们在讲解存储的时候&#xff0c;有提到过主键&#xff0c;它可以唯一…...

K8S知识点(三)

&#xff08;1&#xff09;环境搭建-环境初始化 Centos的版本是有要求的必须是7.5或以上&#xff0c;否则安装出来的集群是有问题的Node节点可能加入不到集群中来 详细步骤 1.同时连接三台服务器&#xff1a;查看一下版本 是否正确 2.主机名解析&#xff0c;方便节点之间的…...

c语言刷题(9周)(6~10)

输入10个不等的整数创建数组a[10]&#xff0c;在数组a中找是否存在整数t。若存在显示找到了及下标位置&#xff0c;若不存在显示error。 题干输入10个不等的整数创建数组a[10]&#xff0c;在数组a中找是否存在整数t。若存在显示找到了及下标位置&#xff0c;若不存在显示error…...

SpringBoot集成-阿里云对象存储OSS

文章目录 阿里云 OSS 介绍准备工作SpringBoot 集成 OSS 阿里云 OSS 介绍 阿里云对象存储 OSS &#xff08;Object Storage Service&#xff09;&#xff0c;是一款海量、安全、低成本、高可靠的云存储服务。使用 OSS&#xff0c;你可以通过网络随时存储和调用包括文本、图片、…...

fastapi-Headers和Cookies

在FastAPI中&#xff0c;Headers是一个特殊的类型&#xff0c;用于处理HTTP请求头&#xff08;Headers&#xff09;。Headers允许你接收、访问和修改HTTP请求中的头部信息。 使用Headers&#xff0c;你可以在FastAPI的路由视图中将请求头作为参数接收&#xff0c;并对它们进行…...

云计算的思想、突破、产业实践

文章目录 &#x1f4d5;我是廖志伟&#xff0c;一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作者、产品软文创造者、技术文章评审老师、问卷调查设计师、个人社区创始人、开源项目贡献者。&#x1f30e;跑过十五…...

【漏洞复现】Apache_HTTP_2.4.49_路径穿越漏洞(CVE-2021-41773)

感谢互联网提供分享知识与智慧&#xff0c;在法治的社会里&#xff0c;请遵守有关法律法规 文章目录 1.1、漏洞描述1.2、漏洞等级1.3、影响版本1.4、漏洞复现1、基础环境2、漏洞验证方式一 curl方式二 bp抓包 说明内容漏洞编号CVE-2021-41773漏洞名称Apache HTTP 路径穿越漏洞漏…...

AD9371 官方例程 NO-OS 主函数 headless 梳理

AD9371 系列快速入口 AD9371ZCU102 移植到 ZCU106 &#xff1a; AD9371 官方例程构建及单音信号收发 ad9371_tx_jesd -->util_ad9371_xcvr接口映射&#xff1a; AD9371 官方例程之 tx_jesd 与 xcvr接口映射 AD9371 官方例程 时钟间的关系与生成 &#xff1a; AD9371 官方…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

基于FPGA的PID算法学习———实现PID比例控制算法

基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容&#xff1a;参考网站&#xff1a; PID算法控制 PID即&#xff1a;Proportional&#xff08;比例&#xff09;、Integral&#xff08;积分&…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器

——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的​​一体化测试平台​​&#xff0c;覆盖应用全生命周期测试需求&#xff0c;主要提供五大核心能力&#xff1a; ​​测试类型​​​​检测目标​​​​关键指标​​功能体验基…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时&#xff0c;与数据库的交互无疑是核心环节。虽然传统的数据库操作方式&#xff08;如直接编写SQL语句与psycopg2交互&#xff09;赋予了我们精细的控制权&#xff0c;但在面对日益复杂的业务逻辑和快速迭代的需求时&#xff0c;这种方式的开发效率和可…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

【机器视觉】单目测距——运动结构恢复

ps&#xff1a;图是随便找的&#xff0c;为了凑个封面 前言 在前面对光流法进行进一步改进&#xff0c;希望将2D光流推广至3D场景流时&#xff0c;发现2D转3D过程中存在尺度歧义问题&#xff0c;需要补全摄像头拍摄图像中缺失的深度信息&#xff0c;否则解空间不收敛&#xf…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...