设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2208|回复: 3
打印 上一主题 下一主题

[已经解决] 如何让复活魔法作用于非0HP状态下

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
338 小时
注册时间
2014-7-15
帖子
593
跳转到指定楼层
1
发表于 2015-1-22 00:26:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我发现复活的魔法只能作用于0hp状态,而加血的魔法如果同时想带复活功能却不能作用于正常状态,怎么改呢?

评分

参与人数 1星屑 +35 收起 理由
︶ㄣ牛排ぶ + 35 手动认可奖励

查看全部评分

Lv5.捕梦者 (版主)

梦石
1
星屑
23994
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

2
发表于 2015-1-22 12:41:00 | 只看该作者
本帖最后由 guoxiaomi 于 2015-1-22 12:44 编辑
  1.   #--------------------------------------------------------------------------
  2.   # ● 应用特技效果
  3.   #     user  : 特技的使用者 (battler)
  4.   #     skill : 特技
  5.   #--------------------------------------------------------------------------
  6.   def skill_effect(user, skill)
  7.     # 清除会心一击标志
  8.     self.critical = false
  9.     # 特技的效果范围是 HP 1 以上的己方、自己的 HP 为 0、
  10.     # 或者特技的效果范围是 HP 0 的己方、自己的 HP 为 1 以上的情况下
  11.     if ((skill.scope == 3 or skill.scope == 4) and self.hp == 0) or
  12.        ((skill.scope == 5 or skill.scope == 6) and self.hp >= 1)
  13.       # 过程结束
  14.       return false
  15.     end
复制代码
这是 Game_Battler 3 的 98~112行,这里需要改一下。
此外 Scene_Battle 4 的306~317行也要修改一下。
  1.       when 5  # 我方单体 (HP 0)
  2.         index = @active_battler.current_action.target_index
  3.         actor = $game_party.actors[index]
  4.         if actor != nil and actor.hp0?
  5.           @target_battlers.push(actor)
  6.         end
  7.       when 6  # 我方全体 (HP 0)
  8.         for actor in $game_party.actors
  9.           if actor != nil and actor.hp0?
  10.             @target_battlers.push(actor)
  11.           end
  12.         end
复制代码
具体的修改可以尝试
1. 删掉 Game_Battler 3里的 return false
2. 删掉 Scene_Battle 4里的两个 and actor.hp0?

没试过你可以试一下

点评

好像可以?我没发现有什么bug  发表于 2015-1-25 02:05
先谢谢,回去试试  发表于 2015-1-22 13:52

评分

参与人数 2星屑 +215 收起 理由
︶ㄣ牛排ぶ + 200 认可答案
飞火流萤 + 15 我很赞同

查看全部评分

熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv4.逐梦者

缘梦

梦石
0
星屑
6201
在线时间
5594 小时
注册时间
2014-2-1
帖子
1984

开拓者剧作品鉴家

3
发表于 2015-1-23 17:12:41 | 只看该作者
因为你设置的效果单位是死亡个体吧,改成和普通加血一样的己方个体不就行了

点评

我用默认工程测试了一遍确实无法实现,不过我以前的工程里可以直接实现,我看看能不能找到然后对比一下。  发表于 2015-1-23 19:46
你这样做就变成纯粹的回复技能了。因为不能以死亡个体为技能目标,所以无法实现复活效果。  发表于 2015-1-23 19:35

RPGmaker MV交流群: 377293241 提供RPGmakerMV资源共享下载和狂三本子亚丝娜本子千斗五十铃等
了解更多新RM游戏,游戏制作请加入RPGmaker支援群:113622890
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
65 小时
注册时间
2013-4-18
帖子
81
4
发表于 2015-1-23 19:29:44 | 只看该作者
guoxiaomi 发表于 2015-1-22 12:41
这是 Game_Battler 3 的 98~112行,这里需要改一下。
此外 Scene_Battle 4 的306~317行也要修改一下。具体 ...


我是把 Game_Battler 3 里那句“or ((skill.scope == 5 or skill.scope == 6) and self.hp >= 1)”
给注释掉了。
还有Scene_Battle 4 里面不仅要注释掉行动方是角色的情况下里面的两句“and actor.hp0?”
,还要注释掉行动方是敌人的情况下里面的两句“and enemy.hp0?”。否则敌人释放这类技能时同样没效果。

点评

其实是前人栽树后人乘凉,这也是在其他前辈的工程里学来的。  发表于 2015-1-24 17:27
实践出真知!  发表于 2015-1-24 10:57

评分

参与人数 1星屑 +15 收起 理由
飞火流萤 + 15 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-24 12:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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