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

Project1

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

[已经解决] 连续伤害效果的叠加

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-8-15
帖子
22
跳转到指定楼层
1
发表于 2014-8-21 21:47:50 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
果然到现在还是没学懂脚本...本来不打算求人的QAQ,但是之前在论坛里找到了那个帖子自己摸索了一下各种脚本错误,所以只能请大神来帮忙了。
顺道问一下怎么制作连续伤害里面添加一个加血状态。我学懂脚本以后一定回来帮忙了→_→听说我这种伸手党会被鄙视....
这个是目前的连续伤害脚本,需要添加持续回血状态+2种出血状态叠加...
  #--------------------------------------------------------------------------
  # ● 应用连续伤害效果
  #--------------------------------------------------------------------------
  def slip_damage_effect
    # 设置伤害
     if self.state?(19)
       self.damage = 200
     elsif self.state?(20)
       self.damage = 860
     elsif self.state?(21)
       self.damage = 1200
         else  
     self.damage = self.maxhp / 10
    # 分散
    if self.damage.abs > 0
      amp = [self.damage.abs * 15 / 100, 1].max
      self.damage += rand(amp+1) + rand(amp+1) - amp
    end
    # HP 的伤害减法运算
    self.hp -= self.damage
    # 过程结束
    return true
  end  
end

评分

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

查看全部评分

Lv4.逐梦者

梦石
7
星屑
1113
在线时间
334 小时
注册时间
2008-1-28
帖子
1566
2
发表于 2014-8-21 23:17:32 | 只看该作者
我记得你……你不是已经做好了吗?
把self.damage的值改为负值就是加血了。
终于有可以放在这里的游戏了……
极短13 新生 《箱子新世界》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-8-15
帖子
22
3
 楼主| 发表于 2014-8-22 10:47:55 | 只看该作者
未命名 发表于 2014-8-21 23:17
我记得你……你不是已经做好了吗?
把self.damage的值改为负值就是加血了。

可是我发现一个事情- -不能够叠加诶,造成连续伤害以后另一个状态连续伤害2不会显示伤害。怎么办- -我想要2种伤害都会出现

点评

可以搜索 多伤害显示 试试。  发表于 2014-8-22 13:51
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
7
星屑
1113
在线时间
334 小时
注册时间
2008-1-28
帖子
1566
4
发表于 2014-8-22 13:42:49 | 只看该作者
老虎虎TIGER 发表于 2014-8-22 10:47
可是我发现一个事情- -不能够叠加诶,造成连续伤害以后另一个状态连续伤害2不会显示伤害。怎么办- -我想 ...

要不……改成这样:
RUBY 代码复制
  1. self.damage = 0
  2.      if self.state?(19)
  3.        self.damage -= 200
  4.      end
  5.      if self.state?(20)
  6.        self.damage -= 860
  7.      end
  8.      if self.state?(21)
  9.        self.damage -= 1200
  10.      end
  11.      if self.state?(3)
  12.        self.damage += self.maxhp / 10
  13.      end


这样的意思是把所有连续伤害状态的伤害加起来,然后直接显示结果。
比如有19和20号状态。
最后会显示回复1060。
19和3,则是回复200-maxhp/10。
终于有可以放在这里的游戏了……
极短13 新生 《箱子新世界》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-8-15
帖子
22
5
 楼主| 发表于 2014-8-22 16:42:58 | 只看该作者
未命名 发表于 2014-8-22 13:42
要不……改成这样:
     self.damage = 0
     if self.state?(19)

脚本错误诶- -...是添加在哪里?
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
7
星屑
1113
在线时间
334 小时
注册时间
2008-1-28
帖子
1566
6
发表于 2014-8-22 17:17:22 | 只看该作者
本帖最后由 未命名 于 2014-8-22 17:27 编辑
老虎虎TIGER 发表于 2014-8-22 16:42
脚本错误诶- -...是添加在哪里?


  #--------------------------------------------------------------------------
  # ● 应用连续伤害效果
  #--------------------------------------------------------------------------
  def slip_damage_effect
    # 设置伤害
#############################################
##########
    self.damage = 0
    if self.state?(19)
      self.damage -= 200
    end
    if self.state?(20)
      self.damage -= 860
    end
    if self.state?(21)
      self.damage -= 1200
    end
    if self.state?(3)
      self.damage += self.maxhp / 10
    end
########
############################################
    # 分散
    if self.damage.abs > 0
      amp = [self.damage.abs * 15 / 100, 1].max
      self.damage += rand(amp+1) + rand(amp+1) - amp
    end
    # HP 的伤害减法运算
    self.hp -= self.damage
    # 过程结束
    return true
  end  

我估计你是多了或少了个end……

好吧,最终结果应该是这样的:

评分

参与人数 1梦石 +1 收起 理由
︶ㄣ牛排ぶ + 1 认可答案

查看全部评分

终于有可以放在这里的游戏了……
极短13 新生 《箱子新世界》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
18 小时
注册时间
2014-8-15
帖子
22
7
 楼主| 发表于 2014-8-22 17:52:15 | 只看该作者
未命名 发表于 2014-8-22 17:17
#--------------------------------------------------------------------------
  # ● 应用连续伤害 ...

谢谢啦`多了一个END..
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-19 00:32

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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