查看: 4823|回复: 12

[已经解决] 如何在战斗中循环播放动画而不影响战斗

[复制链接]
梦石
0
星屑
473
在线时间
155 小时
注册时间
2014-12-4
回帖
59
发表于 2014-12-31 15:13:55 | 显示全部楼层 |阅读模式

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

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

×
就比如boss变身之后,自身周围有一层气场,这个气场就是反复播放一个动画实现的。
梦石
0
星屑
208
在线时间
152 小时
注册时间
2011-4-22
回帖
25
发表于 2015-11-15 00:10:33 | 显示全部楼层
lqly10 发表于 2015-11-15 00:02
XP的 能否帮我修改下
=begin
待机(面向左)    :00    01    02    03      共 4 张。

不要改啦 谢谢
回复

使用道具 举报

梦石
0
星屑
208
在线时间
152 小时
注册时间
2011-4-22
回帖
25
发表于 2015-11-15 00:02:29 | 显示全部楼层
午睡的风铃 发表于 2014-12-31 21:02
说来我没看明白你需要的是啥
外站有你需要的脚本,不过气场效果是气场效果,循环动画是循环动画…… ...

XP的 能否帮我修改下
[pre lang="ruby"]=begin
待机(面向左)    :00    01    02    03      共 4 张。
待机(面向右)    :10    11    12    13      共 4 张。
移动(面向左)    :20    21    22    23      共 4 张。
移动(面向右)    :30    31    32    33      共 4 张。
攻击(面向左)    :40    41    42    43      共 4 张。
攻击(面向右)    :50    51    52    53      共 4 张.
防御(面向左)    :80                              共 1 张.
防御(面向右)    :90                              共 1 张.
挨打(面向左)    :100                            共 1 张.
挨打(面向右)    :110                            共 1 张.
死亡(面向左)    :140  141                    共 2 张.
死亡(面向右)    :150  151                    共 2 张.
=end
#==============================================================================
###############################################################################
#==============================================================================
# ★全图片单帧播放实现战斗动态效果★  
#==============================================================================
#  by -> 芯☆淡如水
#==============================================================================
###############################################################################
#==============================================================================
module RPG
  module Cache
    def self.battler(name, filename, hue)
      self.load_bitmap("Graphics/Battlers/"+name+"/", filename, hue)
    end
  end
  class Sprite < ::Sprite
    def initialize(viewport = nil)
      super(viewport)
      @_whiten_duration = 0
      @_appear_duration = 0
      @_escape_duration = 0
      @_collapse_duration = 0
      @_damage_duration = 0
      @_animation_duration = 0
      @_blink = false
      @_tip_duration = 0
    end
    #-----------------------------------------------------------
    alias add_dispose_xdrs dispose
    def dispose
      dispose_tip
      dispose_damage
      dispose_animation
      dispose_loop_animation
      super
    end
    #-----------------------------------------------------------
    def tip(txt, type)
      dispose_tip
      bitmap = Bitmap.new(240, 52)
      bitmap.font.name = (["黑体","宋体","Arial Black"])
      bitmap.font.size = 32
      bitmap.font.bold = true
      if type == 1
        bitmap.font.color.set(255, 0, 255)
        bitmap.draw_text(+1, 6+1, 220, 50, txt, 1)
        bitmap.font.color.set(0, 255, 120)
        bitmap.draw_text(0, 6, 220, 50, txt, 1)
      else
        bitmap.font.color.set(0, 255, 120)
        bitmap.draw_text(+1, 6+1, 220, 50, txt, 1)
        bitmap.font.color.set(255, 0, 255)
        bitmap.draw_text(0, 6, 220, 50, txt, 1)
      end
      @_tip_sprite = ::Sprite.new(self.viewport)
      @_tip_sprite.bitmap = bitmap
      @_tip_sprite.opacity = 0
      @_tip_sprite.ox = 120
      @_tip_sprite.oy = 20
      @_tip_sprite.x = self.x
      @_tip_sprite.y = self.y - self.oy / 2
      @_tip_sprite.z = 3000
      @_tip_duration = 60
    end
    #-----------------------------------------------------------
    def dispose_tip
      if @_tip_sprite != nil
        @_tip_sprite.bitmap.dispose
        @_tip_sprite.dispose
        @_tip_sprite = nil
        @_tip_duration = 0
      end
    end
    def update
      super
      if @_whiten_duration > 0
        @_whiten_duration -= 1
