扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 142|回复: 0

[转载发布] 仿RMVA战斗动画(全体动画依次播放)

[复制链接]
累计送礼:
0 个
累计收礼:
0 个
  • TA的每日心情
    开心
    昨天 18:01
  • 签到天数: 114 天

    连续签到: 4 天

    [LV.6]常住居民II

    2338

    主题

    403

    回帖

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    6
    卡币
    10632
    OK点
    16
    推广点
    0
    同能卷
    0
    积分
    13401

    灌水之王

    发表于 2024-4-19 21:41:25 | 显示全部楼层 |阅读模式
    根据XP提问区问题(關於戰鬥動畫)制作
    1. #==============================================================================# ■ [Ntec]RMVA_Style_Battle_Animation v1.0#------------------------------------------------------------------------------#   仿RMVA战斗动画(全体动画依次播放)#-------------------------------------------------------------------------------#    脚本作者: 各种压力的猫君#    RGSS版本: RGSS (Rpg Maker XP)#-------------------------------------------------------------------------------#    更新记录:#    ◇2012-01-05 v1.0 by 各种压力的猫君#    └初版;#-------------------------------------------------------------------------------#    插入位置:#      Scene_Battle 4 之下。#    使用方法:#      插入脚本到正确位置并在通用配置模块中配置相应设定。#    脚本说明:#      无#===============================================================================#-------------------------------------------------------------------------------# ▼ Ntec 通用配置模块#-------------------------------------------------------------------------------module Ntec  module RMVA_Style_Battle_Animation       # 动画间隔时间(帧)    # -1 等待到动画播放结束    WAIT_DURATION = 15        # 伤害文字显示方式    # 0 全体动画播放完毕后一起显示    # 1 随动画播放显示(在等待之前)    # 2 随动画播放显示(在等待之后)    POP_TEXT_STYLE = 1        # 显示动画时是否隐藏帮助窗口(界面顶端显示技能名的窗口)    # 0 一直显示    # 1 第一个伤害文字弹出之前隐藏    # 2 第一个伤害文字弹出之后隐藏    HIDE_HELP_WINDOW = 0"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓""┃      [Ntec] 自定义内容到此结束,以下内容切勿随意修改      ┃""┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛"    # 版本号    VERSION = 1.0    # 错误时操作    ON_ERROR = "exit"    # 检测运行环境    if RUBY_VERSION == "1.9.2"      print "检测到当前运行环境为RGSS3 (Rpg Maker VX Ace)\n" +            "\n本脚本暂不支持此运行环境\n" +            "\n按确定键退出"      eval Ntec::Para_Expander::ON_ERROR    end    if defined? $TEST      print "检测到当前运行环境为RGSS2 (Rpg Maker VX)\n" +            "\n本脚本暂不支持此运行环境\n" +            "\n按确定键退出"      eval Ntec::Para_Expander::ON_ERROR    end  endendclass Scene_Battle  #--------------------------------------------------------------------------  # ● 刷新画面  #--------------------------------------------------------------------------  def update_for_wait    # 基本刷新    Graphics.update    Input.update    # 系统 (计时器)、刷新画面    $game_system.update    $game_screen.update    # 计时器为 0 的情况下    if $game_system.timer_working and $game_system.timer == 0      # 中断战斗      $game_temp.battle_abort = true    end    # 刷新窗口    @help_window.update    @party_command_window.update    @actor_command_window.update    @status_window.update    @message_window.update    # 刷新活动块    @spriteset.update  end  #--------------------------------------------------------------------------  # ● abs_wait FROM Ace  #--------------------------------------------------------------------------  def abs_wait(duration)    duration.times {|i| update_for_wait }  end  #--------------------------------------------------------------------------  # ● abs_wait_short FROM Ace 改  #--------------------------------------------------------------------------  def abs_wait_short    if Ntec::RMVA_Style_Battle_Animation::WAIT_DURATION == -1      abs_wait($data_animations[@animation2_id].frame_max)    else      abs_wait(Ntec::RMVA_Style_Battle_Animation::WAIT_DURATION)    end  end  #--------------------------------------------------------------------------  # ● 刷新画面 (主回合步骤 4 : 对像方动画)  #--------------------------------------------------------------------------  def update_phase4_step4    # 对像方动画    for target in @target_battlers      # 播放动画      target.animation_id = @animation2_id      target.animation_hit = (target.damage != "Miss")      # 隐藏帮助窗口      ntec_hide_help if Ntec::RMVA_Style_Battle_Animation::HIDE_HELP_WINDOW == 1      # 等待前弹出文字      ntec_pop_damage(target) if Ntec::RMVA_Style_Battle_Animation::POP_TEXT_STYLE == 1      # 等待一小段时间      abs_wait_short unless $data_animations[target.animation_id].position == 3      # 等待后弹出文字      ntec_pop_damage(target) if Ntec::RMVA_Style_Battle_Animation::POP_TEXT_STYLE == 2    end    # 限制动画长度、最低 8 帧    @wait_count = 8    # 根据伤害文字弹出方式判断下一步骤    if Ntec::RMVA_Style_Battle_Animation::POP_TEXT_STYLE == 0      # 移至步骤 5(播放完成后一次性弹出帮助文字)      @phase4_step = 5    else      # 移至步骤 6      @phase4_step = 6    end  end  #--------------------------------------------------------------------------  # ● 弹出伤害文字  #--------------------------------------------------------------------------  def ntec_pop_damage(target)    # 弹出伤害文字    if target.damage != nil      target.damage_pop = true    end    # 隐藏帮助窗口    ntec_hide_help if Ntec::RMVA_Style_Battle_Animation::HIDE_HELP_WINDOW == 2  end  #--------------------------------------------------------------------------  # ● 隐藏帮助窗口  #--------------------------------------------------------------------------  def ntec_hide_help    # 隐藏帮助窗口    @help_window.visible = false  endend复制代码
    复制代码
    效果:

    (录像软件是Camtasia Studio 7,非常赞,推荐)
    (色彩不是录像的错……GIF最大256色你懂的……)
                本帖来自P1论坛作者各种压力的猫君,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=217860  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。

    本帖子中包含更多资源

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

    x
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2025-3-15 12:20 , Processed in 0.116009 second(s), 54 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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