查看: 5211|回复: 23

[已经解决] 如何制作效果扩散状态?

  [复制链接]
梦石
0
星屑
60
在线时间
45 小时
注册时间
2006-8-23
回帖
256
发表于 2009-8-28 03:21:47 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 「旅」 于 2009-8-28 07:44 编辑

我想制作个效果扩散的状态,有了这状态后的角色,无论使用什么技能都变为全场效果,包括敌我双方。
例如,角色原本技能为单体攻击,但有了这个状态后施放技能变成了全场无差别攻击。
该怎么设置?


提问请勿使用【售价】功能,那样会使别人需要付积分才能帮你。
已修改。认可请到:http://rpg.blue/viewthread.php?tid=130319    by 「旅」
梦石
0
星屑
60
在线时间
45 小时
注册时间
2006-8-23
回帖
256
 楼主| 发表于 2009-8-28 01:59:02 | 显示全部楼层

战斗中如何使状态延续?

本帖最后由 「旅」 于 2009-8-28 07:44 编辑

我想设计一个“状态延续”的技能,使用后现有的状态延续久一点,
比如我有了能力加强的状态,我想它延续久一点,便使用一招技能,使得这种状态延续多几个回合。
又比如敌人有了中毒的状态,我便使用这招技能,使得这种状态延续多几个回合。
该怎么设置?


提问请勿使用【售价】功能,那样会使别人需要付积分才能帮你。
已修改。认可请到:http://rpg.blue/viewthread.php?tid=130319    by 「旅」
回复

使用道具 举报

清纯红

梦石
0
星屑
61
在线时间
65 小时
注册时间
2009-7-23
回帖
955

贵宾

发表于 2009-8-28 03:25:25 | 显示全部楼层
你无聊啊
问问题还售价啊
就算痛也要做,宅必备,宅人的必备网站
回复

使用道具 举报

梦石
0
星屑
55
在线时间
0 小时
注册时间
2009-4-7
回帖
325
发表于 2009-8-28 07:42:32 | 显示全部楼层
..................................
回复

使用道具 举报

梦石
0
星屑
60
在线时间
45 小时
注册时间
2006-8-23
回帖
256
 楼主| 发表于 2009-8-28 14:19:27 | 显示全部楼层
很久没发过贴了,我还以为是支付那么多去求人回答。
不过奇怪啊,我昨晚连发几贴都失败,论坛到底怎么了?
回复

使用道具 举报

梦石
0
星屑
60
在线时间
45 小时
注册时间
2006-8-23
回帖
256
 楼主| 发表于 2009-8-28 16:08:49 | 显示全部楼层
没人知道吗?
对了版主,为什么版规里写着不能一贴多问,而你却把我两个问题拼在一起了?
回复

使用道具 举报

梦石
0
星屑
60
在线时间
45 小时
注册时间
2006-8-23
回帖
256
 楼主| 发表于 2009-8-29 11:51:56 | 显示全部楼层
沉得真快,谁来帮帮忙啊~~~~~
回复

使用道具 举报

小柯的徒弟

梦石
0
星屑
1925
在线时间
1157 小时
注册时间
2008-5-24
回帖
2994

贵宾

发表于 2009-8-29 13:37:12 | 显示全部楼层
本帖最后由 「旅」 于 2009-8-29 13:41 编辑
  1. class Game_Battler
  2.   alias lv12_initialize initialize
  3.   def initialize
  4.     @states_plus_turn = {}
  5.     lv12_initialize
  6.   end
  7.   alias lv12_skill_effect skill_effect
  8.   def skill_effect(user, skill)
  9.     @jionglansan = true
  10.     lv12_skill_effect(user, skill)
  11.     @jionglansan = false
  12.   end
  13.   alias lv12_add_state add_state
  14.   def add_state(state_id, force = false)
  15.     if @jionglansan
  16.       i = state_id
  17.       @states_plus_turn[i] = -$data_states[i].hold_turn if @states_plus_turn[i] == nil
  18.       @states_plus_turn[i] = $data_states[i].hold_turn + @states_plus_turn[i]
  19.     end
  20.     b = @states_turn.clone
  21.     c = {}
  22.     for i in @states_turn.keys
  23.       if states_plus_turn(i) != 0
  24.         c[i] = true
  25.       end
  26.     end
  27.     a = lv12_add_state(state_id,force)
  28.     for i in @states_plus_turn.keys
  29.       @states_turn[i] = b[i] if c[i] == true
  30.     end
  31.     return a
  32.   end
  33.   alias lv12_states_minus states_minus
  34.   def states_minus(minus_state_set)
  35.     for i in minus_state_set
  36.       @states_plus_turn[i] = nil
  37.     end
  38.     return lv12_states_minus(minus_state_set)
  39.   end
  40.   def state_full?(state_id)
  41.     unless self.state?(state_id)
  42.       return false
  43.     end
  44.     if @states_turn[state_id] == -1
  45.       return true
  46.     end
  47.     return @states_turn[state_id] + states_plus_turn(state_id) == $data_states[state_id].hold_turn
  48.   end
  49.   def states_plus_turn(id)
  50.     @states_plus_turn[id] = 0 if @states_plus_turn[id] == nil or @states_plus_turn[id] < 0
  51.     if @states_plus_turn[id] == nil
  52.     return 0
  53.     else
  54.     return @states_plus_turn[id]
  55.     end
  56.   end
  57.   def remove_states_auto
  58.     for i in @states_turn.keys.clone
  59.       if @states_turn[i]+states_plus_turn(i) > 0
  60.         if states_plus_turn(i) > 0
  61.           @states_plus_turn[i] = states_plus_turn(i) - 1
  62.           return
  63.         end
  64.         @states_turn[i] -= 1
  65.       elsif rand(100) < $data_states[i].auto_release_prob
  66.         remove_state(i)
  67.       end
  68.     end
  69.   end
  70. end
复制代码
状态延续的,终于折腾出来了……

那个抱歉,以为是同个问题所以合并了,我去试试有没办法解决第二个问题吧……
回复

使用道具 举报

梦石
0
星屑
60
在线时间
45 小时
注册时间
2006-8-23
回帖
256
 楼主| 发表于 2009-8-29 17:39:53 | 显示全部楼层
8楼的代码该怎么使用?
回复

使用道具 举报

小柯的徒弟

梦石
0
星屑
1925
在线时间
1157 小时
注册时间
2008-5-24
回帖
2994

贵宾

发表于 2009-8-29 22:24:45 | 显示全部楼层
直接用就可以了~如果需要特定的技能才可以延长状态的话,我再改~
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部