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

Project1

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

[已经过期] 【VA】关于在地图上播放动画

[复制链接]

Lv2.观梦者

梦石
0
星屑
265
在线时间
286 小时
注册时间
2009-11-7
帖子
55

开拓者

跳转到指定楼层
1
发表于 2012-7-6 21:38:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 好记的名字 于 2012-7-7 14:44 编辑

我想做个ARPG,所以在地图上播放动画会是个不可忽视的问题。
大概有以下两个问题:第一个,就是VA自己的问题。。地图上的某事件显示动画的同时移动角色,如果画面移动(就是地图太大了,走出了画面范围的地图部分),动画会短暂的跟随角色平移
对于这个问题,貌似在哪里找到个脚本 如下,可以解决上述的问题
  1. #==============================================================================
  2. # ■ Sprite_Base
  3. #------------------------------------------------------------------------------
  4. #  添加了显示动画功能的精灵。
  5. #==============================================================================

  6. class Sprite_Base < Sprite
  7.   alias _kien_animation_pos_update_animation update_animation
  8.   #--------------------------------------------------------------------------
  9.   # ● 更新动画
  10.   #--------------------------------------------------------------------------
  11.   def update_animation
  12.     return unless animation?
  13.     set_animation_origin
  14.     _kien_animation_pos_update_animation
  15.   end
  16. end
复制代码
第二个最主要的就是 地图上的一个事件同时播放多个动画,因为做敌人状态的时候要给敌人播放循环的状态动画,如果敌人有某个状态时角色发动攻击,动画会被覆盖(XP和VX是覆盖,VA的是直接无视- -)。这个XP和VX都有脚本解决,不过貌似VA没有。所以求解决。
还有就是要和第一点的脚本兼容。。谢谢了!真心求啊 TAT

Lv2.观梦者

梦石
0
星屑
265
在线时间
286 小时
注册时间
2009-11-7
帖子
55

开拓者

2
 楼主| 发表于 2012-7-9 11:06:15 | 只看该作者