[/pre]
回复

使用道具 举报

梦石
0
星屑
1736
在线时间
761 小时
注册时间
2013-9-23
回帖
180

开拓者

发表于 2015-11-6 03:31:12 | 显示全部楼层
lqly10 发表于 2015-11-6 01:28
但我之前横版只能在待机时候显示  战斗时候显示不了  有没办法在战斗时也显示呢  你能否测试下 ...

这个脚本的功能仅是在待机时显示动画。

如果你打算高度仿真某个游戏或者完美实现某个复杂的效果,估计只能自己或请大神写脚本了。
回复

使用道具 举报

梦石
0
星屑
208
在线时间
152 小时
注册时间
2011-4-22
回帖
25
发表于 2015-11-6 01:28:48 | 显示全部楼层
午睡的风铃 发表于 2014-12-31 22:49
目测循环的只有状态动画
#============================================================================ ...

但我之前横版只能在待机时候显示  战斗时候显示不了  有没办法在战斗时也显示呢  你能否测试下
回复

使用道具 举报

梦石
0
星屑
208
在线时间
152 小时
注册时间
2011-4-22
回帖
25
发表于 2015-11-6 01:28:16 | 显示全部楼层
午睡的风铃 发表于 2014-12-31 22:49
目测循环的只有状态动画
#============================================================================ ...

但我之前横版只能在待机时候显示  战斗时候显示不了  有没办法在战斗时也显示呢  你能否测试下
回复

使用道具 举报

梦石
0
星屑
208
在线时间
152 小时
注册时间
2011-4-22
回帖
25
发表于 2015-11-5 23:14:21 | 显示全部楼层
午睡的风铃 发表于 2014-12-31 22:49
目测循环的只有状态动画
#============================================================================ ...

朋友 你这个状态动画怎么用 我用了 但没有状态动画显示的

点评

我测试过了,你之前的横战脚本可以用,但别的横战就不知道了。  发表于 2015-11-6 01:10
<Loop Animation = ID>标记在状态的备注栏里,ID是动画ID。  发表于 2015-11-6 01:09
回复

使用道具 举报

梦石
0
星屑
473
在线时间
155 小时
注册时间
2014-12-4
回帖
59
 楼主| 发表于 2015-1-5 18:42:00 | 显示全部楼层
tseyik 发表于 2015-1-5 13:47
アニメーションするエネミー(改 RGSS3仕様改変)
http://moomoo.asablo.jp/blog/2012/03/21/6383841
可設定 ...

