设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 4702|回复: 12
打印 上一主题 下一主题

[已经解决] 关于动画的判定方式求助

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2013-4-10
帖子
86
跳转到指定楼层
1
发表于 2013-5-19 15:12:45 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 嫉妒の榛子 于 2013-5-20 18:42 编辑

就是数据库中的那个动画选项卡。他的判定方式是由两部分组成。
第一部分:动画生成位置
第二部分:动画开始执行

当处于第一部分的时候,动画可以判定在地图的某个地方执行(也就是说,位置是地图X或者地图Y)
但是一旦确定这一步之后,第二步接下来的执行却是在画面X画面Y执行。

换句话说:原本我设定是这个动画在地图的某个xy处执行,如果主角移动的话,这个动画就会跟着移动,离开原本的位置。
请问要如何修改才能让他固定在地图的xy执行动画 @有爱的狮子君……
...

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
13
发表于 2013-5-21 19:43:27 | 只看该作者
本帖最后由 j433463 于 2013-5-21 19:44 编辑

日文官方的 1.01a 升级补丁在升级后没有那个 VXAce_SP1 脚本,不过升级后再用您那 RGSS301.dll 需要加脚本,不然依然会有未升级时的 Bug,关键是在 dll 本身吧?还是我升级日文补丁时缺了什么?
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
22948
在线时间
8638 小时
注册时间
2011-12-31
帖子
3367
12
发表于 2013-5-21 18:58:19 | 只看该作者
本帖最后由 tseyik 于 2013-5-21 19:03 编辑

升級後,旧的工程要手動加上修正脚本才可正常運作
新建工程則自動會加上修正脚本
http://tkool.jp/support/download/rpgvxace/rpgvxace_update.html
Ver.1.01a適応以前に作成されたプロジェクトデータについて
Ver.1.01aのアップデート内容は、スクリプトデータに関する修正となります。そのため、Ver.1.00、Ver.1.01にて作成されたプロジェクトについては、以下の方法で変更内容を追加していただく必要があります。
なお、Ver.1.01a以降のエディターで新規作成したプロジェクトについては、この操作は必要ありません。

1.    『RPGツクールVX Ace』のエディターを起動し、修正したいプロジェクトを開きます。
2.    スクリプトエディターを起動し「▼素材」のすぐ下に新しいセクション作成してください。
   新しいセクションの名前は任意でかまいません。写真では「VXAce_SP1」というセクション名にしています。
3.    新しいセクションに以下のスクリプトをコピーして貼り付けてください。
4.    Ver.1.01の“VXAce_SP1”が追加されているスクリプトの場合、このセクションに上書きしてください。
5.    これで修正は完了です。


回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
11
发表于 2013-5-20 21:19:24 | 只看该作者
本帖最后由 j433463 于 2013-5-20 21:25 编辑

不用担心,只是升级而已,升级是修改 VA 的 BUG,不会影响原来工程,原本 RGSS300.dll 的工程在升级后开启,再存档 System/ 下就会改成 RGSS301.dll 了,

如果您升级后开启旧工程出现找不到 RGSS300.dll 的错误讯息,那也很简单,把游戏目录下的 Game.ini 打开,将:
  1. Library=System\RGSS300.dll
复制代码
改成:
  1. Library=System\RGSS301.dll
复制代码
然后存档,重启 VA 就可以了。

注意一下,升级后您的游戏目录内 System/ 子目录下还是 RGSS300.dll 的话,请自行把主目录下的 RGSS301.dll 复制过去,以后新建的工程应该都会是 RGSS301.dll 了,开启的旧工程存档后应该也是变成 RGSS301.dll 的。

如果您不放心,怕升级时会改到旧工程内的东西,可以先把旧工程移到 VA 之外别的地方,等升级完了再移回去。
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2013-4-10
帖子
86
10
 楼主| 发表于 2013-5-20 18:48:13 | 只看该作者
