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

Project1

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

需要能力值才能装备的武器和防具

 关闭 [复制链接]

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
跳转到指定楼层
1
发表于 2008-2-13 08:46:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
这是根据 六脉神剑,66饭,orochi2k,柳柳 等一伙人的“到达一定等级才能装备的武器和防具”脚本改编的

  1. #---------------------------------------------------------------------------------
  2. #需要能力值才能装备 改编自到达一定等级才能装备的武器和防具 By凌冰
  3. #用法:在武器、防具的说明里添加LV等级(后面的等级写个数字)STR力量(后面的力量写个数字)
  4. #DEX灵巧(后面的灵巧写个数字)AGI速度(后面的速度写个数字)INT魔力(后面的魔力写个数字)
  5. #可以空缺,空缺项默认为1
  6. #建议和升级加点脚本配合使用
  7. #---------------------------------------------------------------------------------
  8. module RPG
  9.   class Weapon
  10.     def level
  11.      return 1 if @description.split(/LV/)[1] == nil
  12.      return @description.split(/LV/)[1]
  13.    end
  14.    def str
  15.      return 1 if @description.split(/STR/)[1] == nil
  16.      return @description.split(/STR/)[1]
  17.    end
  18.    def dex
  19.      return 1 if @description.split(/DEX/)[1] == nil
  20.      return @description.split(/DEX/)[1]
  21.    end
  22.    def agi
  23.      return 1 if @description.split(/AGI/)[1] == nil
  24.      return @description.split(/AGI/)[1]
  25.    end
  26.    def int
  27.      return 1 if @description.split(/INT/)[1] == nil
  28.      return @description.split(/INT/)[1]
  29.    end
  30. #    def description      
  31. #      return @description.split(/LV/)[0] + "{装备等级" + level + "}"
  32. #    end
  33. end
  34. class Armor
  35.     def level
  36.      return 1 if @description.split(/LV/)[1] == nil
  37.      return @description.split(/LV/)[1]
  38.    end
  39.    def str
  40.      return 1 if @description.split(/STR/)[1] == nil
  41.      return @description.split(/STR/)[1]
  42.    end
  43.    def dex
  44.      return 1 if @description.split(/DEX/)[1] == nil
  45.      return @description.split(/DEX/)[1]
  46.    end
  47.    def agi
  48.      return 1 if @description.split(/AGI/)[1] == nil
  49.      return @description.split(/AGI/)[1]
  50.    end
  51.    def int
  52.      return 1 if @description.split(/INT/)[1] == nil
  53.      return @description.split(/INT/)[1]
  54.    end
  55. #    def description      
  56. #      return @description.split(/LV/)[0] + "{装备等级" + level + "}"
  57. #    end
  58.   end
  59. end

  60. class Game_Actor < Game_Battler
  61. #--------------------------------------------------------------------------
  62. # ● 可以装备判定
  63. #     item : 物品
  64. #--------------------------------------------------------------------------
  65. def equipable?(item)
  66.    # 武器的情况
  67.    if item.is_a?(RPG::Weapon)
  68.      # 包含当前的职业可以装备武器的场合
  69.      if $data_classes[@class_id].weapon_set.include?(item.id) and item.level.to_i<=@level
  70.        if item.str.to_i<= str and item.dex.to_i<= dex and item.agi.to_i<= agi and item.int.to_i<= int
  71.        return true
  72.        end
  73.      end
  74.    end
  75.    # 防具的情况
  76.    if item.is_a?(RPG::Armor)
  77.      # 不包含当前的职业可以装备武器的场合
  78.      if $data_classes[@class_id].armor_set.include?(item.id) and item.level.to_i<=@level
  79.        if item.str.to_i<= str and item.dex.to_i<= dex and item.agi.to_i<= agi and item.int.to_i<= int
  80.        return true
  81.        end
  82.      end
  83.    end
  84.    return false
  85. end
  86. end
  87. #==============================================================================
  88. # ■ Window_EquipItem
  89. #------------------------------------------------------------------------------
  90. #  装备画面、显示浏览变更装备的候补物品的窗口。
  91. #==============================================================================

  92. class Window_EquipItem < Window_Selectable
  93.   #--------------------------------------------------------------------------
  94.   # ● 刷新
  95.   #--------------------------------------------------------------------------
  96.   def refresh
  97.     if self.contents != nil
  98.       self.contents.dispose
  99.       self.contents = nil
  100.     end
  101.     @data = []
  102.     # 添加可以装备的武器
  103.     if @equip_type == 0
  104.       weapon_set = $data_classes[@actor.class_id].weapon_set
  105.       for i in 1...$data_weapons.size
  106.         if $game_party.weapon_number(i) > 0 and weapon_set.include?(i) and @actor.equipable?($data_weapons[i])
  107.           @data.push($data_weapons[i])
  108.         end
  109.       end
  110.     end
  111.     # 添加可以装备的防具
  112.     if @equip_type != 0
  113.       armor_set = $data_classes[@actor.class_id].armor_set
  114.       for i in 1...$data_armors.size
  115.         if $game_party.armor_number(i) > 0 and armor_set.include?(i) and @actor.equipable?($data_armors[i])
  116.           if $data_armors[i].kind == @equip_type-1
  117.             @data.push($data_armors[i])
  118.           end
  119.         end
  120.       end
  121.     end
  122.     # 添加空白
  123.     @data.push(nil)
  124.     # 生成位图、描绘全部项目
  125.     @item_max = @data.size
  126.     self.contents = Bitmap.new(width - 32, row_max * 32)
  127.     for i in 0...@item_max-1
  128.       draw_item(i)
  129.     end
  130.   end
  131. end
