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

Project1

 找回密码
 注册会员
搜索
楼主: 救世小树
打印 上一主题 下一主题

[原创发布] 我跟你讲,VA的计算公式,赞!通过公式实现一些功能

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1019 小时
注册时间
2012-4-25
帖子
799
61
发表于 2014-3-14 20:48:52 | 只看该作者
可不可可以选择对象?比如说,己方全体对自己无效,或者技能对特定角色无效。

虽然,设置一些特殊的抗性作为标记也可以,不过还是想问问,如果是对角色,那该怎么去写?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1019 小时
注册时间
2012-4-25
帖子
799
62
发表于 2014-3-15 14:06:15 | 只看该作者
另外,如果是道具的,那么就是
if item.is_a?(RPG::item)
      case item.id

其余的都一样吧。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3470
在线时间
859 小时
注册时间
2012-10-14
帖子
175
63
发表于 2014-4-11 22:07:08 | 只看该作者
...自己做了很多技能,还是有些效果做不出来

1 每次普通攻击会损耗5%目标最大法力值,并且造成该数值的额外伤害
2 每次普通攻击造成伤害后会对其他敌人造成25%的溅射伤害
3 每次普通攻击恢复4%已损失的生命
4 每次普通攻击消耗自己6%最大法力值,并且对目标造成该数值的额外伤害
。。。。{:2_276:}这咋整?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
220
在线时间
135 小时
注册时间
2008-4-30
帖子
106
64
发表于 2014-4-13 23:57:19 | 只看该作者
本帖最后由 yihe74 于 2014-4-14 00:06 编辑
llkrm 发表于 2014-4-11 22:07
...自己做了很多技能,还是有些效果做不出来

1 每次普通攻击会损耗5%目标最大法力值,并且造成该数值的额 ...


主要要修改一号技能的伤害公示,把每种效果写成公式,加到脚本编辑器里,应该会比较复杂,
把你的每个发球效果做成状态,技能附加状态,伤害公示里面判断状态用不同的公示
我的工程里有这样一个效果,装备了70号武器,普通攻击附加40点神圣伤害
那么我是这样写的
if item.is_a?(RPG::Skill)
      case item.id
      when 1
        q=user.atk - user.atk*self.def/(100+self.def) #基础攻击伤害
        o=user.weapons.include?($data_weapons[70])? 40 : 0#是否装备70号武器?是的话附加伤害
      value = o+q  #最终伤害值为基础伤害加法球伤害
     end
    end
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
105
在线时间
111 小时
注册时间
2005-10-29
帖子
212
65
发表于 2014-5-23 11:04:26 | 只看该作者
楼主在不在呀,看了这个帖子,解决了我很多的疑问
我想问一个问题,
就是状态有效度的判断应该怎么写
之前看完了 只看到属性有效度
但是我现在要状态的怎么写呢 谢谢楼主
比如对火焰的有效度是150% 脚本怎么写呢
运筹帷幄之中,决胜千里之外。
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

66
发表于 2014-5-23 14:35:53 | 只看该作者
本帖最后由 taroxd 于 2014-5-23 16:01 编辑
清远 发表于 2014-5-23 11:04
楼主在不在呀,看了这个帖子,解决了我很多的疑问
我想问一个问题,
就是状态有效度的判断应该怎么写


element_rate(火属性的id)
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
105
在线时间
111 小时
注册时间
2005-10-29
帖子
212
67
发表于 2014-5-27 08:39:36 | 只看该作者
taroxd 发表于 2014-5-23 14:35
element_rate(火属性的id)

哟西,感谢大神,已经解决了,谢谢
运筹帷幄之中,决胜千里之外。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
88
在线时间
1906 小时
注册时间
2012-10-5
帖子
1991

开拓者

68
发表于 2014-11-14 15:00:35 | 只看该作者
马克~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
150
在线时间
138 小时
注册时间
2011-1-19
帖子
10
69
发表于 2014-12-23 20:41:29 | 只看该作者
本帖最后由 greelmr1981 于 2014-12-24 10:45 编辑

抱歉这么久还挖这个上来,我试着按顶楼的方式弄了一个技能:当A学习了161号技能后这个技能的伤害提高35%。

于是公式就写成这样了:(a.skill_learn?($data_skills[161])?1.35:1)*(a.atk+0.5*a.agi-b.def)

但是实际测试却无法实现这35%的增幅,请问我这个公式到底哪里写错了呢?


#编辑#

终于弄明白了,skill_learn只能判定角色职业界面那些可学习的技能,如果在里面没有,便没法判定了,我好蠢……

点评

将skill_learn?($data_skills[161])改成skills.include?($data_skills[161])就是判断是否拥有161号技能。  发表于 2015-2-11 13:41
skill_learn?是判断人物是否“学习”了该技能,直接添加在特性的技能和装备赋予的技能并不是“学会”的。  发表于 2015-2-11 13:40
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1511
在线时间
254 小时
注册时间
2014-11-23
帖子
60

开拓者

70
发表于 2015-2-9 23:05:40 | 只看该作者
楼楼,我想问一个问题
怎么实现回合的计算呢?
比如治疗术:目标每回合恢复20%的血值,持续3回合
       祝福术:目标物理攻击上升10%,持续3回合

点评

用狀態就行了吧?  发表于 2015-2-10 13:51
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-3-31 09:00

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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