Project1

标题: 关于行走图行走显示帧的问题!! [打印本页]

作者: 我心飞扬    时间: 2012-4-16 15:41
标题: 关于行走图行走显示帧的问题!!
本帖最后由 我心飞扬 于 2012-4-17 09:29 编辑


上面的图是我自己做的XP默认行走图行走时的显示帧顺序图。
简单的说,当人物向下走的时候,显示顺序是1-2-3-4-1-2-3-4……,停止站立时显示1号帧。
能不能用脚本或者其他办法,把显示顺序改为2-4-2-4……,停止站立时显示1号帧?


请前辈们多多指导呀!!!
dsu_plus_rewardpost_czw
作者: 后知后觉    时间: 2012-4-17 12:49
把 Sprite_Character 的第 58 行

  1.       sx = @character.pattern * @cw
复制代码
替换为这 3 行


  1.       pattern = @character.pattern
  2.       pattern = @character.moving? ? pattern % 2 * 2 + 1 : pattern
  3.       sx = pattern * @cw
复制代码

作者: 我心飞扬    时间: 2012-4-17 13:34
本帖最后由 我心飞扬 于 2012-4-17 13:39 编辑
后知后觉 发表于 2012-4-17 12:49
把 Sprite_Character 的第 58 行替换为这 3 行


不行,行走时还是1-2-3-4这样的顺序,不过2-3-4的时候速度非常快,行走人物的腿紧捯饬。

脚本测试.rar (192.26 KB, 下载次数: 111)
作者: lsu666666    时间: 2012-4-18 16:14
本帖最后由 lsu666666 于 2012-4-18 16:18 编辑

參考這個
http://rpg.blue/forum.php?mod=viewthread&tid=94113
或是這個站外解決方法
http://finalfrank.pixnet.net/blog/post/24819487-rgss-%E6%9B%B4%E6%8F%9B%E8%A1%8C%E8%B5%B0%E5%9C%96sprite-%E7%9A%84%E6%96%B9%E6%B3%95

RMVA也有類似可以參考的
http://temp.66rpg.com/thread-220484-1-1.html

作者: 我心飞扬    时间: 2012-4-18 16:54
lsu666666 发表于 2012-4-18 16:14
參考這個
http://rpg.blue/forum.php?mod=viewthread&tid=94113
或是這個站外解決方法

这些全不是我想要的,我是希望所有的行走图都是按照2-4-2-4这样的顺序,而不是特定事件中指定显示某张行走帧。
作者: lsu666666    时间: 2012-4-18 17:07
本帖最后由 lsu666666 于 2012-4-18 17:25 编辑

樓主的構想 是不顯示1的情況之下 只顯示2 4
既然这样的话 那可以考虑把
2 4 的图 放在 1 2的位置
因为你就只要用到 2 4 当成他的行走图  那既然这样的话  直接把 2 4的图 给 移到 1 2 的位置 不就可以在
不改动脚本 或增加脚本的情况下 可以 2 4 显示  

山不转 路转搂  @__@

我的一点点建议: 人物的行走图 基本上 就是要显是一个人物的走动
走动是一个连续动作的显示图片
停止也是显示一个动作的静止图片
以现有的系统架构 已经符合这样的需求
但是我认为楼主的方式过于局限在要指定那个图案
那直接把它们的图片给掉换一下 理论上就可行的
...而且 如果是我的话  我不会花太多时间在 行走图上  只要行走图显示流畅没问题
我只会把大部份的时间放在 系统功能  BUG测试上  最后 僅供參考~~



作者: 我心飞扬    时间: 2012-4-18 17:27
lsu666666 发表于 2012-4-18 17:07
樓主的構想 是不顯示1的情況之下 只顯示2 4
既然这样的话 那可以考虑把
2 4 的图 放在 1 2的位置

