Project1

标题: 如何做出“受到攻击必定保留1点hp”的状态 [打印本页]

作者: RPG之草泥马    时间: 2012-1-13 11:50
标题: 如何做出“受到攻击必定保留1点hp”的状态
怎样才能制作出这样的状态,我的战斗系统是RTAB的.....dsu_plus_rewardpost_czw
作者: 幻耶    时间: 2012-1-13 13:30
什么意思?打不死还是一打就剩1点HP?
作者: mzr1996    时间: 2012-1-13 13:35
  1.   #--------------------------------------------------------------------------
  2.   # ● 战斗不能判定
  3.   #--------------------------------------------------------------------------
  4.   def dead?
  5.     if @hp == 0 and @states.include?(17)
  6.     @hp+=1
  7.     else
  8.     return (@hp == 0 and not @immortal)
  9.   end
  10.   end
复制代码
额,试试吧,17号属性就是你要的那个,不想用17号的话就把@states.include?(17)改一下。。
自己试试也没什么BUG,不过你用的是RTAB就不好说了。
作者: aaalbx    时间: 2012-1-13 17:09
对RTAB不熟悉,不过好像“暗转”属性可以做到,不过那是保留25点hp,脚本里把属性改下应该就好了
作者: Wind2010    时间: 2012-1-14 10:24
其实可以试试RTAB的复活状态XD复活为HP1的状态
作者: 南风の镰华    时间: 2012-1-14 10:41
[img]C:\Documents and Settings\Think\Application Data\Tencent\QQ\Temp\_31K`[I95B}B5}H[DE)O6TH.jpg[/img]
作者: RPG之草泥马    时间: 2012-1-14 13:20
谢,先去试试......................
作者: RPG之草泥马    时间: 2012-1-14 13:25
mzr1996 发表于 2012-1-13 13:35
额,试试吧,17号属性就是你要的那个,不想用17号的话就把@states.include?(17)改一下。。
自己试试也没什 ...

有一点问题,就是增加1HP后照样无法行动,能不能帮忙写一个生效之后消除死亡状态的
作者: 幻耶    时间: 2012-1-14 14:01
本帖最后由 幻耶 于 2012-1-14 14:20 编辑

假设状态是20号。在Sprite_Battler 中搜索 # korapusu,把korapusu以下部分 改成:
  1.       # korapusu
  2.       if @battler.damage == nil and @battler.dead?
  3.         if @battler.is_a?(Game_Enemy)
  4.           if @battler.states.include?(20)
  5.             #  播放再生动画
  6.             battler.animation_id = 26
  7.             @battler.hp += 1
  8.           else
  9.             collapse
  10.           end
  11.           $game_system.se_play($data_system.enemy_collapse_se)
  12.         else
  13.           if @battler.states.include?(20)
  14.             #  播放再生动画
  15.             battler.animation_id = 26
  16.             @battler.hp += 1
  17.           else
  18.             collapse
  19.           end
  20.           $game_system.se_play($data_system.actor_collapse_se)
  21.         end
  22.         #collapse
  23.         @battler_visible = false
  24.       end
  25.     end
  26.     # 设置活动块的坐标
  27.     self.x = @battler.screen_x
  28.     self.y = @battler.screen_y
  29.     self.z = @battler.screen_z
  30.   end
  31. end
复制代码

作者: RPG之草泥马    时间: 2012-1-14 14:46
本帖最后由 RPG之草泥马 于 2012-1-14 15:12 编辑
幻耶 发表于 2012-1-14 14:01
假设状态是20号。在Sprite_Battler 中搜索 # korapusu,把korapusu以下部分 改成:


没效果啊...............................
[@]幻耶[/@]
作者: mzr1996    时间: 2012-1-14 19:32
本帖最后由 mzr1996 于 2012-1-14 19:38 编辑
  1.   #--------------------------------------------------------------------------
  2.    # ● 战斗不能判定
  3.   #--------------------------------------------------------------------------

  4.   def dead?
  5.      if @hp == 0 and @states.include?(17)
  6.      @hp+=1
  7.      return false
  8. else
  9.      return (@hp == 0 and not @immortal)
  10. end
  11. end
复制代码
再试试吧。。。这次应该可以了吧。另外谢谢点评的那个人。
作者: R-零    时间: 2012-1-14 19:39
你可以把RTAB那部分脚本发给我,现在重新装机手头上什么脚本都没备份

QQ1371455177

注明你的6RID,否则小心遭虐待
作者: RPG之草泥马    时间: 2012-1-14 19:41
mzr1996 发表于 2012-1-14 19:32
再试试吧。。。这次应该可以了吧。另外谢谢点评的那个人。

我自己修改的就是这样,可是还是不行,必须行动一次才生效
作者: mzr1996    时间: 2012-1-14 20:51
RPG之草泥马 发表于 2012-1-14 19:41
我自己修改的就是这样,可是还是不行,必须行动一次才生效

不会吧,我用RTAB脚本试也没什么问题啊。。
作者: RPG之草泥马    时间: 2012-1-14 20:53
mzr1996 发表于 2012-1-14 20:51
不会吧,我用RTAB脚本试也没什么问题啊。。

谢,我在试试




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1