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

Project1

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

[已经解决] 请教关于反击技能的问题。

[复制链接]

Lv1.梦旅人

梦石
0
星屑
109
在线时间
65 小时
注册时间
2012-9-28
帖子
99
跳转到指定楼层
1
发表于 2012-10-26 01:50:11 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
2星屑
恩,游戏里的反击技能,是默认使用普通攻击来反击对手的,不知道可不可以用事件来自行设置反击的技能呢?
这样敌人一攻击,就会自动使用设置好的技能反击,而不是普通攻击?

最佳答案

查看完整内容

事件脚本里+ $counter_attack_skill_id = x 反击时使用x号技能。。 [hr]升级版。。。。。。。 #encoding:utf-8 #============================================================================== # ■ Game_BattlerBase #------------------------------------------------------------------------------ #  管理战斗者的类。主要含有能力值计算的方法。Game_Battler 类的父类。 #========================================== ...

点评

[url=home.php?mod=space&username=Mic_洛洛]@Mic_洛洛[/url]分类  发表于 2012-11-5 22:39

Lv3.寻梦者

梦石
0
星屑
1369
在线时间
962 小时
注册时间
2012-4-30
帖子
1475

开拓者

2
发表于 2012-10-26 01:50:12 | 只看该作者
本帖最后由 铅笔描绘的思念 于 2012-10-26 11:20 编辑
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ Game_BattlerBase
  4. #------------------------------------------------------------------------------
  5. #  管理战斗者的类。主要含有能力值计算的方法。Game_Battler 类的父类。
  6. #==============================================================================
  7. $counter_attack_skill_id = 1
  8. class Game_BattlerBase
  9.   #--------------------------------------------------------------------------
  10.   # ● 获取反击攻击的技能 ID
  11.   #--------------------------------------------------------------------------
  12.   def counter_attack_skill_id
  13.     return $counter_attack_skill_id
  14.   end
  15. end

  16. #encoding:utf-8
  17. #==============================================================================
  18. # ■ Scene_Battle
  19. #------------------------------------------------------------------------------
  20. #  战斗画面
  21. #==============================================================================

  22. class Scene_Battle < Scene_Base
  23.   #--------------------------------------------------------------------------
  24.   # ● 发动反击
  25.   #--------------------------------------------------------------------------
  26.   def invoke_counter_attack(target, item)
  27.     @log_window.display_counter(target, item)
  28.     attack_skill = $data_skills[target.counter_attack_skill_id]
  29.     @subject.item_apply(target, attack_skill)
  30.    
  31.     @log_window.display_use_item(target, attack_skill)
  32.    
  33.     refresh_status
  34.     @log_window.display_action_results(@subject, attack_skill)
  35.   end
  36. end
复制代码
事件脚本里+ $counter_attack_skill_id = x 反击时使用x号技能。。


升级版。。。。。。。
RUBY 代码复制
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ Game_BattlerBase
  4. #------------------------------------------------------------------------------
  5. #  管理战斗者的类。主要含有能力值计算的方法。Game_Battler 类的父类。
  6. #==============================================================================
  7.  
  8. class Game_BattlerBase
  9.   attr_accessor        :counter_attack_skill_id
  10.   alias old_initialize initialize
  11.   #--------------------------------------------------------------------------
  12.   # ● 初始化对象
  13.   #--------------------------------------------------------------------------
  14.   def initialize
  15.     old_initialize
  16.     @counter_attack_skill_id = 1
  17.   end
  18. end
  19.  
  20. #encoding:utf-8
  21. #==============================================================================
  22. # ■ Scene_Battle
  23. #------------------------------------------------------------------------------
  24. #  战斗画面
  25. #==============================================================================
  26.  
  27. class Scene_Battle < Scene_Base
  28.   #--------------------------------------------------------------------------
  29.   # ● 发动反击
  30.   #--------------------------------------------------------------------------
  31.   def invoke_counter_attack(target, item)
  32.     @log_window.display_counter(target, item)
  33.     attack_skill = $data_skills[target.counter_attack_skill_id]
  34.     @subject.item_apply(target, attack_skill)
  35.     @log_window.display_use_item(target, attack_skill)
  36.     refresh_status
  37.     @log_window.display_action_results(@subject, attack_skill)
  38.   end
  39. end

