Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # =============================================================================
- # TheoAllen - Extended Skill Weapon Requirement
- # Version : 1.0
- # Contact : www.rpgmakerid.com (or) http://theolized.blogspot.com
- # (This script documentation is written in informal indonesian language)
- # =============================================================================
- ($imported ||= {})[:Theo_SkillWeaponReqEX] = true
- # =============================================================================
- # CHANGE LOGS:
- # -----------------------------------------------------------------------------
- # 2013.06.21 - Finished script
- # =============================================================================
- =begin
- Perkenalan :
- Script ini berfungsi untuk menambahkan weapon requirement skill lebih dari
- dua.
- Cara penggunaan :
- Pasang dibawah material namun diatas main.
- Gunakan tag ini pada database skill:
- <require wtype: n>
- <require wtype: n,n>
- Dimana n adalah nomor id type senjatanya
- Terms of use :
- Credit gw, TheoAllen. Kalo semisal u bisa ngedit2 script gw trus jadi lebih
- keren, terserah. Ane bebasin. Asal ngga ngeklaim aja. Kalo semisal mau
- dipake buat komersil, jangan lupa, gw dibagi gratisannya.
- =end
- # =============================================================================
- # Tidak ada konfigurasi
- # =============================================================================
- module THEO
- module SKILL
- module REGEXP
- EXT_WTYPE = /<(?:REQUIRE_WTYPE|require wtype): [ ]*[ ]*(\d+(?:\s*,\s*\d+)*)>/i
- end
- end
- end
- class << DataManager
- alias pre_skillreqext_load_db load_database
- def load_database
- pre_skillreqext_load_db
- load_ext_skill_wtypes
- end
- def load_ext_skill_wtypes
- $data_skills.compact.each do |skill|
- skill.load_ext_wtypes
- end
- end
- end
- class RPG::Skill < RPG::UsableItem
- attr_accessor :wtype_array
- include THEO::SKILL
- def load_ext_wtypes
- @wtype_array = []
- self.note.split(/[\r\n]+/).each do |line|
- case line
- when REGEXP::EXT_WTYPE
- $1.scan(/\d+/).each do |num|
- @wtype_array.push(num.to_i)
- end
- end
- end
- end
- end
- class Game_Actor < Game_Battler
- alias ori_wtype_ok? skill_wtype_ok?
- def skill_wtype_ok?(skill)
- ori_wtype_ok?(skill) || ext_wtype_ok?(skill)
- end
- def ext_wtype_ok?(skill)
- skill.wtype_array.any? do |wtype_id|
- wtype_equipped?(wtype_id)
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment