Dust Collector
Member-
Content Count
786 -
Joined
-
Last visited
-
Days Won
11
Content Type
Profiles
Forums
Blogs
Downloads
Calendar
Gallery
Everything posted by Dust Collector
-
3,411 downloads
Mr Mo's ABS Introduction Version : V 4.5 I wasn't happy with all the other ABSs, so I made this ABS with many features and customizable as possible. Features Here are some(most features can be toggled off/on, see the help file); - Improved AI - Event Vs Event - Player Vs Event - Able to choose if a monster attacks the closest enemy or random - Able to assign any hot keys for skills and items. - Able to use Non-Ranged Skills(attacks closest enemy) - Able to choose button Mash time for each attack or skill. If left blank the default is 3 seconds(can change). - Displays Demage - Level Up Display - Kick Back Effect - Fade dead enemies - ABS off/on. i.e $ABS.active = false # Off - Dash and Sneak, can be turned off. - Able to turn off and on the hud. - Able to animate monsters and player. - State Effects and Animations - Smaller Animations - and more..! (See the Help File) Thanks and Credits Credit me and Near Fantastica. # Thanks to Near Fantastica's methods; # - In Range?, Get Range, In Direction?, enemy_dead?, treasure # - RANGE_WEAPONS, RANGE_SKILLS # - Class Game_Range(highly modified for convinience) # - Scene_Skill(main, update_shk) This is not an edit of Near Fantastica's ABS. I wrote mines from scratch, except for the methods I listed. If you plan to use the blonde girl that comes with this, give credit to Prexus too, for using them. If you plan to use the Hud: Credit Trickster for the Gradient Bars Credit Me for coding it. Credit Axerax for designing it and coding it -
1,612 downloads
Chrono Trigger CMS Introduction A CMS that looks like the menu system in the videogame Chrono Trigger Update: September, 14th Added a Windowskin version of the menu and fixed some bugs. Update: September, 19th Added a ring menu version of the script Features * new item menu * new skill menu (no double or tripple techs included) * new equip menu * party order changing feature * new save and load menu Update: September, 19th * ring menu command window Instructions Instructions are within the scripts in the demo. FAQ [spoiler=How to make it compatible with Dubealex's AMS] In the CMS find these lines: def write_save_data(file) # Make character data for drawing save file characters = [] for i in 0...$game_party.actors.size actor = $game_party.actors[i] characters.push([actor.character_name, actor.character_hue]) end # Write character data for drawing save file Marshal.dump(characters, file) # Wrire frame count for measuring play time Marshal.dump(Graphics.frame_count, file) # Increase save count by 1 $game_system.save_count += 1 # Save magic number # (A random value will be written each time saving with editor) $game_system.magic_number = $data_system.magic_number # Write each type of game object Marshal.dump($game_system, file) Marshal.dump($game_switches, file) Marshal.dump($game_variables, file) Marshal.dump($game_self_switches, file) Marshal.dump($game_screen, file) Marshal.dump($game_actors, file) Marshal.dump($game_party, file) Marshal.dump($game_troop, file) Marshal.dump($game_map, file) Marshal.dump($game_player, file) end After Marshal.dump($game_player, file) add Marshal.dump($ams, file) You old save file won't work, but new ones will. [spoiler=How to use only the save menu(Windowskin Version)]For the save menu put this script above main: #============================================================================== # ** Chrono Trigger Save Menu #------------------------------------------------------------------------------ # Raziel # 2006-09-09 # Version 1.00 #============================================================================== # ~Instructions # Icons of the characters are used in the save menu. # Make sure you put them in the icon folder and name them # like you name your character file, for example the icon for # Arshes would be 001-Fighter01 # # For the chapter function, just use $game_system.chapter = "desired filename" # in a call script command and then the savefile will have the name # you choose. #============================================================================== #============================================================================== # ** Scene_File #------------------------------------------------------------------------------ # This is a superclass for the save screen and load screen. #============================================================================== class Scene_File #-------------------------------------------------------------------------- # * Object Initialization # help_text : text string shown in the help window #-------------------------------------------------------------------------- def initialize(help_text) @help_text = help_text end #-------------------------------------------------------------------------- # * Main Processing #-------------------------------------------------------------------------- def main # Make save file window @back_ground = Sprite.new @back_ground.bitmap = RPG::Cache.picture(CT_Pictures::BG_Picture) @save_window = [] @save_window[0] = Window_Base.new(39,32, 560, 70) @save_window[1] = Window_Base.new(39,102, 560, 70) @save_window[2] = Window_Base.new(39,172, 560, 70) @save_left = Window_Base.new(39,273,241,172) @save_right = Window_Base.new(280,273,320,172) @savefile_windows = [] @save_status = Window_SaveStatus.new for i in 0..2 @savefile_windows.push(Window_SaveFile.new(i, make_filename(i))) end # Select last file to be operated @file_index = $game_temp.last_file_index @savefile_windows[@file_index].selected = true # Execute transition Graphics.transition # Main loop loop do # Update game screen Graphics.update # Update input information Input.update # Frame update update # Abort loop if screen is changed if $scene != self break end end # Prepare for transition Graphics.freeze # Dispose of windows @save_status.dispose @back_ground.dispose @save_left.dispose @save_right.dispose for i in 0..2 @save_window[i].dispose end for i in @savefile_windows i.dispose end end #-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update @save_status.update $game_temp.save_index = @file_index if Input.trigger?(Input::C) # Call method: on_decision (defined by the subclasses) on_decision(make_filename(@file_index)) $game_temp.last_file_index = @file_index return end # If B button was pressed if Input.trigger?(Input::B) # Call method: on_cancel (defined by the subclasses) on_cancel return end # If the down directional button was pressed if Input.repeat?(Input::DOWN) # If the down directional button pressed down is not a repeat, # or cursor position is more in front than 3 unless @file_index == 2 if Input.trigger?(Input::DOWN) # Play cursor SE $game_system.se_play($data_system.cursor_se) # Move cursor down @savefile_windows[@file_index].selected = false @file_index = (@file_index + 1) @savefile_windows[@file_index].selected = true return end end # If the up directional button was pressed elsif Input.repeat?(Input::UP) # If the up directional button pressed down is not a repeat、 # or cursor position is more in back than 0 unless @file_index == 0 if Input.trigger?(Input::UP) # Play cursor SE $game_system.se_play($data_system.cursor_se) # Move cursor up @savefile_windows[@file_index].selected = false @file_index = (@file_index - 1) @savefile_windows[@file_index].selected = true return end end end end end #============================================================================== # ** Game_System #------------------------------------------------------------------------------ # This class handles data surrounding the system. Backround music, etc. # is managed here as well. Refer to "$game_system" for the instance of # this class. #============================================================================== class Game_System attr_accessor :chapter alias raz_cms_system_initialize initialize #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize @chapter = "" raz_cms_system_initialize end end #============================================================================== # ** Game_Temp #------------------------------------------------------------------------------ # This class handles temporary data that is not included with save data. # Refer to "$game_temp" for the instance of this class. #============================================================================== class Game_Temp attr_accessor :save_index alias raz_cms_initialize initialize #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize @save_index = 0 raz_cms_initialize end end #============================================================================== # ** Window_SaveStatus #------------------------------------------------------------------------------ # This window displays stats on the save files. #============================================================================== class Window_SaveStatus < Window_Base #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0,0,640,480) self.contents = Bitmap.new(width - 32, height - 32) self.opacity = 0 @index = $game_temp.save_index refresh end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear filename = "Save#{$game_temp.save_index + 1}.rxdata" return unless FileTest.exist?(filename) file = File.open(filename, "r") @characters = Marshal.load(file) @frame_count = Marshal.load(file) @game_system = Marshal.load(file) @game_switches = Marshal.load(file) @game_variables = Marshal.load(file) Marshal.load(file) Marshal.load(file) Marshal.load(file) party = Marshal.load(file) Marshal.load(file) map = Marshal.load(file) self.contents.font.size = 20 self.contents.font.bold = true for i in 0...party.actors.size actor = party.actors[i] x = 284 y = i * 36 + 265 draw_actor_name(actor, x + 40, y - 2) draw_actor_level(actor, x + 170, y - 2) self.contents.blt(x + 5, y + 10, RPG::Cache.icon(actor.character_name), Rect.new(0,0,24,24)) self.contents.draw_text(x + 40, y + 16, 150, 32, "#{$data_system.words.hp} #{actor.hp} / #{actor.maxhp}") self.contents.draw_text(x + 170, y + 16, 150, 32, "#{$data_system.words.sp} #{actor.sp} / #{actor.maxsp}") end total_sec = @frame_count / Graphics.frame_rate hour = total_sec / 60 / 60 min = total_sec / 60 % 60 sec = total_sec % 60 text = sprintf("%02d:%02d:%02d", hour, min, sec) map_name = load_data("Data/MapInfos.rxdata")[map.map_id].name self.contents.font.size = 20 self.contents.draw_text(45, 272, 144, 32, map_name) self.contents.draw_text(45, 304, 144, 32, "TIME:") self.contents.draw_text(100, 304, 144, 32, text,2) self.contents.draw_text(45, 336, 144, 32, $data_system.words.gold + ":") self.contents.draw_text(100, 336, 144, 32, party.gold.to_s,2) self.contents.draw_text(45, 368, 144, 32, "Save #:") self.contents.draw_text(100, 368, 144, 32, @game_system.save_count.to_s, 2) end #-------------------------------------------------------------------------- # * Update #-------------------------------------------------------------------------- def update super if @index != $game_temp.save_index refresh @index = $game_temp.save_index end end end #============================================================================== # ** Window_SaveFile #------------------------------------------------------------------------------ # This window displays save files on the save and load screens. #============================================================================== class Window_SaveFile < Window_Base #-------------------------------------------------------------------------- # * Object Initialization # file_index : save file index (0-2) # filename : file name #-------------------------------------------------------------------------- def initialize(file_index, filename) super(42, 35 + file_index % 4 * 70, 640, 90) self.contents = Bitmap.new(width - 32, height - 32) self.opacity = 0 @file_index = file_index @filename = "Save#{@file_index + 1}.rxdata" @time_stamp = Time.at(0) @file_exist = FileTest.exist?(@filename) if @file_exist file = File.open(@filename, "r") @time_stamp = file.mtime @characters = Marshal.load(file) @frame_count = Marshal.load(file) @game_system = Marshal.load(file) @game_switches = Marshal.load(file) @game_variables = Marshal.load(file) @total_sec = @frame_count / Graphics.frame_rate file.close end refresh @selected = false end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear self.contents.font.size = 18 self.contents.font.bold = true # Draw file number self.contents.font.color = normal_color name = "File#{@file_index + 1}" self.contents.draw_text(4, 0, 600, 32, name) @name_width = contents.text_size(name).width # If save file exists if @file_exist self.contents.draw_text(0, 0, 600, 32, @game_system.chapter.to_s,1) end end end Compatibility Incompatible with some menu add ons. You'd have to edit some things to include them. If you want to include something just ask, maybe I can help you. Credits and Thanks Credits to Squall / Selwyn for his cursor script Credits to Der VVulfman for the ring menu. Thanks to RPG Advocate for the party order changing method. Thanks to MeisMe for helping me out fixing some bugs. Thanks to SephirothSpawn and Stevo for betatesting. Credits to Nin for the background picture of the windowskin version. I don't know who made the windowskin or the icons, so if you know who made them, please PM me so I can add those to the credit list. Author's Notes In the instructions in the script it says use $game_system = "desired filename" to store the savefile's name, but it should be $game_system.chapter = "desired filename". You can see it as an example within the demo when you click the event. Enjoy -
1,048 downloads
Materia System Introduction Brings back Final Fantasy VII's Glorious Materia System. Features * Lets you customize your Equipments' Paired and single slots * Includes a Materia Shop, to Purchse & Sell Materia * Create Your Own Materia (Does Require Some Work) * The Following Materia Types are avialable o Skill o Command o Summon o Support o Independent * The Following Materia Are Included o Heal o Remedy o Fire o Ice o Electric o Water o Earth o Wind o Light o Dark o Negla o Poison o Dizzy o Mute o Confuse o Sleep o Paraylze o Weak o Clumbsiness o Delayed o Enfeebled o Sharpen o Barrier o Resist o Blink o Fighter o Lancer o Warrior o Thief o Hunter o Gunner o Summon 1 o Summon 2 o Summon 3 o All o Elemental o Status o Steal as well o HP Absorb o MP Absorb o MP Turbo o Exp Plus o Gil Plus o HP Plus o SP Plus o Strength Plus o Defense Plus o Speed Plus o Magic Plus Customizing the Script to Your Game Editing Equipment Materia Slots In the script, find the line: WEAPON_MATERIA_SLOTS = { Below that, is a created hash for the default Weapon set. You will need to customize that, like so: weapon_id => [number_of_paired_materia, single_materia] =>[2, 3] would assing Weapon 1 in the database with 2 sets of paired materia, and 3 single slots. Below that is ARMORS_MATERIA_SLOTS = { Do the same thing here. Creating your own materia and materia List Find the line: MATERIA_LIST = [nil, Below that, is an array Materia that will be included in your game. You create Materia like so: Materia.new(id, name, type, stat_effects, elements, states, new_value, m_value, skills, exp_levels, special_effect) # - id : The Idea Number of you materia. Start from 1 and add 1 # - name : The Name of your materia # - type : The Type Of Materia. Choose From One of The Following: # 'Skill', 'Command', 'Summon', 'Support', 'Independent' # - stat_effects : The Percent of each stat that materia will effect # [ Hp, Sp, Str, Dex, Agi, Int ] # - elements : An Array of each Element ID from the systems tab # - states : An Array of each State Id from the Status tab # - new_value : The cost to buy the Materia # - master_value : The value of the Materia when Mastered # - Skills : An array of the skills you learn from the Materia. # (Use for Skill, Command & Summon) # - Exp Levels : An array of the experience required to level # The First value in the array is required to get level 2 # - Special Effect : A special Effect of the Materia. # ~ All # ~ Elemental # ~ Status # ~ Steal As Well # ~ HP Absorb # ~ MP Absorb # ~ MP Turbo # ~ Exp Plus # ~ Gil Plus # ~ HP Plus # ~ SP Plus # ~ Strength Plus # ~ Defense Plus # ~ Speed Plus # ~ Magic Plus #------------------------------------------------------------------------------ Just check the materia in the demo to learn how to create and customize your own materia. Instructions Place the Script Above Main, below Scene_Battle. FAQ How do you call the Materia Shop? # Create an Array of materia that will be in your show. These will be the indexes in your Materia List. IE: list = [1, 2, 3, 4, 5, 6] $scene = Scene_MateriaShop.new(list) How do you call the Materia Equip Screen? $scene = Scene_MateriaEquip.new Compatibility Is SDK Compatable & Compiant. Works with and without SDK. The only method that was overwrote, was Game_Actor#exp. Every other method should be fine. Credits and Thanks Illustration & Deke for there Previous Works. Gave me inspiration for this. Author's Notes Enjoy! -
644 downloads
#================================= # class Game_Actor mod's... -Midge- #================================= # This is where the meat of the script takes place... # there is alot to be accounted for here too.. # i had to make sure that all the stat stuff was being # from all the right things... in fact i think most of the # original class has been modded here... not sure on that # and too lazy to check and see... let's hope that you haven't # made any forgetable changes to this before... #================================= class Game_Actor < Game_Battler attr_accessor :weapon_type attr_accessor :armor_type attr_accessor :sec_attack alias double_weapons_initialize initialize def initialize(actor_id) double_weapons_initialize(actor_id) @weapon_type = $data_weapons[@weapon_id] @armor_type = $data_armors[@armor1_id] @sec_attack = nil end def animation3_id weapon = $data_weapons[@armor1_id] return (weapon != nil ? weapon.animation1_id : 0) end def animation4_id weapon = $data_weapons[@armor1_id] return (weapon != nil ? weapon.animation2_id : 0) end def two_shields if (self.weapon_type.is_a?(RPG::Armor) and self.armor_type.is_a?(RPG::Armor)) and (self.weapon_id != 0 and self.armor1_id != 0) return true else return false end end def two_weapons if (self.weapon_type.is_a?(RPG::Weapon) and self.armor_type.is_a?(RPG::Weapon)) and (self.weapon_id != 0 and self.armor1_id != 0) return true else return false end end def equip(equip_type, id, item = RPG::Armor) case equip_type when 0 if @weapon_id == 0 if item.is_a?(RPG::Weapon) if id == 0 or $game_party.weapon_number(id) > 0 self.weapon_type = $data_weapons[id] @weapon_id = id $game_party.lose_weapon(id, 1) end elsif item.is_a?(RPG::Armor) if id == 0 or $game_party.weapon_number(id) > 0 self.weapon_type = $data_armors[id] @weapon_id = id $game_party.lose_armor(id, 1) end end end if item == nil if self.weapon_type.is_a?(RPG::Weapon) if id == 0 or $game_party.weapon_number(id) > 0 $game_party.gain_weapon(@weapon_id, 1) @weapon_id = id end elsif self.weapon_type.is_a?(RPG::Armor) if id == 0 or $game_party.armor_number(id) > 0 $game_party.gain_armor(@weapon_id, 1) @weapon_id = id end end end if item.is_a?(RPG::Weapon) if self.weapon_type.is_a?(RPG::Weapon) if id == 0 or $game_party.weapon_number(id) > 0 $game_party.gain_weapon(@weapon_id, 1) self.weapon_type = $data_weapons[id] @weapon_id = id $game_party.lose_weapon(id, 1) end elsif self.weapon_type.is_a?(RPG::Armor) if id == 0 or $game_party.weapon_number(id) > 0 $game_party.gain_armor(@weapon_id, 1) self.weapon_type = $data_weapons[id] @weapon_id = id $game_party.lose_weapon(id, 1) end end elsif item.is_a?(RPG::Armor) if self.weapon_type.is_a?(RPG::Armor) if id == 0 or $game_party.armor_number(id) > 0 $game_party.gain_armor(@weapon_id, 1) self.weapon_type = $data_armors[id] @weapon_id = id $game_party.lose_armor(id, 1) end elsif self.weapon_type.is_a?(RPG::Weapon) if id == 0 or $game_party.armor_number(id) > 0 $game_party.gain_weapon(@weapon_id, 1) self.weapon_type = $data_armors[id] @weapon_id = id $game_party.lose_armor(id, 1) end end end when 1 if @armor1_id == 0 if item.is_a?(RPG::Weapon) if id == 0 or $game_party.weapon_number(id) > 0 self.armor_type = $data_weapons[id] @armor1_id = id $game_party.lose_weapon(id, 1) end elsif item.is_a?(RPG::Armor) if id == 0 or $game_party.armor_number(id) > 0 self.armor_type = $data_armors[id] @armor1_id = id $game_party.lose_armor(id, 1) end end end if item == nil if self.armor_type.is_a?(RPG::Weapon) if id == 0 or $game_party.weapon_number(id) > 0 $game_party.gain_weapon(@armor1_id, 1) @armor1_id = id end elsif self.armor_type.is_a?(RPG::Armor) if id == 0 or $game_party.armor_number(id) > 0 $game_party.gain_armor(@armor1_id, 1) @armor1_id = id end end end if item.is_a?(RPG::Weapon) if self.armor_type.is_a?(RPG::Weapon) if id == 0 or $game_party.weapon_number(id) > 0 $game_party.gain_weapon(@armor1_id, 1) self.armor_type = $data_weapons[id] @armor1_id = id $game_party.lose_weapon(id, 1) end elsif self.armor_type.is_a?(RPG::Armor) if id == 0 or $game_party.weapon_number(id) > 0 $game_party.gain_armor(@armor1_id, 1) self.armor_type = $data_weapons[id] @armor1_id = id $game_party.lose_weapon(id, 1) end end elsif item.is_a?(RPG::Armor) if self.armor_type.is_a?(RPG::Armor) if id == 0 or $game_party.armor_number(id) > 0 $game_party.gain_armor(@armor1_id, 1) self.armor_type = $data_armors[id] @armor1_id = id $game_party.lose_armor(id, 1) end elsif self.armor_type.is_a?(RPG::Weapon) if id == 0 or $game_party.armor_number(id) > 0 $game_party.gain_weapon(@armor1_id, 1) self.armor_type = $data_armors[id] @armor1_id = id $game_party.lose_armor(id, 1) end end end when 2 if id == 0 or $game_party.armor_number(id) > 0 update_auto_state($data_armors[@armor2_id], $data_armors[id]) $game_party.gain_armor(@armor2_id, 1) @armor2_id = id $game_party.lose_armor(id, 1) end when 3 if id == 0 or $game_party.armor_number(id) > 0 update_auto_state($data_armors[@armor3_id], $data_armors[id]) $game_party.gain_armor(@armor3_id, 1) @armor3_id = id $game_party.lose_armor(id, 1) end when 4 if id == 0 or $game_party.armor_number(id) > 0 update_auto_state($data_armors[@armor4_id], $data_armors[id]) $game_party.gain_armor(@armor4_id, 1) @armor4_id = id $game_party.lose_armor(id, 1) end end end def element_rate(element_id) table = [0,200,150,100,50,0,-100] result = table[$data_classes[@class_id].element_ranks[element_id]] if self.armor_type.is_a?(RPG::Weapon) for i in [@armor2_id, @armor3_id, @armor4_id] armor = $data_armors[i] if armor != nil and armor.guard_element_set.include?(element_id) result /= 2 end end else for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id] armor = $data_armors[i] if armor != nil and armor.guard_element_set.include?(element_id) result /= 2 end end end for i in @states if $data_states[i].guard_element_set.include?(element_id) result /= 2 end end return result end def state_guard?(state_id) if self.armor_type.is_a?(RPG::Weapon) for i in [@armor2_id, @armor3_id, @armor4_id] armor = $data_armors[i] if armor != nil if armor.guard_state_set.include?(state_id) return true end end end else return false for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id] armor = $data_armors[i] if armor != nil if armor.guard_state_set.include?(state_id) return true end end end return false end end def element_set n = [] unless self.weapon_type.is_a?(RPG::Armor) weapon = $data_weapons[@weapon_id] n += weapon != nil ? weapon.element_set : [] end unless self.armor_type.is_a?(RPG::Armor) weapon2 = $data_weapons[@armor1_id] n += weapon2 != nil ? weapon2.element_set : [] end n.flatten! n.uniq! return n end def plus_state_set n = [] unless self.weapon_type.is_a?(RPG::Armor) weapon = $data_weapons[@weapon_id] n += weapon != nil ? weapon.plus_state_set : [] end unless self.armor_type.is_a?(RPG::Armor) weapon2 = $data_weapons[@armor1_id] n += weapon2 != nil ? weapon2.plus_state_set : [] end n.flatten! n.uniq! return n end def minus_state_set n = [] unless self.weapon_type.is_a?(RPG::Armor) weapon = $data_weapons[@weapon_id] n += weapon != nil ? weapon.minus_state_set : [] end unless self.armor_type.is_a?(RPG::Armor) weapon2 = $data_weapons[@armor1_id] n += weapon2 != nil ? weapon2.minus_state_set : [] end n.flatten! n.uniq! return n end def base_str n = $data_actors[@actor_id].parameters[2, @level] if self.weapon_type.is_a?(RPG::Weapon) weapon = $data_weapons[@weapon_id] elsif self.weapon_type.is_a?(RPG::Armor) weapon = $data_armors[@armor1_id] end if self.armor_type.is_a?(RPG::Armor) armor1 = $data_armors[@armor1_id] elsif self.armor_type.is_a?(RPG::Weapon) armor1 = $data_weapons[@armor1_id] end armor2 = $data_armors[@armor2_id] armor3 = $data_armors[@armor3_id] armor4 = $data_armors[@armor4_id] n += weapon != nil ? weapon.str_plus : 0 n += armor1 != nil ? armor1.str_plus : 0 n += armor2 != nil ? armor2.str_plus : 0 n += armor3 != nil ? armor3.str_plus : 0 n += armor4 != nil ? armor4.str_plus : 0 return [[n, 1].max, 999].min end def base_dex n = $data_actors[@actor_id].parameters[3, @level] if self.weapon_type.is_a?(RPG::Weapon) weapon = $data_weapons[@weapon_id] elsif self.weapon_type.is_a?(RPG::Armor) weapon = $data_armors[@armor1_id] end if self.armor_type.is_a?(RPG::Armor) armor1 = $data_armors[@armor1_id] elsif self.armor_type.is_a?(RPG::Weapon) armor1 = $data_weapons[@armor1_id] end armor2 = $data_armors[@armor2_id] armor3 = $data_armors[@armor3_id] armor4 = $data_armors[@armor4_id] n += weapon != nil ? weapon.dex_plus : 0 n += armor1 != nil ? armor1.dex_plus : 0 n += armor2 != nil ? armor2.dex_plus : 0 n += armor3 != nil ? armor3.dex_plus : 0 n += armor4 != nil ? armor4.dex_plus : 0 return [[n, 1].max, 999].min end def base_agi n = $data_actors[@actor_id].parameters[4, @level] if self.weapon_type.is_a?(RPG::Weapon) weapon = $data_weapons[@weapon_id] elsif self.weapon_type.is_a?(RPG::Armor) weapon = $data_armors[@armor1_id] end if self.armor_type.is_a?(RPG::Armor) armor1 = $data_armors[@armor1_id] elsif self.armor_type.is_a?(RPG::Weapon) armor1 = $data_weapons[@armor1_id] end armor2 = $data_armors[@armor2_id] armor3 = $data_armors[@armor3_id] armor4 = $data_armors[@armor4_id] n += weapon != nil ? weapon.agi_plus : 0 n += armor1 != nil ? armor1.agi_plus : 0 n += armor2 != nil ? armor2.agi_plus : 0 n += armor3 != nil ? armor3.agi_plus : 0 n += armor4 != nil ? armor4.agi_plus : 0 return [[n, 1].max, 999].min end def base_int n = $data_actors[@actor_id].parameters[5, @level] if self.weapon_type.is_a?(RPG::Weapon) weapon = $data_weapons[@weapon_id] elsif self.weapon_type.is_a?(RPG::Armor) weapon = $data_armors[@armor1_id] end if self.armor_type.is_a?(RPG::Armor) armor1 = $data_armors[@armor1_id] elsif self.armor_type.is_a?(RPG::Weapon) armor1 = $data_weapons[@armor1_id] end armor2 = $data_armors[@armor2_id] armor3 = $data_armors[@armor3_id] armor4 = $data_armors[@armor4_id] n += weapon != nil ? weapon.int_plus : 0 n += armor1 != nil ? armor1.int_plus : 0 n += armor2 != nil ? armor2.int_plus : 0 n += armor3 != nil ? armor3.int_plus : 0 n += armor4 != nil ? armor4.int_plus : 0 return [[n, 1].max, 999].min end def base_atk n = 0 unless self.weapon_type.is_a?(RPG::Armor) weapon = $data_weapons[@weapon_id] n += weapon != nil ? weapon.atk : 0 end unless self.armor_type.is_a?(RPG::Armor) weapon2 = $data_weapons[@armor1_id] n += weapon2 != nil ? weapon2.atk : 0 end return n end def base_pdef if self.weapon_type.is_a?(RPG::Weapon) weapon = $data_weapons[@weapon_id] elsif self.weapon_type.is_a?(RPG::Armor) weapon = $data_armors[@armor1_id] end if self.armor_type.is_a?(RPG::Armor) armor1 = $data_armors[@armor1_id] elsif self.armor_type.is_a?(RPG::Weapon) armor1 = $data_weapons[@armor1_id] end armor2 = $data_armors[@armor2_id] armor3 = $data_armors[@armor3_id] armor4 = $data_armors[@armor4_id] pdef1 = weapon != nil ? weapon.pdef : 0 pdef2 = armor1 != nil ? armor1.pdef : 0 pdef3 = armor2 != nil ? armor2.pdef : 0 pdef4 = armor3 != nil ? armor3.pdef : 0 pdef5 = armor4 != nil ? armor4.pdef : 0 return pdef1 + pdef2 + pdef3 + pdef4 + pdef5 end def base_mdef if self.weapon_type.is_a?(RPG::Weapon) weapon = $data_weapons[@weapon_id] elsif self.weapon_type.is_a?(RPG::Armor) weapon = $data_armors[@armor1_id] end if self.armor_type.is_a?(RPG::Armor) armor1 = $data_armors[@armor1_id] elsif self.armor_type.is_a?(RPG::Weapon) armor1 = $data_weapons[@armor1_id] end armor2 = $data_armors[@armor2_id] armor3 = $data_armors[@armor3_id] armor4 = $data_armors[@armor4_id] mdef1 = weapon != nil ? weapon.mdef : 0 mdef2 = armor1 != nil ? armor1.mdef : 0 mdef3 = armor2 != nil ? armor2.mdef : 0 mdef4 = armor3 != nil ? armor3.mdef : 0 mdef5 = armor4 != nil ? armor4.mdef : 0 return mdef1 + mdef2 + mdef3 + mdef4 + mdef5 end def base_eva armor1 = $data_armors[@armor1_id] armor2 = $data_armors[@armor2_id] armor3 = $data_armors[@armor3_id] armor4 = $data_armors[@armor4_id] eva1 = armor1 != nil ? armor1.eva : 0 eva2 = armor2 != nil ? armor2.eva : 0 eva3 = armor3 != nil ? armor3.eva : 0 eva4 = armor4 != nil ? armor4.eva : 0 return eva1 + eva2 + eva3 + eva4 end end #================================= # end -O- Game_Actor changes -Midge- #================================= #================================= # class Window_EquipRight mods... -Midge- #================================= # this is just so that it will display the right stuff that # you have equipped in the two hands... #================================= class Window_EquipRight < Window_Selectable def refresh self.contents.clear @data = [] @data.push($data_weapons[@actor.weapon_id]) @data.push($data_armors[@actor.armor1_id]) if @actor.weapon_type.is_a?(RPG::Weapon) @data[0] = $data_weapons[@actor.weapon_id] elsif @actor.weapon_type.is_a?(RPG::Armor) @data[0] = $data_armors[@actor.weapon_id] end if @actor.armor_type.is_a?(RPG::Weapon) @data[1] = $data_weapons[@actor.armor1_id] elsif @actor.armor_type.is_a?(RPG::Armor) @data[1] = $data_armors[@actor.armor1_id] end @data.push($data_armors[@actor.armor2_id]) @data.push($data_armors[@actor.armor3_id]) @data.push($data_armors[@actor.armor4_id]) @item_max = @data.size self.contents.font.color = system_color self.contents.draw_text(4, 32 * 0, 92, 32, $data_system.words.weapon) self.contents.draw_text(4, 32 * 1, 92, 32, $data_system.words.armor1) self.contents.draw_text(4, 32 * 2, 92, 32, $data_system.words.armor2) self.contents.draw_text(4, 32 * 3, 92, 32, $data_system.words.armor3) self.contents.draw_text(5, 32 * 4, 92, 32, $data_system.words.armor4) draw_item_name(@data[0], 92, 32 * 0) draw_item_name(@data[1], 92, 32 * 1) draw_item_name(@data[2], 92, 32 * 2) draw_item_name(@data[3], 92, 32 * 3) draw_item_name(@data[4], 92, 32 * 4) end end #================================= # End -O- Window_EquipRight Mods... -Midge- #================================= #================================= # class Window_EquipItem mods... -Midge- #================================= # basically i just made it so that both the weapons and # sheilds would be displayed in the weapon and shield # hands... both of them... so you can equip either in # either hand... anyway.. its all cool and stuff... #================================= class Window_EquipItem < Window_Selectable def refresh if self.contents != nil self.contents.dispose self.contents = nil end @data = [] if @equip_type == 0 weapon_set = $data_classes[@actor.class_id].weapon_set for i in 1...$data_weapons.size if $game_party.weapon_number(i) > 0 and weapon_set.include?(i) @data.push($data_weapons[i]) end end armor_set = $data_classes[@actor.class_id].armor_set for i in 1...$data_armors.size if $game_party.armor_number(i) > 0 and armor_set.include?(i) if $data_armors[i].kind == 0 @data.push($data_armors[i]) end end end end if @equip_type != 0 if @equip_type == 1 weapon_set = $data_classes[@actor.class_id].weapon_set for i in 1...$data_weapons.size if $game_party.weapon_number(i) > 0 and weapon_set.include?(i) @data.push($data_weapons[i]) end end end armor_set = $data_classes[@actor.class_id].armor_set for i in 1...$data_armors.size if $game_party.armor_number(i) > 0 and armor_set.include?(i) if $data_armors[i].kind == @equip_type-1 @data.push($data_armors[i]) end end end end @data.push(nil) @item_max = @data.size self.contents = Bitmap.new(width - 32, row_max * 32) self.contents.font.name = $defaultfonttype self.contents.font.size = $defaultfontsize for i in 0...@item_max-1 draw_item(i) end end end #================================= # End -O- Window_EquipItem mod's... -Midge- #================================= class Scene_Equip def refresh @item_window1.visible = (@right_window.index == 0) @item_window2.visible = (@right_window.index == 1) @item_window3.visible = (@right_window.index == 2) @item_window4.visible = (@right_window.index == 3) @item_window5.visible = (@right_window.index == 4) item1 = @right_window.item case @right_window.index when 0 @item_window = @item_window1 when 1 @item_window = @item_window2 when 2 @item_window = @item_window3 when 3 @item_window = @item_window4 when 4 @item_window = @item_window5 end if @right_window.active @left_window.set_new_parameters(nil, nil, nil) end if @item_window.active item2 = @item_window.item last_hp = @actor.hp last_sp = @actor.sp @actor.equip(@right_window.index, item2 == nil ? 0 : item2.id, item2) new_atk = @actor.atk new_pdef = @actor.pdef new_mdef = @actor.mdef @actor.equip(@right_window.index, item1 == nil ? 0 : item1.id, item1) @actor.hp = last_hp @actor.sp = last_sp @left_window.set_new_parameters(new_atk, new_pdef, new_mdef) end end def update_item if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @right_window.active = true @item_window.active = false @item_window.index = -1 return end if Input.trigger?(Input::C) $game_system.se_play($data_system.equip_se) item = @item_window.item @actor.equip(@right_window.index, item == nil ? 0 : item.id, item) @right_window.active = true @item_window.active = false @item_window.index = -1 @right_window.refresh @item_window.refresh return end end def update @left_window.update @right_window.update @item_window.update @item_window1.refresh @item_window2.refresh refresh if @right_window.active update_right return end if @item_window.active update_item return end end end class Scene_Battle def update_phase3_basic_command if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) phase3_prior_actor return end if @active_battler.two_shields @actor_command_window.disable_item(0) else @actor_command_window.enable_item(0) end if Input.trigger?(Input::C) case @actor_command_window.index when 0 if @active_battler.two_shields $game_system.se_play($data_system.buzzer_se) return end if @active_battler.two_weapons == true @active_battler.current_action.kind = 0 @active_battler.current_action.basic = 4 else @active_battler.current_action.kind = 0 @active_battler.current_action.basic = 0 end $game_system.se_play($data_system.decision_se) start_enemy_select when 1 $game_system.se_play($data_system.decision_se) @active_battler.current_action.kind = 1 start_skill_select when 2 $game_system.se_play($data_system.decision_se) @active_battler.current_action.kind = 0 @active_battler.current_action.basic = 1 phase3_next_actor when 3 $game_system.se_play($data_system.decision_se) @active_battler.current_action.kind = 2 start_item_select end return end end def make_basic_action_result if @active_battler.current_action.basic == 0 @animation1_id = @active_battler.animation1_id @animation2_id = @active_battler.animation2_id if @active_battler.is_a?(Game_Enemy) if @active_battler.restriction == 3 target = $game_troop.random_target_enemy elsif @active_battler.restriction == 2 target = $game_party.random_target_actor else index = @active_battler.current_action.target_index target = $game_party.smooth_target_actor(index) end end if @active_battler.is_a?(Game_Actor) if @active_battler.armor_type.is_a?(RPG::Weapon) @animation1_id = @active_battler.animation3_id @animation2_id = @active_battler.animation4_id end if @active_battler.restriction == 3 target = $game_party.random_target_actor elsif @active_battler.restriction == 2 target = $game_troop.random_target_enemy else index = @active_battler.current_action.target_index target = $game_troop.smooth_target_enemy(index) end end @target_battlers = [target] for target in @target_battlers target.attack_effect(@active_battler) end return end if @active_battler.current_action.basic == 1 @help_window.set_text($data_system.words.guard, 1) return end if @active_battler.is_a?(Game_Enemy) and @active_battler.current_action.basic == 2 @help_window.set_text("逃げる", 1) @active_battler.escape return end if @active_battler.current_action.basic == 3 $game_temp.forcing_battler = nil @phase4_step = 1 return end if @active_battler.current_action.basic == 4 @animation1_id = @active_battler.animation1_id @animation2_id = @active_battler.animation2_id @animation3_id = @active_battler.animation3_id @animation4_id = @active_battler.animation4_id if @active_battler.is_a?(Game_Actor) if @active_battler.restriction == 3 target = $game_party.random_target_actor elsif @active_battler.restriction == 2 target = $game_troop.random_target_enemy else index = @active_battler.current_action.target_index target = $game_troop.smooth_target_enemy(index) end end @target_battlers = [target] for target in @target_battlers target.attack_effect(@active_battler) end return end end def update_phase4_step4 if @active_battler.is_a?(Game_Actor) if @active_battler.two_weapons == true && @active_battler.sec_attack == 0 for target in @target_battlers target.animation_id = @animation4_id target.animation_hit = (target.damage != "Miss") @phase4_step = 5 return end end end for target in @target_battlers target.animation_id = @animation2_id target.animation_hit = (target.damage != "Miss") end @wait_count = 8 @phase4_step = 5 end def update_phase4_step5 @help_window.visible = false @status_window.refresh if @active_battler.is_a?(Game_Actor) if @active_battler.current_action.basic == 4 if @active_battler.two_weapons == true && @active_battler.sec_attack == nil @active_battler.sec_attack = 0 @phase4_step = 3 return else @active_battler.sec_attack = nil end end end for target in @target_battlers if target.damage != nil target.damage_pop = true end end @phase4_step = 6 end end class Window_Command def enable_item(index) draw_item(index, normal_color) end end -
-
-
171 downloads
This is a SF fighting game you can enjoy, riding a robot called Assault Gear.The game is based on the basic functions of "RPG MAKER XP" By playing this game, you'll understand what kind of games you can make by "RPG MAKER XP". STORY In 2077, after World War 4th, Cain Graywood, betrayed by the belonged force(army,troop) and having his fellows killed, enters the headquarter(center)of the force for revenge. But what was awaiting him was the strongest armored forces, with the forbidden super weapon "EX-ARMS". -
898 downloads
A collection of 22 Title Templates(without text) Examples: http://www.rmxpunlimited.net/forums/index.php?app=gallery&module=images§ion=viewimage&img=175 http://www.rmxpunlimited.net/forums/index.php?app=gallery&module=images§ion=viewimage&img=172 http://www.rmxpunlimited.net/forums/index.php?app=gallery&module=images§ion=viewimage&img=171 http://www.rmxpunlimited.net/forums/index.php?app=gallery&module=images§ion=viewimage&img=174