请选择 进入手机版 | 继续访问电脑版

站内搜索

搜索
热搜: 活动 交友 discuz

iFAction 世界需要你的想象力!

关于现阶段在理论上实现ARPG的方法

15

主题

92

帖子

2566

积分

iF城镇

Rank: 6Rank: 6

积分
2566

摩点支持者

发表于 2019-7-22 20:08:24 | 显示全部楼层 |阅读模式
本帖最后由 shuangyou 于 2019-7-22 20:09 编辑

本来是想投脚本教学区,不过为了支持faye活动,就投在水区吧(手动斜眼

既然是正经的水,那就让我们直接切入重点,首先,人物的判定区域要改


我的处理方式大概是在人物脚下留出一个人物宽度+半个block高度的判定,效果如下


似乎有点滑稽,这是因为ifa里人物的默认z轴是200,而地图的z轴则是:
  • 背景装饰:10
  • 图块图层1:210
  • 图块图层2:220
  • 图块图层3:230
  • 前景装饰:1000


显然,所有图块的显示位置都在人物的上方

顺带一提,怪物z轴似乎也是固定的180,也就是说,人物无论如何也会显示在怪物的上方

于是,我们就需要一种方法,让z轴根据y轴来变化,至少让主角和敌人是这样,而图块在初始化的时候一次性设置好z轴,如下图



图片的位置分别是LActor和LMap,这里我并未做修改,但可以提供一个修改思路

生成图块的z轴以y轴乘以一个固定单位,比如图块的size48,然后在LActor的上下移动里将z轴的数值设置为y轴数值

然后就是动画的问题了,首先,操作设置里改成上下移动会导致人物无法面朝左边,需要做如下修改


最后便是上下移动的问题,这个就比较麻烦了,因为动画设置里并没有上下移动的位置,所以资源设置里只能选择其他来代替

控制动画播放的位置在LCharacters的setAction函数里,其他动画的编号为12-20,在LActor的上下移动里调用LCharacters的setAction就可以了

但由于默认是停止移动则切换回待机动作,所以setAction函数里的播放逻辑也需要修改,具体我就不多做赘述

还有我忽略的地方欢迎回帖提醒,也欢迎支持收藏,以及活动投票

感谢观看!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

参与人数 2金钱 +18 收起 理由
libaidan + 9 很给力!
FEI + 9 感谢支持QAQ

查看全部评分

38

主题

201

帖子

1793

积分

iF城镇

次元文明-Original Sin

Rank: 6Rank: 6

积分
1793

摩点支持者灌水达人继续加油哦!

QQ
发表于 2019-7-22 20:25:11 | 显示全部楼层
我觉得还是等官方更新好点
灾难性更新,我们修复了一些bug,并创新型的增加了另外一些bug

0

主题

3

帖子

22

积分

iF元素粒

Rank: 2

积分
22
发表于 2019-8-5 23:20:18 来自手机 | 显示全部楼层
支持大佬٩(๑ơలơ)۶♡
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系我们
QQ群:977585123
iFAction下载
Windows客户端
反馈
意见建议
iFAction

iFAction

京ICP备15053274号-1

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc.