Scrach游戏制作:时机的活儿~(可自改难度)(免费源码)

news2024/11/15 15:25:29

游戏演示:

这是个时机di活儿~_哔哩哔哩_bilibili


作品制作流程:

  1. 自由移动
  2. 不断切换造型
  3. 传送(碰撞检测)
  4. 火车&&棒球的旋转
  5. 增加关卡难度
  6. 游戏结束

 1. 自由移动(对猫猫编程)

  • 自由移动是让角色能够朝上下左右四个方向移动
  • 那么什么时候会朝这四个方向移动呢?——是当你按下对应的按键
  • 也就是说:当你按下右键,角色要向移动;
  •                   当你按下左键,角色要向移动;
  •                   当你按下上键,角色要向移动;
  •                   当你按下键,角色要向移动;                                        

当......发生时候:这是一个事件,所以会用到事件代码块

  • 知道如何检测事件了,那么又该如何实现移动呢?

回答:在scrach中,有让角色移动的代码块

  • 但这?只有移动10步?怎么办?还是没有方向呀!

回答:别怕,我们还有这个!(掏出来)

  • 是有面向方向了,但是这90是什么呢?

回答:其实呢,在scrach中,让角色朝一个方向移动,就是让角色面向某一角度方向进行移动。角度是可供选择的圆盘,箭头所指向的方向也就是角色的朝向

  • 所以——
  • 角度为90,角色朝右;
  • 角度为180,角色朝下;
  • 角度为-90,角色朝左;
  • 角度为0,角色朝上;

现在,我们已经解决了什么时候移动,以及朝向的问题

也就是如下的代码块:

问:那么结束对猫猫的编程了吗?

答:没有!

问:为什么呢?

答:因为当你去试着移动猫猫后就会发现——(笑)

(小朋友~你是否有很多问号~)

(为嘛?我的猫会倒立行走)

这是因为:角色一开始的时候,默认都为任意旋转,我们要让小猫只能左转和右转,就需要将旋转模式设置为”左右翻转“

然后,我们再悄咪咪地把角色放到右下角(设置初始位置),再按照喜好调节一下角色的大小,嗯嗯,非常好!

 

  • 老师,这个小绿旗是什么呢?

答:这个小绿旗呢,就像是看视频时出现的开始按钮,你一点击它,程序就会开始执行

同样的,也有对应的停止按钮

 好的,到目前为止,对猫猫的初步编程已经做完!(什么,还有下一步)

2. 不断切换造型(对猫猫编程)

  • 我们的左上角猫猫需要不断重复做动作来达到勾引右下角的猫猫过来的目的~
  • 那么这样不断地做动作,看起来就像是一个gif或者定格动画,而实际上也确实是这样的
  • 它拥有两个造型:

因为造型是可以循环播放的,所以我们只需要一直切换下个造型就能得到一个定格动画

注意:每次切换造型的中间要增加0.5秒停顿,否则造型就会切换过快,没有定格动画的感觉

