查看: 2804|回复: 5

[已经解决] 如何做到装备特定装备后 在战斗开始时附加上指定状态

[复制链接]
梦石
0
星屑
50
在线时间
160 小时
注册时间
2012-12-2
回帖
12
发表于 2014-11-2 00:57:52 | 显示全部楼层 |阅读模式

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

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

×
如题 (我承认是我闪轨玩太多了)
如何做到装上特定装备后 在战斗开始时附加上指定状态
曾经考虑过做成被动技能
但是发现只要附加上体力值再生(OR魔力特技值)等
在一般场景中就会持续回复了 就不是我想要的
也参考过图书馆的光环类技能 但是又是全体的

闇吼者の災悪眷族

梦石
0
星屑
1366
在线时间
2881 小时
注册时间
2014-7-29
回帖
6408
发表于 2014-11-2 01:24:56 | 显示全部楼层
可以告诉你一个比较简单但是工作量比较大的思路

在敌群里设置一个0回合间隔为战斗的事件,检测玩家人物是否持有某装备,
如果是,则给他附加一个状态。

然后这个状态在战斗结束后解除。

如果你觉得太麻烦,有脚本的思路。
回复

使用道具 举报

无限の剣制

梦石
0
星屑
10450
在线时间
5019 小时
注册时间
2013-2-28
回帖
4942

开拓者贵宾

发表于 2014-11-2 01:34:10 | 显示全部楼层
本帖最后由 VIPArcher 于 2014-11-2 01:36 编辑

随手写的,未测试
  1. # 随便写的,没有详细测试过。用法是在角色|职业|装备|敌人的备注栏
  2. # 备注<被动状态:状态ID> 例如<被动状态:18> 那么就会在战斗开始前
  3. # 会为该角色附加18号状态,战斗结束时移除这个状态。同时装备2个以
  4. # 上的有被动状态的装备亦可叠加,都会附加上对应的状态。
  5. class Game_Battler < Game_BattlerBase
  6.   #--------------------------------------------------------------------------
  7.   # ● 战斗开始处理
  8.   #--------------------------------------------------------------------------
  9.   alias state_battle_start on_battle_start
  10.   def on_battle_start
  11.     state_battle_start
  12.     self.feature_objects.each {|obj|
  13.     self.add_state($1.to_i) if obj.note =~ /<被动状态:\s*(\d+)>/}
  14.   end
  15.   #--------------------------------------------------------------------------
  16.   # ● 战斗结束时的处理
  17.   #--------------------------------------------------------------------------
  18.   alias state_on_battle_end on_battle_end
  19.   def on_battle_end
  20.     state_on_battle_end
  21.     self.feature_objects.each {|obj|
  22.     self.remove_state($1.to_i) if obj.note =~ /<被动状态:\s*(\d+)>/}
  23.   end
  24. end
复制代码

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
50
在线时间
160 小时
注册时间
2012-12-2
回帖
12
 楼主| 发表于 2014-11-2 01:42:42 | 显示全部楼层
VIPArcher 发表于 2014-11-2 01:34
随手写的,未测试

感谢 没有目前测试可用 没有报错
回复

使用道具 举报

梦石
0
星屑
50
在线时间
160 小时
注册时间
2012-12-2
回帖
12
 楼主| 发表于 2014-11-2 02:36:32 | 显示全部楼层
VIPArcher 发表于 2014-11-2 01:34
随手写的,未测试

抱歉刚刚测试设置的状态都是1回合的性质没发现到  
设置的状态只要大于1回合時
当行动结束之后就会消失了
回复

使用道具 举报

梦石
0
星屑
50
在线时间
160 小时
注册时间
2012-12-2
回帖
12
 楼主| 发表于 2014-11-2 02:45:56 | 显示全部楼层
VIPArcher 发表于 2014-11-2 01:34
随手写的,未测试


抱歉 复制到这个版本了

# ● 战斗行动结束时的处理
  #--------------------------------------------------------------------------
  alias state_action_end on_action_end
  def on_action_end
    state_action_end
    self.feature_objects.each {|obj|
    self.remove_state($1.to_i) if obj.note =~ /<被动状态:\s*(\d+)>/}
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部