飞天小狐(GMS2)ARPG学习笔记 2

本文档详细介绍了在GMS2中优化人物状态切换的方法,通过User Event脚本实现状态管理,并探讨了Game_speed, Sprite_speed, Image_speed的区别及其在状态切换中的应用。此外,还讲解了Alarm机制,如何利用Alarm创建动态行为,如随机时间的敌人移动和停止。" 123494856,12649267,2022-2027年中国在线语言教育市场深度洞察与投资策略,"['在线教育', '语言学习', '市场分析', '投资策略', '教育技术']
摘要由CSDN通过智能技术生成

人物状态切换

在之前的新手教程中,我们是添加一个Animation End的脚本,在里面更改人物的标记变量,然后再在Step里更改人物状态,但是判断条件比较复杂,这是代码的优化问题,所以在这次学习中就优化了这种判定方式(代码真的十分精妙,比起以前面向过程的代码,真的系统了许多,无论是维护还是阅读起来都方便了许多)

对于一个obj,我们可以添加许多User Event *脚本,然后在Step中用event_user(*)来调用这些函数,这样每个User Event *脚本里有相对应的状态代码,在Step中只需要通过标志变量来选择不同的代码块即可,这个教程的代码很多时候都巧妙地把状态与数字相联系在一起,包括后面的User Event函数的标号也联系在一起,真的是给我打开了一个新的切换方式。

Game_speed,Sprite_speed,Image_speed

这几个变量一定要仔细分辨清楚,在进行人物切换的时候就出现了问题,在我由人物攻击向人物移动的状态转移的时候,当移动和攻击键同时按下去的时候,有可能一直卡在攻击状态,无法切换成移动状态,文档判定条件是image_index == 3,然后呢。。。。这个image_index并不一定是整数,因为一些原因有可能会比3稍微大些,如果是3.2这种情况的话,就会不满足这个判断条件,然后就一直卡在攻击状态,不会切换到移动状态,不过呢,我发现可以将判定改成 >=3即可,不过呢,教程上呢,用了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值