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

Project1

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

[已经解决] (已近解决)关于一个状态叠加的脚本

[复制链接]

Lv1.梦旅人

梦石
0
星屑
155
在线时间
32 小时
注册时间
2015-4-24
帖子
23
跳转到指定楼层
1
发表于 2017-5-21 05:02:02 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 水晶飞风 于 2017-5-21 22:44 编辑

这个脚本他具体应该是能起到这么一个作用的:
队友获得了状态1,之后他又获得了一次状态1,因为脚本的原因,状态1会被替换成状态2

但是在我反复测试开新工程后也毫无反应(替换不掉/没起作用)
所以来此寻求答案_(:зゝ∠)_拜托各位了。

RUBY 代码复制
  1. #使用方法:直接放进脚本编辑器,然后在下面自己设置。
  2. class Game_Battler
  3.  
  4.   STATE_UPGRADE = {
  5.     50 => [51, 52, 53],  #51、52、53号状态为三个等级。通过添加50号状态来升级
  6.     60 => [61, 62],        #想添加更多可以自己尝试修改。
  7.   }
  8.  
  9.   alias as_20141212 add_state
  10.   def add_state(id)
  11.     levels = STATE_UPGRADE[id]
  12.     return as_20141212(id) unless levels
  13.     index = levels.index { |state| state?(state) } # 当前等级
  14.     return as_20141212(id) unless index
  15.     return if index == levels.size - 1   # 已经达到最高等级
  16.     remove_state levels[index]
  17.     as_20141212 levels[index + 1]
  18.   end
  19.  
  20. end

范例.rar

1.42 MB, 下载次数: 85

进去让拉尔夫用测试技能跟史莱姆战斗就看的出状态不会发生变动

点评

那是因为你在60 => [61, 62], 这后面多家了一个逗号,最后一句的最后是没有逗号的  发表于 2017-5-21 17:11

Lv1.梦旅人

梦石
0
星屑
95
在线时间
440 小时
注册时间
2012-6-5
帖子
96
3
发表于 2017-5-21 22:22:03 | 只看该作者
本帖最后由 紫菜豆腐煲 于 2017-5-21 09:34 编辑


借贴问一下,可不可以实现口袋妖怪的状态,
-6到+6,开始时为0
这个脚本只能加,不能减

点评

这属于另一个问题,原脚本只简单叠加基础状态获得对应叠加次数的新状态,因为没有记录状态回合,不考虑状态掉级;请开帖提问或直接定制  发表于 2017-5-22 16:16
26 => [26,27,28],是备注26状态,递增26-28。同理,可以备注25状态,递减28-26,25状态里面什么都不设置,如果想让递减到最后状态变没有,则写成28-25  发表于 2017-5-22 07:41
回复 支持 反对

使用道具 举报

Lv6.析梦学徒

老鹰

梦石
40
星屑
34705
在线时间
6738 小时
注册时间
2012-5-26
帖子
3259

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

2
发表于 2017-5-21 10:35:13 | 只看该作者
本帖最后由 百里_飞柳 于 2017-5-21 10:37 编辑

  1. #使用方法:直接放进脚本编辑器,然后在下面自己设置。
  2. class Game_Battler

  3.   STATE_UPGRADE = {
  4.   #修改by老鹰 添加状态=>[从添加状态为0级开始的各等级状态]
  5.     26 => [26,27,28],  #26、27、28号状态为三个等级。通过添加26号状态来升级
  6.     60 => [60,61, 62],        #想添加更多可以自己尝试修改。
  7.   }

  8.   alias as_20141212 add_state
  9.   def add_state(id)
  10.     levels = STATE_UPGRADE[id]
  11.     return as_20141212(id) unless levels
  12.     index = levels.index { |state| self.state?(state) } # 当前等级
  13.     return as_20141212(id) unless index # 第一次添加该状态
  14.     return if index == levels.size - 1   # 已经达到最高等级
  15.     remove_state levels[index]
  16.     as_20141212 levels[index + 1]
  17.   end

  18. end
复制代码

点评

非常感谢!现在能状态能好好叠加起来了!  发表于 2017-5-21 22:43

评分

参与人数 2星屑 +45 梦石 +1 收起 理由
RaidenInfinity + 1 认可答案
卡奥尼特 + 45 VA自帶的強化只有兩個階級。。.

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-10 18:18

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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