Ir a contenido

0

ffvii menu


13 las respuestas a este tema

#1 Sampi

    Paladin

  • voidzonero
  • 130 Mensajes:
  • Location:Delante de mi escritorio con apuntes de mates
  • Interests:dot Hack, Shin Megami Tensei y intentar aprovar bachiller
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Mapeo

Publicado el 03 September 2006 - 11:57 AM

Una cosa, tngo el ff7 menu pero como lo hago para que haya tambien la ventanilla de limite y de materia, si alguien me lo postea con ya todo hecho mejor k a mi el scripteado no se me da muy bien

ffvii menu
Spoiler

Materia system
[SPOILER]
CODE
#==============================================================================
# Materia System
#==============================================================================
# SephirothSpawn
# 1.28.06
# Version 2.01
#==============================================================================

#------------------------------------------------------------------------------
# * Explanations:
#------------------------------------------------------------------------------
#    ~ Weapon & Armor Materia Slots
#        - Basic Syntax: Item ID # => Slots Array
#          - Slots Array: [Number of Paired Slots, Single Slots]
#        ** You must not exceed 8 (Paired * 2 + Single * 1 <= 10)
#    ~ Materia List
#      * Creating Your Own Materia
#        - Basic Syntax: 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
#------------------------------------------------------------------------------

#==============================================================================
# ** RPG
#==============================================================================

module RPG
 
 #============================================================================
 # ** Weapon
 #============================================================================
 class Weapon
   #--------------------------------------------------------------------------
   # * Public Instance Variables
   #--------------------------------------------------------------------------
   attr_accessor :paired_materia
   attr_accessor :single_materia
   #--------------------------------------------------------------------------
   # * Set Materia Slots
   #--------------------------------------------------------------------------
   def set_materia_slots(slots)
     @paired_materia, @single_materia = slots[0], slots[1]
   end
 end
 
 #============================================================================
 # ** Armor
 #============================================================================
 class Armor
   #--------------------------------------------------------------------------
   # * Public Instance Variables
   #--------------------------------------------------------------------------
   attr_accessor :paired_materia
   attr_accessor :single_materia
   #--------------------------------------------------------------------------
   # * Set Materia Slots
   #--------------------------------------------------------------------------
   def set_materia_slots(slots)
     @paired_materia, @single_materia = slots[0], slots[1]
   end
 end
end

#==============================================================================
# ** Materia
#==============================================================================

class Materia
 #--------------------------------------------------------------------------
 # * Public Instance Variables
 #--------------------------------------------------------------------------
 attr_reader      :id
 attr_accessor   :name
 attr_accessor   :type
 attr_accessor   :stat_effects
 attr_accessor   :elements
 attr_accessor   :states
 attr_accessor   :new_value
 attr_accessor   :master_value
 attr_accessor   :skills
 attr_accessor   :exp_levels
 attr_accessor   :special_effect
 #--------------------------------------------------------------------------
 # * Object Initialization
 #--------------------------------------------------------------------------
 def initialize(id, name, type, stat_effects = [], elements = [], states = [],
   n_value = 500, m_value = 1000, skills = [], exp_levels = [], s_effect = nil)
   # Sets Parameters
   @id, @name, @type, @stat_effects, @elements, @states,
   @new_value, @master_value, @skills, @exp_levels, @special_effect =
     id, name, type, stat_effects, elements, states,
     n_value, m_value, skills, exp_levels, s_effect
   # Sets Exp
   @experience = 0
 end
 #--------------------------------------------------------------------------
 # * Experince
 #--------------------------------------------------------------------------
 def experience
   return @experience
 end
 #--------------------------------------------------------------------------
 # * Experince
 #--------------------------------------------------------------------------
 def experience=(num)
   @experience = [num, @exp_levels[@exp_levels.size - 1]].min
 end
 #--------------------------------------------------------------------------
 # * Level
 #--------------------------------------------------------------------------
 def level
   for i in [email protected]_levels.size
     if @experience >= @exp_levels[@exp_levels.size - (1 + i)]
       return @exp_levels.size - i + 1
     end
   end
   return 1
 end
 #--------------------------------------------------------------------------
 # * Buy Value
 #--------------------------------------------------------------------------
 def buy_value
   return @new_value
 end
 #--------------------------------------------------------------------------
 # * Sell Value
 #--------------------------------------------------------------------------
 def sell_value
   return [(@master_value * (@experience / @exp_levels[@exp_levels.size - 1].to_f)).to_i,
     @new_value / 2].max
 end
 #--------------------------------------------------------------------------
 # * Get Hue
 #--------------------------------------------------------------------------
 def get_hue
   case @type
   when 'Skill'
     hue = 130
   when 'Command'
     hue = 60
   when 'Summon'
     hue = 10
   when 'Support'
     hue = 180
   when 'Independent'
     hue = 300
   end
   return hue
 end
