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

Project1

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

[已经解决] 使用一个目标不是使用者的技能之后,给使用者附加状态

[复制链接]

Lv1.梦旅人

梦石
0
星屑
173
在线时间
192 小时
注册时间
2011-3-13
帖子
48
跳转到指定楼层
1
发表于 2013-5-9 20:01:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 wwla703 于 2013-5-10 11:55 编辑

就是说 角色使用一个目标是敌人的技能之后 给该角色附加状态 类似于强力技能的副作用
还想问一下如果做蓄力\咏唱的效果 就是准备一回合,下一回合才能放出的技能

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1019 小时
注册时间
2012-4-25
帖子
799
2
发表于 2013-5-9 20:48:52 | 只看该作者
1:在技能下面附加公共事件,对某指定角色附加某状态,如果使用这种方法,多个使用相同技能的角色需要设置各自的技能以及独立的公共事件。

2:简单的一个方法就是,你想要使用的技能在蓄力这个状态里附加学会该技能。可以设置蓄力状态只存在两回合或者替技能附加公共事件解除该蓄力状态。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
173
在线时间
192 小时
注册时间
2011-3-13
帖子
48
3
 楼主| 发表于 2013-5-9 21:14:58 | 只看该作者
lirn 发表于 2013-5-9 20:48
1:在技能下面附加公共事件,对某指定角色附加某状态,如果使用这种方法,多个使用相同技能的角色需要设置 ...

第一个 这个方法我也知道的 但是因为打算是很多个角色能用同一个技能的   或者说有办法判定是哪个角色放的么
第二个 状态的话,并不是强制使用的,我打算是做成强制必须释放这个技能的......
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1019 小时
注册时间
2012-4-25
帖子
799
4
发表于 2013-5-10 10:08:50 | 只看该作者
wwla703 发表于 2013-5-9 21:14
第一个 这个方法我也知道的 但是因为打算是很多个角色能用同一个技能的   或者说有办法判定是哪个角色放 ...

1:有,这是后知后觉提供的方法,原帖找不到,这是我复制到WORD里的,愿意是简易的技能冷却,当技能使用后会自动附带某一状态,但可以做到你那效果。

找到 Game_Battler 的第 415 行左右能看到这样的一段
1.       
2.       
3.          #--------------------------------------------------------------------------
4.          # ● 技能/使用物品
5.          #    对使用目标使用完毕后,应用对于使用目标以外的效果。
6.          #--------------------------------------------------------------------------
7.          def use_item(item)
8.            pay_skill_cost(item) if item.is_a?(RPG::Skill)
9.            consume_item(item)   if item.is_a?(RPG::Item)
10.            item.effects.each {|effect| item_global_effect_apply(effect) }
11.          end
12.       

在 def use_item(item) 的下面加几行变成这样...
1.       
2.
  1.           #--------------------------------------------------------------------------
  2.           # ● 技能/使用物品
  3.           #    对使用目标使用完毕后,应用对于使用目标以外的效果。
  4.           #--------------------------------------------------------------------------
  5.           def use_item(item)
  6.             if $game_party.in_battle
  7.               state = $data_states[item.id + 50]
  8.               if item.is_a?(RPG::Skill) && state && !state.name.empty?
  9.                 add_new_state(state.id) unless state?(state.id)
  10.                 reset_state_counts(state.id)
  11.               end
  12.                  end
  13.             pay_skill_cost(item) if item.is_a?(RPG::Skill)
  14.             consume_item(item)   if item.is_a?(RPG::Item)
  15.             item.effects.each {|effect| item_global_effect_apply(effect) }
  16.            end
复制代码
这样就OK了
然后在 数据库-状态 里设置就可以了
这一行

      state = $data_states[item.id + 50]
里面的 50 可以自己改.
比如使用第 80 号技能后要冷却.那么就在第 80 + 50 = 130 号状态的特性里设置 禁用技能80号技能
冷却的回合就是该状态自动解除的回合范围.
不过要注意实际情况是你设置的回合数-1.
也就是说该技能要求冷却1回合.你就得设置成2.
然后把该状态起个名字.随便叫什么.只要不是空的就行.
当然你还想在特性里加点别的东西我没意见^_^
还有就是记得把 战斗时解除 打上勾.下面的文字提示都别设置





2,如果可以选择用与不用,可以让战术更加灵活,不然同伴挂了,自己空血,也只能眼白白地看着被别人干。如果是敌人必须要用,但简单,只要在行动那里设置当处于某中状态时,使用某种技能就是了。

评分

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

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
173
在线时间
192 小时
注册时间
2011-3-13
帖子
48
5
 楼主| 发表于 2013-5-10 11:55:01 | 只看该作者
lirn 发表于 2013-5-10 10:08
1:有,这是后知后觉提供的方法,原帖找不到,这是我复制到WORD里的,愿意是简易的技能冷却,当技能使用 ...

解决了 谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-19 01:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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