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

Project1

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

[已经解决] 护盾怎么搞

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
14 小时
注册时间
2011-4-1
帖子
13
跳转到指定楼层
1
发表于 2012-12-15 19:35:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
  1. #=======================================================
  2.     if self.state?(28) #如果带有真言术 盾的效果 伤害由盾来承担
  3.         j = 1
  4.       
  5.       for i in $game_party.actors
  6.         if self == i
  7.           $game_variables[j] = 6 * maxsp
  8.             break
  9.         end
  10.           j += 1
  11.                 end
  12.        if self.damage > $game_variables[j]            #如果伤害超过了 盾的吸收量
  13.           self.hp -= self.damage - $game_variables[j] #超出的血量 将自己承担
  14.           $game_variables[j] = 0                      #盾的吸收量清零
  15.           self.remove_state(28)                       #移除盾的状态
  16.        else                                           #如果伤害没有超过盾的吸收量
  17.           $game_variables[j] -= self.damage           #伤害由盾承担
  18.           self.damage = 0
  19.                 end
  20.            else
  21.       # HP 的伤害计算
  22.       self.hp -= self.damage
  23.         
  24.     end         
  25. #=======================================================
复制代码
前一半是参考别人的至今不懂什么意思。。。后一半自己写的
问题是现在只要不是一次伤害破盾就会护盾回满。。。还有伤害就直接显示0了,能继续显示原有伤害吗?

Lv1.梦旅人

梦石
0
星屑
50
在线时间
14 小时
注册时间
2011-4-1
帖子
13
2
 楼主| 发表于 2012-12-15 20:24:41 | 只看该作者
本帖最后由 hcm 于 2012-12-31 12:45 编辑
  1. #=======================================================
  2.       if self.state?(2) #如果带有真言术 盾的效果 伤害由盾来承担
  3.         j = 1
  4.         for i in $game_party.actors
  5.           if self == i
  6.            break
  7.             end
  8.          j += 1
  9.        end
  10.        if self.damage > $game_variables[j]#如果伤害超过了 盾的吸收量
  11.           self.hp -= self.damage - $game_variables[j] #超出的血量 将自己承担
  12.           $game_variables[j] = 0           #盾的吸收量清零
  13.           self.remove_state(2)              #移除盾的状态
  14.         else                                #如果伤害没有超过盾的吸收量
  15.           $game_variables[j] -= self.damage  #伤害由盾承担
  16.           end
  17.       p "盾还可以吸收#{$game_variables[j]}点伤害"
  18.       else
  19.       # HP 的伤害计算
  20.      self.hp -= self.damage
  21.       end      
  22. #=======================================================
复制代码
突然发现原版这个可以解决问题=。=不过,谁能帮忙解释下
for i in $game_party.actors
          if self == i
           break
            end
         j += 1
       end
这段是什么意思

点评

一语惊醒,感谢  发表于 2012-12-15 22:13
看上去是以j为参量,扫描到角色(或者说锁定带有状态角色)的盾状态的(剩余?)吸收量的作用。  发表于 2012-12-15 20:43
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-18 02:56

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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