查看: 2350|回复: 2

[已经解决] 如何在技能释放的同时显示特殊效果的伤害值

[复制链接]
梦石
0
星屑
1065
在线时间
235 小时
注册时间
2016-2-3
回帖
140

开拓者

发表于 2022-10-23 08:44:48 | 显示全部楼层 |阅读模式

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

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

×
想要制作一个溅射伤害的技能,于是新建了一项工程,在Game_Battler 3里的第196行之后插入了如下代码,以“十字斩”为对象进行了调试
[pre lang="ruby"]if skill.id == 57 && self.damage.is_a?(Numeric)
     #溅射伤害
      origin_damage = self.damage * 100
      origin_damage /= elements_correct(skill.element_set)
      origin_damage = (origin_damage * 0.3).round
      for enemy in $game_troop.enemies
        if self != enemy
          value = origin_damage * enemy.elements_correct(skill.element_set)
          value /= 100
          enemy.damage = value
          enemy.hp -= value
          enemy.damage_pop = true
        end
      end
    end[/pre]

执行出来的效果虽然很成功,而且也成功显示且打出了溅射伤害,但问题是这个溅射伤害是在技能的视觉效果之前显示的,会有一种违和感。
故在此虚心请教各位,如何能把这个溅射伤害的显示与技能的视觉效果同步,或者退而求其次移到技能本体效果之后呢?
究极半吊子
《重生学校》同人作:https://rpg.blue/thread-493882-1-1.html
梦石
0
星屑
2821
在线时间
585 小时
注册时间
2022-7-13
回帖
81
发表于 2022-10-23 08:55:51 | 显示全部楼层
本帖最后由 我为鱼肉 于 2022-10-23 09:25 编辑

尝试把enemy.damage_pop = true删掉
记录受到溅射伤害的这些敌人
在场景4-5我忘了是几了,有个显示对象方对画,把这些敌人的damage_pop打开就行了

评分

参与人数 1星屑 +50 赞 +1 收起 理由
RyanBern + 50 + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
1065
在线时间
235 小时
注册时间
2016-2-3
回帖
140

开拓者

 楼主| 发表于 2022-10-23 09:47:20 | 显示全部楼层
感谢指点。
如二楼楼主所言,我把原先的damage_pop部分删除了,并且Scene_Battle4中的主回合步骤5的439行之后插入了如下代码:
  1. for enemy in $game_troop.enemies
  2.       if enemy.damage.is_a?(Numeric)
  3.         if enemy.damage > 0
  4.           enemy.damage_pop = true
  5.         end
  6.       end
  7.     end
复制代码

虽然比较简单粗暴,但效果确实显著: QQ截图20221023093906.png

之后也会考虑另外的改良,总之十分感谢。
究极半吊子
《重生学校》同人作:https://rpg.blue/thread-493882-1-1.html
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部