end

#==============================================================================
# ** Materia_System
#==============================================================================

module Materia_System
 
 #==============================================================================
 # ** CONSTANTS
 #==============================================================================

 # ~ Weapons Materia Slots
   WEAPON_MATERIA_SLOTS = {
     1 => [1, 1], 2 => [1, 2], 3 => [2, 2], 4 => [4, 0],
     5 => [1, 1], 6 => [1, 2], 7 => [2, 2], 8 => [4, 0],
     9 => [1, 1], 10 => [1, 2], 11 => [2, 2], 12 => [4, 0],
     13 => [1, 1], 14 => [1, 2], 15 => [2, 2], 16 => [4, 0],
     17 => [1, 1], 18 => [1, 2], 19 => [2, 2], 20 => [4, 0],
     21 => [1, 1], 22 => [1, 2], 23 => [2, 2], 24 => [4, 0],
     25 => [1, 1], 26 => [1, 2], 27 => [2, 2], 28 => [4, 0],
     29 => [1, 1], 30 => [1, 2], 31 => [2, 2], 32 => [4, 0],
     33 => [2, 1], 34 => [2, 2], 35 => [3, 2], 36 => [3, 2],
     37 => [1, 2], 38 => [2, 2], 39 => [4, 0], 40 => [2, 1],
     41 => [2, 2], 42 => [2, 1], 43 => [2, 2], 44 => [2, 1],
     45 => [2, 2], 46 => [2, 1], 47 => [4, 0], 48 => [2, 3],
     49 => [2, 3], 50 => [2, 3]
     }
 # ~ Armors Materia Slots
   ARMORS_MATERIA_SLOTS = {
     1 => [1, 1], 2 => [1, 2], 3 => [2, 2], 4 => [4, 0],
     5 => [1, 1], 6 => [1, 2], 7 => [2, 2], 8 => [4, 0],
     9 => [1, 1], 10 => [1, 2], 11 => [2, 2], 12 => [4, 0],
     13 => [1, 1], 14 => [1, 2], 15 => [2, 2], 16 => [4, 0],
     17 => [1, 1], 18 => [1, 2], 19 => [2, 2], 20 => [4, 0],
     21 => [1, 1], 22 => [1, 2], 23 => [2, 2], 24 => [4, 0],
     25 => [1, 1], 26 => [1, 2], 27 => [2, 2], 28 => [4, 0],
     29 => [1, 1], 30 => [1, 2], 31 => [2, 2], 32 => [4, 0]
     }
 # ~ Materia List
