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

Project1

 找回密码
 注册会员
搜索

技能伤害计算公式如何读取变量

查看数: 4407 | 评论数: 12 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2014-5-26 18:41

正文摘要:

公式设置是这样的 类型:体力值伤害   属性:无 计算公式:v[1]*1000 使用效果: 公共事件  变量1 公共事件 名称:变量1 内容:变量操作[0001:变量1] = 队伍人数 已经尝试过将伤害类型、属 ...

回复

紫苍焰 发表于 2014-5-27 16:41:57
@blueeyescyj
先造一个技能,没伤害,附加一个空状态,然后读取公共事件,公共事件的最后加一条强制行动-使用技能,这里填那个真正有伤害公式的技能, 目标就用前一个目标。
先这样试试。
不过要记得强制的那个技能最好别填使用时如何如何之类的东西,不然会违和,第一个没伤害的技能也必须添加一个空状态,不然会显示怪毫发无伤。

评分

参与人数 1星屑 +200 收起 理由
taroxd + 200 认可答案

查看全部评分

taroxd 发表于 2014-5-27 15:30:55
moy 发表于 2014-5-26 19:43
直接从事件快捷访问搬来的,是否会有诡异的错误我不知道

这个eval定义在rgss内置脚本中,并不是在battler的上下文中执行代码。
其实我真不知道这个eval的上下文,现在我上学,也没环境。总之你在技能公式里输出self来确认一下eval的上下文吧……应该不是battler类的实例就是
紫苍焰 发表于 2014-5-27 07:59:53
……
记得有个用强制行动来做奥义什么的的方法……
你可以试试用第一个技能给变量赋值,然后第二个强制用的才计算伤害……

点评

没看懂= =能解释得详细点吗?  发表于 2014-5-27 15:39
taroxd 发表于 2014-5-27 06:26:24
blueeyescyj 发表于 2014-5-27 00:18
没办法做到先读取变量,再计算伤害吗?不管怎么样还是谢谢前辈的指教 ...


学点简单的事件脚本吧…… 所有变量操作全都可以用脚本实现

顺便别用4L的脚本,那个是误导

点评

moy
那样不行的吗,难道要嵌到RPG里面  发表于 2014-5-27 13:27
blueeyescyj 发表于 2014-5-27 00:18:36
皮卡星 发表于 2014-5-26 20:13
第一个可以用话说第二个的ABCD就那么写会出错的吧www

没办法做到先读取变量,再计算伤害吗?不管怎么样还是谢谢前辈的指教{:6_367:}{:6_367:}{:6_367:}

点评

用公共事件是做不到了,但脚本的话可以,不过这样的话又比较麻烦  发表于 2014-5-27 00:52
皮卡星 发表于 2014-5-26 20:13:12
moy 发表于 2014-5-26 12:59
无测试

第一个可以用
  1. G * 5 + $game_party.steps * 10
复制代码
话说第二个的ABCD就那么写会出错的吧www

点评

其实第一个的意思是v[1]=金钱*5+步数*10,不是伤害=金钱*5+v[1]*10  发表于 2014-5-26 20:26
不过我的想法还是想保留那个变量在公式栏用V[X]表示  发表于 2014-5-26 20:22
moy
另外我其实没研究过嵌套会怎样233,本来想直接写个方法算了,然后一想他也只是举例子,我也就意思一下好了233  发表于 2014-5-26 20:16
moy
谁让他自己写的是ABCD!我怎么知道那是啥啦!  发表于 2014-5-26 20:15
moy 发表于 2014-5-26 19:59:32
blueeyescyj 发表于 2014-5-26 19:52
谢谢。但这样还没有实质解决我的问题,比如我的变量是两个的(金钱*5+步数*10)

或者是分段的变量
  1. G * 5 + V[1] * 10 #步数在事件自己设定吧
复制代码
  1. V[1] = G > 0 ? G>5000 ? G> 10000 ? D : C : B : A ; V[1]
复制代码
无测试

点评

果然如你所料= =换成脚本的快捷符号就不行了结果还是要用$  发表于 2014-5-27 01:16
moy
别忘了4L的脚本,当然,你不想用也可以按照对应关系用那些$只是长一些,不方便看。如果脚本不行(因为我没试过),就用$吧  发表于 2014-5-26 20:18
直接写在公式栏里?  发表于 2014-5-26 20:16
blueeyescyj 发表于 2014-5-26 19:52:13
皮卡星 发表于 2014-5-26 19:37
希望别计算成连帖,因为点评内容太少
金钱 = $game_party.gold
步数 = $game_party.steps

谢谢。但这样还没有实质解决我的问题,比如我的变量是两个的(金钱*5+步数*10)

或者是分段的变量
金钱为0时,
v[1]=A
金钱大于0小于5000时
v[1]=B
金钱大于5000,小于10000时
v[1]=C
金钱大于1000时
v[1]=D
A、B、C、D是不相等的
这样又改如何解决?

点评

不难办。记得强制行动吧?第一个技能当成马甲,第二个才真正计算伤害……  发表于 2014-5-27 07:58
如果你一定要用变量的话那比较难办了吧,因为公共事件是在伤害执行后才执行的,所以理论上你要用第二次才有效  发表于 2014-5-26 20:35
moy 发表于 2014-5-26 19:43:12

  1. class Game_Battler < Game_BattlerBase
  2.    #------------------------------------------------------------------------
  3.    # ● 快捷访问
  4.    #------------------------------------------------------------------------
  5.   def const_missing(sym)
  6.     case sym
  7.     when :V   then $game_variables
  8.     when :S   then $game_switches
  9.     when :N   then $game_actors
  10.     when :GP  then $game_party
  11.     when :P   then $game_party.members
  12.     when :G   then $game_party.gold
  13.     when :GT  then $game_troop
  14.     when :E   then $game_troop.members
  15.     else super
  16.     end
  17.   end
  18. end
复制代码
直接从事件快捷访问搬来的,是否会有诡异的错误我不知道

评分

参与人数 2星屑 +20 收起 理由
taroxd + 5 不认可。不应该放在Game_Battler类中.
子弹君 + 15 认可答案

查看全部评分

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

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

GMT+8, 2025-2-23 01:11

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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