查看: 5558|回复: 13

[已经解决] 请教用脚本计算某个状态剩余回合数的写法

[复制链接]
梦石
0
星屑
9160
在线时间
466 小时
注册时间
2015-5-8
回帖
704
发表于 2019-8-2 15:46:55 | 显示全部楼层 |阅读模式

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

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

×
我想做个魔力递减debuff状态,具体思路如下:

1. 首先设定一个第10号状态,在数据库里设定此状态持续的回合数为99,
2. 中此状态者每过一个回合魔力下降1%,99个回合就下降99%

a= 100-此状态的剩余回合数
a /= 100
data_states[10].int_rate *= a

请教大神怎么写那个第10号状态的剩余回合数啊?
梦石
0
星屑
9160
在线时间
466 小时
注册时间
2015-5-8
回帖
704
 楼主| 发表于 2019-8-2 15:58:04 | 显示全部楼层
魔力递减.PNG


目前就是计算那个  “99”回合经过后“100”的概率解除 的剩余回合数不知道咋写..


回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2019-8-2 17:48:20 | 显示全部楼层
菜刀大大说的是states_turn
回复

使用道具 举报

梦石
0
星屑
9160
在线时间
466 小时
注册时间
2015-5-8
回帖
704
 楼主| 发表于 2019-8-2 18:27:50 | 显示全部楼层
本帖最后由 taeckle 于 2019-8-2 23:48 编辑
soulsaga 发表于 2019-8-2 17:48
菜刀大大说的是states_turn


那第10号状态的剩余回合数可以这么写吗:
@active_battler.states[10]_turn        
回复

使用道具 举报

梦石
0
星屑
9160
在线时间
466 小时
注册时间
2015-5-8
回帖
704
 楼主| 发表于 2019-8-3 18:55:09 | 显示全部楼层
soulsaga 发表于 2019-8-2 17:48
菜刀大大说的是states_turn

报告大神,那个状态剩余回合数我在game_battler 2那里找到了:

# 强制附加的场合
    if force
      # 设置为自然解除的最低回数 -1 (无效)
      @states_turn[state_id] = -1
    end
    # 不能强制附加的场合
    unless  @states_turn[state_id] == -1
      # 设置为自然解除的最低回数
      @states_turn[state_id] = $data_states[state_id].hold_turn
    end

然而我现在的问题是不知怎么调用这个公式到Scene_Battle 4里面,大神你可有啥办法啊?
回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2019-8-3 20:50:07 | 显示全部楼层
本帖最后由 soulsaga 于 2019-8-3 20:51 编辑
taeckle 发表于 2019-8-3 18:55
报告大神,那个状态剩余回合数我在game_battler 2那里找到了:

# 强制附加的场合



MAIN上面插入..未测试
[pre lang="ruby"]class Game_Battler
  #--------------------------------------------------------------------------
  # ● 定义实例变量
  #--------------------------------------------------------------------------
attr_accessor :states_turn
def states_turn
    return @states_turn
    end
[/pre]

之后用战斗者.states_turn[状态id]
id]
就可以获取到状态剩余回合数..
战斗者是什么你自己研究

评分

参与人数 2星屑 +50 赞 +2 收起 理由
RyanBern + 50 + 1 认可答案
taeckle + 1 精品文章

查看全部评分

回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2019-8-5 15:34:12 | 显示全部楼层
怎么都不回复了..

评分

参与人数 1赞 +1 收起 理由
taeckle + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
9160
在线时间
466 小时
注册时间
2015-5-8
回帖
704
 楼主| 发表于 2019-8-5 17:20:30 | 显示全部楼层
soulsaga 发表于 2019-8-5 15:34
怎么都不回复了..

报告大神,能用了,用user和self写都可以,虽然目的达到了咱还有一个地方不太明白,那个
attr_accessor :states_turn有神马用啊?咱自己写就想到这个,所以老搞不定。。


这两天出去玩了,还请大神见谅哈
回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2019-8-5 17:54:04 | 显示全部楼层
本帖最后由 soulsaga 于 2019-8-5 17:56 编辑
taeckle 发表于 2019-8-5 17:20
报告大神,能用了,用user和self写都可以,虽然目的达到了咱还有一个地方不太明白,那个
attr_accessor : ...


这个你可以看F1搜attr_accessor第一个结果
回复

使用道具 举报

梦石
0
星屑
1157
在线时间
192 小时
注册时间
2019-3-20
回帖
21
发表于 2019-8-5 19:39:52 | 显示全部楼层
本帖最后由 YY2019 于 2019-8-6 02:32 编辑

111111111111111

点评

你不会是在水贴吧?  发表于 2019-8-10 14:16
6r的好多学习工程基本300多m  发表于 2019-8-5 19:43
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部