赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 8554 |
最后登录 | 2016-12-17 |
在线时间 | 101 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 101 小时
- 注册时间
- 2009-10-7
- 帖子
- 146
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
显示太快了一下子就跳过去了- #===================================================
- #レアアイテムの指定
- #エネミーネームに -r種類 ID 個数(-na 10 10) と入れて指定。
- #種類は、i(アイテム) w(武器) a(防具)のいずれか一つ
- #個数は省略可能、自動で1扱い。
- #また、ドロップアイテムと同一にしたい場合は
- #エネミーネームに -rd 個数(-nd 2) と入れて指定。
- #個数は省略可能、自動で1扱い。
- #===================================================
- def rare_item
- return get_item_from_name("r")#オプション"r"の文字列から取得
- end
- #===================================================
- #*Nameからアイテムを抜き出す処理
- #===================================================
- def get_item_from_name(opt)
- names = $data_enemies[@enemy_id].name.split(/-/)
- if names.size > 1
- for i in 1...names.size
- if names[i][0,1] != opt
- next
- end
- names[i].sub!(/^.(.*)/){$1}
- ary = names[i].split(/ /)
- if ary[0][0,1] == "g"
- cgy = "g"
- id = 0
- if ary[1].nil?
- ary[1] = "1"
- elsif ary[1].sub!(/^([0-9]+)/){$1}.nil?
- ary[1] = "1"
- end
- possession = {"Category"=>cgy, "ID"=>id, "Num"=>ary[1].to_i}
- return possession
- elsif ary[0][0,1] == "d"
- cgy = ""
- id = 0
- if self.item_id != 0
- cgy = "i"
- id = self.item_id
- elsif self.weapon_id != 0
- cgy = "w"
- id = self.weapon_id
- elsif self.armor_id != 0
- cgy = "a"
- id = self.armor_id
- else
- return nil
- end
- if ary[1].nil?
- ary[1] = "1"
- elsif ary[1].sub!(/^([0-9]+)/){$1}.nil?
- ary[1] = "1"
- end
- possession = {"Category"=>cgy, "ID"=>id, "Num"=>ary[1].to_i}
- return possession
- elsif !ary[0].sub!(/^([iwa])/){$1}.nil? && !ary[1].sub!(/^([0-9]+)/){$1}.nil?
- if ary[2].nil? || ary[2].sub!(/^([0-9]+)/){$1}.nil?
- ary[2] = "1"
- end
- possession = {"Category"=>ary[0], "ID"=>ary[1].to_i, "Num"=>ary[2].to_i}
- return possession
- end
- end
- end
- return nil
- end
- #===================================================
- #スティールエフェクト
- #===================================================
- def steal_effect(user, skill) # 引数skillを追加
- pos = self.normal_item
- if !@item_possession || pos.nil?
- @effect_message = "没有东西可偷。"
- #self.damage = "Miss"
- return false
- end
- #盗み成功判定 アジリティが同一で50%、2倍で100%
- if rand(100) <= ((user.agi+0.01)/(self.agi+0.01))*100/2
- r_pos = self.rare_item
- #レアアイテム判定
- if !r_pos.nil? && rand(10) <= 1
- pos = r_pos
- end
- case pos["Category"]
- when "i"
- item = $data_items[pos["ID"]]
- if item.nil?
- print "这个物品不存在!"
- return false
- end
- $game_party.gain_item(item.id, pos["Num"])
- when "w"
- item = $data_weapons[pos["ID"]]
- if item.nil?
- print "这个物品不存在!"
- return false
- end
- $game_party.gain_weapon(item.id, pos["Num"])
- when "a"
- item = $data_armors[pos["ID"]]
- if item.nil?
- print "这个物品不存在!"
- return false
- end
- $game_party.gain_armor(item.id, pos["Num"])
- when "g"
- # ゴールド獲得
- $game_party.gain_gold(pos["Num"])
- end
- if pos["Category"] == "g"
- @effect_message = "#{pos["Num"]}#{$data_system.words.gold}偷到!"
- else
- @effect_message = "#{item.name}#{pos["Num"]}个偷到!"
- end
- @item_possession = false
- self.damage = "Steal!" if self.damage == "Miss"
- return true
- else
- @effect_message = "没有东西可偷???"
- #self.damage = "Miss
- return false
- end
- return false # 念のためfalse返す処理追加
- # 多分なくてもifの結果(false)が返ると思うけど…
- end
- end
复制代码 |
|