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

Project1

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

[已经过期] 如何做成长型武器?比如角色每升一级武器就变强一点。

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3176
在线时间
1442 小时
注册时间
2009-7-27
帖子
1454
跳转到指定楼层
1
发表于 2015-6-1 14:29:50 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
这个是我临时想到的,不知道能否实现。请高手帮帮忙。

博客:我的博客

Lv5.捕梦者 (版主)

梦石
1
星屑
23994
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

6
发表于 2015-6-3 23:25:27 | 只看该作者
放弃吧,改成增加属性不是一样的吗
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1232
在线时间
1017 小时
注册时间
2011-4-30
帖子
1516
5
发表于 2015-6-2 20:11:34 | 只看该作者
本帖最后由 汪汪 于 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

点评

前面的数值就是返回值,写一个式子实现不就好了。这种加减乘除的式子应该不难写啊。参考式子和翻译修改就好。  发表于 2015-6-3 11:14
有没有办法做到每升一级就固定增加几点攻击的?几点有我设置,这样比较好掌控我们所需要的数值。  发表于 2015-6-3 09:57
return weapon != nil ? (weapon.atk * ( (5 + level) / 8 ) ) : 0 不是这样吗?角色1级的时候攻击力为0了  发表于 2015-6-2 22:24
那要看你怎么写这个攻击力和等级的关系了.  发表于 2015-6-2 21:14
角色1级的时候攻击力是0?  发表于 2015-6-2 20:25
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3176
在线时间
1442 小时
注册时间
2009-7-27
帖子
1454
4
 楼主| 发表于 2015-6-2 09:07:19 | 只看该作者
汪汪 发表于 2015-6-1 18:13
Game_Actor下
是获取角色实力的

点评

可以了,谢谢  发表于 2015-6-2 18:18
修改了一下,你再复制一次那个脚本试试  发表于 2015-6-2 17:52

博客:我的博客
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3176
在线时间
1442 小时
注册时间
2009-7-27
帖子
1454
3
 楼主| 发表于 2015-6-1 22:34:50 | 只看该作者
汪汪 发表于 2015-6-1 18:13
Game_Actor下
是获取角色实力的

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

这句错了

点评

为什么设置第二把就出错了?  发表于 2015-6-2 19:13
level改成@level试试,原理应该没问题。。另外如果错的话建议反馈弹出的那个消息框  发表于 2015-6-2 00:37

博客:我的博客
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1232
在线时间
1017 小时
注册时间
2011-4-30
帖子
1516
2
发表于 2015-6-1 18:13:18 | 只看该作者
本帖最后由 汪汪 于 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 21:21
我对脚本几乎不了解,可否写一个范例,让我能够依葫芦画瓢?  发表于 2015-6-1 21:12

评分

参与人数 1星屑 +66 收起 理由
永恒の未知数 + 66 非常感谢

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 23:03

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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