这样我们就得到了一只不断切换造型的猫猫了——(也和右下角的猫猫一样,悄咪咪设置一下初始位置和大小

 

 3. 传送(碰撞检测)

再接下来是传送的部分:

  • 碰到哪些物体会触发传送的特性呢?

答:左上角猫猫,火车,and 四个棒球

  • 那我们要对这些的角色都就像编程吗?它们好多,看起来过程好复杂呀——

答:不需要,因为我们作用的对象都是同一个,所以只需要对右下角猫猫编程即可

  • 理论成立,开始实践!

我们检测有没有碰到以上的对象是从游戏开始就一直在做检测的,所以一样会用到重复执行

如果碰到了以上对象,我们就让猫猫回到它初始的位置

这里做了多个的或连接,和前面的内容大体一样

由于代码块太长了,所以这里就只展示其中一部分

 4. 火车&&棒球的旋转

看起来角色非常地多,但其实只包含两步:

  • 第一步:初始化位置
  • 第二步:让角色一直重复旋转

初始化位置,我们在这里已经不是第一次用到,就不再多做赘述

让角色一直重复旋转,即重复执行+旋转即可,非常简单

棒球1:

棒球2:

棒球3:

棒球4:

火车:

 5. 增加关卡难度

scrach中可没有和关卡有关的已经写好的代码块

  • 那要怎么办呢?

答:别担心,我们还有自定义变量代码块!(掏出来)

  • 自定义代码块要如何使用呢?

答:非常简单,第一步,新建一个变量——

答:scrach的右侧就会出现和关卡相关的代码块了

一样的,对于关卡,我们包含三个部分:

  • 第一部分:初始化
  • 第二部分:关卡变量增加
  • 第三部分:关卡难度增加

这三个部分我们细细来讲:

  • 首先是初始化:游戏一开始,关卡要为0,也就意味着要用到变量中的第一个代码块

  • 关卡变量增加,那么什么时候变量才会增加呢?
  • 在碰到左上角的猫猫时,会触发到达下一关的事件,那么答案就是碰到左上角的猫猫时,关卡变量增加

  • 关卡难度增加,那么我们是在哪里调节关卡的难度呢?
  • 答案是火车的旋转速度会加快,所以我们可以根据关卡,设置火车每次的旋转角度——

这里老师只设置了四关,有需要的同学可以自行调节游戏的难度~o( ̄▽ ̄)

 6. 游戏结束

  • 平常我们玩的游戏,达成游戏结束通常有两种的判断条件:
  • 可以是——
  1. 通过了最后的关卡,游戏成功
  2. 主角的血量为0,游戏失败
  • 这里呢~没有做游戏失败的部分,只做了第一种,游戏成功!

我一共设置了四关,所以——只要通过了四关,就会达成游戏成功的条件!

  • 为了能让玩家知道通关,我将关卡等于4作为判断条件
  • 如果条件成立,就让猫猫说“通关”,同时不再让猫猫移动了,也就是停止所有脚本

7.结语

  • 看到这里,恭喜你已经学会了这个游戏的全部制作!
  • 文章留下了游戏的源代码,供同学们参考,添加更多有趣的功能!
  • 链接: https://pan.baidu.com/s/1wuuDnUnjv9gMY48BxqZa6g 提取码: 8txe

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2091150.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Camtasia 2024 v2024.0.6 for Mac 中文版 屏幕录像视频录制编辑软件

TechSmith Camtasia for Mac 中文版 是一款专业的屏幕录像及视频录制编辑软件。以业界领先的清晰度重新定义了屏幕录制,将屏幕、摄像头、麦克风和系统音频捕获为独立音轨,实现终极控制和灵活性。通过拖放过渡、标注等功能,以及改进的工作流程…

WCT系列(四):BLASTSyncEngine

WCT系列(一):WindowContainerTransaction类详解 WCT系列(二):SyncTransactionQueue类详解 WCT系列(三):WindowOrganizerController WCT系列(四)&a…

图片拼图怎么做?4个方法打造具有高级感的拼图作品

被阿勒泰的日落治愈了,旅行中的每一刻都值得珍藏。 这次的阿勒泰之行,我不仅带回了一堆美好的回忆,还有手机里满满的精彩瞬间。从壮丽的山川到静谧的湖泊,从晨曦初现到夜幕降临,每一帧都是大自然的馈赠。但是&#xf…

C++ 设计模式——职责链模式

目录 C 设计模式——职责链模式1. 主要组成成分2. 逐步构建职责链模式步骤1:定义处理者接口步骤2:定义抽象处理者步骤3: 创建具体处理者步骤4: 配置职责链 3. 备忘录模式 UML 图UML 图解析 4. 单纯与非单纯的职责链模式4.1 敏感词过滤器父类4.2 具体过滤…

C++:类的定义、实例化

目录 一、类的定义 1.1 类的定义格式 1.2 访问限定符 1.3 类域 二、实例化 2.1 实例化概念 2.2 对象大小 一、类的定义 1.1 类的定义格式 • class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后面分号不能省…

设备上的实时自定义手势识别

这篇论文的标题是《On-device Real-time Custom Hand Gesture Recognition》,主要研究了如何在移动设备上实时识别自定义手势。以下是论文的主要内容概述: 摘要: 论文指出现有的手势识别系统大多限于预定义的手势集,但用户和开发…

鸿蒙(HarmonyOS)常见的三种弹窗方式

最近有一个想法,做一个针对鸿蒙官方API的工具箱项目,介绍常用的控件,以及在项目中如何使用,今天介绍Harmony中如何实现弹窗功能。 警告弹窗 警告弹窗是一个App中非常常用的弹窗,例如: 删除一条记录&…

帕金森患者在运动时有哪些类型的运动推荐?

帕金森病患者在进行运动时,可以考虑以下几种类型的运动: 有氧运动:如散步、慢跑、爬山、骑自行车、健美操、广场舞等,这些运动有助于改善心肺功能,同时也能提升肌肉力量和灵活性。 柔性运动:包括瑜伽、太极…

<Rust>egui学习之小部件(七):如何在窗口中添加颜色选择器colorpicker部件?

前言 本专栏是关于Rust的GUI库egui的部件讲解及应用实例分析,主要讲解egui的源代码、部件属性、如何应用。 环境配置 系统:windows 平台:visual studio code 语言:rust 库:egui、eframe 概述 本文是本专栏的第七篇博…

笔记整理—内核!启动!

常规启动时,各镜像都在SD卡中的各种分区中,内核放在kernel分区,从SD卡到DDR的连接处(内核不需要进行重定位,直接从链接处启动)。uboot从sd卡分区读使用movi命令。 使用fastboot指令可以查看分区情况&#x…

【赵渝强老师】MongoDB的MMAPv1存储引擎

在MongoDB 3.2版本以前,MongoDB使用MMAPv1作为默认的存储引擎。在MMAPv1的存储引擎中,包含以下的组成部分: Database 每个Database由一个.ns名称空间文件及若干个数据文件组成。数据文件从0开始编号,依次为.0、.1、.2等。数据文件…

小心GitHub账号被盗

最近有小伙伴反馈在 GitHub 上解压了不明文件之后,GitHub 账号被盗了。 事情是这样的: 有小伙伴在 GitHub 某仓库的 issue 中正常和人讨论问题,有个人光速回复了一条消息,给了一个链接,让下载一个名为 fix.rar 的文件…

C++系列-STL容器之list

STL容器之list list容器的基本结构list容器的特点list容器的优点list容器的缺点 list容器的构造函数list容器的常用接口list大小及空否list访问list迭代器相关list增删查改push and popinsert其它 list赋值操作 list容器的基本结构 list容器的内部结构是双向循环链表&#xff…

Java笔试面试题AI答之面向对象(8)

文章目录 43. 解释Java接口隔离原则和单一原则如何理解 ?单一职责原则(Single Responsibility Principle, SRP)接口隔离原则(Interface Segregation Principle, ISP) 44. Java 有没有 goto? 如果有,一般用…

004.Python爬虫系列_web请求全过程剖析(重点)

我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈 入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈 虚 拟 环 境 搭 建 :👉&…

2024年8月31日历史上的今天大事件早读

1449年8月31日 明朝“土木之变” 1907年8月31日 英、法、俄三国协约形成 1914年8月31日 “骆派”京韵大鼓的创建者骆玉笙诞生 1916年8月31日 蔡锷东渡日本养病 1935年8月31日 美国通过《中立法案》 1937年8月31日 日本华北方面军成立 1941年8月31日 晋察冀边区完成民主大…

2024最新最全:国内外人工智能AI工具网站大全!

国内外人工智能AI工具网站大全(一键收藏,应有尽有) 摘要一、AI写作工具二、AI图像工具 2.1、常用AI图像工具2.2、AI图片插画生成2.3、AI图片背景移除2.4、AI图片无损调整2.5、AI图片优化修复2.6、AI图片物体抹除 三、AI音频工具四、AI视频工…

南京观海微电子----CMOS门电路(OD门、传输门、双向模拟开关、三态门)

【 1. MOS管】 MOS管:绝缘栅型场效应管。 【 2. CMOS电路】 当NMOS管和PMOS管成对出现在电路中,且二者在工作中互补,称为CMOS管(Complementary Metal-Oxide-Semiconductor)。 电路结构 拉电流 如下图所示,输入低电平&#xff…

王者荣耀 设置游戏头像 不用微信头像

我们在微信 我 选择 设置 在里面找到 个人信息与权限 如果找不到看看有木有一个叫隐私的选项 点击 进入之后 选择授权管理 找到王者荣耀 然后点击右侧的小箭头进入 点击下面的 解除授权 确认一下 解除授权 然后重新打开王者 选择微信登录 我们这里 选择新建昵称头像 选…

线性代数之线性方程组

目录 线性方程组 1. 解的个数 齐次线性方程组: 非齐次线性方程组: 2. 齐次线性方程组的解 3. 非齐次线性方程组的解 4. 使用 Python 和 NumPy 求解线性方程组 示例代码 齐次线性方程组 非齐次线性方程组 示例结果 齐次线性方程组 非齐次线性…