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

Project1

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

[已经解决] 能不能把敌人的血量变成指定的变量?

[复制链接]

Lv2.观梦者

梦石
0
星屑
550
在线时间
7 小时
注册时间
2011-10-6
帖子
3
跳转到指定楼层
1
发表于 2020-1-28 19:50:12 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
再做一个类似时间倒流的技能,发现只有增减没有指定
头像被屏蔽

Lv4.逐梦者 (禁止发言)

梦石
0
星屑
5706
在线时间
922 小时
注册时间
2013-8-29
帖子
1468
2
发表于 2020-1-28 20:32:10 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2604
在线时间
462 小时
注册时间
2019-6-22
帖子
74
3
发表于 2020-1-29 23:40:41 | 只看该作者
本帖最后由 kunikai 于 2020-1-30 00:04 编辑

以下是个人用于抛砖引玉的简单方法。匆忙写的,有逻辑漏洞烦请提醒我改正。

首先预留至少16个变量、8个开关。将变量8个分为一组,分别称为A组和B组。

让“回溯技能”为目标附加状态“准备回溯”;
同时让“回溯技能”执行“公共事件A”,在“公共事件A”中用A组变量分别记录下所有处于状态“准备回溯”敌人的HP,
并打开敌人所分别对应的开关防止HP被重复记录

设置另一个技能,让该技能解除“准备回溯”状态;或为“准备回溯”状态设定另外的解除条件。(由你决定何时回溯。)

将下方脚本插入默认脚本以下、Main以上,使状态“准备回溯”结束时触发“公共事件B”,
不断为B组变量分别赋予1-8号敌人的当前HP,同时不断增/减对应敌人HP使B组变量最终等于A组对应变量。
若敌人仍处于状态“准备回溯”或对应原HP变量为0,则不对其HP进行处理。
处理完成后,使被处理敌人所对应的A组变量归零、所对应的开关关闭。

为了避免某些“不可预料的BUG”,请在每场战斗开始时将“回溯技能”用到的变量全部归零、开关全部关闭。


RUBY 代码复制
  1. class Game_Battler < Game_BattlerBase
  2.   def remove_state(state_id)
  3.     if state?(state_id)
  4.       if state_id == 26 #如果解除的状态编号为26号
  5.         $game_temp.reserve_common_event(7) #执行7号公共事件
  6.       end
  7.       revive if state_id == death_state_id
  8.       erase_state(state_id)
  9.       refresh
  10.       @result.removed_states.push(state_id).uniq!
  11.     end
  12.   end
  13. end

点评

我自己看着都脑壳疼……等大佬们来提供简单的方法吧。  发表于 2020-1-30 00:03

评分

参与人数 1+1 收起 理由
寂静的夜里 + 1 认可答案

查看全部评分

一介凡人。对大多数事情都有心无力的凡人。
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 12:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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