真心求不要沉啊
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
2949
在线时间
2 小时
注册时间
2012-7-7
帖子
2
3
发表于 2012-7-9 23:13:05 | 只看该作者

  1. #==============================================================================
  2. # ■ VXAce_SP1
  3. #------------------------------------------------------------------------------
  4. #  プリセットスクリプトの不具合を修正します。ユーザー定義のスクリプト素材は、
  5. # 原則としてこのセクションより下に配置してください。
  6. #==============================================================================

  7. #------------------------------------------------------------------------------
  8. # 【修正内容】
  9. #------------------------------------------------------------------------------
  10. # ●イベントコマンド[ステートの変更]にて、同じステートの付加と解除を同時に実
  11. #   行した際、二回目以降の付加が失敗する不具合を修正しました。
  12. # ●イベントコマンド[アニメーションの表示]にて、表示中のアニメーションがマッ
  13. #   プのスクロールに同期しない不具合を修正しました。
  14. # ●自動戦闘の行動が正常に選択されない不具合を修正しました。
  15. # ●装備できなくなった装備品が外れたことにより、さらに別の装備品が装備できなく
  16. #   なったとき、その装備品が増殖してしまう不具合を修正しました。
  17. # ●イベントコマンド[ピクチャの消去]を実行した後に余分な負荷がかかる不具合を
  18. #   修正しました。
  19. # ●移動ルートのオプション[移動できない場合は飛ばす]にチェックを入れた状態で
  20. #   トリガー[プレイヤーから接触]のイベントに接触すると、イベントが実行中であ
  21. #   っても起動予約がされてしまう不具合を修正しました。
  22. # ●魔法反射されたスキルに対してステート有効度が反映されない不具合を修正しまし
  23. #  た。
  24. # ●フォントのデフォルト設定にて太字または斜体を有効にしていても、ステータス画
  25. #   面を切り替えたとき等に無効な状態に戻ってしまう不具合を修正しました。
  26. #------------------------------------------------------------------------------
  27. class Game_Battler
  28.   attr_accessor :magic_reflection
  29.   #--------------------------------------------------------------------------
  30.   # ● 敵対関係の判定
  31.   #--------------------------------------------------------------------------
  32.   alias vxace_sp1_opposite? opposite?
  33.   def opposite?(battler)
  34.     vxace_sp1_opposite?(battler) || battler.magic_reflection
  35.   end
  36. end
  37. #------------------------------------------------------------------------------
  38. class Game_Actor
  39.   #--------------------------------------------------------------------------
  40.   # ● 装備できない装備品を外す
  41.   #     item_gain : 外した装備品をパーティに戻す
  42.   #--------------------------------------------------------------------------
  43.   alias vxace_sp1_release_unequippable_items release_unequippable_items
  44.   def release_unequippable_items(item_gain = true)
  45.     loop do
  46.       last_equips = equips.dup
  47.       vxace_sp1_release_unequippable_items(item_gain)
  48.       return if equips == last_equips
  49.     end
  50.   end
  51.   #--------------------------------------------------------------------------
  52.   # ● 自動戦闘時の戦闘行動を作成
  53.   #--------------------------------------------------------------------------
  54.   def make_auto_battle_actions
  55.     @actions.size.times do |i|
  56.       @actions[i] = make_action_list.max_by {|action| action.value }
  57.     end
  58.   end
  59. end
  60. #------------------------------------------------------------------------------
  61. class Game_Player
  62.   #--------------------------------------------------------------------------
  63.   # ● マップイベントの起動
  64.   #     triggers : トリガーの配列
  65.   #     normal   : プライオリティ[通常キャラと同じ]かそれ以外か
  66.   #--------------------------------------------------------------------------
  67.   alias vxace_sp1_start_map_event start_map_event
  68.   def start_map_event(x, y, triggers, normal)
  69.     return if $game_map.interpreter.running?
  70.     vxace_sp1_start_map_event(x, y, triggers, normal)
  71.   end
  72. end
  73. #------------------------------------------------------------------------------
  74. class Game_Picture
  75.   #--------------------------------------------------------------------------
  76.   # ● ピクチャの消去
  77.   #--------------------------------------------------------------------------
  78.   alias vxace_sp1_erase erase
  79.   def erase
  80.     vxace_sp1_erase
  81.     @origin = 0
  82.   end
  83. end
  84. #------------------------------------------------------------------------------
  85. class Game_Interpreter
  86.   #--------------------------------------------------------------------------
  87.   # ● ステートの変更
  88.   #--------------------------------------------------------------------------
  89.   alias vxace_sp1_command_313 command_313
  90.   def command_313
  91.     vxace_sp1_command_313
  92.     $game_party.clear_results
  93.   end
  94. end
  95. #------------------------------------------------------------------------------
  96. class Sprite_Character
  97.   #--------------------------------------------------------------------------
  98.   # ● 位置の更新
  99.   #--------------------------------------------------------------------------
  100.   alias vxace_sp1_update_position update_position
  101.   def update_position
  102.     move_animation(@character.screen_x - x, @character.screen_y - y)
  103.     vxace_sp1_update_position
  104.   end
  105.   #--------------------------------------------------------------------------
  106.   # ● アニメーションの移動
  107.   #--------------------------------------------------------------------------
  108.   def move_animation(dx, dy)
  109.     if @animation && @animation.position != 3
  110.       @ani_ox += dx
  111.       @ani_oy += dy
  112.       @ani_sprites.each do |sprite|
  113.         sprite.x += dx
  114.         sprite.y += dy
  115.       end
  116.     end
  117.   end
  118. end
  119. #------------------------------------------------------------------------------
  120. class Sprite_Picture
  121.   #--------------------------------------------------------------------------
  122.   # ● 転送元ビットマップの更新
  123.   #--------------------------------------------------------------------------
  124.   alias vxace_sp1_update_bitmap update_bitmap
  125.   def update_bitmap
  126.     if @picture.name.empty?
  127.       self.bitmap = nil
  128.     else
  129.       vxace_sp1_update_bitmap
  130.     end
  131.   end
  132. end
  133. #------------------------------------------------------------------------------
  134. class Window_Base
  135.   #--------------------------------------------------------------------------
  136.   # ● フォント設定のリセット
  137.   #--------------------------------------------------------------------------
  138.   alias vxace_sp1_reset_font_settings reset_font_settings
  139.   def reset_font_settings
  140.     vxace_sp1_reset_font_settings
  141.     contents.font.bold = Font.default_bold
  142.     contents.font.italic = Font.default_italic
  143.   end
  144. end
  145. #------------------------------------------------------------------------------
  146. class Scene_Battle
  147.   #--------------------------------------------------------------------------
  148.   # ● 魔法反射の発動
  149.   #--------------------------------------------------------------------------
  150.   alias vxace_sp1_invoke_magic_reflection invoke_magic_reflection
  151.   def invoke_magic_reflection(target, item)
  152.     @subject.magic_reflection = true
  153.     vxace_sp1_invoke_magic_reflection(target, item)
  154.     @subject.magic_reflection = false
  155.   end
  156. end


  157. アップデータを利用するときの注意
  158. アップデートを実際に行なうまえに、以下の注意点をよくお読みになり、内容をご確認いただいたうえでアップデートを行なってください。

复制代码
http://tkool.jp/support/download/rpgvxace/rpgvxace_update.html
源地址..

VA的补丁修正了动画随画面移动的问题。
我爱生命。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-30 13:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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