你说的方法我做过了,但是站立时的图像就是原来的2号帧了,也就是迈出一步的动作,不是直立的动作。很不好看。
作者: lsu666666    时间: 2012-4-18 17:30
本帖最后由 lsu666666 于 2012-4-18 17:33 编辑
我心飞扬 发表于 2012-4-18 17:27
你说的方法我做过了,但是站立时的图像就是原来的2号帧了,也就是迈出一步的动作,不是直立的动作。很不 ...

這一個 站立都是1  再按住方向鍵的情況下行走就是 2 3 4
Project1.rar (730.53 KB, 下载次数: 83)


作者: hys111111    时间: 2012-4-18 17:55
本帖最后由 hys111111 于 2012-4-18 17:58 编辑

话说这个我也不太了解,
不过我知道pattern是行走图位置
不在脚本Game_Character里面修改的话,无论怎么改,如果是站立住都会变回1。
8楼已经完美的实现了,沙发的答案也是正确的
作者: 我心飞扬    时间: 2012-4-18 18:05
lsu666666 发表于 2012-4-18 17:30
這一個 站立都是1  再按住方向鍵的情況下行走就是 2 3 4

你下载我在板凳上发出的“脚本测试”压缩包,把显示帧顺序图代入走一遍,你就可以发现一直按向下键走动的时候是按照1-2-3-4-1-2-3-4……这样的顺序显示行走图,当你放开向下键,人物就停留在1号帧这个图上。
我按照你的思路早就试过,用2、4分别代替1、3,那么走起来就是2-4-2-4-2-4……这样的顺序,可是停留的时候就是暗示的是原来的2号帧现在的1号帧。
另外,你的 Project1.rar 有问题,解压失败。


‘‘──我心飞扬于2012-4-18 18:06补充以下内容

沙发的答案不是完全正确,你下载我在板凳上放的“脚本测试”看看就明白了。
’’


‘‘──我心飞扬于2012-4-18 19:52补充以下内容

不知道为什么,一解压就失败。
’’


‘‘──我心飞扬于2012-4-18 20:02补充以下内容

终于下载完成了,这个和我放出的脚本测试没什么两样呀?
’’
作者: fgsdfgss    时间: 2012-4-19 15:17
提示: 作者被禁止或删除 内容自动屏蔽
作者: 我心飞扬    时间: 2012-4-19 15:33
为什么被屏蔽了?


‘‘──我心飞扬于2012-4-19 15:33补充以下内容


为什么被屏蔽了?
’’


‘‘──我心飞扬于2012-4-21 08:43补充以下内容

你说的那些我都试过了,问题是我的素材,如果按照左-正-右-正-左……这样的姿势走很不协调,反倒是左--右--左……这样走协调一些。所以我就想用脚本什么的改变RMXP的默认,不动时就是“正”,动的时候就“左-右-左……”
’’
作者: 后知后觉    时间: 2012-4-21 10:16


  1.       pattern = @character.pattern
  2.       if @character.moving?
  3.         pattern = @character.walk_anime ? pattern / 2 * 2 + 1 : 0
  4.       else
  5.         pattern = @character.step_anime ? pattern / 2 * 2 + 1 : 0
  6.       end
  7.       sx = pattern * @cw
复制代码


  1. class Game_Character
  2.   attr_reader :step_anime
  3.   attr_reader :walk_anime
  4. end
复制代码

作者: 我心飞扬    时间: 2012-4-21 10:54
本帖最后由 我心飞扬 于 2012-4-21 11:11 编辑

能详细说一下怎么用这两段脚本吗?
替代哪些原来的脚本?


‘‘──我心飞扬于2012-4-21 11:10补充以下内容

脚本测试.zip (206.38 KB, 下载次数: 17)

是这么用吗?我觉得还是不对,走路的步伐太快还老是显示1号帧,感觉就是在跳天鹅湖。
作者: 后知后觉    时间: 2012-4-21 12:23
第一段替换 Sprite_Character 的 sx = @character.pattern * @cw
第二段插 Main 前
作者: 我心飞扬    时间: 2012-4-21 15:42
后知后觉 发表于 2012-4-21 12:23
第一段替换 Sprite_Character 的 sx = @character.pattern * @cw
第二段插 Main 前