本帖最后由 嫉妒の榛子 于 2013-5-20 18:52 编辑
j433463 发表于 2013-5-20 07:28
呃,您有升级到 VX Ace 1.01a 版本吗?它修正了事件指令显示动画时不与地图同步的BUG,
如果您还没有升级, ...


另外。。。请教个。。。简单的问题。。。在哪里选“最佳答案”来着。。。前天才学会改“已经解决”来着。。。但是这个选“最佳答案”我找了半天版面都没找到。。。{:2_264:}

补充:好吧,原来是要手动说明的吗。。。那么请版主将狮子君选为最佳答案吧~~~
爆发君就抱歉了,因为最后我是用的狮子君的方法解决的问题所以。。。。。。但还是非常感谢您的指点
...
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2013-4-10
帖子
86
9
 楼主| 发表于 2013-5-20 18:41:20 | 只看该作者
爆发的妞 发表于 2013-5-20 13:23
是要在固定格子上播放动画而不移动吗?
不知道我的理解对不对。

首先非常感谢您和狮子君的建议。

根据您的建议,我找到了Sprite_Base中“更新动画”的那部分代码,并尝试在其中添加了判断动画更新的代码。。。

Sprite_Base
更新动画部分

  1. def update_animation
  2. @ani_ox = x - ox + width / 2    #添加内容
  3. @ani_oy = y - oy + height / 2   #添加内容
  4. return unless animation?
  5. #下略
复制代码
但出现了移动时动画略有卡顿的现象。经多次测试感觉这个问题应该是因为每一帧刷新一次动画位置而不是真正移动动画所造成的,所以最后尝试着按狮子君的办法找了找脚本,最终在
http://rpg.blue/forum.php?mod=viewthread&tid=245787
处找到答案并成功解决问题,虽然暂时不清楚会不会出现其他新的问题吧。。。总之目前这个问题算是解决了,非常感谢两位的帮助
...
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
95 小时
注册时间
2013-4-10
帖子
86
8
 楼主| 发表于 2013-5-20 17:54:10 | 只看该作者
j433463 发表于 2013-5-20 07:28
呃,您有升级到 VX Ace 1.01a 版本吗?它修正了事件指令显示动画时不与地图同步的BUG,
如果您还没有升级, ...

0 0 话说,其实我有点担心,如果升级的话。。。我现在做一半的游戏用那个代入的话,会不会出现其它意想不到的问题…………应该会吧……肯定会的吧………………
...
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
142 小时
注册时间
2013-4-13
帖子
92
7
发表于 2013-5-20 13:23:06 | 只看该作者
是要在固定格子上播放动画而不移动吗?
不知道我的理解对不对。

参考脚本:
Sprite_Character的
    # 设置脚本的坐标
    self.x = @character.screen_x
    self.y = @character.screen_y
    self.z = @character.screen_z(@ch)

所以在主角里面重写
  #--------------------------------------------------------------------------
  # ● 获取画面 X 坐标
  #--------------------------------------------------------------------------
  def screen_x
    # 通过实际坐标和地图的显示位置来求得画面坐标
    return (@real_x - $game_map.display_x + 3) / 4 + 16
  end

这个方法就ok了。

从这个地方就知道理论坐标的值了。

  #--------------------------------------------------------------------------
  # ● 移动中判定
  #--------------------------------------------------------------------------
  def moving?
    # 如果在移动中理论坐标与实际坐标不同
    return (@real_x != @x * 128 or @real_y != @y * 128)
  end

@x * 128  y方向同理。

评分

参与人数 1星屑 +100 收起 理由
Sion + 100 感谢帮忙

查看全部评分

rm for android (原生开发)
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
6
发表于 2013-5-20 07:28:25 | 只看该作者
呃,您有升级到 VX Ace 1.01a 版本吗?它修正了事件指令显示动画时不与地图同步的BUG,
如果您还没有升级,我建议您找一找升级补丁打上去,或者直接取 VXAce_SP1 脚本来用。

评分

参与人数 1梦石 +1 收起 理由
Sion + 1 认可答案

查看全部评分

修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-15 22:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表