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

Project1

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

[原创发布] 手动式装备评分限制更换

[复制链接]

Lv5.捕梦者

梦石
0
星屑
26259
在线时间
5354 小时
注册时间
2016-3-8
帖子
1655
跳转到指定楼层
1
发表于 2021-2-19 11:54:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 alexncf125 于 2021-2-19 19:41 编辑

使用方法...往装备的备注栏写上<score:分数>
比如说, 武器A写了<score:10>, 武器B写了<score:200>
写好后...角色装备上武器B时, 会变得不能換装成武器A

注意...这个脚本与最强装备的机制产生了一个小bug...最强装备会是分数最高的装备...但当遇上"最高分数相同的两件装备"的情況时...不会根据两件装备的属性来決定最强装备...所以一是不要写相同的分数, 一是依此折叠内容删除「最强装备」功能


RUBY 代码复制
  1. class Game_BattlerBase
  2.   alias score_equippable? equippable?
  3.   def equippable?(item)
  4.     if item
  5.       item.note =~ /<score:(\d+)>/i
  6.       new_score = $1.to_i
  7.       if @equips[item.etype_id].object
  8.         @equips[item.etype_id].object.note =~ /<score:(\d+)>/i
  9.         old_score = $1.to_i
  10.       end
  11.     end
  12.     new_score ||= 0; old_score ||= 0
  13.     return false if new_score < old_score
  14.     return score_equippable?(item)
  15.   end
  16. end
  17.  
  18. class Game_Actor < Game_Battler
  19.   alias score_change_equip change_equip
  20.   def change_equip(slot_id, item)
  21.     if item
  22.       item.note =~ /<score:(\d+)>/i
  23.       new_score = $1.to_i
  24.     end
  25.     if @equips[slot_id].object
  26.       @equips[slot_id].object.note =~ /<score:(\d+)>/i
  27.       old_score = $1.to_i
  28.     end
  29.     new_score ||= 0; old_score ||= 0
  30.     return if new_score < old_score
  31.     return score_change_equip(slot_id, item)
  32.   end
  33. end
  34.  
  35. class Window_EquipItem < Window_ItemList
  36.  
  37.   def include?(item)
  38.     return true if item == nil
  39.     return false unless item.is_a?(RPG::EquipItem)
  40.     return false if @slot_id < 0
  41.     return false if item.etype_id != @actor.equip_slots[@slot_id]
  42.     return true#~     return @actor.equippable?(item)
  43.   end
  44.  
  45.   def enable?(item)
  46.     return true if item.nil?
  47.     return @actor.equippable?(item)#~     return true
  48.   end
  49.  
  50. end

Lv3.寻梦者

梦石
0
星屑
1107
在线时间
126 小时
注册时间
2020-11-27
帖子
51
2
发表于 2021-2-23 12:14:06 | 只看该作者
支持大佬!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 00:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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