查看: 5213|回复: 6

[已经过期] 请教集气CP条式战斗中技能冷却问题

[复制链接]
梦石
0
星屑
456
在线时间
76 小时
注册时间
2020-2-23
回帖
17
发表于 2021-3-17 13:04:45 | 显示全部楼层 |阅读模式

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

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

×
RMXP中我采用了集气CP条式的战斗,这也导致了后续技能冷却实现的问题。
请问各位网友你们是如何解决这种集气条式技能冷却问题的呢?
有没有那种冷却回合数以技能使用者本人行动次数来算,也就是每个人的回合数都单独计算那种解决方法呢?

集气CP条式战斗

集气CP条式战斗
梦石
0
星屑
17561
在线时间
4249 小时
注册时间
2013-7-18
回帖
2491
发表于 2021-3-18 09:49:59 | 显示全部楼层
本帖最后由 y967 于 2021-3-18 09:52 编辑

[pre lang="ruby"]#=====================================================================
# ■ 技能冷却
#——————————————————————————————
#  实现技能有冷却时间
#=====================================================================

=begin
版本:1.00
说明:

作用:为技能设置冷却

方法:设置 技能ID + 200号状态,该状态为技能冷却时间
    使用技能后,会获得该状态,该状态若解除,技能可用。
    解除方法自定,若设置成若干回合100%解除则与常规冷却无异。
   
注意:对于冷却一回合,到底是下一回合解除,还是隔一回合冷却
    不同战斗系统,有差异,需要测试后定着。
   
    需要为该状态命名才能使冷却生效
    设置状态定量为0 ,以免会在状态栏显示出来
   
     技能冷却对敌方也有效
可能的冲突,无。若冲突,请查看○标志的地方

=end

#==============================================================================
# ■ Scene_Battle (分割定义 4)
#------------------------------------------------------------------------------
#  处理战斗画面的类。
#==============================================================================

class Scene_Battle
  #--------------------------------------------------------------------------
  # ● 生成特技行动结果
  #--------------------------------------------------------------------------
  alias swtf_make_skill_action_result make_skill_action_result
  def make_skill_action_result
    swtf_make_skill_action_result
    if $data_states[@skill.id+200] != nil and $data_states[@skill.id+200].name != ""
      @active_battler.add_state(@skill.id + 200) #附加状态
    end
   
  end#make_skill_action_result
  
  
end#class Scene_Battle


#==============================================================================
# ■ Game_Battler (分割定义 3)
#------------------------------------------------------------------------------
#  处理战斗者的类。这个类作为 Game_Actor 类与 Game_Enemy 类的
# 超级类来使用。
#==============================================================================

class Game_Battler
  #--------------------------------------------------------------------------
  # ● 可以使用特技的判定
  #     skill_id : 特技 ID
  #--------------------------------------------------------------------------
  alias swtf_skill_can_use? skill_can_use?
  def skill_can_use?(skill_id)
    if state?(skill_id+200)
      return false
    end
    swtf_skill_can_use?(skill_id)
  end #skill_can_use?(skill_id)
  
  
  
end #class Game_Battler

#==================================================================
# 作者:九夜神尊
#==================================================================[/pre]



------用状态法就可以咯,随便你什么战斗系统,冲突应该是很小的,不对,应该是不存在的!
退隐....
回复

使用道具 举报

梦石
0
星屑
456
在线时间
76 小时
注册时间
2020-2-23
回帖
17
 楼主| 发表于 2021-3-18 10:45:01 | 显示全部楼层
y967 发表于 2021-3-18 09:49
#=====================================================================
# ■ 技能冷却
#——————— ...

这个状态法我也看过,但就是有一个问题,我的集气战斗模式和普通的齐时战斗模式在回合数判定上是不一样的,感觉我这个回合数是乱的,然后就有了技能冷却回合数这个问题了,状态法冷却要怎么解决呢?

点评

不是乱,是你的CP是各自计算的,你第一个人行动1次,敌人也行动一次,就算一回合,但是第二个人行动了三次,它也算一回合,回合计算是以敌人行动一次算的  发表于 2021-3-18 16:32
回复

使用道具 举报

梦石
0
星屑
456
在线时间
76 小时
注册时间
2020-2-23
回帖
17
 楼主| 发表于 2021-3-18 18:25:09 | 显示全部楼层
3103924369 发表于 2021-3-18 10:45
这个状态法我也看过,但就是有一个问题,我的集气战斗模式和普通的齐时战斗模式在回合数判定上是不一样的 ...

回合数计算以敌人行动次数来计算?那跟己方角色没有关系了??有点不怎么明白,能详细说说么

点评

我用过这个CP条脚本,这脚本就是这样的,除非你换其他的战斗脚本  发表于 2021-3-19 12:26
你点评我,不然我收不到,系统默认敌人行动一次,角色行动一次算一回合,如果角色行动超过一次,敌人行动一次,还是计算一回合,明白吗,我用过这个脚本  发表于 2021-3-19 12:25
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部