查看: 66|回复: 0

[转载发布] 秘奥义 - 写轮眼(复制敌特技的特技) -

[复制链接]
  • TA的每日心情
    开心
    1 小时前
  • 签到天数: 37 天

    连续签到: 3 天

    [LV.5]常住居民I

    2028

    主题

    32

    回帖

    7260

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    0
    卡币
    5184
    OK点
    16
    积分
    7260
    发表于 同元一千年八月六日(秋) | 显示全部楼层 |阅读模式
    PS 如果不希望某些角色或某些敌人的技能被复制
    可以再添加一个变量 如果该 变量怎么样 直接 跳过复制处理即可

    # --------------------------------------------
    # ·秘奥义· 写轮眼(复制敌特技的特技)
    # --------------------------------------------




    # 增加一个变量 记录 最近一次敌人使用的 特技
    class Game_Enemy < Game_Battler
      attr_accessor :skill
    end
    # 增加一个变量 记录 最近一次同伴使用的 特技
    class Game_Actor < Game_Battler
      attr_accessor :skill
    end
    #==============================================================================
    # ■ Scene_Battle (分割定义 4)
    #------------------------------------------------------------------------------
    #  处理战斗画面的类。
    #==============================================================================
    class Scene_Battle
      #--------------------------------------------------------------------------
      # ● 生成特技行动结果
      #--------------------------------------------------------------------------
      def make_skill_action_result
       
        # 获取特技
        @skill = $data_skills[@active_battler.current_action.skill_id]
       
        # ------------------------------------
        # 设置id
        # ------------------------------------
       
        写轮眼 = 100 # 写轮眼特技id
        敌方使用 = true # 敌人可以使用?
        重复复制 = true # 就是复制一次技能后 “目标” skill 不清除 可以反复复制该技能
       
        if @skill.id == 写轮眼 # 特技判断
          set_target_battlers(@skill.scope) # 取得“复制”目标
          if !@target_battlers[0].skill.nil? # 判断目标最近是否使用过技能
          
            @active_battler.sp -= @skill.sp_cost # 扣除使用写轮眼消耗的sp
            
            @skill = @target_battlers[0].skill # “技能替代”
            
            @target_battlers = [] # 清空目标数组
            set_target_battlers(@skill.scope) # 设置新的效果范围
            
            if 重复复制 == false
              @target_battlers[0].skill = nil # 目标“技能清除”
            end
            @active_battler.sp -= @skill.sp_cost # 扣除sp(mp)
            @status_window.refresh # 刷新状态窗口
            @help_window.set_text(@skill.name, 1) # 刷新帮助窗口
            @animation1_id = @skill.animation1_id # 设置发动方动画
            @animation2_id = @skill.animation2_id # 设置对象方动画
            @common_event_id = @skill.common_event_id # 设置公共事件
            for target in @target_battlers # 循环目标
              target.skill_effect(@active_battler, @skill) # 特技效果
            end
            return
          end
        end
       
       
        # 如果不是强制行动
        unless @active_battler.current_action.forcing
          # 因为 SP 耗尽而无法使用的情况下
          unless @active_battler.skill_can_use?(@skill.id)
            # 清除强制行动对像的战斗者
            $game_temp.forcing_battler = nil
            # 移至步骤 1
            @phase4_step = 1
            return
          end
        end
       
        # 消耗 SP
        @active_battler.sp -= @skill.sp_cost
        # 刷新状态窗口
        @status_window.refresh
        # 在帮助窗口显示特技名
        @help_window.set_text(@skill.name, 1)
        # 设置动画 ID
        @animation1_id = @skill.animation1_id
        @animation2_id = @skill.animation2_id
        # 设置公共事件 ID
        @common_event_id = @skill.common_event_id
        # 设置对像侧战斗者
        set_target_battlers(@skill.scope)
        # 应用特技效果
        for target in @target_battlers
          target.skill_effect(@active_battler, @skill)
        end
       
       
        # ------------------------------------
        # 记录 施放的特技与施放特技的战斗者
        # ------------------------------------
        return if 敌方使用 == false and @active_battler.is_a? Game_Enemy
        @active_battler.skill = @skill
       
      end
    end


                本帖来自P1论坛作者恐惧剑刃,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=351292  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
    天天去同能,天天有童年!
    回复 论坛版权

    使用道具 举报

    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

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

    GMT+8, 2024-5-10 11:13 , Processed in 0.059026 second(s), 43 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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