超级马里奥项目设计(四)

本文介绍了马里奥游戏中,马里奥与怪物交互功能的设计与实现。包括怪物的上传与造型设定,通过判断马里奥与怪物的x坐标差值来区分踩死怪物、马里奥死亡以及马里奥变小的三种情况。当马里奥吃掉太阳花变大后,通过广播机制来控制马里奥的大小变化,以及与怪物的交互逻辑。
摘要由CSDN通过智能技术生成

本篇我们讲解一下马里奥项目设计中马里奥遇到怪物时各种功能的实现。
首先在背景中先上传怪物角色,然后把怪物的造型添加进去。上一篇我们讲过通过控制水平坐标可以让怪物在一段固定的坐标范围内来回行走。
在这里插入图片描述在这里插入图片描述
马里奥遇到怪物有三种情况。第一种踩死怪物,第二种马里奥死亡,可以通过判断马里奥和怪物接触是两者x坐标的差值。需要自己去设置一个值,比如这个值为5,当两者之间x坐标的差值的绝对值小于5时,判断马里奥踩死了怪物,否者马里奥死亡,当然这个值不是随便设置的。我们设置的值肯定要小于马里奥和怪物刚接触时两者x坐标的差值,否者的话可能一触碰就会判定被踩死,这样不准确。

在这里插入图片描述
第三种马里奥变小,这种情况的前提是马里奥吃了太阳花变大了,当他第一次接触到怪物时先变到原来的大小,再接触时就死亡。如何实现吃太阳花我们后边会讲。当马里奥吃到太阳花后,需要太阳花发送一条广播,然后马里奥接收到这条广播后,重置马里奥的大小,这样就实现了马里奥变大的效果。同时怪物也会接收到马里奥变大的广播,当马里奥接触到怪物时,让怪物发送一条广播,马里奥接收到怪物的广播后重新再设置大小。
这是怪物发送的广播:
在这里插入图片描述这是吃到太阳花的代码:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值