Scratch游戏基础:多屏大地图

2020-10-14 22:27陈新龙
电脑报 2020年38期
关键词:真题小汽车编程

陈新龙

在Scratch中我们会制作各种小游戏,但是Scratch做游戏有个地方很不方便,游戏背景地图被Scratch软件的舞台大小困住了。

要想作出RPG、横版过关等类别的游戏都需要很大(多屏)的不重复地图,类似用两张一样的星空循环显示的纵版射击游戏背景已经不能满足我们的需要了。

怎样才能突破程序的限制呢?

今天我们用Scratch来制作一个多屏地图的游戏。

我们制作大地图要清楚几个要点:以往我们在做游戏的时候,角色移动的参照物就是它自己,比如我们希望小猫角色往右移动,给小猫的程序就是向右以及移动距离。

但是在多屏地图中却不一样了,角色的参照物就是整个地图,当我们想让小猫向右移动,就需要让整个地图向左移动,这样形成一种视觉上的错觉,看起来小猫是向右移动的。其实小猫在原地没有移动,移动的是整个舞台背景。

首先我们要找到一个合适大小的游戏地图,这张地图要远大于Scratch舞台的480×360大小。你可以找一张大地图或用数张小地图拼接一张大地图。今天游戏的主题是市内开车,用到一张880×324的PNG格式街道图片。将图片作为角色插入,刚插入的地图可能会被缩小,我们要在造型的界面中用选择工具拖动图片边缘放大到合适的比例。

一、对地图编程

设置两个变量“主角X坐标”和“主角Y坐标”,这两个变量目的是为了自建虚拟坐标系,以小汽车为中心原点,其他的角色(地图)都围绕小汽车角色以虚拟坐标系为基准做移动。且地图的运动方向是和我们希望主角运动的方向相反。

注意当收到主角移动的

消息时,让地图角色移动到(-1×主角X坐标,-1×主角Y坐标)的位置,这样就可让地图反向移动了。

二、对主角小汽車编程

以向下移动为例,当按着“下方向键”希望小车向下行驶时,其实小汽车没有运动,是地图向上运动。首先要把小汽车固定在开始位置,并给两个变量赋值,这个值就是小车在地图上的虚拟坐标起点。

建立方向键与主角间对应的旋转方式以及移动距离,当按下键盘上下左右键的时候,小汽车角色的虚拟坐标值(主角X坐标,主角Y坐标)会变化。每次变化后发出广播,让地图角色知道主角位置发生了变化,地图就按照角色新的虚拟坐标值反向移动。

为了避免小汽车开出地图,还要根据地图边界设定坐标数值的变化范围,超出就停止。

现在多屏大地图的技巧已经告诉你了,要注意理解地图角色与主角的相对坐标关系以及移动方向是相反的这个要点。本次内容只是简单地给大家展现了无限地图的概念以及基础的控制方法,在此基础上我们才能完成更多有趣的游戏。

适合系统化学习的Scratch教材

由电脑报精心打造的编程教材《Scratch3.9青少年编程高分宝典》目前已经上市,在当当网、京东和淘宝各大平台均有销售,本书以麻省理工大学开发的图形化编程工具Scratch为基础编写和创作而成,是中小学计算机教学和编程入门必备的工具书。

本书内容由浅入深最终会涉及到算法与综合实战及应用程序调试,知识内容全面难度较高,适合希望全面掌握编程基础并有信心进一步学习代码编程的青少年。

在每个部分学习完成后,还有编程等级考试真题和编程竞赛真题训练,有利于学生通过真题了解自己的知识掌握水平,学完本书第一二部分就可以掌握编程等级考试1到3级的内容,学完本书就可以掌握参加蓝桥杯编程大赛的知识,真正是计算机老师和编程爱好者首选之作。

猜你喜欢
真题小汽车编程
玩转高考真题
小汽车开回家
玩游戏学编程,Blockly Games上手玩
纺织机上诞生的编程
编程屋完成数百元万天使轮融资
学编程,先画画
中考英语真题演练(一)
小汽车
高考真题训练之化学反应原理
交变电流高考真题赏析