#    (id, name, type, stat_effects = [], elements = [], states = [],
#    n_value = 500, m_value = 1000, skills = [], exp_levels = [], s_effect = nil)      
   MATERIA_LIST = [nil,
     # Skill Materia
     Materia.new(1, 'Cura', 'Skill', [ -5, 5, -3, 0, 0, 3 ], [], [], 1000, 10000,
       [1, 2, 3, 6], [1000, 3000, 6000, 10000]),
     Materia.new(2,'Remedio', 'Skill', [ -4, 4, -3, 0, 0, 3 ], [], [], 750, 5000,
       [4, 5], [2500, 5000]),
     Materia.new(3, 'Fuego', 'Skill', [ -3, 3, -1, 0, 0, 1 ], [1], [], 1000, 7500,
       [7, 8, 9], [1000, 3000, 7500]),
     Materia.new(4, 'Hielo', 'Skill', [ -3, 3, -1, 0, 0, 1 ], [2], [], 1000, 7500,
       [10, 11, 12], [1000, 3000, 7500]),
     Materia.new(5, 'Rayo', 'Skill', [ -3, 3, -1, 0, 0, 1 ], [3], [], 1000, 7500,
       [13, 14, 15], [1000, 3000, 7500]),
     Materia.new(6, 'Agua', 'Skill', [ -3, 3, -1, 0, 0, 1 ], [4], [], 1000, 7500,
       [16, 17, 18], [1000, 3000, 7500]),
     Materia.new(7, 'Tierra', 'Skill', [ -3, 3, -1, 0, 0, 1 ], [5], [], 1000, 7500,
       [19, 20, 21], [1000, 3000, 7500]),
     Materia.new(8, 'Viento', 'Skill', [ -3, 3, -1, 0, 0, 1 ], [6], [], 1000, 7500,
       [22, 23, 24], [1000, 3000, 7500]),
     Materia.new(9, 'Luz', 'Skill', [ -5, 5, -3, 0, 0, 3 ], [7], [], 1000, 7500,
       [25, 26, 27], [1000, 3000, 7500]),
     Materia.new(10, 'Oscuro', 'Skill', [ -5, 5, -3, 0, 0, 3 ], [8], [], 1000, 7500,
       [28, 29, 30], [1000, 3000, 7500]),
     Materia.new(11, 'Fulgor', 'Skill', [ -4, 4, -2, 0, 0, 2 ], [], [], 1500, 7500,
       [31, 32], [3000, 7500]),
     Materia.new(12, 'Veneno', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [3], 750, 4500,
       [33, 34], [1500, 4500]),
     Materia.new(13, 'Dizzy', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [4], 750, 4500,
       [35, 36], [1500, 4500]),
     Materia.new(14, 'Mudo', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [5], 750, 4500,
       [37, 38], [1500, 4500]),
     Materia.new(15, 'Confusion', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [6], 750, 4500,
       [39, 40], [1500, 4500]),
     Materia.new(16, 'Dormir', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [7], 750, 4500,
       [41, 42], [1500, 4500]),
     Materia.new(17, 'Paralizar', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [8], 750, 4500,
       [43, 44], [1500, 4500]),
     Materia.new(18, 'Debilidad', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [9], 750, 4500,
       [45, 46], [1500, 4500]),
     Materia.new(19, 'Maldicion', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [10], 750, 4500,
       [47, 48], [1500, 4500]),
     Materia.new(20, 'Freno', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [11], 750, 4500,
       [49, 50], [1500, 4500]),
     Materia.new(21, 'Reducción', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [12], 750, 4500,
       [51, 52], [1500, 4500]),
     Materia.new(22, 'Furia', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [13], 750, 4500,
       [53], [3000]),
     Materia.new(23, 'Barrera', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [14], 750, 4500,
       [54], [3000]),
     Materia.new(24, 'Resistir', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [15], 750, 4500,
       [55], [3000]),
     Materia.new(25, 'Blink', 'Skill', [ -2, 2, 0, 0, 0, 0 ], [], [16], 750, 4500,
       [56], [3000]),
     # Command Materia
     Materia.new(26, 'Guerrero',  'Command', [0, 0, 5, 3, - 3, - 5], [], [], 3000, 20000,
       [57, 58, 59, 60], [2500, 5000, 9000, 14000, 2000]),
     Materia.new(27, 'Lancero',  'Command', [0, 0, 4, 4, - 4, - 4], [], [], 3000, 20000,
       [61, 62, 63, 64], [2500, 5000, 9000, 14000, 2000]),
     Materia.new(28, 'Mercenario', 'Command', [0, 0, 7, 2, - 2, - 7], [], [], 3000, 20000,
       [65, 66, 67, 68], [2500, 5000, 9000, 14000, 2000]),
     Materia.new(29, 'Ladron', 'Command', [0, 0, 1, 8, - 8, - 1], [], [], 3000, 20000,
       [69, 70, 71, 72], [2500, 5000, 9000, 14000, 2000]),
     Materia.new(30, 'Cazador', 'Command', [2, 2, 2, 2, 2, 2], [], [], 3000, 20000,
       [73, 74, 75, 76], [2500, 5000, 9000, 14000, 2000]),
     Materia.new(31, 'Pistolero', 'Command', [0, 4, 4, 0, 4, 0], [], [], 3000, 20000,
       [77, 78, 79, 80], [2500, 5000, 9000, 14000, 2000]),
     # Summon Materia (Not real summons, but you would set them up the same
     Materia.new(32, 'Invocación 1', 'Summon', [-10, 10, -5, -5, 0, 10], [], [], 5000, 25000,
       [60, 64], [6500, 15000, 25000]),
     Materia.new(33, 'Invocación 2', 'Summon', [-10, 10, -5, -5, 0, 10], [], [], 5000, 25000,
       [68, 72], [6500, 15000, 25000]),
     Materia.new(34, 'Invocación 3', 'Summon', [-10, 10, -5, -5, 0, 10], [], [], 5000, 25000,
       [76, 80], [6500, 15000, 25000]),
     # Support Materia
     Materia.new(35, 'Todos', 'Support', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'All'),
     Materia.new(36, 'Elemental', 'Support', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Elemental'),
     Materia.new(37, 'Estado', 'Support', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Status'),
     Materia.new(38, 'Robo', 'Support', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Steal as well'),
     Materia.new(39, 'HP Absorber', 'Support', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'HP Absorb'),
     Materia.new(40, 'MP Absorber', 'Support', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'MP Absorb'),
     Materia.new(41, 'MP Turbo', 'Support', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'MP Turbo'),
     # Independent Mater
     Materia.new(42, 'Exp Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Exp Plus'),
     Materia.new(43, 'Guil Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Gil Plus'),
     Materia.new(44, 'HP Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'HP Plus'),
     Materia.new(45, 'SP Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'SP Plus'),
     Materia.new(46, 'Fuerza Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Strength Plus'),
     Materia.new(47, 'Defensa Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Defense Plus'),
     Materia.new(48, 'Velocidad Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Speed Plus'),
     Materia.new(49, 'Magia Plus', 'Independent', [0, 0, 0, 0, 0, 0], [], [], 2000, 10000,
       [], [2000, 4000, 7000, 11000], 'Magic Plus')
   ]
end

#==============================================================================
# ** Game_Battler (part 3)
#==============================================================================

class Game_Battler
 #--------------------------------------------------------------------------
 # * Alias Listings
 #--------------------------------------------------------------------------
 alias seph_materiasystem_gamebattler_skilleffect skill_effect
 #--------------------------------------------------------------------------
 # * Apply Skill Effects
 #     user  : the one using skills (battler)
 #     skill : skill
 #--------------------------------------------------------------------------
 def skill_effect(user, skill)
   # Orginal Skill Effects Method
   seph_materiasystem_gamebattler_skilleffect(user, skill)
   if user.is_a?(Game_Actor)
     # Gets Paired Materia
     materia_set = user.return_paired_materia
     for paired_set in materia_set
       materia = paired_set[2]
       other_materia = paired_set[3]
       # HP Absorb
       if materia.special_effect == 'HP Absorb'
         for skill_id in other_materia.skills
           unless skill_id == 0
             m_skill = $data_skills[skill_id]
             if skill == m_skill
               hp = (user.maxhp * 0.1).to_i
               user.hp += [hp, user.maxhp - hp].min
               user.damage = - [hp, user.maxhp - hp].min
               user.damage_pop = true
             end
           end
         end
       end
       # MP Absorb
       if materia.special_effect == 'MP Absorb'
         for skill_id in other_materia.skills
           unless skill_id == 0
             m_skill = $data_skills[skill_id]
             if skill == m_skill
               sp = (user.maxsp * 0.1).to_i
               user.sp += [sp, user.maxsp - sp].min
               user.damage = - [sp, user.maxsp - sp].min
               user.damage_pop = true
             end
           end
         end
       end
       # MP Turbo
       if materia.special_effect == 'MP Turbo'
         for skill_id in other_materia.skills
           unless skill_id == 0
             m_skill = $data_skills[skill_id]
             if skill == m_skill
               unless user.sp < skill.sp_cost * 2
                 if self.damage > 0
                   self.damage *= 2
                   user.sp -= skill.sp_cost
                   user.damage = 'MP TURBO!'
                   user.damage_pop = true
                 end
               end
             end
           end
         end
       end
       # Steal As Well
       if materia.special_effect == 'Steal as well'
         for skill_id in other_materia.skills
           unless skill_id == 0
             m_skill = $data_skills[skill_id]
             if skill == m_skill
               if self.is_a?(Game_Battler)
                 if (rand(100) < self.treasure_prob)
                   unless self.item_id == 0
                     item = $data_items[self.item_id]
                   end
                   unless self.weapon_id == 0
                     item = $data_weapons[self.weapon_id]
                   end
                   unless self.armor_id == 0
                     item = $data_armors[self.armor_id]
                   end
                   unless item.nil?
                     case item
                     when RPG::Item
                       $game_party.gain_item(self.item_id, 1)
                     when RPG::Weapon
                       $game_party.gain_weapon(self.weapon_id, 1)
                     when RPG::Armor
                       $game_party.gain_armor(self.armor_id, 1)
                     end
                     user.damage = "Stole #{item.name}"
                     user.damage_pop = true
                   end
                 end
               end
             end
           end
         end
       end
     end
   end
 end
end

#==============================================================================
# ** Game_Actor
#==============================================================================

class Game_Actor
 #--------------------------------------------------------------------------
 # * Public Instance Variables
 #--------------------------------------------------------------------------
 attr_accessor   :weapon_materia
 attr_accessor   :armor1_materia
 attr_accessor   :armor2_materia
 attr_accessor   :armor3_materia
 attr_accessor   :armor4_materia
 attr_accessor   :materia_skills
 #--------------------------------------------------------------------------
 # * Alias Listings
 #--------------------------------------------------------------------------
 alias seph_materiasystem_gameactor_init initialize
 alias seph_materiasystem_gameactor_setup setup
 alias seph_materiasystem_gameactor_skills skills
 alias seph_materiasystem_gameactor_maxhp maxhp
 alias seph_materiasystem_gameactor_maxsp maxsp
 alias seph_materiasystem_gameactor_str str
 alias seph_materiasystem_gameactor_dex dex
 alias seph_materiasystem_gameactor_agi agi
 alias seph_materiasystem_gameactor_int int
 alias seph_materiasystem_gameactor_equip equip
 alias seph_materiasystem_gameactor_exp exp
 alias seph_materiasystem_gameactor_elementrate element_rate
 alias seph_materiasystem_gameactor_stateguard? state_guard?
 alias seph_materiasystem_gameactor_elementset element_set
 alias seph_materiasystem_gameactor_plusstateset plus_state_set
 #--------------------------------------------------------------------------
 # * Object Initialization
 #--------------------------------------------------------------------------
 def initialize(actor_id)
   # Sets Up Materia Slots
   @weapon_materia = Array.new
   @armor1_materia = Array.new
   @armor2_materia = Array.new
   @armor3_materia = Array.new
   @armor4_materia = Array.new
   # Orginal Initialization Method
   seph_materiasystem_gameactor_init(actor_id)
 end
 #--------------------------------------------------------------------------
 # * Setup
 #--------------------------------------------------------------------------
 def setup(actor_id)
   # Orginal Setup Method
   seph_materiasystem_gameactor_setup(actor_id)
   # Materia Skills
   @materia_skills = []
   # Adds Weapon Materia
   sn = $data_weapons[@weapon_id].paired_materia * 2 +
     $data_weapons[@weapon_id].single_materia unless @weapon_id == 0
   @weapon_materia = @weapon_id == 0 ? [] : Array.new(sn, nil)
   # Adds Shield Materia
   sn = $data_armors[@armor1_id].paired_materia * 2 +
     $data_armors[@armor1_id].single_materia unless @armor1_id == 0
   @armor1_materia = @armor1_id == 0 ? [] : Array.new(sn, nil)
   # Adds Head Materia
   sn = $data_armors[@armor2_id].paired_materia * 2 +
     $data_armors[@armor2_id].single_materia unless @armor2_id == 0
   @armor2_materia = @armor2_id == 0 ? [] : Array.new(sn, nil)
   # Adds Body Materia
   sn = $data_armors[@armor3_id].paired_materia * 2 +
     $data_armors[@armor3_id].single_materia unless @armor3_id == 0
   @armor3_materia = @armor3_id == 0 ? [] : Array.new(sn, nil)
   # Adds Accessory Materia
   sn = $data_armors[@armor4_id].paired_materia * 2 +
     $data_armors[@armor4_id].single_materia unless @armor4_id == 0
   @armor4_materia = @armor4_id == 0 ? [] : Array.new(sn, nil)
 end
 #--------------------------------------------------------------------------
 # * Skills
 #--------------------------------------------------------------------------
 def skills
   # Deletes Materia Skills
   for skill_id in @materia_skills
     self.forget_skill(skill_id)
   end
   # Original Skills Method
   skills = seph_materiasystem_gameactor_skills
   # Adds Skills Attached to Weapon & Armors
   for materia in @weapon_materia + @armor1_materia + @armor2_materia +
     @armor3_materia + @armor4_materia
     unless materia.nil?
       self.learn_materia_skill(materia)
     end
   end
   # Returns Skills
   return @skills
 end
 #--------------------------------------------------------------------------
 # * Learn Materia Skill
 #--------------------------------------------------------------------------
 def learn_materia_skill(materia)
   # If Skill Materia
   if materia.type == 'Skill' || materia.type == 'Command' || materia.type == 'Summon'
     for i in 0...materia.level
       skill_id = materia.skills[i]
       # Learn Skill
       self.learn_skill(skill_id)
       # Adds Skills To Materia Skills
       @materia_skills << skill_id
     end
   end
 end
 #--------------------------------------------------------------------------
 # * Get Maximum HP
 #--------------------------------------------------------------------------
 def maxhp
   # Orginal Max Hp Method
   n = seph_materiasystem_gameactor_maxhp    
   # Collects HP Difference From Materia
   variance = 0
   for materia in @weapon_materia + @armor1_materia + @armor2_materia +
       @armor3_materia + @armor4_materia
     unless materia.nil?
       variance += materia.stat_effects[0]
       if materia.special_effect == 'HP Plus'
         variance += (materia.level * 10)
       end
     end
   end
   # Takes Percentage
   n *= ((100 + variance) / 100.0)
   n = [[Integer(n), 0].max, 9999].min
   return n
 end
 #--------------------------------------------------------------------------
 # * Get HP
 #--------------------------------------------------------------------------
 def hp
   @hp = [@hp, maxhp].min
   return @hp
 end
 #--------------------------------------------------------------------------
 # * Get Maximum SP
 #--------------------------------------------------------------------------
 def maxsp
   # Orginal Max Sp Method
   n = seph_materiasystem_gameactor_maxsp
   # Collects SP Difference From Materia
   variance = 0
   for materia in @weapon_materia + @armor1_materia + @armor2_materia +
       @armor3_materia + @armor4_materia
     unless materia.nil?
       variance += materia.stat_effects[1]
       if materia.special_effect == 'SP Plus'
         variance += (materia.level * 10)
       end
     end
   end
   # Takes Percentage
   n *= ((100 + variance) / 100.0)
   n = [[Integer(n), 0].max, 9999].min
   return n
 end
 #--------------------------------------------------------------------------
 # * Get SP
 #--------------------------------------------------------------------------
 def sp
   @sp = [@sp, maxsp].min
   return @sp
 end
 #--------------------------------------------------------------------------
 # * Get Strength (STR)
 #--------------------------------------------------------------------------
 def str
   # Orginal Max Str Method
   n = seph_materiasystem_gameactor_str  
   # Collects SP Difference From Materia
   variance = 0
   for materia in @weapon_materia + @armor1_materia + @armor2_materia +
       @armor3_materia + @armor4_materia
     unless materia.nil?
       variance += materia.stat_effects[2]
       if materia.special_effect == 'Strength Plus'
         variance += (materia.level * 5)
       end
     end
   end
   # Takes Percentage
   n *= ((100 + variance) / 100.0)
   n = [[Integer(n), 1].max, 999].min
   return n
 end
 #--------------------------------------------------------------------------
 # * Get Dexterity (DEX)
 #--------------------------------------------------------------------------
 def dex
   # Orginal Max Dex Method
   n = seph_materiasystem_gameactor_dex  
   # Collects SP Difference From Materia
   variance = 0
   for materia in @weapon_materia + @armor1_materia + @armor2_materia +
       @armor3_materia + @armor4_materia
     unless materia.nil?
       variance += materia.stat_effects[3]
       if materia.special_effect == 'Defense Plus'
         variance += (materia.level * 5)
       end
     end
   end
   # Takes Percentage
   n *= ((100 + variance) / 100.0)
   n = [[Integer(n), 1].max, 999].min
   return n
 end
 #--------------------------------------------------------------------------
 # * Get Agility (AGI)
 #--------------------------------------------------------------------------
 def agi
   # Orginal Max Agi Method
   n = seph_materiasystem_gameactor_agi  
   # Collects SP Difference From Materia
   variance = 0
   for materia in @weapon_materia + @armor1_materia + @armor2_materia +
       @armor3_materia + @armor4_materia
     unless materia.nil?
       

#2 Fegarur

    Vago

  • Moderador Power!
  • 2,331 Mensajes:
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Guion

Publicado el 03 September 2006 - 12:24 PM

No se si lo pueden borrar todos los usuarios... si quieres borro el último tuyo. Para que salgan la ventana de límite y materia tienes que tener esos dos scripts para empezar. Para seguir, ponme aquí cómo se llama a esos scripts y en un momento lo agrego. cool.gif

#3 Sampi

    Paladin

  • voidzonero
  • 130 Mensajes:
  • Location:Delante de mi escritorio con apuntes de mates
  • Interests:dot Hack, Shin Megami Tensei y intentar aprovar bachiller
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Mapeo

Publicado el 03 September 2006 - 12:32 PM

es k no se como se llama a esos scripts XD aora posteo los scripts

http://www.freewebs.com/rsooo/limite.txt
http://www.freewebs.com/rsooo/materia.txt

EDIT: equipar materia $scene = Scene_MateriaEquip.new
pero el de limite no se

Editado por Sampi, 03 September 2006 - 12:34 PM.


#4 Fegarur

    Vago

  • Moderador Power!
  • 2,331 Mensajes:
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Guion

Publicado el 03 September 2006 - 01:23 PM

Este tiene integrado el sistema de materia, si te gusta el lugar donde aparece dímelo para que te de u par de indicaciones más. No he podido poner el de límite porque parece que si pongo algo más a mi me crea conflicto con otro script... así que mejor dime primero si como está de momento te parece bien.
Spoiler


#5 Soramar0

    StarFolk

  • Moderador Power!
  • 1,033 Mensajes:
  • Location:Venezuela
  • Interests:El Futboll, El anime genero Seinem, joder con la gente.
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Scripting

Publicado el 03 September 2006 - 07:18 PM

creo q este script ya estaba posteado xD

#6 Sampi

    Paladin

  • voidzonero
  • 130 Mensajes:
  • Location:Delante de mi escritorio con apuntes de mates
  • Interests:dot Hack, Shin Megami Tensei y intentar aprovar bachiller
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Mapeo

Publicado el 04 September 2006 - 12:25 AM

Para abrir el limite es $scene = Scene_Limit.new
EDIT: Fegarur ya que estas te puedes mirar el de limite, es k me da error de "Can't convert nil into string"
Cuando se carga del todo y se llena la barra del ABS

Editado por Sampi, 04 September 2006 - 12:35 AM.


#7 Fegarur

    Vago

  • Moderador Power!
  • 2,331 Mensajes:
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Guion

Publicado el 04 September 2006 - 05:22 AM

Aquí está añadido el límite... intentaré mirar qué pasa pero no creo que sepa hacer nada con eso.

Script con Materia y Límite:
Spoiler

Bien, así como está, cuando salgas al menú la flecha saldrá 2 opciones por encima de la correcta... así que vamos a arreglarlo.
En Scene_Skill busca
QUOTE
$scene = Scene_Menu.new(1)
y cambia el 1 por un 3.

En Scene_Equip cambia el 2 de
QUOTE
$scene = Scene_Menu.new(2)
por un 4.

En Scene_Status cambia el 3 de
QUOTE
$scene = Scene_Menu.new(3)
por un 5.

En Scene_Save cambia el 4 de
QUOTE
$scene = Scene_Menu.new(4)
por un 6, cuidado que aparece en dos sitios.

En Scene_End cambia el 5 de
QUOTE
$scene = Scene_Menu.new(5)
por un 7, también sale en dos sitios.

Por el momento al menos el script debería funcinar bien con eso incluido.

#8 Sampi

    Paladin

  • voidzonero
  • 130 Mensajes:
  • Location:Delante de mi escritorio con apuntes de mates
  • Interests:dot Hack, Shin Megami Tensei y intentar aprovar bachiller
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Mapeo

Publicado el 08 September 2006 - 12:34 AM

esta muy bien fegarur pero no se puede hacer algo para que se pueda elegir de quien cambiar la materia o el limite?

#9 Fegarur

    Vago

  • Moderador Power!
  • 2,331 Mensajes:
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Guion

Publicado el 08 September 2006 - 05:49 AM

Cuando tienes seleccionado ya al protagonista, si pulsas W y Q (creo que eran esas) cambia entre los personajes. Al menos en el de materia...
Y siento lo del límite, pero no supe arreglar ese problemilla.

#10 Sampi

    Paladin

  • voidzonero
  • 130 Mensajes:
  • Location:Delante de mi escritorio con apuntes de mates
  • Interests:dot Hack, Shin Megami Tensei y intentar aprovar bachiller
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Mapeo

Publicado el 08 September 2006 - 06:50 AM

se como hacer k salga lo de legir pero no se como hacer que entonces salga para equipar lo de materia de ese personaje, o con el limite

#11 Fegarur

    Vago

  • Moderador Power!
  • 2,331 Mensajes:
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Guion

Publicado el 08 September 2006 - 06:55 AM

Ya no recuerdo cómo funcionaba el de materia, pero su puedes elegir podrás equipar, ¿no? En el de límite ya no se nada...

#12 Sampi

    Paladin

  • voidzonero
  • 130 Mensajes:
  • Location:Delante de mi escritorio con apuntes de mates
  • Interests:dot Hack, Shin Megami Tensei y intentar aprovar bachiller
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Mapeo

Publicado el 08 September 2006 - 07:22 AM

puedo elegir en los dos pero luego no me deja aceptar el personajee

#13 Fegarur

    Vago

  • Moderador Power!
  • 2,331 Mensajes:
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Guion

Publicado el 08 September 2006 - 07:53 AM

blink.gif blink.gif Pues me has dejado K.O. No se... ¿alguien que sepa?

#14 Arkano

    Heroe errante

  • voidzonero
  • 72 Mensajes:
  • Location:La cama de tu hermana!!! xD xD xD
  • Genero:Chico
  • Nivel maker: Experto
  • Especialidad: Mapeo

Publicado el 06 August 2007 - 03:00 PM

el d matria no me funciona con el sistema de mathura...
parece q el d limites tampoko...
pero no importa exelent script icon13.gif icon13.gif icon13.gif
QUOTE
Para abrir el limite es $scene = Scene_Limit.new
EDIT: Fegarur ya que estas te puedes mirar el de limite, es k me da error de "Can't convert nil into string"
Cuando se carga del todo y se llena la barra del ABS


eso pasa xq algun scrip te krea conflicto.
Revisa si no tienes el ABS y el de comandos individuales,
por ejemplo
s
a
l
u
d
o
s
s
s
!