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

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/

相关文章:
跳跳狗小游戏
欢迎来到程序小院 跳跳狗 玩法:一直弹跳的狗狗,鼠标点击屏幕左右方向键进行弹跳,弹到不同物品会有不同的分数减扣,规定的时间3分钟内完成狗狗弹跳,快去跳跳狗吧^^。开始游戏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、下载安装实时内核,解决编…...
shell_70.Linux调整谦让度
调整谦让度 1.nice 命令 (1)nice 命令允许在启动命令时设置其调度优先级。要想让命令以更低的优先级运行,只需用nice 命令的-n 选项指定新的优先级即可: $ nice -n 10 ./jobcontrol.sh > jobcontrol.out & [2] 16462 $ $ ps -p 16462 -o pid,…...
【jvm】虚拟机栈
目录 一、背景二、栈与堆三、声明周期四、作用五、特点(优点)六、可能出现的异常七、设置栈内存大小八、栈的存储单位九、栈运行原理十、栈帧的内部结构10.1 说明10.2 局部变量表10.3 操作数栈10.4 动态链接10.5 方法返回地址10.6 一些附加信息 十一、代…...
Flink SQL Over 聚合详解
Over 聚合定义(⽀持 Batch\Streaming):**特殊的滑动窗⼝聚合函数,拿 Over 聚合 与 窗⼝聚合 做对⽐。 窗⼝聚合:不在 group by 中的字段,不能直接在 select 中拿到 Over 聚合:能够保留原始字段…...
【鸿蒙软件开发】ArkUI之容器组件Counter(计数器组件)、Flex(弹性布局)
文章目录 前言一、Counter1.1 子组件1.2 接口1.3 属性1.4 事件 1.5 示例代码二、Flex弹性布局到底是什么意思? 2.1 权限列表2.2 子组件2.3 接口参数 2.4 示例代码示例代码1示例代码2 总结 前言 Counter容器组件:计数器组件,提供相应的增加或…...
PyTorch入门学习(十一):神经网络-线性层及其他层介绍
目录 一、简介 二、PyTorch 中的线性层 三、示例:使用线性层构建神经网络 四、常见的其他层 一、简介 神经网络是由多个层组成的,每一层都包含了一组权重和一个激活函数。每层的作用是将输入数据进行变换,从而最终生成输出。线性层是神经…...
农业水土环境与面源污染建模及对农业措施响应
目录 专题一 农业水土环境建模概述 专题二 ArcGIS入门 专题三 农业水土环境建模流程 专题四 DEM数据制备流程 专题五 土地利用数据制备流程 专题六 土壤数据制备流程 专题七 气象数据制备流程 专题八 农业措施数据制备流程 专题九 参数率定与结果验证 专题十 模型结…...
回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测(多指标、多图)
回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测(多指标、多图) 目录 回归预测 | Matlab实现MPA-BP海洋捕食者算法优化BP神经网络多变量回归预测(多指标、多图)效果一览基本介绍程序设计参考资料 效果一览…...
扫地机器人遇瓶颈?科沃斯、石头科技“突围”
曾经,扫地机器人行业也曾有过高光时刻,而如今,扫地机器人已然告别高增长阶段,增速开始放缓。据中怡康零售推总数据显示,2023年上半年,中国扫地机器人市场规模为63.6亿元人民币,同比下滑了0.6%&a…...
基于SSM的防疫信息登记系统设计与实现
末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…...
VBA将字典按照item的值大小排序key
方法:利用数组交换位置 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第四讲·如何正确设置主键?
你好,我是安然无虞。 文章目录 主键:如何正确设置主键?业务字段做主键自增字段做主键手动赋值字段做主键 主键总结 主键:如何正确设置主键? 前面我们在讲解存储的时候,有提到过主键,它可以唯一…...
K8S知识点(三)
(1)环境搭建-环境初始化 Centos的版本是有要求的必须是7.5或以上,否则安装出来的集群是有问题的Node节点可能加入不到集群中来 详细步骤 1.同时连接三台服务器:查看一下版本 是否正确 2.主机名解析,方便节点之间的…...
c语言刷题(9周)(6~10)
输入10个不等的整数创建数组a[10],在数组a中找是否存在整数t。若存在显示找到了及下标位置,若不存在显示error。 题干输入10个不等的整数创建数组a[10],在数组a中找是否存在整数t。若存在显示找到了及下标位置,若不存在显示error…...
SpringBoot集成-阿里云对象存储OSS
文章目录 阿里云 OSS 介绍准备工作SpringBoot 集成 OSS 阿里云 OSS 介绍 阿里云对象存储 OSS (Object Storage Service),是一款海量、安全、低成本、高可靠的云存储服务。使用 OSS,你可以通过网络随时存储和调用包括文本、图片、…...
fastapi-Headers和Cookies
在FastAPI中,Headers是一个特殊的类型,用于处理HTTP请求头(Headers)。Headers允许你接收、访问和修改HTTP请求中的头部信息。 使用Headers,你可以在FastAPI的路由视图中将请求头作为参数接收,并对它们进行…...
云计算的思想、突破、产业实践
文章目录 📕我是廖志伟,一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作者、产品软文创造者、技术文章评审老师、问卷调查设计师、个人社区创始人、开源项目贡献者。🌎跑过十五…...
【漏洞复现】Apache_HTTP_2.4.49_路径穿越漏洞(CVE-2021-41773)
感谢互联网提供分享知识与智慧,在法治的社会里,请遵守有关法律法规 文章目录 1.1、漏洞描述1.2、漏洞等级1.3、影响版本1.4、漏洞复现1、基础环境2、漏洞验证方式一 curl方式二 bp抓包 说明内容漏洞编号CVE-2021-41773漏洞名称Apache HTTP 路径穿越漏洞漏…...
AD9371 官方例程 NO-OS 主函数 headless 梳理
AD9371 系列快速入口 AD9371ZCU102 移植到 ZCU106 : AD9371 官方例程构建及单音信号收发 ad9371_tx_jesd -->util_ad9371_xcvr接口映射: AD9371 官方例程之 tx_jesd 与 xcvr接口映射 AD9371 官方例程 时钟间的关系与生成 : AD9371 官方…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
uniapp 实现腾讯云IM群文件上传下载功能
UniApp 集成腾讯云IM实现群文件上传下载功能全攻略 一、功能背景与技术选型 在团队协作场景中,群文件共享是核心需求之一。本文将介绍如何基于腾讯云IMCOS,在uniapp中实现: 群内文件上传/下载文件元数据管理下载进度追踪跨平台文件预览 二…...