一头雾水
回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2015-1-5 13:47:37 | 显示全部楼层
アニメーションするエネミー(改 RGSS3仕様改変)
http://moomoo.asablo.jp/blog/2012/03/21/6383841
可設定敵人用3枚画象偱環播放
範例
rgss3_enemy_animation_renew2.zip (2.97 MB, 下载次数: 91)
# メモ欄に書くゆらゆら用ワード
  MEMO = "エネミーアニメーション"
  # エネミーのメモ欄にこの文字があると、ゆらゆらと動きます。
  # 他とかぶる場合は変えて下さい。

  # アニメーション設定
  ANIME = [
          [32,"グリフォン1","グリフォン2","グリフォン3","グリフォン2",10,1,"Audio/SE/wind1",80,100],
          [33,"ラミア1","ラミア2","ラミア3","ラミア2",25,0],
          ]
  # [
  # [1,"スライム1","スライム2","スライム3","スライム2",20,2,"Audio/SE/wind1",60,100],
  # [2,"こうもり1","コウモリⅡ","こーもり三","こうもり1",10,2,"Audio/SE/wind3",50,80],
  # [3,"魔王","デーモン","魔神","魔神ちゃん",50,0],
  # ]
  #
  # このように記述します。最初と最後の[]はそのままにしておいて下さい。
  #
  # [エネミーID,"画像1","画像2","画像3","行動不能時画像",アニメーション間隔,音番号,"SEファイル",音量,ピッチ]
  #
  # 本機能は「エネミーアニメーション」とは無関係で動くため、
  # エネミーのメモにゆらゆら用ワードがなくても構いません。
  #
  # ・エネミーIDは、アニメーションさせたい敵のIDです。グループIDではありません。
  #
  # ・画像1~3は、歩行グラフィックの感覚です。
  #   1,2,3それぞれ歩行グラフィックの左、中、右のような感じです。
  #   それをエネミーグラフィックで指定します。""で囲って下さい。
  #   途中で変身する場合、変身対象も動かす場合はそれにも適用して下さい。
  #   メニューのツール→素材管理→Graphics/Battlerにある画像を指定します。
  #
  # ・行動不能時画像
  #   麻痺など行動不能に陥ったエネミーはアニメーションを停止します。
  #   その時に使うエネミー画像を指定します。これも画像1~3と同様に、
  #   メニューのツール→素材管理→Graphics/Battlerにある画像を指定します。
  #   画像1~3の中と同じ画像でも、いっこうに構いません。""で囲って下さい。
  #     ちなみにその場で止まるので、飛行エネミーが落下するなどの動作はありません。
  #
  # ・アニメーション間隔
  #     歩行グラフィックのようにアニメーションをする場合の、
  #     画像が切り替わる間隔を指定します。適当な間隔をお試しあれ。
  #
  # ・音番号
  #     アニメーションは3段階に分かれているのですが、羽ばたいている音を出したい
  #     時などは、画像1~3のどの瞬間に音を出すかを決めます。その番号です。
  #     1と指定すれば、アニメーションが画像1の時に音を出します。
  #     1→2→3→2→1→2→3と繰り返すので、2に入れるとうるさいかも知れません。
  #     音が不要な場合は1,2,3以外の数字を入れて下さい。不要でもこの項目は必須です。
  #
  # ・SEファイル
  #   羽ばたく音などを鳴らしたい時に指定します。音番号が1~3の時だけ有効です。
  #     Audio/SE/~~とフルに書いて下さい。""で囲って下さい。
  #     音番号を1~3以外に指定した場合は、SEを指定しなくても構いません。
  #
  # ・音量
  #     SEの音量です。あまり大きいとやかましいです。控えめがいいでしょう。
  #     音番号が1~3の時だけ有効です。
  #     音番号を1~3以外に指定した場合は、音量を指定しなくても構いません。
  #
  # ・ピッチ
  #     SEのピッチです。音量と合わせ、サウンドテストにて
  #     アニメーションの間隔でサウンド名を連打してみると実感が湧くと思います。
  #     音番号が1~3の時だけ有効です。
  #     音番号を1~3以外に指定した場合は、ピッチを指定しなくても構いません。
  #
  # 行動不能になったら飛んでる敵が落ちるなどという面倒な処理はしていません。
  # また、ゆらゆら動くのと併用する場合、敵が多くなればなるほど重くなります。
  #
  # 設定記述ミスによるエラーチェックはしていません。

评分

参与人数 1星屑 +200 收起 理由
VIPArcher + 200 我很赞同

查看全部评分

回复

使用道具 举报

梦石
0
星屑
473
在线时间
155 小时
注册时间
2014-12-4
回帖
59
 楼主| 发表于 2015-1-2 22:53:30 | 显示全部楼层
午睡的风铃 发表于 2014-12-31 22:49
目测循环的只有状态动画
#============================================================================ ...

谢谢,可以生效,不过有个问题就是播放其他动画的时候那个状态动画会暂时停止。

点评

不客氣,能生效就好。腳本是別人寫的,作者分享了我才有機會搬過來,而且我對腳本一竅不通,所以能做到的僅僅是在確定了你需要它後貼出來。  发表于 2015-1-3 02:35
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部