Project1

标题: 用公共事件给使用者加个状态 [打印本页]

作者: 涛怒    时间: 2008-8-13 09:36
标题: 用公共事件给使用者加个状态
求救~我用VX,想在使用技能的时候,用公共事件给使用者加个状态,应该怎么写脚本,请各位达人帮忙,感谢~~~~~

==========================================================================

在水镜风生大大的帮助下这个问题得以解决{/qiang},水镜风生大大的解决方法是:

在Scene_Battle第875行左右
在def execute_action_skill
    skill = @active_battler.action.skill
的下面加上
case skill.id
   when 1 ; @active_battler.add_stat(2)
end
这个的意思就是使用1号技能的人附加上2号状态。

这样不用公共事件就解决了问题(掌声ING)

实用的例子:
再配合技能冷却的脚本,不用较为轻松的实现冷却状态的附加了。
http://rpg.blue/viewthread.php?tid=97100&ntime=2008%2D8%2D14+10%3A24%3A26
[LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 雪流星    时间: 2008-8-13 09:40
搜索「状态法」
作者: 越前リョーマ    时间: 2008-8-13 18:03
LZ的这个技能是攻击敌人的还是施放在我方的?
我方的话不用公共事件,直接在这个技能的状态那里打个钩就好。
攻击技能的话,公共事件好像不能给使用者施加状态……
作者: 涛怒    时间: 2008-8-13 23:27
以下引用越前リョーマ于2008-8-13 10:03:46的发言:

LZ的这个技能是攻击敌人的还是施放在我方的?
我方的话不用公共事件,直接在这个技能的状态那里打个钩就好。
攻击技能的话,公共事件好像不能给使用者施加状态……

是攻击技能,用公共事件不用脚本都可以给某个人加(角色X,或者敌人X),不过很难用,如果一个技能谁都会用,这样做起来会叫人抓狂,在下求一个给技能使用者加状态的脚本~


作者: 涛怒    时间: 2008-8-13 23:31
以下引用snstar2006于2008-8-13 1:40:14的发言:

搜索「状态法」

搜索过了,不行啊……
作者: 越前リョーマ    时间: 2008-8-13 23:41
以下引用涛怒于2008-8-13 15:27:20的发言:


以下引用越前リョーマ于2008-8-13 10:03:46的发言:

LZ的这个技能是攻击敌人的还是施放在我方的?
我方的话不用公共事件,直接在这个技能的状态那里打个钩就好。
攻击技能的话,公共事件好像不能给使用者施加状态……


是攻击技能,用公共事件不用脚本都可以给某个人加(角色X,或者敌人X),不过很难用,如果一个技能谁都会用,这样做起来会叫人抓狂,在下求一个给技能使用者加状态的脚本~

我从来没见过这种方法,所以我要做给别人施加效果自己也要有效果的技能时,就只好略过了,状态法只适用于一类。
作者: 涛怒    时间: 2008-8-13 23:55
我从来没见过这种方法,所以我要做给别人施加效果自己也要有效果的技能时,就只好略过了,状态法只适用于一类。

例如,技能冷却的状态……
作者: ⑩字绯影    时间: 2008-8-14 02:53
在判断技能是否可用的时候
加上
if battler.state?(状态ID)
@skill.skill_can_use?(技能ID)= false
若冷却时间3回合 只要把状态3回合以后100%解除就可以了   


作者: 涛怒    时间: 2008-8-14 18:23
以下引用⑩字绯影于2008-8-13 18:53:39的发言:

在判断技能是否可用的时候
加上
if battler.state?(状态ID)
@skill.skill_can_use?(技能ID)= false
若冷却时间3回合 只要把状态3回合以后100%解除就可以了   


谢谢你……可是大大,这个不是我的问题啊……
已经有人发过方法了:http://rpg.blue/viewthread.php?tid=97100&ntime=2008%2D8%2D14+10%3A24%3A26
作者: 雪流星    时间: 2008-8-14 18:43
直接修改脚本算了
全局搜索make_obj_damage_value

在该行的下面加上:
user.add_state(添加的状态ID) if obj.is_a?(RPG::Skill) && obj.id == 技能的ID [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 涛怒    时间: 2008-8-14 18:52
以下引用snstar2006于2008-8-14 10:43:23的发言:

直接修改脚本算了
全局搜索make_obj_damage_value

在该行的下面加上:
user.add_state(添加的状态ID) if obj.is_a?(RPG::Skill) && obj.id == 技能的ID

感谢指点~~
作者: 水镜风生    时间: 2008-8-14 18:53
问题已解决,结贴吧……
作者: 涛怒    时间: 2008-8-14 19:04
……已经结掉了




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1