我就是这么改的,但是效果不对,行走时2、4帧显示太快,同时还是会显示1好帧。很不协调,请下载“脚本测试”压缩包看看。
作者: 后知后觉    时间: 2012-4-21 18:04
Game_Character 2 的 23 行标明移动速度越快.帧切换越快

    if @anime_count > 18 - @move_speed * 2

你可以尝试把 18 改大
作者: 我心飞扬    时间: 2012-4-21 19:15
本帖最后由 我心飞扬 于 2012-4-21 19:29 编辑
后知后觉 发表于 2012-4-21 18:04
Game_Character 2 的 23 行标明移动速度越快.帧切换越快

    if @anime_count > 18 - @move_speed * 2


这样依旧不行,按照你教的改了之后,行走显示为1-2-4-1-2-4……依旧是不协调。而且2、4两帧的速度还太快。我是想在行走过程中只显示2-4-2-4……停下来的时候显示1号帧。

现在的情形是这样的

我希望调整成这样
作者: 吉井明久    时间: 2012-4-21 22:06
Game_Character 2 里面大约在26行
有一个
  1. @pattern = (@pattern + 1) % 4
复制代码

改成
  1. @pattern = @pattern == 1 ? 3 : 1
复制代码

作者: 吉井明久    时间: 2012-4-21 22:08
本帖最后由 吉井明久 于 2012-4-21 23:09 编辑

另外请尽可能不要用论坛 PM 发来帖子地址。强制别人做事是不好的。

既然我会在这里大量回答,那么您的帖子我一般来说也看到了。之所以没有回复可能是看到答案了或者自己没想好。
作者: 我心飞扬    时间: 2012-4-22 22:01
吉井明久 发表于 2012-4-21 22:08
另外请尽可能不要用论坛 PM 发来帖子地址。强制别人做事是不好的。

既然我会在这里大量回答,那么您的帖子 ...

多谢指点,我也是急的没办法了。
再次感谢!!!
作者: 吉井明久    时间: 2012-4-23 07:33
我心飞扬 发表于 2012-4-22 23:01
多谢指点,我也是急的没办法了。
再次感谢!!!

后知后觉 发表于 2012-4-21 18:04
Game_Character 2 的 23 行标明移动速度越快.帧切换越快
    if @anime_count > 18 - @move_speed* 2

18改36
作者: 我心飞扬    时间: 2012-4-23 08:05
吉井明久 发表于 2012-4-23 07:33
后知后觉 发表于 2012-4-21 18:04
Game_Character 2 的 23 行标明移动速度越快.帧切换越快
    if @anime ...

我改了,但是结果是1号帧(正面站立帧)显示很长时间,才进入走步状态。如同飘移一样。

脚本测试.zip (206.23 KB, 下载次数: 32)
作者: 吉井明久    时间: 2012-4-23 08:22
改成这样吧
if (@anime_count > 36 - @move_speed*2) or (@anime_count > 18 - @move_speed*2 and @pattern == 0)
作者: 我心飞扬    时间: 2012-4-23 09:16
吉井明久 发表于 2012-4-23 08:22
改成这样吧
if (@anime_count > 36 - @move_speed*2) or (@anime_count > 18 - @move_speed*2 and @pattern ...

脚本测试.rar (193.04 KB, 下载次数: 35)
改过了,人物行走确实是协调了,但是配到背景下就有一种人物在漂移的感觉。
似乎是人物迈了一步,却走出了2步的距离。
作者: 吉井明久    时间: 2012-4-23 11:12
我心飞扬 发表于 2012-4-23 10:16
改过了,人物行走确实是协调了,但是配到背景下就有一种人物在漂移的感觉。
似乎是人物迈了一步,却走出 ...

那就把36改小呗。试试27




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1