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

Project1

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

[已经解决] 复制技能

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
74 小时
注册时间
2013-3-6
帖子
25
跳转到指定楼层
1
发表于 2013-6-4 20:24:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
就是做一个可以复制别人技能的技能,对敌人使用以后就能复制敌人最后一次使用的技能

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

2
发表于 2013-6-6 18:43:20 | 只看该作者
DOTA大魔导师拉比克的技能窃取
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
49
在线时间
276 小时
注册时间
2011-6-5
帖子
133
3
发表于 2013-6-6 22:26:17 | 只看该作者
本帖最后由 救世小树 于 2013-6-6 22:28 编辑

偷技能啊。。很有意思的东西呢~
恩,经过我不是很仔细的测试初步可行,新鲜出炉~刚写的脚本,配合范例观看效果更佳,
范例利用状态避开了“对xxx没有效果”的提示,不过没有做出提示到底偷了什么技能的效果,
steal_skill.rar (300.85 KB, 下载次数: 80)
注意事项:偷技能者要有所有的技能类型,不然有些技能偷学来找不到~
偷学者第一次偷技能就会多出一个技能,之后再偷将覆盖那个技能,
不再偷技能覆盖则技能在战斗结束之前存在,战斗结束后技能将被遗忘。
恩,水平有限只能做成这样了,希望有真·大神可以完善一下,比如自动附加上那个技能类型之类的。。

  1. class Game_Battler < Game_BattlerBase
  2.   
  3.   Steal_Skill_Skill_id = 130 #偷技能的技能的skill_id
  4.   
  5.   attr_accessor :steal_skill_id
  6.   attr_accessor :recent_skill_id
  7.   
  8.   alias initialize_tre initialize
  9.   def initialize
  10.     @steal_skill_id = 0
  11.     @recent_skill_id = 0
  12.     initialize_tre
  13.   end
  14.   
  15.   alias item_apply_tre item_apply
  16.   def item_apply(user, item)
  17.     item_apply_tre(user, item)
  18.     if item.is_a?(RPG::Skill)
  19.       case item.id
  20.       when Steal_Skill_Skill_id
  21.         return if user.skills.include?(self.recent_skill_id)
  22.         user.steal_skill(self.recent_skill_id)
  23.       when 1,2,  76,77,78#可以在这里添加无法被偷的技能
  24.         return
  25.       else
  26.         user.recent_skill_id = item.id
  27.       end
  28.     end
  29.   end
  30.   
  31.   def steal_skill(skill_id)
  32.     if self.is_a?(Game_Actor) and skill_id != 0 and skill_id != 1 and skill_id != 2
  33.       self.forget_skill(self.steal_skill_id)
  34.       self.steal_skill_id = skill_id
  35.       self.learn_skill(skill_id)
  36.     end
  37.   end
  38.   
  39.   alias steal_skill_on_battle_end on_battle_end
  40.   def on_battle_end
  41.     steal_skill_on_battle_end
  42.     if self.is_a?(Game_Actor) and [0,1,2].include?(self.steal_skill_id)
  43.       self.forget_skill(self.steal_skill_id)
  44.     end
  45.   end
  46.   
  47. end
复制代码

评分

参与人数 1梦石 +1 收起 理由
Sion + 1 认可答案

查看全部评分

研表究明,汉字的序顺并不定一能影阅响读,比如当你看完这话句后,才发这现里的字全是都乱的
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
74 小时
注册时间
2013-3-6
帖子
25
4
 楼主| 发表于 2013-6-6 23:33:21 | 只看该作者
救世小树 发表于 2013-6-6 22:26
偷技能啊。。很有意思的东西呢~
恩,经过我不是很仔细的测试初步可行,新鲜出炉~刚写的脚本,配合范例观看 ...

没有,依旧是大神
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-18 16:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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