Project1

标题: 如何做成长型武器?比如角色每升一级武器就变强一点。 [打印本页]

作者: 爆焰    时间: 2015-6-1 14:29
标题: 如何做成长型武器?比如角色每升一级武器就变强一点。
这个是我临时想到的,不知道能否实现。请高手帮帮忙。
作者: 汪汪    时间: 2015-6-1 18:13
本帖最后由 汪汪 于 2015-6-2 17:51 编辑

Game_Actor下
是获取角色实力的

$data_armors[@armor1_id]
$data_weapons
是读取武器和防具
给下面的取值加减进行判断,进行强化
比如获取基本攻击力是
  def base_atk
    weapon = $data_weapons[@weapon_id]
    return weapon != nil ? weapon.atk : 0
  end
可以修改为

  def base_atk
    weapon = $data_weapons[@weapon_id]
    if @weapon_id == 1
      return weapon != nil ? (weapon.atk * ( (5 + level) / 5 ) ) : 0
    end
    return weapon != nil ? weapon.atk : 0
  end
很显然,当 @weapon_id==12 时 ,基本攻击力会变成  武器原攻击力*( 等级+5)/5   
作者: 爆焰    时间: 2015-6-1 22:34
汪汪 发表于 2015-6-1 18:13
Game_Actor下
是获取角色实力的

return weapon != nil ? (weapon.atk *( (5 + level) / 5) ) : 0

这句错了
作者: 爆焰    时间: 2015-6-2 09:07
汪汪 发表于 2015-6-1 18:13
Game_Actor下
是获取角色实力的


作者: 汪汪    时间: 2015-6-2 20:11
本帖最后由 汪汪 于 2015-6-3 00:00 编辑

weapon != nil ? (weapon.atk * ( (5 + level) / 8 ) ) : 0
翻译一下就是
如果 武器不是nil(空)
返回 武器的攻击值 乘以 ((5+等级)/8)
不然
返回0



不过这里要注意的是 x / y当都是整数时是整除,如3/2=1,4/3=1,5/2=2,3/4=0
要求有小数的,请变成 x.0,y.0
作者: guoxiaomi    时间: 2015-6-3 23:25
放弃吧,改成增加属性不是一样的吗




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