复制代码

范例工程
http://rpg.blue/upload_program/f ... 防具_83292491.rar
设置方法:如图需要等级为5力量为10才能装备


范例工程里的升级提示和得失物品提示脚本,是为了更直观的体现这个脚本,用不着就54吧

              [本贴由 风雪优游 于 2008-4-2 22:41:43 进行了编辑]
不常在线,有事PM

Lv1.梦旅人

梦石
0
星屑
74
在线时间
117 小时
注册时间
2007-8-5
帖子
479
2
发表于 2008-2-13 16:25:58 | 只看该作者
吓我一跳的说{/gg}
偶是 传说逍遥
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
3
 楼主| 发表于 2008-2-13 16:44:49 | 只看该作者
以下引用q2571875于2008-2-13 8:25:58的发言:

吓我一跳的说

什么意思
不常在线,有事PM
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
4
 楼主| 发表于 2008-2-14 03:26:04 | 只看该作者
真失望,没人顶
不常在线,有事PM
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
5
 楼主| 发表于 2008-2-14 12:21:55 | 只看该作者
怎么还米人顶
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
7 小时
注册时间
2006-9-6
帖子
156
6
发表于 2008-2-14 17:47:04 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

SB们再见

梦石
0
星屑
50
在线时间
13 小时
注册时间
2007-12-15
帖子
3592
7
发表于 2008-2-14 18:10:20 | 只看该作者
感觉,应该不常用
毕竟很少有人会想到这里吧
。。。。。。。。。。
像咱这种人
会遇到爱嘛!
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
7 小时
注册时间
2006-9-6
帖子
156
8
发表于 2008-2-14 18:19:24 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
9
 楼主| 发表于 2008-2-14 20:59:21 | 只看该作者
以下引用死圣于2008-2-14 10:10:20的发言:

感觉,应该不常用
毕竟很少有人会想到这里吧
以下引用飞虫于2008-2-14 10:19:24的发言:

一般来说 技能学习是需要等级的 毕竟能够增加一定的游戏性

见仁见智吧
不常在线,有事PM
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
10
 楼主| 发表于 2008-2-15 01:56:50 | 只看该作者
以下引用死圣于2008-2-14 10:10:20的发言:

感觉,应该不常用
毕竟很少有人会想到这里吧
以下引用飞虫于2008-2-14 10:19:24的发言:

一般来说 技能学习是需要等级的 毕竟能够增加一定的游戏性

正如我在脚本里写到的,建议和升级加点脚本配合使用
很多游戏里也有这种限定,说不定有人要复刻,那本脚本多少会起些参考作用
不常在线,有事PM
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-4-5 05:51

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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