@kittyblain插Main前  事件应该是做不到。。。

点评

[url=home.php?mod=space&username=lirn]@lirn[/url] $game_troop[id].counter_attack_skill_id = y  发表于 2012-10-29 15:45
如果是对敌人设置呢?  发表于 2012-10-29 00:00
升级版什么的是用$game_actors[x].counter_attack_skill_id = y 来设定x号角色的反击是y号技能  发表于 2012-10-26 11:21
噢~~~~谢谢回复~~~ 这个功能是不是只能用脚本来实现呢?这一段脚本要插在哪里啊- - 作为新手,猫表示对脚本完全无力呢- -  发表于 2012-10-26 11:18
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
109
在线时间
65 小时
注册时间
2012-9-28
帖子
99
3
 楼主| 发表于 2012-10-26 11:39:14 | 只看该作者
铅笔描绘的思念 发表于 2012-10-26 01:50
事件脚本里+ $counter_attack_skill_id = x 反击时使用x号技能。。


升级版。。。。。。。

是不是插入完这一段脚本后,还需要建立事件, 在事件脚本里选择
角色的反击技能呢?

点评

使用事件里第3页的高级脚本功能 使用$game_actors[x].counter_attack_skill_id = y 来设定x号角色的反击技能是y号技能  发表于 2012-10-26 11:42
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
109
在线时间
65 小时
注册时间
2012-9-28
帖子
99
4
 楼主| 发表于 2012-10-26 11:44:32 | 只看该作者
kittyblain 发表于 2012-10-26 11:39
是不是插入完这一段脚本后,还需要建立事件, 在事件脚本里选择
角色的反击技能呢? ...

哦,然后括号里的x就替换成角色的编号,而y则替换成技能的编号,是这样吗?
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
109
在线时间
65 小时
注册时间
2012-9-28
帖子
99
5
 楼主| 发表于 2012-10-26 11:54:04 | 只看该作者
铅笔描绘的思念 发表于 2012-10-26 01:50
事件脚本里+ $counter_attack_skill_id = x 反击时使用x号技能。。


升级版。。。。。。。

功能已经实现了非常感谢!
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1019 小时
注册时间
2012-4-25
帖子
799
6
发表于 2012-12-5 00:06:29 | 只看该作者
@铅笔描绘的思念

升级版的可以发来示范来看看?


是不是这样,我的怎么觉得好像没有效果?
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
109
在线时间
65 小时
注册时间
2012-9-28
帖子
99
7
 楼主| 发表于 2012-12-7 20:15:57 | 只看该作者
lirn 发表于 2012-12-5 00:06
@铅笔描绘的思念

升级版的可以发来示范来看看?

猫用的是一个并行的公共事件来设置这段脚本- -
这样游戏中的默认反击技能(比如魔法反射)就会使用你设定好的那个技能了。。。。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1019 小时
注册时间
2012-4-25
帖子
799
8
发表于 2012-12-7 21:13:14 | 只看该作者
kittyblain 发表于 2012-12-7 20:15
猫用的是一个并行的公共事件来设置这段脚本- -
这样游戏中的默认反击技能(比如魔法反射)就会使用你设 ...

就是没有效果。公共事件我也试过,但实际被怪物攻击的反击还是普通攻击
因为我用的是后知后觉横版,我也为反击设置了另外的动画。所以一眼就看得出来,不知道两者是不是有冲突。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
109
在线时间
65 小时
注册时间
2012-9-28
帖子
99
9
 楼主| 发表于 2012-12-10 01:15:08 | 只看该作者
lirn 发表于 2012-12-7 21:13
就是没有效果。公共事件我也试过,但实际被怪物攻击的反击还是普通攻击
因为我用的是后知后觉横版,我也 ...

可能是脚本冲突吧- -
猫是事件党,游戏里基本上没有安插别的脚本,因此没有什么冲突。
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-1 11:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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