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

Project1

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

[已经过期] 技能升级脚本改进,同组技能高级自动替换低级

[复制链接]

Lv2.观梦者

梦石
0
星屑
270
在线时间
25 小时
注册时间
2019-5-5
帖子
12
跳转到指定楼层
1
发表于 2021-3-3 06:55:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
原帖: https://rpg.blue/thread-397283-1-1.html

这贴的功能大部分已能满足我的需求,但我的一个需求和那个楼主不同,我需要【替换的技能名与原技能名不同】,必须让玩家知道自己获得了新技能。
例如,这一系列技能,火球术→大火球术→超级火球术→凤凰冲击→地爆天星,获得新技能后自动替换掉旧的;
目前我的思路是:在技能名上再增加一个标识,用以检测同一组技能,例如:
火球术{001}[1]
大火球术{001}[2]
超级火球术{001}[3]
凤凰冲击{001}[4]
地爆天星{001}[5]

脚本检测到{001}的就表示“火球系技能”,这一系里获得新的就删除旧的


求大神帮忙,或者已有现成的脚本可指路,谢过先
Morir es vivir.

Lv5.捕梦者

梦石
0
星屑
36442
在线时间
10800 小时
注册时间
2009-3-15
帖子
4814
2
发表于 2021-3-3 15:50:32 | 只看该作者
本帖最后由 soulsaga 于 2021-3-3 19:41 编辑

RUBY 代码复制
  1. 替换技能组={
  2. "大火球术"=>"火球术",
  3. "超级火球术"=>"大火球术",
  4. "凤凰冲击"=>"超级火球术",
  5. "地爆天星"=>"凤凰冲击"
  6. }
  7. Game_Actor = Class.new(Game_Actor) do
  8.     superclass.constants.each{|c|const_set(c, superclass.const_get(c))}
  9.     def learn_skill(id)
  10.       s = @skills.clone
  11.       super(id)
  12.       if @skills != s
  13.         s1 = $data_skills[id].name
  14.         if 替换技能组[s1]
  15.         for skill in @skills
  16.         forget_skill(skill.id) if 替换技能组[s1] == skill.name
  17.       end
  18.     end
  19.   end
  20. end
  21. end


萌新随便写写..未测试..可能不太行?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 23:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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