| 赞 | 0  | 
 
| VIP | 0 | 
 
| 好人卡 | 0 | 
 
| 积分 | 1 | 
 
| 经验 | 389 | 
 
| 最后登录 | 2013-1-27 | 
 
| 在线时间 | 18 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 50 
 
        - 在线时间
 - 18 小时
 
        - 注册时间
 - 2013-1-13
 
        - 帖子
 - 23
 
 
 
 | 
	
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员  
 
x
 
我还在学习脚本中。。。。。 
我也知道自己很笨,呵呵 
下面是脚本 
我想添加属性和前缀名,请问需要怎样添加?- #encoding:utf-8
 
 - #==============================================================================
 
 - # ■ 随机属性装备 By wyongcan
 
 - #==============================================================================
 
 - module Equipplus
 
 - #得到随机属性装备方法:gainequip(装备ID,属性数)
 
 - #~ 前缀结构:
 
 - #~ ①权重(1-100) 越大越重要
 
 - #~ ②名称(多个名称用","分开,会随机取其中一个添加到武器名前)
 
 - #~ ③属性数组  提供两种方式:
 
 - #~ 1.[属性ID,增加值]    属性ID参考说明增强脚本 增加了9号属性“极品出现率” ID为8,影响前缀的好坏 1 - 100
 
 - #~ 2.与装备特性相同[code,data_id,value]  code,data_id参考说明增强脚本
 
 -   @maxparamplus = 3 #最大前缀数
 
 -   @moneyrate = 10 #物品价格计算公式为:原价格 + 前缀权重 * @moneyrate
 
 -   @transpose = [*1..100].reverse #用于把1变成100,100变成1
 
 -   @paramsplus = [           #暂时只写了三个前缀,可以自己添加,参照前缀结构
 
 -   [10,"力量,凶残",[[2,10]]], #物理攻击加10
 
 -   [20,"灵气",[[0,200],[1,200]]], # HP和MP各加200
 
 -  [20,"不屈",[[0,500]]],# HP加500
 
 -  [30,"灵巧",[[22,1,0.1]]],# 闪避+10%
 
 -  [45,"轻盈",[[22,1,0.15]]],# 闪避+15%
 
 -  [25,"魔力",[[1,350]]],# MP+350
 
 -  [30,"专注",[[22,2,0.1]]],# 必杀几率+10%
 
 -  [30,"坚韧",[[22,7,1.1]]],# 体力恢复速度+10%
 
 -  [50,"悟性",[[23,9,1.1]]],# 经验获得+10%
 
 -   [60,"战神",[[21,2,2]]] #物理攻击双倍
 
 -   ]
 
 -   $商店随机 = true #商店买装备时出随机属性
 
 -   $战斗随机 = true #战斗后获得随机属性装备
 
 -   def self.getname(paramsplus)
 
 -     name = ""
 
 -     paramsplus.is_a?(Array) ? paramsplus.each{|a| [url=home.php?mod=space&uid=263426]@temp[/url] = []; a[1].scan(/^[\u4e00-\u9fa5|\w]*|,[\u4e00-\u9fa5|\w]*/){|b| @temp.push b.gsub(","){}}; name += @temp[rand(@temp.size)]} : paramsplus[1].scan(/^[\u4e00-\u9fa5|\w]*|,[\u4e00-\u9fa5|\w]*/){|b| @temp = [] if @temp == nil ;@temp.push b.gsub(","){}}
 
 -     name += @temp[rand(@temp.size)] if paramsplus.is_a?(Array) != true
 
 -     name += "之"
 
 -   end
 
 -   def self.getluck #获得极品出现率
 
 -     luck = 0
 
 -     $game_party.all_members.each{|a| a.weapons.each{|a| luck += a.params[8] if a.params.size == 9};a.armors.each{|a| luck += a.params[8] if a.params.size == 9}}
 
 -     luck
 
 -   end
 
 -   def self.getnewequip(xequip,params = nil) #提供两个参数  装备(RPG::Equip类下的)和附加前缀数,不填则为随机
 
 -     return unless xequip.is_a?(RPG::EquipItem)
 
 -     #xparamplus为前缀数
 
 -     xequip.paramsplus = [] if xequip.paramsplus == nil
 
 -     return if xequip.paramsplus.size >= @maxparamplus
 
 -     params != nil ? xparamplus = params :  xparamplus = rand(@maxparamplus * 110) / 100
 
 -     xparamplus = xparamplus.to_int
 
 -     return xequip if xparamplus == 0
 
 -     equip = xequip.dup
 
 -     paramsplus = equip.paramsplus.dup  #无奈的方法,不这样改一个装备所有同父装备的装备都会变
 
 -     newparams = equip.params.dup
 
 -     newfeatures = equip.features.dup
 
 -     aparamsplus = @paramsplus.collect{|a| [a[0] = @transpose[a[0]-1],a[1],a[2]]}.sort_by{|a| a[0]}
 
 -     while paramsplus.size < xparamplus
 
 -       temp = rand(aparamsplus[-1][0])
 
 -       temp = [temp - getluck,0].max
 
 -       x = []
 
 -       for i in aparamsplus
 
 -         x.push i if i[0] >= temp && paramsplus.include?(i) != true
 
 -       end
 
 -       if x != []
 
 -         a = [(x.size-1)*100 - getluck,0].max
 
 -         a = (rand(a)/100).to_int
 
 -         paramsplus.push x[a]
 
 -       end
 
 -     end
 
 -     equip.name = getname(paramsplus) + equip.name #更新名称
 
 -     paramsplus.each{|a| equip.price += @transpose[a[0] - 1] * @moneyrate} #更新价格
 
 -     paramsplus.select{|a| a[2].select{|a| a.size == 2}.each{|a| newparams[a[0]] += a[1]}} #更新属性
 
 -     #以下为更新特性
 
 -     features = []
 
 -     paramsplus.each{|a| a[2].each{|a| features.push a if a.size == 3}}
 
 -     while features.size > 0
 
 -       i = features.pop
 
 -       newfeatures.select{|a| a.code == i[0] && a.data_id == i[1]}.size == 0 ? newfeatures.push(RPG::BaseItem::Feature.new(i[0],i[1],i[2])) : newfeatures.each_with_index{|a,b| newfeatures[b].value += i[2] if a.code == i[0] && a.data_id == i[1]}
 
 -     end
 
 -     if equip.is_a?(RPG::Weapon)
 
 -       equip.id = $data_weapons.size
 
 -       $data_weapons.insert $data_weapons.size,equip
 
 -       $data_weapons[equip.id].paramsplus = paramsplus
 
 -       $data_weapons[equip.id].params = newparams
 
 -       $data_weapons[equip.id].features = newfeatures
 
 -     else
 
 -       equip.id = $data_armors.size
 
 -       $data_armors.insert $data_armors.size,equip
 
 -       $data_armors[equip.id].paramsplus = paramsplus
 
 -       $data_armors[equip.id].params = newparams
 
 -       $data_armors[equip.id].features = newfeatures
 
 -     end
 
 -     equip
 
 -   end
 
 -   def self.gainequip(id,params = nil)
 
 -     $game_party.gain_item(Equipplus.getnewequip($data_weapons[id],params),1,true)
 
 -   end
 
 - end
 
 - if $商店随机 == true
 
 -   class Scene_Shop < Scene_MenuBase
 
 -     def do_buy(number)
 
 -       $game_party.lose_gold(number * buying_price)
 
 -       if @item.is_a?(RPG::EquipItem)
 
 -         x = number
 
 -         loop do
 
 -           break if x <= 0
 
 -           x -= 1
 
 -           $game_party.gain_item(Equipplus.getnewequip(@item), 1)
 
 -         end
 
 -       else
 
 -         $game_party.gain_item(@item, number)
 
 -       end
 
 -     end
 
 -   end
 
 - end
 
 - if $战斗随机 == true
 
 -   module BattleManager
 
 -     def self.gain_drop_items
 
 -       $game_troop.make_drop_items.each do |item|
 
 -         item.is_a?(RPG::EquipItem) ? xitem = Equipplus.getnewequip(item) : xitem = item
 
 -         $game_party.gain_item(xitem, 1)
 
 -         $game_message.add(sprintf(Vocab::ObtainItem, xitem.name))
 
 -       end
 
 -       wait_for_message
 
 -     end
 
 -   end
 
 - end
 
 - class RPG::EquipItem < RPG::BaseItem
 
 -   alias old initialize
 
 -   def initialize
 
 -     old
 
 -     @paramsplus #前缀
 
 -   end
 
 -   attr_accessor :paramsplus
 
 - end
 
  复制代码 |   
 
 
 
 |