查看: 2623|回复: 8

[已经过期] 如何让两件装备穿上后.分别增加MAXSP和MAXHP?

[复制链接]
梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
回帖
317
发表于 2014-10-3 22:28:09 | 显示全部楼层 |阅读模式

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

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

×
armor1_id  增加防御.气血上限
armor2_id  增加防御.魔法上限

额.就这个意思。
梦石
0
星屑
50
在线时间
65 小时
注册时间
2013-4-18
回帖
79
发表于 2014-10-3 22:59:41 | 显示全部楼层
数据库>状态>新建状态内容编辑maxhp或maxsp的百分比。(比如要增加10%的maxsp,就写成110%)
数据库>防具>自动状态(上面新建的状态)
回复

使用道具 举报

梦石
0
星屑
50
在线时间
206 小时
注册时间
2014-2-8
回帖
378
发表于 2014-10-3 23:18:50 | 显示全部楼层
设置附加状态

点评

一些防具有固定的增加值呢?  发表于 2014-10-3 23:22
回复

使用道具 举报

梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
回帖
317
 楼主| 发表于 2014-10-3 23:21:57 | 显示全部楼层
Thylakoid 发表于 2014-10-3 22:59
数据库>状态>新建状态内容编辑maxhp或maxsp的百分比。(比如要增加10%的maxsp,就写成110%)
数据库>防具>自 ...

一些防具有固定的增加值呢?
回复

使用道具 举报

梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
回帖
317
 楼主| 发表于 2014-10-3 23:44:56 | 显示全部楼层
回复

使用道具 举报

梦石
0
星屑
9557
在线时间
5074 小时
注册时间
2013-6-21
回帖
3459

开拓者贵宾剧作品鉴家

发表于 2014-10-4 09:38:17 | 显示全部楼层
https://rpg.blue/forum.php?mod=viewthread&tid=368720
记得恐惧剑刃大大写过一个类似的,拿去用吧。MAXSP同理。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
65 小时
注册时间
2013-4-18
回帖
79
发表于 2014-10-4 20:06:03 | 显示全部楼层
jiahui5592986 发表于 2014-10-3 23:21
一些防具有固定的增加值呢?

论坛搜索一下关键词maxhp,就有参考。https://rpg.blue/forum.php?mod=v ... amp;highlight=maxhp
回复

使用道具 举报

梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

发表于 2014-10-4 20:56:50 | 显示全部楼层
请你像我这样做(请回复我:“我就像你这样做”)


首先,按下F11打开我们的脚本编辑器,在
  1. Game_Actor
复制代码
里找到
  1. def base_str
复制代码
(默认199行)

参考
  1.   #--------------------------------------------------------------------------
  2.   # ● 获取基本力量
  3.   #--------------------------------------------------------------------------
  4.   def base_str
  5.     n = $data_actors[@actor_id].parameters[2, @level]
  6.     weapon = $data_weapons[@weapon_id]
  7.     armor1 = $data_armors[@armor1_id]
  8.     armor2 = $data_armors[@armor2_id]
  9.     armor3 = $data_armors[@armor3_id]
  10.     armor4 = $data_armors[@armor4_id]
  11.     n += weapon != nil ? weapon.str_plus : 0
  12.     n += armor1 != nil ? armor1.str_plus : 0
  13.     n += armor2 != nil ? armor2.str_plus : 0
  14.     n += armor3 != nil ? armor3.str_plus : 0
  15.     n += armor4 != nil ? armor4.str_plus : 0
  16.     return [[n, 1].max, 999].min
  17.   end
复制代码
我们可以在
  1.   #--------------------------------------------------------------------------
  2.   # ● 获取基本 MaxHP
  3.   #--------------------------------------------------------------------------
  4.   def base_maxhp
  5.     return $data_actors[@actor_id].parameters[0, @level]
  6.   end
  7.   #--------------------------------------------------------------------------
  8.   # ● 获取基本 MaxSP
  9.   #--------------------------------------------------------------------------
  10.   def base_maxsp
  11.     return $data_actors[@actor_id].parameters[1, @level]
  12.   end
复制代码
里面加上类似的东西···具体的嘛,自己设置
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

梦石
0
星屑
9292
在线时间
2504 小时
注册时间
2011-5-20
回帖
14521

开拓者

发表于 2014-10-4 20:57:36 | 显示全部楼层
或者直接使用这样的脚本(不推荐,因为可能与其他脚本产生冲突或者不兼容什么的···)
  1. # 使用方法:装备名字中增加 <hp(n)> 或者 <mp(n)> 。允许一起使用。

  2. class RPG::BaseItem  

  3. alias __name__ name
  4.   
  5. def name
  6.    
  7. name = @name.dup
  8.    
  9. name.gsub(/<.p\([0-9]*\)>/, '')
  10.   
  11. end

  12. end

  13. module RPG
  14.   
  15. def self.get_result(regexp, strings)
  16.    
  17. re = strings.map {|str| str[regexp] ? Integer($1) : 0 }
  18.   
  19. end

  20. end

  21. class Game_Actor
  22.   
  23. alias __maxhp__ maxhp
  24.   
  25. alias __maxmp__ maxmp
  26.   
  27. def get_all_equips
  28.    
  29. ary = [$data_weapons[@weapon_id],
  30.    
  31. $data_armors[@armor1_id],
  32. $data_armors[@armor2_id],
  33.    
  34. $data_armors[@armor3_id],
  35. $data_armors[@armor4_id]]
  36.    
  37. strings = ary.map {|equip| equip.__name__ rescue '' }
  38.   
  39. end
  40.   
  41. def maxhp
  42.    
  43. re = RPG.get_result(/<hp\(([0-9]*)\)>/, get_all_equips)
  44.    
  45. __maxhp__ + re.inject(0) {|result, item| result + item }
  46.   
  47. end
  48.   
  49. def maxmp
  50.    
  51. re = RPG.get_result(/<mp\(([0-9]*)\)>/, get_all_equips)
  52.    
  53. __maxmp__ + re.inject(0) {|result, item| result + item }
  54.   
  55. end   

  56. end
复制代码
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部